keepalived+lvs 来实现负载均衡

设备:2台realserver ;  2台(keepalived+lvs)

注:此处的虚拟IP为: 192.168.159.200

第一步:

在realserver主机上运行  这样做的目的是为了把虚拟VIP 隐藏

一:

echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore

echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce

echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

ifconfig lo:0 192.168.159.200 netmask 255.255.255.255 broadcast 192.168.159.200

二:

route add -host 192.168.159.200 dev lo:0    realserver //添加路由

第二步:

设2台keepalived+lvs  分别为A和B  A作为MASTER  B作为BACKUP

设置keepalived.conf

! Configuration File for keepalived

global_defs {

   notification_email {

     root@localhost

     [email protected]

  }

   notification_email_from test@localhost

   smtp_server 127.0.0.1

   smtp_connect_timeout 30

   router_id LVS_DEVEL

}

vrrp_instance VI_1 {

    state BACKUP

    interface eth0

    virtual_router_id 51

    priority 101

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 1111

    }

    virtual_ipaddress {

        192.168.159.200/24 dev eth0 label eth0:0 

    }

}

virtual_server 192.168.159.200 80 {

    delay_loop 6

    lb_algo rr

    lb_kind DR

    nat_mask 255.255.255.0

    persistence_timeout 50 

    protocol TCP

    real_server 192.168.159.32 80 {

        weight 1

        HTTP_GET {

            url {

              path /index.html

              status_code 200

            }

            connect_timeout 2 

            nb_get_retry 3

            delay_before_retry 1

        }

    }

    real_server 192.168.159.33 80 {

        weight 1

        HTTP_GET {

            url {

              path /index.html

              status_code 200

            }

            connect_timeout 2 

            nb_get_retry 3

            delay_before_retry 1

        }

    }

}

第三步:

启动realserver的httpd服务 和 2台keepalived服务

访问的时候 访问虚拟IP 此处为 192.168.159.200

相关推荐