负载均衡 | keepalived-lvs

Keepalived

lvs-DR模式下如果server1调度器挂了怎么办)

1,创建4个子虚拟机

2,server1安装keepalived

tar zxf  keepalived-2.0.6.tar.gz

查看INSTALL文件

安装三部曲都在keepalived-2.0.6目录下进行

./configure --prefix=/usr/local/keepalived --with-init=SYSV  #改变安装路径,此过程不能报错,可以有警告,需要根据INSTALL文件解决一些依赖性

make

make install

3,配置

chmod +x /usr/local/keepalived/etc/rc.d/init.d/keepalived

ln -s /usr/local/keepalived/etc/rc.d/init.d/keepalived  /etc/init.d/

ln -s /usr/local/keepalived/etc/keepalived /etc/

ln -s /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

ln -s /usr/local/keepalived/sbin/keepalived /sbin/

 

4,启动测试可以正常打开keepalived,然后关闭

5,将/usr/local/keealived/传到server4/usr/local下,这里需要在server1和server4安装scp命令,同样建立4个软连接

 

6,修改server1的keepalived的配置文件

/etc/keepalived/keepalived.conf

 

global_defs {

   notification_email {

     root@localhost  #给本机发邮件

   }

   notification_email_from keepalived@localhost

   smtp_server 127.0.0.1

   smtp_connect_timeout 30

   router_id LVS_DEVEL

   vrrp_skip_check_adv_addr

   #vrrp_strict  # 这个必须要注释,否则会在iptables加一条DROP

   vrrp_garp_interval 0

   vrrp_gna_interval 0

}

 

vrrp_instance VI_1 {

    state MASTER  #MASTER

    interface eth0

    virtual_router_id 28

    priority 100

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 1111

    }

    virtual_ipaddress {

        172.25.28.100  #vip

    }

}

 

virtual_server 172.25.28.100 80 {  #vip

    delay_loop 3   # 等待3s

    lb_algo rr

    lb_kind DR   ##这里一定要改为DR

    #persistence_timeout 50  #注释

    protocol TCP

 

    real_server 172.25.28.2 80 {  #rip

        weight 1

        TCP_CHECK{

            connect_timeout 3

            retry 3

            delay_before_retry 3

        }

    }

 

    real_server 172.25.28.3 80 { #rip,如果还有服务器可以继续添加

        weight 1     #server2和server3的权重相等,如果这个改为2,那么server2出现的次数就比server3多,这用在server2的服务器性能更优秀

        TCP_CHECK{

            connect_timeout 3

            retry 3

            delay_before_retry 3

        }

    }

}

下面全部删除不要留空行

7,删除server1上面的vip,启动keepalived

8,server1和server4安装mailx

9,scp此配置文件到对应目录,覆盖,在server4里面修改配置文件

vrrp_instance VI_1 {

    state BACKUP  #MASTER修改为BACKUP

    interface eth0

    virtual_router_id 28  #这个id和server1上面的必须一样

    priority 50 #优先权修改为50

10,server4启动keepalived

11,在/var/log/message下查看日志

12,本机客户端curl查看论调,如果server2httpd服务stop那么等待3s之后在curl自动不显示server2refusedserver1 ipvsadm -ln查看也不会出现server2,一定要注意3s的延时

 

测试,如果server1挂了

本机测试发现,curl没有任何影响,并且通过mail查看server4变成了master,给自己设置了vip,开始广播,arp -an | grep 100发现mac地址就是server4上面的,如果server1复活,那么它会把master抢回来,给自己设置vipserver4变成backuo state,移去viparp -an | grep 100发现来自server1

猜你喜欢

转载自blog.csdn.net/ha_weii/article/details/81290721