0
点赞
收藏
分享

微信扫一扫

5.Keeplived双机热备


文章目录

  • ​​1、实验规划​​
  • ​​2、配置环境​​
  • ​​3、Keepalived软件安装​​
  • ​​4、部署Keepalived服务​​
  • Keeplived概述
  • Keeplived实现了高可用集群
  • Keeplived最初是为了LVS设计的
  • 专门监控各服务器节点的状态
  • Keeplived后来加入了VRRP的功能,防止单点故障
  • Keeplived运行原理
  • Keeplived检测每个服务器的节点状态
  • 服务器节点异常或工作出现故障,Keeplived将故障节点从集群中剔除
  • 故障节点恢复后,Keeplived再将其加入到集群系统中
  • 所有工作自动完成,无需人工干预

1、实验规划

  • 准备三台Linux服务器,两台做Web服务器,并部署Keepalived高可用软件,一台作为客户端主机,实现如下功能:
  • 使用Keepalived实现web服务器的高可用
  • Web服务器IP地址分别为192.168.4.100和192.168.4.200
  • Web服务器的浮动VIP地址为192.168.4.80
  • 客户端通过访问VIP地址访问Web页面

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1axt6wD4-1598753738438)(https:#img-blog.csdnimg.cn/202007271723085.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDEzNjQ0Ng==,size_16,color_FFFFFF,t_70)]

主机名

网络配置

proxy

eth0:192.168.4.5

web1

eth0:192.168.4.100

VIP:192.168.4.80(keepalive会自动配置)

web2

eth0:192.168.4.200

VIP:192.168.4.80(keepalive会自动配置)

2、配置环境

  1. 设置Web1服务器网络参数、配置Web服务(不能照抄网卡名称)

[root@web1 ~]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.4.100/24 connection.autoconnect yes
[root@web1 ~]# nmcli connection up eth0
[root@web1 ~]# yum -y install httpd #安装软件
[root@web1 ~]# echo "192.168.4.100,我是web1" > /var/www/html/index.html #创建网页文件
[root@web1 ~]# systemctl restart httpd #启动服务器
[root@web1 ~]# systemctl enable httpd

  1. 设置Web2服务器网络参数、配置Web服务(不能照抄网卡名称)

[root@web2 ~]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.4.200/24 connection.autoconnect yes
[root@web2 ~]# nmcli connection up eth0
[root@web2 ~]# yum -y install httpd #安装软件
[root@web2 ~]# echo "192.168.4.200,我是web2" > /var/www/html/index.html #创建网页文件
[root@web2 ~]# systemctl restart httpd #启动服务器
[root@web1 ~]# systemctl enable httpd

  1. 配置proxy主机的网络参数(如果已经设置,可以忽略此步骤)

[root@proxy ~]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.4.5/24 connection.autoconnect yes
[root@proxy ~]# nmcli connection up eth0

3、Keepalived软件安装

两台Web服务器做相同的操作

[root@web1 ~]# yum install -y keepalived
[root@web2 ~]# yum install -y keepalived

4、部署Keepalived服务

  1. 防火墙和SELinux

[root@web1 ~]# firewall-cmd --set-default-zone=trusted
[root@web1 ~]# sed -i '/SELINUX/s/enforcing/permissive/' /etc/selinux/config
[root@web1 ~]# setenforce 0
[root@web2 ~]# firewall-cmd --set-default-zone=trusted
[root@web2 ~]# sed -i '/SELINUX/s/enforcing/permissive/' /etc/selinux/config
[root@web2 ~]# setenforce 0

  1. 修改web1服务器Keepalived配置文件

[root@web1 ~]# vim /etc/keepalived/keepalived.conf
````````````````省略部分内容
global_defs {
````````````````省略部分内容
router_id web1 #12行,设置路由ID号(实验需要修改)
vrrp_iptables #13行,清除防火墙的拦截规则(实验需要修改,手动添加该行)
````````````````省略部分内容
}
vrrp_instance VI_1 {
state MASTER #21行,主服务器为MASTER(备服务器需要修改为BACKUP)
interface eth0 #22行,VIP配在哪个网卡(实验需要修改,不能照抄网卡名)
virtual_router_id 51 #23行,主备服务器VRID号必须一致
priority 100 #24行,服务器优先级,优先级高优先获取VIP
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress { #30~32行,谁是主服务器谁获得该VIP(实验需要修改)
192.168.4.80
}
}
````````````````剩下的全部删除

  1. 修改web2服务器Keepalived配置文件

[root@web2 ~]# vim /etc/keepalived/keepalived.conf
````````````````省略部分内容
global_defs {
````````````````省略部分内容
router_id web2 #12行,设置路由ID号(实验需要修改)
vrrp_iptables #13行,清除防火墙的拦截规则(实验需要修改,手动添加该行)
````````````````省略部分内容
}
vrrp_instance VI_1 {
state BACKUP #21行,主服务器为MASTER(备服务器需要修改为BACKUP)
interface eth0 #22行,VIP配在哪个网卡(实验需要修改,不能照抄网卡名)
virtual_router_id 51 #23行,主备服务器VRID号必须一致
priority 50 #24行,服务器优先级,优先级高优先获取VIP
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress { #30~32行,谁是主服务器谁获得该VIP(实验需要修改)
192.168.4.80
}
}
````````````````剩下的全部删除

  1. 启动服务

[root@web1 ~]# systemctl start keepalived
[root@web1 ~]# systemctl enable keepalived.service
[root@web2 ~]# systemctl start keepalived
[root@web2 ~]# systemctl enable keepalived.service

  1. 测试

[root@web1 ~]# ip addr show      
#可以看到web1的本地新增了一个192.168.4.80的ip地址
#此时将web1关机


[root@web2 ~]# ip addr show
#可以看到192.168.4.80的ip地址出现在了web2中
#此时将web1启动,可以看到192.168.4.80 这个地址又回到了优先级更高的web1服务器上

[root@proxy ~]# curl 192.168.4.80


举报

相关推荐

0 条评论