haproxy-wi/app/scripts/add_vrrp.sh

51 lines
967 B
Bash
Raw Normal View History

2018-04-28 14:42:38 +00:00
#!/bin/bash
CONF=/etc/keepalived/keepalived.conf
2018-05-06 19:58:52 +00:00
IP=`sudo cat $CONF |grep $3 |sed s/' '//g|sed s/'\t'//g| head -1`
VI=`sudo cat /etc/keepalived/keepalived.conf |grep VI |awk '{print $2}' |awk -F"_" '{print $2}' |tail -1`
2018-04-28 17:55:55 +00:00
VI=$(($VI+1))
2018-04-28 14:42:38 +00:00
if [[ $IP == $3 ]];then
echo -e "error: VRRP address alredy use"
exit 1
fi
2018-05-06 19:58:52 +00:00
sudo bash -c cat << EOF >> $CONF
2018-04-28 17:55:55 +00:00
vrrp_instance VI_$VI {
2018-04-28 14:42:38 +00:00
state MASTER
interface eth1
virtual_router_id 101
priority 103
#check if we are still running
track_script {
chk_haproxy
}
advert_int 1
authentication {
auth_type PASS
auth_pass VerySecretPass2!
}
virtual_ipaddress {
0.0.0.1
}
}
EOF
if [ $? -eq 1 ]
then
echo "Can't read keepalived config"
exit 1
fi
2018-05-06 19:58:52 +00:00
sudo sed -i "s/MASTER/$1/g" $CONF
sudo sed -i "s/eth1/$2/g" $CONF
sudo sed -i "s/0.0.0.1/$3/g" $CONF
2018-04-28 14:42:38 +00:00
if [[ $1 == "BACKUP" ]];then
2018-05-06 19:58:52 +00:00
sudo sed -i "s/103/104/g" $CONF
2018-04-28 14:42:38 +00:00
fi
if [[ $4 == "1" ]];then
2018-05-06 19:58:52 +00:00
sudo systemctl restart keepalived
2018-04-28 14:42:38 +00:00
fi
echo "success"