目录
keepalived概述
keepalived实现了高可用集群,它主要是解决调度器出现的单点故障问题,最初是为LVS设计的,专门监控各种服务器哦节点的状态,后来加入了VRRP功能,防止单点故障。
VRRP:虚拟冗余路由协议,IETF公共标准
HSRP:热备份路由协议,思科私有
keepalived运行的原理
keepalived检测每个服务器节点状态,服务器节点异常或工作出现故障,keepalived将故障节点从集群系统中踢出
故障节点恢复后,keepalived再将其加入到集群系统中,所有工作自动完成,无需人工干预。
搭建高可用的web集群‘
1.node2和node3提供web服务。
由于没有过多的用户访问,只有一台服务工作即可,另一台只是起到备份作用。
2.安装
[root@pk1 haproxy]# yum install -y keepalived
3.修改配置文件
[root@pk1 ~]# vim /etc/keepalived/keepalived.conf
主配置文件设置
1 ! Configuration File for keepalived
2
3 global_defs {
4 notification_email { -------编写通知邮件
5 acassen@firewall.loc
6 failover@firewall.loc
7 sysadmin@firewall.loc
8 }
9 notification_email_from Alexandre.Cassen@firewall.loc ---指定邮件的来源
10 smtp_server 192.168.200.1 ----使用发邮件的邮件服务器
11 smtp_connect_timeout 30
12 router_id LVS_DEVEL
13 vrrp_skip_check_adv_addr
14 # vrrp_strict ----该行要注释掉,不然起服务的时候,会自动设置防火墙的规则,导致出错误
15 vrrp_garp_interval 0
16 vrrp_gna_interval 0
17 }
19 vrrp_instance VI_1 { ------创建VRRP实例
20 state MASTER #d辅助写BACKUP
21 interface eth0
22 virtual_router_id 51 ---虚拟路由器ip号
23 priority 150 ----优先级
24 advert_int 1 ---发通知的时间,两台服务器相互通信,心跳消息发送间隔
25 authentication { -----两台服务器相互验证的密码,集群成员共享密码
26 auth_type PASS
27 auth_pass 1111
28 }
29 virtual_ipaddress {
30 192.168.4.200 -----设置虚拟VIP
31
32
33 }
34 }
备配置文件设置
[root@pk2 ~]# vim /etc/keepalived/keepalived.conf
1 ! Configuration File for keepalived
2
3 global_defs {
4 notification_email { -------编写通知邮件
5 acassen@firewall.loc
6 failover@firewall.loc
7 sysadmin@firewall.loc
8 }
9 notification_email_from Alexandre.Cassen@firewall.loc ---指定邮件的来源
10 smtp_server 192.168.200.1 ----使用发邮件的邮件服务器
11 smtp_connect_timeout 30
12 router_id LVS_DEVEL
13 vrrp_skip_check_adv_addr
14 # vrrp_strict ----该行要注释掉,不然起服务的时候,会自动设置防火墙的规则,导致出错误
15 vrrp_garp_interval 0
16 vrrp_gna_interval 0
17 }
19 vrrp_instance VI_1 { ------创建VRRP实例
20 state BACKUP #d辅助写
21 interface eth0
22 virtual_router_id 51 ---虚拟路由器ip号
23 priority 100 ----优先级
24 advert_int 1 ---发通知的时间,两台服务器相互通信,心跳消息发送间隔
25 authentication { -----两台服务器相互验证的密码,集群成员共享密码
26 auth_type PASS
27 auth_pass 1111
28 }
29 virtual_ipaddress {
30 192.168.4.200 -----设置虚拟VIP
31
32
33 }
34 }
4.启动服务
[root@pk2 ~]# systemctl status keepalived.service
[root@pk2 ~]# systemctl restart keepalived.service ---启动服务
[root@pk2 ~]# cat /var/log/messages |grep keepalived ---查看日志信息