部署keepalived高可用服务器

Keepalived高可用服务器

环境准备

主web1: 192.168.4.100
备web2: 192.168.4.200
client: 192.168.4.5

配置环境

web1服务器ip设置为192.168.4.100
安装apache并设置web1默认页面

[root@web1 ~]# yum -y install httpd
[root@web1 ~]# echo "192.168.4.100" > /var/www/html/index.html
[root@web1 ~]# systemctl restart httpd

web2服务器ip设置为192.168.4.200
安装apache并设置web2默认页面

[root@web1 ~]# yum -y install httpd
[root@web1 ~]# echo "192.168.4.200" > /var/www/html/index.html
[root@web1 ~]# systemctl restart httpd

web服务器安装Keepalived软件

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

部署Keepalived服务

(1)web1修改keepalived配置文件

    [root@web1 ~]# vim /etc/keepalived/keepalived.conf
    global_defs {
      notification_email {
        [email protected]                //设置报警收件人邮箱
      }
      notification_email_from ka@localhost    //设置发件人
      smtp_server 127.0.0.1                //定义邮件服务器
      smtp_connect_timeout 30
      router_id  web1                        //设置路由ID号(实验需要修改)
    }
    vrrp_instance VI_1 {
      state MASTER                         //主服务器为MASTER(备服务器需要修改为BACKUP)
      interface eth0                    //定义网络接口
      virtual_router_id 51                //主备服务器VRID号必须一致
      priority 100                     //服务器优先级,优先级高优先获取VIP
      advert_int 1
      authentication {
        auth_type pass
        auth_pass 1111                       //主备服务器密码必须一致
      }
      virtual_ipaddress {                   //谁是主服务器谁获得该VIP(实验需要修改)
    192.168.4.80 
    }    
    }

(2)web2修改Keepalived配置文件

    [root@web2 ~]# vim /etc/keepalived/keepalived.conf
    global_defs {
      notification_email {
        [email protected]                //设置报警收件人邮箱
      }
      notification_email_from ka@localhost    //设置发件人
      smtp_server 127.0.0.1                //定义邮件服务器
      smtp_connect_timeout 30
      router_id  web2                        //设置路由ID号(实验需要修改)
    }
    vrrp_instance VI_1 {
      state BACKUP                             //备服务器为BACKUP(实验需要修改)
      interface eth0                        //定义网络接口
      virtual_router_id 51                    //主辅VRID号必须一致
      priority 50                             //服务器优先级(实验需要修改)
      advert_int 1
      authentication {
         auth_type pass
         auth_pass 1111                       //主辅服务器密码必须一致
      }
      virtual_ipaddress {                 //谁是主服务器谁配置VIP(实验需要修改)
    192.168.4.80 
     }   
    }

(3)启动服务

    [root@web1 ~]# systemctl start keepalived
    [root@web2 ~]# systemctl start keepalived

(4)web1和web2分别配置SElinux和防火墙

    [root@web1 ~]# iptables -F
    [root@web1 ~]# setenforce 0
    [root@web2 ~]# iptables -F
    [root@web1 ~]# setenforce 0

测试

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

    [root@web1 ~]# ip a   s   eth0
    [root@web2 ~]# ip a   s   eth0

总结:keepalived通过浮动ip实现服务器的高可用。主服务器会定时的向备份服务器发送消息。告诉备份服务器自己还活着。当备份服务器收不到主服务器的消息后,备份服器会认为主服务器坏掉了。这时他就会接管主服务器的工作,获取主服务器的虚拟ip(vip),从而继续工作。

发布了5 篇原创文章 · 获赞 0 · 访问量 29

猜你喜欢

转载自blog.csdn.net/tomcat_lsh/article/details/104465489