用nagios中的check_dns监测DNS服务

回复 收藏
本帖最后由 iiwoai 于 2011-8-15 10:37 编辑

一,添加单一检测
1、增加command服务,修改/usr/local/nagios/etc/objects/commands.cfg
vim /usr/local/nagios/etc/objects/commands.cfg
  1. # 'check dns'
  2. define command{
  3.         command_name    check_dns
  4.         command_line    $USER1$/check_dns -H $ARG1$ -s $ARG2$ -w  1 -c 2
  5.         }
此处设置为大于1秒WARNING,大于2秒CRITICAL,可根据自己需要设定
2、在/usr/local/nagios/etc/nagios.cfg 中新增配置文件
cfg_file=/usr/local/nagios/etc/objects/dns.cfg
vim /usr/local/nagios/etc/objects/dns.cfg
  1. define host{
  2.         use                        linux-server
  3.         host_name            125.39.87.251
  4.         alias               125.39.87.251
  5.         address                125.39.87.251
  6.         }
  7. define service{
  8.         use                       generic-service
  9.         host_name                 dns
  10.         service_description          dns_taobao
  11.         check_command     check_dns!www.taobao.com!125.39.87.251
  12.         #notifications_enabled   0
  13.         }
3、服务器上检测
  1. /usr/local/nagios/libexec/check_dns -H [url]www.taobao.com[/url] -s 125.39.87.251 -w 1 -c 2
DNS WARNING: 1.032 second response time. www.taobao.com returns 125.39.85.241,125.39.85.251,125.39.87.241,125.39.87.251|time=1.032280s;;;0.000000
超过1秒警告,正常
  1. /usr/local/nagios/libexec/check_dns -H [url]www.taobao.com[/url] -s 125.39.87.251 -w 2 -c 3
DNS OK: 1.019 second response time. www.taobao.com returns 125.39.85.241,125.39.85.251,125.39.87.241,125.39.87.251|time=1.019001s;;;0.000000

二、当我们有多台DNS服务器时,就要添加多台服务,那会相当麻烦,所以我们可以建立一个HOST组,然后统一执行check_dns服务
1、修改/usr/local/nagios/etc/objects/commands.cfg
vim /usr/local/nagios/etc/objects/commands.cfg
  1. # 'check dns'
  2. define command{
  3.         command_name    check_dns
  4.         command_line    $USER1$/check_dns -H $ARG1$ -s $HOSTADDRESS$ -w  1 -c 2
  5.         }
2、修改/usr/local/nagios/etc/objects/lhosts.cfg
  1. define host{
  2.         use                     linux-server
  3.         host_name               125.39.87.251
  4.         }
  1. define hostgroup{
  2.         hostgroup_name  G_dns ; The name of the hostgroup
  3.         alias           G_dns ; Long name of the group
  4.         members   125.39.87.251
  5.         }
此处可定义多个DNS服务器HOSTIP,中间用逗号隔开,定义之后把要监控的HOST添加到hostgroup里的members中
3、修改/usr/local/nagios/etc/objects/servers.cfg
  1. define service{
  2.         use                             generic-service
  3. #        host_name                       125.39.87.251
  4.         hostgroup_name                  G_dns
  5.         service_description              check-dns
  6.         check_command                   check_dns!www.taobao.com
  7.         #notifications_enabled   0
  8.         }
此处定义service 组为G_dns,所有HOST中G_dns里的服务器成员都执行service中的服务,这样就实现 定义一个服务,让多个服务器共同执行,省去了一个IP写一个services的麻烦
2011-08-11 17:31 举报
已邀请:
0

阿铭 管理员

赞同来自:

厉害。

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: