55 lines
1.1 KiB
Bash
55 lines
1.1 KiB
Bash
#! /bin/bash
|
|
|
|
if [ ! -f /run/keepalived.pid ] || [ ! -f /run/keepalived.pid.save ]; then
|
|
echo "check keepalived.pid and run/keepalived.pid.save file not exists"
|
|
exit 1
|
|
fi
|
|
|
|
NOW_MAIN_PID=$(/usr/bin/cat /run/keepalived.pid)
|
|
|
|
if [ -f /run/checkers.pid ]; then
|
|
NOW_CHECKERS_PID=$(/usr/bin/cat /run/checkers.pid)
|
|
else
|
|
NOW_CHECKERS_PID=0
|
|
fi
|
|
|
|
if [ -f /run/vrrp.pid ]; then
|
|
NOW_VRRP_PID=$(/usr/bin/cat /run/vrrp.pid)
|
|
else
|
|
NOW_VRRP_PID=0
|
|
fi
|
|
|
|
count=1;
|
|
|
|
while read LINE
|
|
do
|
|
if [ $count = 1 ]; then
|
|
if [ $NOW_MAIN_PID != $LINE ]; then
|
|
echo "check main pid $LINE ...... [fail]"
|
|
exit 1
|
|
fi
|
|
echo "check main pid $LINE ...... [pass]"
|
|
fi
|
|
|
|
if [ $count = 2 ]; then
|
|
if [ $NOW_CHECKERS_PID != $LINE ]; then
|
|
echo "check checker pid $LINE ... [fail]"
|
|
exit 1
|
|
fi
|
|
echo "check checker pid $LINE ... [pass]"
|
|
fi
|
|
|
|
if [ $count = 3 ]; then
|
|
if [ $NOW_VRRP_PID != $LINE ]; then
|
|
echo "check vrrp pid $LINE ...... [fail]"
|
|
exit 1
|
|
fi
|
|
echo "check vrrp pid $LINE ...... [pass]"
|
|
fi
|
|
|
|
count=$[ $count + 1 ]
|
|
|
|
done < /run/keepalived.pid.save
|
|
|
|
exit 0
|