最近在做KEEPALIVED ——MYSQL的测试,遇到一个问题,故障测试stop掉network或者keepalived之后,都能正常VIP漂移。但是mysql停掉之后MASTER的VIP既不释放,也不迁移。下面上一下配置和VIP
MASTER:192.168.1.236 BACKUP:192.168.1.235 VIP:192.168.1.237
MASTER配置文件
#! Configuration File for keepalived
global_defs {
notification_email {
cnseek@gmail.com
}
notification_email_from sns-lvs@gmail.com
smtp_server 127.0.0.1
# smtp_connect_timeout 30
router_id MYSQL_HA1
}
vrrp_script check_mysql
{
#script "/etc/keepalived/check_mysql.sh"
script "killall -0 mysqld"
interval 3
weight -21
fall 2
rise 1
}
# 20081013 written by :netseek
# VIP1
vrrp_instance VI_1 {
state BACKUP #备份服务器上将MASTER改为BACKUP
interface eth0
virtual_router_id 51
priority 100 # 备份服务上将100改为99
nopreempt
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.237
#(如果有多个VIP,继续换行填写.)
}
track_script
{
check_mysql
}
}
BACKUP配置文件
#! Configuration File for keepalived
global_defs {
notification_email {
cnseek@gmail.com
}
notification_email_from sns-lvs@gmail.com
smtp_server 127.0.0.1
# smtp_connect_timeout 30
router_id MYSQL_HA2
}
vrrp_script check_mysql
{
#script "/etc/keepalived/check_mysql.sh"
script "killall -0 mysqld"
interval 3
weight -21
fall 2
rise 1
}
# 20081013 written by :netseek
# VIP1
vrrp_instance VI_1 {
state BACKUP #备份服务器上将MASTER改为BACKUP
interface eth0
virtual_router_id 51
priority 90 # 备份服务上将100改为99
nopreempt
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.237
#(如果有多个VIP,继续换行填写.)
}
track_script
{
check_mysql
}
}
下面是我在master上手动 service mysqld stop 后 masterVIP不释放的日志
下面事我在master上service keepalived stop后 master VIP正常释放的日志。
希望各位大神帮忙看一下,如果需要其他数据,我会提供。