LVS+Keeplive 负载均衡

        注意 lvs+keepalived 的vip是虚拟出来的和 nat模式的负载均衡是不同的,vip要和其他机器在同一网段,其中lvs负载均衡实用的是DR模式,keepalived用来进行监听和切换。

        lvs-master 192.168.0.10

        lvs-slave 192.168.0.11

        real-webserver 192.168.0.12

        real-webserver 192.168.0.13

        vip 192.168.0.80

        关闭防火墙

如果你是内部网络没有路由,需要修改hosts列表使其能够相互通信。

       1、 在两台DR上安装keepalived和ipvsdm

        yum install -y ipvsadm keepalived

        2、两台RS上安装httpd

        yum install -y httpd

        echo ‘this is server1’ > /var/www/html/index.html

         echo ‘this is web-server2’ > /var/www/html/index.html

        配置两台节点 两台一样的操作

         vi /usr/local/sbin/lvs_dr_rs.sh
        #! /bin/bash
         vip=192.168.0.80
        ifconfig lo:0 $vip broadcast $vip netmask 255.255.255.255 up
        route add -host $vip 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

        chmod +x lvs_dr_rs.sh
        ./lvs_dr_rs.sh
         执行完后ifconfig,可以看到
        lo:0      Link encap:Local Loopback  
          inet addr:192.168.0.80  Mask:255.255.255.255
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
        本地的lo,绑定了虚拟的vip

        servie httpd start

        3、配置DR的keeplived

        vrrp_instance VI_1 {
        state MASTER                主为master备为BACKUP
        interface eth0                eth0为你的网卡名字,可以用ifconfig查看
        virtual_router_id 51        虚拟路由的编号,主备一致即可

        priority 100                    优先级,主必须大于备

        advert_int 1                    检查间隔为1s

        authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.0.80                    第一虚拟ip为多少,可以设置多个,每行一个
    }
}


virtual_server 192.168.0.80 80 {
    delay_loop 6                        健康检查时间
    lb_algo rr                            负载调度的方法为rr
    lb_kind DR                            DR模式
    persistence_timeout 0        
    protocol TCP


    real_server 192.168.0.12 80 {
        weight 1
        TCP_CHECK {
            connect_timeout 10
            nb_get_retry 3
            delay_before_retry 3
            connect_port 80
        }
    }


    real_server 192.168.0.13 80 {
        weight 1
        TCP_CHECK {
            connect_timeout 10
            nb_get_retry 3
            delay_before_retry 3
            connect_port 80
        }

    }

service keeplved start 

1、多次访问192.168.0.80,在两台服务不断切换,关闭一台httpd服务,可发现不在访问此台。

通过ip addr 可以看到在主机由eth0  192.168.0.80的虚拟地址

2、关闭主机keepalived 发现vip 80消失,去slave查看发现已经有了vip的虚拟地址。通过访问vip依旧可以访问到两台提供服务的服务器。









 




        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值