keepalived常用配置
global_defs {
script_user ubuntu
enable_script_security
}
vrrp_track_process track_apache {
process apache2
weight 10
}
vrrp_script keepalived_check {
script "/usr/local/bin/keepalived_check.sh"
interval 1
timeout 5
rise 18
fall 18
}
track_file track_app_file {
file /tmp/vrrp.txt
}
vrrp_instance VI_1 {
state BACKUP
interface enp0s8
virtual_router_id 51
priority 240
advert_int 1
authentication {
auth_type PASS
auth_pass 12345
}
virtual_ipaddress {
192.168.54.200/24
}
track_process {
track_apache
}
track_file {
track_app_file weight 2
}
track_script {
keepalived_check weight 8
}
}
使用keepalived配置mysql又主切换,非抢占式配置,当另一个节点恢复时不会抢占正常使用的节点:
- 两个节点的初始角色都为backup
- 优先级高的节点需要在脚本返回1时,将优先级降至备节点优先级以下;配置nopreept
- 低优先级的节点需要在脚本返回1时,不能设置weight;不配置nopreept;设置weight后,当主故障切至备并恢复后,备因非抢占仍然是master,此时当备故障后,因主非抢占不会抢占为master,不设置weight后,备故障后会将状态设置为fault,此时主才会变为master。
主节点:
global_defs {
router_id za193
}
vrrp_script chk_mysql {
script "/etc/keepalived/check_mysql.sh"
interval 10
timeout 7
weight -60
fall 2
rise 3
}
vrrp_instance VI_1 {
state BACKUP
interface enp4s1
virtual_router_id 195
nopreempt
priority 100
advert_int 2
authentication {
auth_type PASS
auth_pass za195
}
virtual_ipaddress {
10.10.xx.195
}
unicast_src_ip 10.10.xx.193
unicast_peer {
10.10.xx.194
}
track_script {
chk_mysql
}
}
备节点:
global_defs {
router_id za194
}
vrrp_script chk_mysql {
script "/etc/keepalived/check_mysql.sh"
interval 10
timeout 7
fall 2
rise 3
}
vrrp_instance VI_1 {
state BACKUP
interface ens9
virtual_router_id 195
priority 50
advert_int 2
authentication {
auth_type PASS
auth_pass za195
}
unicast_src_ip 10.10.xx.194
unicast_peer {
10.10.xx.193
}
virtual_ipaddress {
10.10.xx.195
}
track_script {
chk_mysql
}
}

浙公网安备 33010602011771号