Keepalived監測指令碼一直不執行

2021-10-24 00:24:46 字數 1208 閱讀 8119

今天在搭建nginx+keepalived集群時,啟動keepalievd發現檢查指令碼不執行,指令碼本身是沒有問題的。

a=

`ps -c nginx --no-header |

wc -l`if[

$a -eq 0 ]

;then

/root/nginx/sbin/nginx

if[`ps -c nginx --no-header |

wc -l`

-eq 0 ]

;then

killall keepalived

fifi

其實出現這個問題也有很多人是因為指令碼本身就執行不起來。建議先測試自身指令碼是否有問題。如果有問題就換成我的吧,親測有效。

setenforce 0
然後再次啟動keepalived,檢查nginx是否有啟動(檢查指令碼是否執行):

剛剛那個操作只是暫時性的關閉selinux,我們重啟機器之後,selinux又會重新開啟。

sed -i "s/^selinux=.*/selinux=disabled/g" /etc/selinux/config
然後記得重啟機器。當然,除了我以上的情況會導致監測指令碼的不執行,還有一些其他情況。如:

1)你的檢查指令碼名字對不上!!!!!!

vrrp_script check_nginx 

vrrp_instance vi_1

track_script

}

2)script裡面檢查指令碼名字和檔名不一樣,或者路徑錯了!!!!!!!!!

vrrp_script check_nginx 

vrrp_instance vi_1

track_script

}

以上都是由於疏忽導致的錯誤。大家切記切記

開發監測keepalived裂腦的指令碼

檢測思路 在備節點上執行指令碼,如果可以ping通主節點並且備節點有vip就報警,讓人員介入檢查是否裂腦。在lb02備節點上開發指令碼並執行 root lb02 cat server scripts shell check split brain.sh bin bash author mr.ding...

keepalived監控指令碼未執行

keepalived監控指令碼未執行,檢視keepalived的狀態也是啟動的 原因 臨時關閉selinux,reboot伺服器後失效 永久生效方法 修改selinux配置檔案 vi etc selinux config 設定 selinux disabled 之前設定的是vi etc syscon...

乙個半通用網絡卡流量監測指令碼

v netinte ce 1 網絡卡名 v sleeptime 1 網絡卡名 v sleeptime 2 取樣間隔時間 單位 秒,規則 整數 f outfile 3 輸出檔名 v tx lastnetbytes 1 tx 上個取樣週期網絡卡位元組數 v tx nownetbytes 1 tx 當前取...