1. 程式人生 > >keepalived之vrrp_script檢測指令碼許可權問題

keepalived之vrrp_script檢測指令碼許可權問題

使用nginx做負載均衡,keepalived做高可用。做一個檢查nginx指令碼,如果nginx停止了先嚐試重啟它,如果仍然失敗,則結束keepalived。下面程式碼並未寫結束keepalived,只是寫echo輸出,測試指令碼問題在哪裡。

主要程式碼如下:

vrrp_script chk_nginx {
    script "/etc/keepalived/check_nginx_pid.sh"  
    interval 3
}

vrrp_instance VI_1 {
  ......
    track_script {
        chk_nginx
    }
}

隨便寫個簡單指令碼如下:
[[email protected] ~]# cat /etc/keepalived/check_nginx_pid.sh

```
#!/bin/bash
echo "OK" >> /tmp/echo.log

然後給指令碼執行許可權:
[[email protected] ~]# chmod +x /etc/keepalived/check_nginx_pid.sh

結果/tmp/echo.log中什麼都沒有。經過多方尋找和測試,終於找到答案。

vrrp_script chk_nginx 
{	**//這個{要另起一行**
    script "/etc/keepalived/check_nginx_pid.sh"  
    interval 3
}
並且它要放在下面段落之前:
vrrp_instance VI_1 {
......
}

心中一萬隻草泥馬在奔騰