192.168.100.129
mysql 主节点/keepalived 主节点
192.168.100.130
mysql 备节点/keepalived 备节点
192.168.100.150
虚拟IP
主备节点
yum install keepalived -y
vim/etc/keepalived/keepalived.conf! Configuration File forkeepalived
vrrp_instance VI_1 {
state MASTER #备节点设置为BACKUP
interface eth0
virtual_router_id51#主备保持一致
priority100#备节点90
advert_int1nopreempt
authentication {
auth_type PASS
auth_pass1111}
virtual_ipaddress {192.168.100.150#虚拟IP
}
}
virtual_server192.168.100.150 3306{ #虚拟IP
delay_loop6nat_mask255.255.255.0persistence_timeout50protocol TCP
real_server192.168.100.129 3306 { #真实IP 备节点为192.168.100.130weight3notify_down/root/mysql.sh#如果本地IP 3306端口宕掉 则执行该脚本(杀死keepalived进程)
TCP_CHECK {
connect_timeout3nb_get_retry3delay_before_retry3}
}
[root@localhost ~]# vim mysql.sh
#!/bin/bash
pkill keepalived
[root@localhost ~]# chmod +x mysql.sh
实验
说明keepalived已经开始工作
关闭主服务器 短暂的超时备服务器接管了虚拟IP
keepalived进程正在运行
[root@localhost ~]# ps -el | grep keepalived
1 S 0 16274 1 0 80 0 - 27926 poll_s ? 00:00:00 keepalived
5 S 0 16275 16274 0 80 0 - 28487 poll_s ? 00:00:00 keepalived
5 S 0 16276 16274 0 80 0 - 28457 poll_s ? 00:00:00 keepalived
[root@localhost ~]# systemctl stop mysqld 关闭mysql服务
keepalived 进程已经被kill