您好,欢迎访问代理记账网站
  • 价格透明
  • 信息保密
  • 进度掌控
  • 售后无忧

Keepalived实现web高可用

Keepalived高可用服务器

准备三台Linux服务器,两台做Web服务器,并部署Keepalived高可用软件,一台作为客户端主机,实现如下功能

  • 使用Keepalived实现web服务器的高可用
  • Web服务器IP地址分别为192.168.4.100和192.168.4.200
  • Web服务器的浮动VIP地址为192.168.4.80
  • 客户端通过访问VIP地址访问Web页面

 

配置网络环境

设置Web1服务器网络参数、配置Web服务

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

设置Web2服务器网络参数、配置Web服务

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

配置proxy主机的网络参数用proxy当作客户端主机

  1. [root@proxy ~]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.4.5/24 connection.autoconnect yes
  2. [root@proxy ~]# nmcli connection up eth0           #开启网卡

安装Keepalived软件

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

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

部署Keepalived服务

修改web1服务器Keepalived配置文件

  1. [root@web1 ~]# vim /etc/keepalived/keepalived.conf
  2. global_defs {
  3. router_id web1        #12行,设置路由ID号(实验需要修改)
  4. vrrp_iptables            #13行,清除防火墙的拦截规则(实验需要修改,手动添加该行)
  5. }
  6. vrrp_instance VI_1 {
  7. state MASTER            #21行,主服务器为MASTER(备服务器需要修改为BACKUP)
  8. interface eth0            #22行,VIP配在哪个网卡(实验需要修改,不能照抄网卡名)
  9. virtual_router_id 51        #23行,主备服务器VRID号必须一致
  10. priority 100               #24行,服务器优先级,优先级高优先获取VIP
  11. advert_int 1
  12. authentication {
  13. auth_type pass
  14. auth_pass 1111                      
  15. }
  16. virtual_ipaddress {        #30~32行,谁是主服务器谁获得该VIP(实验需要修改)
  17. 192.168.4.80/24
  18. }
  19. }

修改web2服务器Keepalived配置文件

  1. [root@web2 ~]# vim /etc/keepalived/keepalived.conf
  2. global_defs {
  3. router_id web2        #12行,设置路由ID号(实验需要修改)
  4. vrrp_iptables            #13行,清除防火墙的拦截规则(实验需要修改,手动添加该行)
  5. }
  6. vrrp_instance VI_1 {
  7. state BACKUP            #21行,备服务器为BACKUP(实验需要修改)
  8. interface eth0            #22行,VIP配在哪个网卡(实验需要修改,不能照抄网卡名)
  9. virtual_router_id 51        #23行,主辅VRID号必须一致
  10. priority 50                #24行,服务器优先级(实验需要修改)
  11. advert_int 1
  12. authentication {
  13. auth_type pass
  14. auth_pass 1111                  
  15. }
  16. virtual_ipaddress {        #30~32行,谁是主服务器谁配置VIP(实验需要修改)
  17. 192.168.4.80/24
  18. }
  19. }

启动服务

  1. [root@web1 ~]# systemctl start keepalived
  2. [root@web2 ~]# systemctl start keepalived

配置防火墙和SELinux

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

 

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

 

测试

登录两台Web服务器查看VIP信息

  1. [root@web1 ~]# ip addr show
  2. [root@web2 ~]# ip addr show

客户端访问

客户端使用curl命令连接http://192.168.4.80,查看Web页面;给Web1关机,客户端再次访问http://192.168.4.80,验证是否可以正常访问服务。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


分享:

低价透明

统一报价,无隐形消费

金牌服务

一对一专属顾问7*24小时金牌服务

信息保密

个人信息安全有保障

售后无忧

服务出问题客服经理全程跟进