检测nginx 端口启用 关闭 keepalived
检测 nginx 进程;然后关闭 keepalived ,关闭漂移IP ;
cat nginx_pid.sh
#!/bin/bash while true do if [ $(netstat -tlnp|grep nginx|wc -l) -ne 1 ] then systemctl stop keepalived fi sleep 2 done
wc -l: 统计
-eq: 等于
-ne: 不等于
-le: 小于等于
-ge: 大于等于
-lt: 小于
-gt: 大于
这种只是检测关闭;切换还是需要手动到备机启动;
这个 grep 是判定 nginx 名称的进程 不是 有1 个的;就停止;
所以如果 同时开启 80 和 443 就会检测是 2 。
检测端口连接数。
netstat -tlnp|grep 443|wc -l