따라서 두 서버에서 keepalived를 실행 중이며 다른 서버로 장애 조치를 수행 할 수 없습니다.
아래에는 서버 중 하나에 대한 구성이 있습니다. 둘 사이의 유일한 차이점은 우선 순위 번호 마스터는 110이고 다시는 109입니다.
그러나 /etc/init.d/process stop keepalived를 사용하여 프로세스를 중지하면 실패하지 않습니다. 나는 단지 VRRP_Script (chk_script)가 실패하고 아무것도 얻지 못했습니다. 장애 조치가 없거나 아무것도 없습니다.
vrrp_script chk_script {
script "/usr/local/bin/failover.sh"
interval 2
weight 2
}
vrrp_instance HAInstance {
state BACKUP
interface eth0
virtual_router_id 8
priority 109
advert_int 1
nopreempt
vrrp_unicast_bind 10.10.10.8
vrrp_unicast_peer 10.10.10.9
virtual_ipaddress {
10.10.10.10/16 dev eth0
}
notify /usr/local/bin/keepalivednotify.sh
track_script {
chk_script weight 20
}
}
이것은 아래의 chk_script입니다. 내 스크립트로 killall -0 프로세스를 수행 할 때도 동일한 문제가 발생합니다.
!/bin/bash
SERVICE='process'
STATUS=$(ps ax | grep -v grep | grep $SERVICE)
if [ "$STATUS" != "" ]
then
exit 0
else
exit 1
fi
누구든지 이것에 대한 해결책을 알고 있습니까? 감사.