Keepalived

keepalived track_script 從不執行

  • January 25, 2017

這是我的 MASTER 節點的 keepalived.conf:

vrrp_script chk_test {
       script "exit 1"
       interval 2
       weight 2
}

vrrp_instance VI_1 {
   interface eth0
   state MASTER
   priority 200

   virtual_router_id 33
   unicast_src_ip 100.72.142.152
   unicast_peer {
       100.72.142.153
   }

   authentication {
       auth_type PASS
       auth_pass secret
   }

   track_script {
       chk_test
   }

   notify_master "/etc/keepalived/recover.sh MASTER"
   notify_backup "/etc/keepalived/recover.sh BACKUP"
   notify_fault "/etc/keepalived/recover.sh FAULT
}

第二個節點的配置與我的問題無關。據我了解,定義的腳本chk_test應該每兩秒執行一次,如果退出狀態不是 0,則notify_fault應該呼叫定義的腳本。

正如您所知道的,我的chk_test腳本只存在於 1 中,但似乎這個腳本從未真正執行過。我只是在這裡缺少一些基本的東西嗎?

事實證明,這是通過 Ubuntu 14.04 上的 apt-get 儲存庫提供的 keepalived 的問題。我使用相同的配置文件下載、編譯並執行了最新版本的 keepalived,一切執行正常。

引用自:https://serverfault.com/questions/788133