#!/bin/bash RPORT=6380 VIP="192.168.0.224" VIP_NETMASK="255.255.255.255" IP=$(ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6 | awk '{print $2}'|grep -v VIP) EXISTPORT=$(netstat -an | grep 6380 | grep LISTEN | wc -l) NETNAME=$(ls /sys/class/net | grep -v lo) REDIS_HOME='/usr/local/shopnc/redis-5.0.0' REDIS_NAME=$($REDIS_HOME/src/redis-cli -h $IP -p $RPORT INFO replication | grep role|tr -d '\r' | cut -d: -f2) if [ $EXISTPORT -eq 0 ] then ip addr del "$VIP/32" dev $NETNAME exit 0 else if [ "$REDIS_NAME" = "master" ] then ifconfig "$NETNAME:1" $VIP netmask $VIP_NETMASK fi fi