添加完成后,为check_nginx.sh 文件授权,便于脚本获得执行权限。
[root@localhost keepalived]# chmod -R 777 /etc/keepalived/check_nginx.sh
2.在Master 节点 /etc/keepalived目录下,添加keepalived.conf 文件,具体信息如下:
vrrp_script chk_nginx {
script "/etc/keepalived/check_nginx.sh" //检测nginx进程的脚本
interval 2
weight -20
}
global_defs {
notification_email {
//可以添加邮件提醒
}
}
vrrp_instance VI_1 {
state MASTER #标示状态为MASTER 备份机为BACKUP
interface ens33 #设置实例绑定的网卡(ip addr查看,需要根据个人网卡绑定)
virtual_router_id 51 #同一实例下virtual_router_id必须相同
mcast_src_ip 192.168.43.101
priority 250 #MASTER权重要高于BACKUP 比如BACKUP为240
advert_int 1 #MASTER与BACKUP负载均衡器之间同步检查的时间间隔,单位是秒
nopreempt #非抢占模式
authentication { #设置认证
auth_type PASS #主从服务器验证方式
auth_pass 123456
}
track_script {
check_nginx
}
virtual_ipaddress { #设置vip
192.168.43.150 #可以多个虚拟IP,换行即可
}
}
3.在Backup节点 etc/keepalived目录下添加 keepalived.conf 配置文件
信息如下:
vrrp_script chk_nginx {
script "/etc/keepalived/check_nginx.sh" //检测nginx进程的脚本
interval 2
weight -20
}
global_defs {
notification_email {
//可以添加邮件提醒
}
}
vrrp_instance VI_1 {
state BACKUP #标示状态为MASTER 备份机为BACKUP
interface ens33 #设置实例绑定的网卡(ip addr查看)
virtual_router_id 51 #同一实例下virtual_router_id必须相同
mcast_src_ip 192.168.43.102
priority 240 #MASTER权重要高于BACKUP 比如BACKUP为240
advert_int 1 #MASTER与BACKUP负载均衡器之间同步检查的时间间隔,单位是秒
nopreempt #非抢占模式
authentication { #设置认证
auth_type PASS #主从服务器验证方式
auth_pass 123456
}
track_script {
check_nginx
}
virtual_ipaddress { #设置vip
192.168.43.150 #可以多个虚拟IP,换行即可
}
}
Tips: 关于配置信息的几点说明
state - 主服务器需配成MASTER,从服务器需配成BACKUP interface - 这个是网卡名,我使用的是VM12.0的版本,所以这里网卡名为ens33 mcast_src_ip - 配置各自的实际IP地址 priority - 主服务器的优先级必须比从服务器的高,这里主服务器配置成250,从服务器配置成240 virtual_ipaddress - 配置虚拟IP(192.168.43.150) authentication - auth_pass主从服务器必须一致,keepalived靠这个来通信 virtual_router_id - 主从服务器必须保持一致5.集群高可用(HA)验证
Step1 启动Master机器的Keepalived和 Nginx服务
[root@localhost keepalived]# keepalived -D -f /etc/keepalived/keepalived.conf [root@localhost keepalived]# service nginx start








