我平常監控方式是這樣子的
define host { host_name A1 alias A1 address 1.1.1.1 } define service { host_name A1 service_description ping } define service { host_name A1 service_description http
有一台主機 A1,我監控了 ping 及 http
我今天再特別監控 A1 主機上的某個 domain,所以再新增一個 host,並標記這個 domain 是 alias A1 (容易辨識)
define host { host_name ssorc.tw alias A1 address ssorc.tw } define service { host_name ssorc.tw service_description http
當 ssorc.tw 因特殊情況連線不到了,nagios 也只會alarm 它而已,
那如果現在是 A1 主機連不到呢,那是不是會全 alarm 了 !! (不過也只是會alarm host A1 及 host ssorc.tw 而已,nagios 本身就有基本的相依性,service 是不會 alarm 的)
所以會收到兩個 notification
nagios 有 define hostdependency 及 define servicedependency 可以讓 ssorc.tw 連不到時,先去看 A1 是不是也有相同問題,要 alarm 也只讓 A1 alarm 就好了,ssorc.tw 就給我安靜一下
這邊只針對 ssorc.tw 設定即可,因為我是要讓 ssorc.tw 依靠 A1 存活
define hostdependency { dependent_host_name ssorc.tw # 必要,dependent_host_name 參數是老大 host_name A1 # 必要,依靠誰 execution_failure_criteria n # none,讓 nagios 持續 check notification_failure_criteria d,u } define servicedependency{ dependent_host_name ssorc.tw # 必要,這個參數也是老大 dependent_service_description http # 必要,這個要與 ssorc.tw 的 service_description 相同 host_name A1 # 必要,依靠誰 service_description http # 必要,這個要與 A1 的 service_description 相同 execution_failure_criteria n notification_failure_criteria w,u,c }
這時就只有 A1 這個 notification
hostdependency 只對 host,servicedependency 只對 service
留言