云计算学习之路——Keepalived+LVS

keepalived+LVS实现LVS的高可用

1、实验环境

共需要五台虚拟机:

虚拟机1,虚拟机2:安装nginx.。
使用nginx的web服务器功能,作为真正的web服务器提供服务。

虚拟机3,虚拟机4:安装LVS和keepalived。
作用有两个:1、使用LVS作为负载均衡服务器转发用户请求到真实服务器中。2、安装keepalived实现负载均衡的高可用,虚拟机3作为lvs-master,虚拟机4作为lvs-backup。

虚拟机5:作为客户端,用于集群的测试,无需任何配置。

2、web服务器搭建

为了省时间,直接在nginx默认发布目录/usr/share/nginx/html/index.htm中写入测试内容,没有重新编写配置文件。

虚拟机1进行如下操作:

安装并开启nginx,并在nginx默认发布目录中写入测试内容

[root@web-1 ~]# yum -y install nginx
[root@web-1 ~]# systemctl start nginx
[root@web-1 ~]# echo web-1 > /usr/share/nginx/html/index.html

虚拟机2进行如下操作:

同虚拟机1 的操作一样

[root@web-2 ~]# yum -y install nginx
[root@web-2 ~]# systemctl start nginx
[root@web-2 ~]# echo web-2 > /usr/share/nginx/html/index.html

虚拟机5进行如下操作

验证两台web服务器是否搭建好
在这里插入图片描述

3、LVS服务器搭建

虚拟机3虚拟机4均完成如下操作:

[root@lvs-master ~]# yum -y install ipvsadm keepalived
[root@lvs-master ~]# ip a a dev ens33 192.168.58.140/32
[root@lvs-master ~]# ipvsadm -S > /etc/sysconfig/ipvsadm
[root@lvs-master~]# systemctl start ipvsadm
[root@lvs-master ~]# ipvsadm -A -t 192.168.58.140:80 -s rr
[root@lvs-master ~]# ipvsadm -a -t 192.168.58.140:80 -r 192.168.58.155:80 -g
[root@lvs-master ~]# ipvsadm -a -t 192.168.58.140:80 -r 192.168.58.162:80 -g
在这里插入图片描述
在这里插入图片描述

虚拟机1虚拟机2完成如下操作:

[root@web-1 ~]# ip a a dev lo 192.168.58.140/32
[root@web-1 ~]# vim /etc/sysctl.conf
[root@web-1 ~]# sysctl -p
在这里插入图片描述
在这里插入图片描述
[root@web-1 ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

至此,lvs搭建成功

虚拟机5验证LVS
在这里插入图片描述

4、Keepalived实现LVS高可用的配置

虚拟机3的操作:

[root@lvs-master ~]# cp /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak
[root@lvs-master ~]# vim /etc/keepalived/keepalived.conf

配置文件内容如下:

! Configuration File for keepalived

global_defs {
    
    
   router_id lvs-keepalived-master
}

vrrp_instance VI_1 {
    
    
    state MASTER
    interface ens33          #VIP绑定接口
    virtual_router_id 80     #VRID 同一组集群,主备一致   
    priority 100             #本节点优先级,backup优先级要小于master
    advert_int 1              #检查间隔,默认为1s
    authentication {
    
    
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
    
    
        192.168.58.140/24    #vip
    }
}

virtual_server 192.168.58.140 80 {
    
        #LVS配置
        delay_loop 3
        lb_algo rr    #LVS调度算法
        lb_kind DR    #LVS集群模式(路由模式)
        nat_mask 255.255.255.0
        protocol TCP    #健康检查使用的协议
        real_server 192.168.58.155 80 {
    
    
                weight 1
                inhibit_on_failure    #当该节点失败时,把权重设置为0,而不是从IPVS中删除
                TCP_CHECK {
    
         #健康检查
                        connect_port 80    #检查的端口
                        connect_timeout 3    #连接超时的时间
                }
        }
        real_server 192.168.58.162 80 {
    
    
                weight 1
                inhibit_on_failure
                TCP_CHECK {
    
    
                        connect_timeout 3
                        connect_port 80
                }
        }
}

虚拟机4的操作:

[root@lvs-backup ~]# cp /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak
[root@lvs-backup ~]# vim /etc/keepalived/keepalived.conf
配置文件内容与虚拟机3大致相同,红框内为区别,配置如下:
在这里插入图片描述

虚拟机3虚拟机4都开启keepalived

[root@lvs-master ~]# systemctl start keepalived

ip a查看vip,vip存在于master服务器中
在这里插入图片描述

虚拟机5验证:

在这里插入图片描述
访问成功,LVS高可用配置成功

6、高可用验证

虚拟机3关闭keepalived,模拟keepalived宕机
在这里插入图片描述

虚拟机5仍能访问,证明LVS的keepailved高可用部署成功
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44178770/article/details/124535257
今日推荐