В настоящее время я тестирую keepalived на двух узлах.Всякий раз, когда я впервые запускаю keepalived на узле MASTER, пока keepalived не запускается на узле BACKUP, он сигнализирует сценарий notify_master в среде MASTER.
Я просмотрел документацию и нашел параметр alpha
.Я пытался использовать это, но это не было признано.Тогда я понял, что это для группы виртуальных серверов, но я использую только vrrp_instance.
Я также обнаружил, что есть notify_stop
, но нет notify_start
.
Я попытался переместить сценарий, используя только notify
, но это вызвало одновременное выполнение сценариев как на главном, так и на резервном узлах.
Вот основная конфигурация.Конфигурация резервного копирования аналогична за исключением IP и состояния.Приоритет резервного копирования - 101.
global_defs {
router_id VI_1
}
vrrp_script chk_proxysql {
script "/usr/sbin/pidof proxysql"
interval 1
fall 2
weight 20
}
vrrp_instance VI_1 {
debug 2
advert_int 1
interface eth0 # interface to monitor
state MASTER
virtual_router_id 51
priority 102
unicast_src_ip 10.11.x.x
unicast_peer {
10.11.x.x
}
authentication {
auth_type PASS
auth_pass password
}
track_script {
chk_proxysql weight 20
}
notify_master /var/tmp/swap.sh
notify /var/tmp/notify-state.sh
}
Если он запускается в первый раз на узле MASTER, мне бы хотелось, чтобы он не вызывал скрипт notify_master.