我平常監控方式是這樣子的

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

最後修改日期: 2014 年 04 月 28 日

作者

留言

撰寫回覆或留言

發佈留言必須填寫的電子郵件地址不會公開。