zoukankan      html  css  js  c++  java
  • Nginx(一)初始环境的安装(php5.3+mysql5.1+fastcgi…)

    关参考资源
    http://www.lnmp.org/index.html \LNMP一键安装包
    http://www.howtocn.org/nginx \Nginx模块参考手册中文版
    http://blog.s135.com/nginx_php_v6/ \张宴写的nginx文章
    http://www.nginx.com.cn/ \nginx中文网

    如下为我写的。。。。。。

    yum -y remove httpd*
    yum -y remove mysql*
    yum -y remove php*

    时间同步
    /usr/sbin/ntpdate 0.rhel.pool.ntp.org > /dev/null 2>&1 ; /sbin/clock -w > /dev/null 2>&1

    yum –enablerepo=remi -y install gcc gcc-c++ automake autoconf libtool
    yum -y –enablerepo=remi install gd freetype gd-devel.x86_64 freetype.x86_64
    freetype-devel.x86_64 libjpeg.x86_64 libjpeg-devel.x86_64 
    libpng.x86_64 libpng-devel.x86_64 libxml2.x86_64 libxml2-devel.x86_64
    zlib.x86_64  zlib-devel.x86_64 libevent.x86_64 libevent-devel.x86_64
    bzip2.x86_64 bzip2-devel.x86_64 glib.x86_64 glib-devel.x86_64 glib2.x86_64 glib2-devel.x86_64
    yum –enablerepo=remi -y install libc-client.x86_64  libc-client-devel.x86_64
    yum –enablerepo=remi -y install net-snmp.x86_64 net-snmp-devel.x86_64
    net-snmp-libs.x86_64 net-snmp-utils.x86_64 net-snmp-perl.x86_64
    ln -s /usr/lib64/libpng.so /usr/lib/
    ln -s /usr/lib64/libc-client.a /usr/lib/
    我的是64位系统所以要做这一步


    相关软件包的下载,有必要时可到链接处找最新的安装包

    mkdir /usr/local/src/lnmp
    wget -c http://nginx.org/download/nginx-0.9.1.tar.gz
    wget -c http://cn2.php.net/get/php-5.3.3.tar.gz/from/cn.php.net/mirror
    wget -c http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.53.tar.gz/from/http://mysql.ntu.edu.tw/
    wget -c http://soft.vpser.net/web/pdo/PDO_MYSQL-1.0.2.tgz
    wget -c http://pecl.php.net/get/memcache-3.0.5.tgz
    wget -c http://soft.vpser.net/web/pcre/pcre-8.10.tar.gz
    wget -c http://soft.vpser.net/web/libiconv/libiconv-1.13.tar.gz
    wget -c http://soft.vpser.net/web/libmcrypt/libmcrypt-2.5.8.tar.gz
    wget -c http://soft.vpser.net/web/mhash/mhash-0.9.9.9.tar.gz
    wget -c http://soft.vpser.net/web/mcrypt/mcrypt-2.6.8.tar.gz
    wget -c http://bart.eaccelerator.net/source/0.9.6.1/eaccelerator-0.9.6.1.tar.bz2

    Install

    cd /usr/local/src/lnmp;cur_dir=$(pwd)
    cd $cur_dir; tar zxvf libiconv-1.13.tar.gz
    cd libiconv-1.13/
    ./configure –prefix=/usr/local
    make && make install

    cd $cur_dir
    tar zxvf libmcrypt-2.5.8.tar.gz
    cd libmcrypt-2.5.8/
    ./configure
    make && make install
    /sbin/ldconfig
    cd libltdl/
    ./configure –enable-ltdl-install
    make && make install

    cd $cur_dir
    tar zxvf mhash-0.9.9.9.tar.gz
    cd mhash-0.9.9.9/
    ./configure
    make && make install
    cd ../

    ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la
    ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so
    ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4
    ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8
    ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a
    ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la
    ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so
    ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2
    ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1
    ldconfig

    cd $cur_dir
    tar zxvf mcrypt-2.6.8.tar.gz
    cd mcrypt-2.6.8/
    ./configure
    make && make install
    cd ../

    Mysql的安装

    cd $cur_dir
    tar -zxvf mysql-5.1.53.tar.gz
    cd mysql-5.1.53/
    groupadd mysql
    useradd -g mysql mysql
    ./configure –prefix=/usr/local/mysql –sysconfdir=/etc
    –with-extra-charsets=all
    –with-charset=utf8
    –with-plugins=all
    –with-big-tables
    –with-embedded-server
    –enable-local-infile
    –enable-assembler
    –with-mysqld-user=mysql

    ###如果报configure: error: No curses/termcap library found
    #yum –enablerepo=remi -y install ncurses.x86_64 ncurses-devel.x86_64

    make && make install
    cd ../
    cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
    chown -R mysql.mysql /usr/local/mysql/
    sed -i ‘s/skip-locking/skip-external-locking/g’ /etc/my.cnf
    /usr/local/mysql/bin/mysql_install_db –user=mysql
    cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysql
    chmod 755 /etc/init.d/mysql
    chkconfig –level 345 mysql on
    echo “/usr/local/mysql/lib/mysql” >> /etc/ld.so.conf
    echo “/usr/local/lib” >>/etc/ld.so.conf
    ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
    ln -s /usr/local/mysql/include/mysql /usr/include/mysql
    ldconfig
    /etc/init.d/mysql start
    /etc/init.d/mysql restart

    php+fast-cgi的安装, 5.3.3 源码中开始包含 php-fpm,不用专门再打补丁了,只需要解开源码直接configure,关于php-fpm的编译参数有 –enable-fpm –with-fpm-user=www –with-fpm-group=www –with-libevent-dir=libevent位置。

    cd $cur_dir
    tar zxvf php-5.3.3.tar.gz
    cd php-5.3.3
    ./configure –prefix=/usr/local/php 
    –with-config-file-path=/usr/local/php/etc
    –with-mysql=/usr/local/mysql
    –with-mysqli=/usr/local/mysql/bin/mysql_config
    –with-gd
    –with-freetype-dir
    –with-jpeg-dir
    –with-png-dir
    –with-zlib
    –with-imap
    –with-kerberos
    –with-imap-ssl
    –with-mhash
    –with-mcrypt
    –with-curl
    –with-curlwrappers
    –with-openssl
    –with-gettext
    –with-iconv-dir
    –with-libxml-dir
    –enable-fpm
    –with-fpm-user=www
    –with-fpm-group=www
    –with-libevent-dir
    –enable-inline-optimization
    –enable-mbstring
    –enable-ftp
    –enable-gd-native-ttf
    –enable-zip
    –enable-sockets

    #Kerberos libraries not found  ,解决方法是,ln -s /usr/lib64/ /usr/kerberos/lib

    make ZEND_EXTRA_LIBS=’-liconv’
    make install
    cp php.ini-production /usr/local/php/etc/php.ini
    cd ../
    ln -s /usr/local/php/bin/php /usr/bin/php
    ln -s /usr/local/php/sbin/php-fpm /usr/bin/php-fpm

    cd $cur_dir
    tar -zxvf memcache-3.0.5.tgz
    cd memcache-3.0.5/
    /usr/local/php/bin/phpize
    ./configure –with-php-config=/usr/local/php/bin/php-config
    make && make install
    cd ../

    cd $cur_dir
    tar -jxvf eaccelerator-0.9.6.1.tar.bz2
    cd eaccelerator-0.9.6.1
    /usr/local/php/bin/phpize
    ./configure –enable-eaccelerator=shared –with-php-config=/usr/local/php/bin/php-config
    make && make install
    mkdir -p /usr/local/eaccelerator_cache
    chmod 777 /usr/local/eaccelerator_cache

    cd $cur_dir
    tar zxvf PDO_MYSQL-1.0.2.tgz
    cd PDO_MYSQL-1.0.2/
    /usr/local/php/bin/phpize
    ./configure –with-php-config=/usr/local/php/bin/php-config –with-pdo-mysql=/usr/local/mysql
    make && make install
    cd ../

    sed -i ‘s/;date.timezone =/date.timezone = Asia/Shanghai/g’ /usr/local/php5/etc/php.ini
    sed -i ‘s/short_open_tag = Off/short_open_tag = On/g’ /usr/local/php5/etc/php.ini
    sed -i ‘s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/g’ /usr/local/php5/etc/php.ini
    sed -i ‘s/upload_max_filesize = 2M/upload_max_filesize = 50M/g’ /usr/local/php5/etc/php.ini
    sed -i ’262i output_buffering = On’ /usr/local/php5/etc/php.ini

    #————————-编辑php.ini文件做如下修改————————————-#
    extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/”
    extension = “memcache.so”
    extension = “pdo_mysql.so”

    [eaccelerator]
    ;#######################zend_extension=”/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/eaccelerator.so”
    extension=”/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/eaccelerator.so”
    eaccelerator.shm_size=”64″
    eaccelerator.cache_dir=”/usr/local/eaccelerator_cache”
    eaccelerator.enable=”1″
    eaccelerator.optimizer=”1″
    eaccelerator.check_mtime=”1″
    eaccelerator.debug=”0″
    eaccelerator.filter=”"
    eaccelerator.shm_max=”0″
    eaccelerator.shm_ttl=”3600″
    eaccelerator.shm_prune_period=”3600″
    eaccelerator.shm_only=”0″
    eaccelerator.compress=”1″
    eaccelerator.compress_level=”9″

    #————————–配置php-fpm.conf,如下操作————————————–#
    cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
    vi /usr/local/php/etc/php-fpm.conf

    [global]
    pid = /usr/local/php5/var/run/php-fpm.pid
    error_log = /usr/local/php/var/log/php-fpm.log
    log_level = notice
    [www]
    listen = 127.0.0.1:9000
    user = www
    group = www
    pm = dynamic
    pm.max_children = 2000
    pm.start_servers = 20
    pm.min_spare_servers = 5
    pm.max_spare_servers = 35

    groupadd www
    useradd -g www www
    mkdir -p /var/www/html
    chown www.www /var/www/html/

    cd $cur_dir
    tar zxvf pcre-8.10.tar.gz
    cd pcre-8.10/
    ./configure
    make && make install
    cd ../

    tar zxvf nginx-0.9.1.tar.gz
    cd nginx-0.9.1
    ./configure –user=www –group=www –prefix=/usr/local/nginx –with-http_stub_status_module –with-http_ssl_module
    make && make install
    cd ../

    cat >/var/www/html/phpinfo.php<<eof
    <?php
    phpinfo();
    ?>
    eof


    给PHP加速,eAccelerator配置和使用指南
    http://www.toplee.com/blog/100.html#pp2
    http://eaccelerator.net/wiki/InstallFromSource //安装文档
    http://eaccelerator.net/wiki/Settings //配置说明

    php-fpm管理
    kill -SIGINT `cat /usr/local/php/var/run/php-fpm.pid`               //终止
    /usr/local/php5/sbin/php-fpm                                       //启动
    kill -SIGUSR2 `cat /usr/local/php/var/run/php-fpm.pid`          //重启
    kill -SIGUSR1 `cat /usr/local/php/var/run/php-fpm.pid`          //日志

    nginx管理
    /usr/local/nginx/sbin/nginx                                                       //启动
    /usr/local/nginx/sbin/nginx -s reload                                            //平滑重启
    /usr/local/nginx/sbin/nginx -t                                                   //测试

    Others
    nginx0.8.52+php5.3.3
    http://addcn.blogbus.com/tag/php5.3.3/

    XHProf安装使用笔记

    XHProf安装使用笔记

    编译安装

    获取源代码包
    root@sourcjoy>wget http://pecl.php.net/get/xhprof-0.9.2.tgz
    解压
    root@sourcjoy>tar zxf xhprof-0.9.2.tgz
    root@sourcjoy>cd xhprof-0.9.2
    复制web访问目录到web应用目录
    root@sourcjoy>cp -r xhprof_html xhprof_lib /var/www/html/  #复制xhprof的展示页面目录和库目录到web目录下,可以为xhprof_html建个虚拟目录来访问,也可以把这两个目录拷贝到应用的根目录下。
    root@sourcjoy>cd extension/
    编译插件
    root@sourcjoy>/usr/local/webserver/php/bin/phpize
    root@sourcjoy>./configure –with-php-config=/usr/local/webserver/php/bin/php-config
    root@sourcjoy>make
    root@sourcjoy>make install
    注意:这里安装的时候可能会出现访问php.ini没权限的问题,请把php.ini的权限改成666:
    chmod 666 /usr/local/webserver/php/etc/php.ini

    配置 php.ini 文件
    root@sourcjoy>vi /usr/local/webserver/php/etc/php.ini在合适位置加入以下内容:

    [xhprof]
    extension=xhprof.so;
    ; directory used by default implementation of the iXHProfRuns
    ; interface (namely, the XHProfRuns_Default class) for storing
    ; XHProf runs.
    ;
    ;xhprof.output_dir=<directory_for_storing_xhprof_runs>xhprof.output_dir=/var/logs/xhprof

    重启web服务器

    为了更加清晰显示程序执行、调用结构,安装Graphviz,如果安装了Graphviz,XHProf会用比较牛的图形方式展现统计数据。
    获取源码包
    root@sourcjoy>wget http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.24.0.tar.gz
    root@sourcjoy>tar zxf graphviz-2.24.0.tar.gz
    root@sourcjoy>cd graphviz-2.24.0
    编译安装
    root@sourcjoy>./configure
    root@sourcjoy>make
    root@sourcjoy>make install

    接下来在要统计的php应用中加入以下语句:
    xhprof_enable(); // 统计的代码部分之前加,如果要显示CPU占用 可以加入XHPROF_FLAGS_CPU参数,内存是XHPROF_FLAGS_MEMORY,如果两个一起:XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY,如:xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);

    xhprof_disable();//统计的代码部分之后加

    这样xhprof就可以统计当前页面的函数性能情况了。xhprof会把每次访问加入统计代码的页面的性能统计结果在指定目录下生成一个文件,文件名命名方式为:本次访问的系统ID.命名空间,每次刷新页面都会重新生成一个文件,每个的系统ID都不同。

    然后通过xhprof_html目录的http访问url来查看结果。如:http://app/xhprof_html/?run=运行id&source=命名空间(其中运行ID和命名空间可以根据xhprof生成的文件名来确定)
    下面是个例子:

    <?php
    function a(){
    echo ‘a’;
    }
    xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);   //XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY
    // run program
    a();
    // stop profiler
    $xhprof_data = xhprof_disable();   //返回运行数据

    // 下面是保存运行数据
    include_once “xhprof_lib/utils/xhprof_lib.php”;
    include_once “xhprof_lib/utils/xhprof_runs.php”;

    $xhprof_runs = new XHProfRuns_Default();

    $run_id = $xhprof_runs->save_run($xhprof_data, “sourcejoy”);   //第一个参数是 xhprof_disable()函数返回的运行信息,第二个参数是自定义的命名空间字符串(任意字符串),返回运行ID。
    ?>
    名词:
    1. Inclusive Time :包括子函数所有执行时间。
    2. Exclusive Time/Self Time:函数执行本身花费的时间,不包括子树执行时间。
    3. Wall Time:花去了的时间或挂钟时间。
    4. CPU Time:用户耗的时间+内核耗的时间
    5.Inclusive CPU:包括子函数一起所占用的CPU
    6.Exclusive CPU:函数自身所占用的CPU

    最后要说点,这个xhprof程序有点小bug,还不支持php5.2一下的版本,不过这都是小问题,关键是能直观告诉我们程序的性能问题,这个很重要,我们自己开发程序的时候用这个进行性能检查是很不错的。

    -END-

    本文是sourcejoy.com的原创文章,要转载必须写明来自http://www.sourcejoy.com/ 如果没表明转载自本站,

    http://www.sourcejoy.com/php_dev/xhprof_install_and_usage.html

    启动php-fpm的时候出现 Starting php_fpm Dec 29 15:27:32.502790 [ERROR] fpm_unix_conf_wp(), line 124: please specify user and group other than root, pool ‘default’

    启动php-fpm的时候出现
    Starting php_fpm Dec 29 15:27:32.502790 [ERROR] fpm_unix_conf_wp(), line 124: please specify user and group other than root, pool ‘default’
    解决办法;
    只需要修改php-fpm.conf
    Unix user of processes
    <!–     <value name=”user”>nobody</value>   –>
    Unix group of processes
    <!–     <value name=”group”>nobody</value>   –>

    将<!– –>去掉即可。至于user/group根据实际情况修改(www)。
    重新启动 /usr/local/webserver/php-fpm/sbin/php-fpm start 成功了!

    RedHat Linux网络配置文件详解

    目前在企业级服务器的Linux系统中,RHEL占有绝对的优势,不管是曾经在互联网公司还是在目前测试Virtualization都是用的RHEL,所以本文主要是针对RedHat的linux来写的。前阵子有一次也被测试中的各种网络配置给搞晕了,因为我们VT-D和SR-IOV基本上都用NIC来测试的。收集了点资料,结合实际经验总结一下。

    Redhat Linux的网络配置,基本上是通过修改几个配置文件来实现的,虽然也可以用ifconfig来设置IP,用route来配置默认网关,用hostname来配置主机名,但是重启后会丢失。

    Linux中网络相关的主要的几个配置文件为:
    /ect/hosts配置主机名(域名)和IP地址的对应
    /etc/sysconfig/network配置主机名和网关
    /etc/sysconfig/network-scripts/ifcfg-eth0 eth0配置文件,eth1则文件名为ifcfg-eth1,以此类推/etc/resolv.conf配置DNS客户端(关于使用哪个DNS服务器的配置)

    1./etc/sysconfig/network-scripts/ifcfg-<interface-name>文件
    在RedHat中,系统网络设备的配置文件保存在/etc/sysconfig/network-scripts目录下,ifcfg-eth0包含第一块网卡的配置信息,ifcfg-eth1包含第二块网卡的配置信息。在启动时,系统通过读取这个配置文件决定某个网卡是否启动和如何配置。
    下面是/etc/sysconfig/network-scripts/ifcfg-eth0文件的示例:
    DEVICE=eth0
    IPADDR=192.168.0.2
    NETMASK=255.255.255.0
    BROADCAST=192.168.0.255
    NBOOT=yes
    BOOTPROTO=none
    GATEWAY=192.168.0.1

    若希望手工修改网络地址或增加新的网络连接,可以通过修改对应的文件ifcfg-<interface-name>或创建新的文件来实现。
    DEVICE=<name>   <name>表示物理设备的名字
    IPADDR=<address>   <address>表示赋给该网卡的IP地址
    NETMASK=<mask>  <mask>表示子网掩码
    BROADCAST=<address> <address>表示广播地址
    NBOOT=yes/no  启动时是否激活该卡
    BOOTPROTO=none  none:无须启动协议;bootp:使用bootp协议;dhcp:使用dhcp协议
    GATEWAY=<address> <address>表示默认网关
    MACADDR=<MAC-address> <MAC-address>表示指定一个MAC地址
    USERCTL=yes/no    是否允许非root用户控制该设备

    2./etc/resolv.conf文件
    文件/etc/resolv.conf配置DNS客户端,它包含了DNS服务器地址和域名搜索配置,每一行应包含一个关键字和一个或多个的由空格隔开的参数。下面是一个例子文件:
    search wuxp.com
    nameserver 192.168.0.1
    nameserver 192.168.0.2

    search wuxp.com:表示当提供了一个不包括完全域名的主机名时,在该主机名后添加wuxp.com的后缀;nameserver:表示解析域名时使用该地址指定的主机为域名服务器。其中域名服务器是按照文件中出现的顺序来查询的。因此,应该首先给出最可靠的服务器。目前,至多支持三个名字服务器。

    3./etc/sysconfig/network文件
    该文件用来指定服务器上的网络配置信息,下面是一个示例:
    NETWORK=yes
    RORWARD_IPV4=yes
    HOSTNAME=server.wuxp.com
    GAREWAY=192.168.0.1
    GATEWAYDEV=eth0

    NETWORK=yes/no    网络是否被配置
    FORWARD_IPV4=yes/no    是否开启IP转发功能
    HOSTNAME=<hostname> <hostname>表示服务器的主机名
    GAREWAY=<address>    <address>表示网络网关的IP地址
    GAREWAYDEV=<device>  <device>表示网关的设备名,如:eth0

    4./etc/hosts文件
    当机器启动时,在可以查询DNS以前,机器需要查询一些主机名到IP地址的匹配。这些匹配信息存放在/etc/hosts文件中。在没有域名服务器情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的IP地址。
    下面是一个/etc/hosts文件的示例:
    127.0.0.1 Localhost server.wuxp.com
    192.168.0.3 station1.wuxp.com
    最左边一列是主机IP信息,中间一列是主机名。任何后面的列都是该主机的别名。

    修改后,需要重启网络才会生效:重新启动网络设置:/sbin/service network restart
    service network start //启动网络服务
    service network stop //停止网络服务
    service network status //查看网络服务状态

    另外,还有单个网卡绑定多个IP和多个网卡绑定为一块虚拟网卡的配置。

    1、单网卡绑定多个IP

    有时,我们需要在一块网卡上配置多个IP,例如,在上面的例子中,我们还需要为eth0配置IP 192.168.168.2和192.168.168.3。那么需要再在/etc/sysconfig/network-scripts下新建两个配置文件:

    ifcfg-eth0:0内容如下:

    DEVICE=eth0:0
    BOOTPROTO=static
    IPADDR=192.168.168.2
    NETMASK=255.255.255.0
    NBOOT=yes

    ifcfg-eth0:1内容如下:

    DEVICE=eth0:1
    BOOTPROTO=static
    IPADDR=192.168.168.3
    NETMASK=255.255.255.0
    NBOOT=yes

    2、多个网卡绑定成一块虚拟网卡

    为了提供网络的高可用性,我们可能需要将多块网卡绑定成一块虚拟网卡对外提供服务,这样即使其中的一块物理网卡出现故障,也不会导致连接中断。比如我们可以将eth0和eth1绑定成虚拟网卡bond0

    首先在/etc/sysconfig/network-scripts/下创建虚拟网卡bond0的配置文件ifcfg-bond0,内容如下

    DEVICE=bond0
    BOOTPROTO=none
    BROADCAST=192.168.168.255
    IPADDR=192.168.168.1
    NETMASK=255.255.255.0
    NETWORK=192.168.168.0
    NBOOT=yes
    TYPE=Ethernet
    GATEWAY=192.168.168.250
    USERCTL=no

    然后分别修改eth0和eth1的配置文件
    ifcfg-eth0内容:

    DEVICE=eth0
    BOOTPROTO=none
    NBOOT=yes
    USERCTL=no
    MASTER=bond0
    SLAVE=yes

    ifcfg-eth1内容

    DEVICE=eth1
    BOOTPROTO=none
    NBOOT=yes
    USERCTL=no
    MASTER=bond0
    SLAVE=yes

    因为linux的虚拟网卡是在内核模块中实现的,所以需要安装的时候已经装好该module。在/etc/modprobe.conf文件(好像有些老版本是/etc/modules.con)中添加如下内容(如果没有该文件,则新建一个):

    alias bond0 bonding
    options bond0 miimon=100 mode=1 primary=eth0

    其中miimon=100表示每100ms检查一次链路连接状态,如果不通则会切换物理网卡
    mode=1表示主备模式,也就是只有一块网卡是active的,只提供失效保护。如果mode=0则是负载均衡模式的,所有的网卡都是active,还有其他一些模式很少用到
    primary=eth0表示主备模式下eth0为默认的active网卡

    最后,在/etc/rc.local中加入

    modprobe bonding miimon=100 mode=1

    重启机器后可以看到虚拟网卡已经生效,可以通过插拔两个物理网卡的网线来进行测试,不过linux中网卡接管的时间好象比较长。

    参考资料:

    http://ningzi82.itpub.net/post/12186/505365

    http://www.ningoo.net/html/2007/redhat_linux_network_configuration_and_bond.html

    SSH登陆错误 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

    SSH登陆错误 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

    Connection to 192.168.10.20 closed.
    [root@localhost ~]# ssh 192.168.10.88
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    @    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
    Someone could be eavesdropping on you right now (man-in-the-middle attack)!
    It is also possible that the RSA host key has just been changed.
    The fingerprint for the RSA key sent by the remote host is
    b6:0c:41:43:60:79:eb:05:9e:c9:72:1d:a0:41:9a:50.
    Please contact your system administrator.
    Add correct host key in /root/.ssh/known_hosts to get rid of this message.
    Offending key in /root/.ssh/known_hosts:5
    RSA host key for 192.168.10.88 has changed and you have requested strict checking.
    Host key verification failed.

    在客户端执行下述指令即可

    #mv /root/.ssh/known_hosts /tmp

    Zend studio 8+设置默认使用UTF-8编码

    Zend Studio 8+默认使用系统编码,也就是GBK,当我们用Zend Studio 用从SVN服务器导出项目的时候,如果项目使用UTF-8字符集,打开文件的时候中文将会出现乱码。
    解决:
    将如下设置为使用UTF-8编码
    1、Project > Properties > Resource
    2、Window > Preferences > General > Workspace
    3、Window > Preferences > Web > HTML Files
    4、Window > Preferences > Web > CSS Files
    5、Window > Preferences > PHP > Debug

    MySQL 线上执行大事务 or 锁表操作 详解

    很多情况下,DBA需要在线执行一些无法在线进行的操作。这句话说着很绕口,比如给某个核心级表加一列或者执行修改操作,此时不但主库从库要长时间锁表,主从延迟也会变大。那么应该如何操作呢?

    很简单,使用SET SESSION SQL_LOG_BIN= {0|1}在只在本地操作,就可以了,可以先在备库执行,然后切换主备,在原主库再执行。然后在各个从库分别执行。考虑的变更操作的具体性,到底是先在主库执行还是先在从库执行要自己斟酌。

    hadoop大数据相关
  • 相关阅读:
    iOS-禁止scrollview垂直方向滚动,只允许水平方向滚动;或只允许垂直方向滚动
    MongoDB安装
    Vue运用
    egg-middleware 中间件
    如何判断扫码的客户端是微信还是支付宝
    node 短信接口的调用
    Mui 长按保存图片
    egg-sequelize --- nodejs
    egg-mongoose --- nodejs
    Mongoose 基本用法
  • 原文地址:https://www.cnblogs.com/zhangzl/p/4270389.html
Copyright © 2011-2022 走看看