zoukankan      html  css  js  c++  java
  • lvs + keepalive的安装配置

    centos6.7的系统       

    有问题请关注这里       https://bbs.csdn.net/topics/392084765

    http://blog.163.com/qiantu1986@126/blog/static/35922669201165112147800/   =

    http://zh.linuxvirtualserver.org/node/2585

    http://zh.linuxvirtualserver.org/node/2619

    http://zh.linuxvirtualserver.org/node/28?destination=node/28

    参数解读    https://www.cnblogs.com/wangxiaoqiangs/p/5736210.html

    [lvs1+keepalive1 ~]#     yum install kernel-devel -y

    [lvs1+keepalive1 ~]#    yum -y install popt popt-devel libnl libnl-devel

    [lvs1+keepalive1 ~]#    wget   http://mirror.centos.org/centos/6/os/x86_64/Packages/popt-static-1.13-7.el6.x86_64.rpm

    [lvs1+keepalive1 ~]#     rpm -ivh popt-static-1.13-7.el6.x86_64.rpm 

    [lvs1+keepalive1 ~]#   yum -y install zlib zlib-devel gcc gcc-c++ openssl openssl-devel

    [lvs1+keepalive1 ~]#   wget   https://www.kernel.org/pub/linux/utils/kernel/ipvsadm/ipvsadm-1.26.tar.gz

    [lvs1+keepalive1 ~]#    tar -xf ipvsadm-1.26.tar.gz

    [lvs1+keepalive1 ~]#    cd ipvsadm-1.26

    [lvs1+keepalive1 ~]#    make && make install

    [lvs1+keepalive1 ~]#   wget  http://www.keepalived.org/software/keepalived-1.2.7.tar.gz

    [lvs1+keepalive1 ~]#     tar -xf keepalived-1.2.17.tar.gz

    [lvs1+keepalive1 ~]#   ./configure --prefix=/usr/keepalived-1.2.17; make ; make install

    [lvs1+keepalive1 ~]#     cp   /usr/keepalived-1.2.17/etc/sysconfig/keepalived   /etc/sysconfig/keepalived

    [lvs1+keepalive1 ~]#     cp   /usr/keepalived-1.2.17/sbin/keepalived   /usr/sbin/keepalived

    [lvs1+keepalive1 ~]#    cp  /usr/keepalived-1.2.17/etc/rc.d/init.d/keepalived  /etc/rc.d/init.d/

    [lvs1+keepalive1 ~]#    mkdir /etc/keepalived

    [lvs1+keepalive1 ~]# cp /usr/keepalived-1.2.17/etc/keepalived/keepalived.conf   /etc/keepalived

    配置内容如下(master),slave也是一样的内容只是改变一下优先级跟真实ip[lvs1+keepalive1 ~]# cat /etc/keepalived/keepalived.conf ! Configuration File for keepalivglobal_defs {# notification_email {# acassen@firewall.loc

    ! Configuration File for keepalived


    global_defs {
    #notification_email {
    # acassen@firewall.loc
    # failover@firewall.loc
    # sysadmin@firewall.loc
    # }
    # notification_email_from Alexandre.Cassen@firewall.loc
    # smtp_server 192.168.200.1
    # smtp_connect_timeout 30
    router_id LVS_master
    }

    vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 120
    mcast_src_ip=192.168.0.10
    advert_int 1
    authentication {
    auth_type PASS
    auth_pass 1111
    }
    virtual_ipaddress {
    192.168.0.250 
    }
    }
    virtual_server 192.168.0.250 90{
    delay_loop 6
    lb_algo rr
    lb_kind DR
    persistence_timeout 1
    protocol TCP
    real_server 192.168.0.20 90{
    weight 1
    TCP_CHECK {
    connect_timeout 1
    nb_get_retry 3
    delay_before_retry 3
    connect_port 90  #有了这个字段就可以随便定义端口了,另外重启keepalive之后要用ipvsadm看看有没有包括virtual server的ip在里面
    }
    }
    real_server 192.168.0.21 90{
    weight 1
    TCP_CHECK {
    connect_timeout 1
    nb_get_retry 3
    delay_before_retry 3
    connect_port 90
    }
    }
    }



    [lvs1+keepalive1 ~]# cat add_vir_ser
    ifconfig lo:0 192.168.1.111(vip) broadcast 192.168.1.111(vip) netmask 255.255.255.255 up
    route add -host 192.168.1.111 dev lo:0
    echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
    echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
    echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
    echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
    echo "1">/proc/sys/net/ipv4/conf/eth0/arp_ignore
    echo "2">/proc/sys/net/ipv4/conf/eth0/arp_announce

     realserver 绑定vip的脚本

    #!/bin/bash
    
    VIP='192.168.0.250'    #这里需要改成自己的vip
    
    . /etc/init.d/functions
    
    case "$1" in
      start)
        /sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
        echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore
        echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce
        echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
        echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
        echo " LVS Real-Server Start Success"
          ;;
        stop)
         /sbin/ifconfig lo:0 down
         echo "0" > /proc/sys/net/ipv4/conf/lo/arp_ignore
         echo "0" > /proc/sys/net/ipv4/conf/lo/arp_announce
         echo "0" > /proc/sys/net/ipv4/conf/all/arp_ignore
         echo "0" > /proc/sys/net/ipv4/conf/all/arp_announce
         echo " LVS Real-Server Stop Success"
          ;;
           *)
         echo "Usage: $0 ( start | stop )"
         exit 1
    esac
    

      

    chmod a+x /etc/init.d/realserver.sh

    /etc/init.d/realserver.sh start
    echo "/etc/init.d/realserver.sh start" >> /etc/rc.local

    [root@realserver1 ~]    ifconfig lo:0   192.168.1.111(vip)   broadcast  192.168.1.111(vip)   netmask 255.255.255.255 up

    [root@realserver1 ~]    route add -host  192.168.1.111(vip) dev lo:0

    [root@realserver2 ~]    ifconfig lo:0    192.168.1.111(vip)    broadcast   192.168.1.111(vip)   netmask 255.255.255.255 up

    [root@realserver2 ~]    route add -host   192.168.1.111(vip)   dev lo:0

  • 相关阅读:
    open("","r")与open("","rb")的效率区别
    readline与readlines不能同时使用
    for i in xrange(0,5)使用过程中遇到的问题
    xrange()与range()
    Maven install 、 Maven package 与 Maven clean package 的区别
    Java--mv clean package命令
    Java----如何解决下载依赖包失败问题
    Jmeter工具学习(六)-- 逻辑控制器 While Controller(转载)
    Jmeter工具学习(五)--JDBC Request执行多条SQL语句
    Sqlmap POST注入 三种方法(转载)
  • 原文地址:https://www.cnblogs.com/fyy-hhzzj/p/7656500.html
Copyright © 2011-2022 走看看