Shell编程实现Haproxy负载均衡集群的启动,关闭管理
#!/bin/bash#-------------------------Haproxy Server Management Shell script------------------------------------------------
#Authors are from JC
#time:2012-10-10
#QQ:408822635
#fromthe region Beijng.China.
#-------------------------Haproxy Server Management Shell script------------------------------------------------
case "$1" in
start)
BASE="/usr/local/haproxy/sbin/haproxy"
haproxy=`netstat -lntp|grep haproxy|wc -l`
if [ $haproxy -gt 0 ];then
echo "正在检测中,请稍候......"
sleep 3
echo "-----------------------------Haproxy负载均衡集群---------------------------------------"
echo "| |"
echo "| 已经在运行状态中,无需要启动 |"
echo "| |"
echo "-----------------------------Haproxy负载均衡集群---------------------------------------"
else
forhaproxy in /usr/local/haproxy/etc/haproxy.cfg
do
$BASE-f$haproxy >/dev/null 2>&1
done
echo "Haproxy负载均衡正在启动......"
sleep 3
echo "-------------------------------Haproxy负载均衡集群已经启动完成-------------------------------------------"
netstat -lntp|grep haproxy
echo "-------------------------------Haproxy负载均衡集群列表---------------------------------------------------"
fi
;;
stop)
BASE="/usr/local/haproxy/sbin/haproxy"
haproxy=`netstat -lntp|grep haproxy|wc -l`
if [ $haproxy == $? ];then
echo "正在检测中,请稍候......"
sleep 2
echo "Haproxy已经关闭,无需要再关闭"
echo "Haproxy已经关闭,无需要再关闭"
else
echo "Haproxy负载均衡服务正在关闭,请稍后.........."
sleep 2
for PIDFILE in /usr/local/haproxy/haproxy.pid
do
kill $(cat $PIDFILE) >/dev/null 2>&1
done
echo "Haproxy负载均衡集群服务已经关闭完成.....................done"
sleep 1
fi
;;
status)
haproxy=`netstat -lntp|grep haproxy|wc -l`
if [ $haproxy -gt 0 ];then
echo"Haproxy正在运行中..................OK"
else
echo "Haproxy已经是关闭状态...................stop"
fi
;;
restart)
BASE=/usr/local/haproxy/sbin/haproxy
CONFFILE=/usr/local/haproxy/etc/haproxy.cfg
echo"Haproxy正在重新启动,请稍等......................................."
for PIDFILE in /usr/local/haproxy/haproxy.pid
do
$BASE -f $CONFFILE -sf $(cat $PIDFILE) >/dev/null
done
echo "Haproxy负载均衡服务已经重新启动成功,请查看............................"
sleep2
echo "--------------------------------------------------------Haproxy重新启动后的进程数------------------------------------------------------------------------------------------------------"
ps -ef|grep haproxy
echo "--------------------------------------------------------Haproxy进程列表-------------------------------------------------------------------------------------------------"
;;
*)
echo "Usage: $haproxy {start|stop|status|restart}"
RETVAL=3
;;
esac
exit $RETVAL
页:
[1]