Nagios监控Linux和Windows主机(4)

Nagios服务器端配置

第一种方法:如果只是定义一台windows主机,那么可以使用templates.cfg里面的windows配置板,此处我只定义一台windows主机,所以我使用模板

1.     首先更改nagios.cfg配置文件,让其支持windows.cfg定义对象,找到41行,去掉前面#号

 

 

2.查看nagios的命令配置定义对象,看是否有check_nt的定义,如果没有,自行加入(此处commands.cfg文件中已有定义,不用自己编写)

 

 

Nagios监控Linux和Windows主机

3.定义主机,编辑objects/windows.cfg文件,此文件中,只需更改29行的ip地址即可,改成被监控端windows的(由于此文件中已经写好要监控的东西,所以不用再另行编写,如果想定义此文件中没有的内容,可自动编写)

 

4.最后检查配置是否正确,

 

Nagios监控Linux和Windows主机

 

重启nagios服务

 

 

在nagios服务端的操作

1)编辑nagios.cfg配置文件,

[root@localhost ~]# vim /usr/local/nagios/etc/nagios.cfg

40 cfg_file=/usr/local/nagios/etc/objects/windows.cfg   #去掉此行#号

 

 2)查看Nagios服务器下定义check_nt命令

[root@localhost etc]# vim commands.cfg

define command {

command_name   check_nt

command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -v $ARG1$ $ARG2$

}

 #如果只是一台windows主机,可以简单的更改以下模板,如果是多台主机,那么就在nagios.cfg中定义cfg.dir,以方便管理

3)定义windows.cfg对象

[root@localhost ~]# cd /usr/local/nagios/etc/objects/
[root@localhost objects]# vim windows.cfg

首先定义一个需要监控的主机,本例为监控Winserver2003,命令如下:

define host {

        host_name                       winserver2003

        alias                             My Windows Server

        address                          192.168.1.3

        use                              windows-server,host-pnp

}

 

3)     监控 windows 主机的 CPU 负载

define service {

        host_name                       winserver2003

        service_description                cpuload

        use                              generic-service

        check_command                  check_nt!CPULOAD!-l 5,70,80,10,80,90

}

注:#CPU如果到达80%则报警,到达90%则警笛

 

4)     监控 windows 主机的内存使用状况

define service {

        host_name                       winserver2003

        service_description                Memory Usage

        use                              generic-service

        check_command                  check_nt!MEMUSE!-w 80 -c 90

}

注:内存使用到达80%则warn,到达90%则Critical

 

5)     监控 windows 主机的开机运作时间

define service {

        host_name                       winserver2003

        service_description                Uptime

        use                              generic-service

        check_command                  check_nt!UPTIME

}

 

6)     检查windows主机是否已经安装了NSClient++,及它的版本号

define service {

        host_name                       winserver2003

        service_description                NSClient++ Version

        use                              generic-service

        check_command                  check_nt!CLIENTVERSION

}

 

7)     监控 windows 主机的 C:\ 的空间使用量

define service {

        host_name                     winserver2003

        service_description              C:\ Drive Space

        use                            generic-service

        check_command                check_nt!USEDDISKSPACE!-l c! -w 80 -c 90

}

 

8)     监控 windows主机的W3SVC设置的动作状况

define service{

     host_name           winserver2003
     use                 generic-service
     service_description    W3SVC
     check_command      check_nt!SERVICESTATE!-d SHOWALL -l W3SVC
 }

 

9)     监控 windows 主机的 Explorer.exe 进程运作状况,如程序终止,则会发 Critical

define service {

      host_name              winserver2003

      service_description       Explorer

      use                     generic-service

      check_command         check_nt!PROCSTATE! -d SHOWALL -l explorer.exe

}

 

10)   监控 windows 主机的SNMP服务的运作状况,如服务终止,则会发CRITICAL

define service{
use                      generic-service
host_name               winserver2003
service_description       SNMP
check_command         check_nt!SERVICESTATE!-d SHOWALL -l "SNMP Service"
 }

 

9)监控Windows主机的MySQL服务运行情况,如服务终止,则会发出CRITICAL

     define service {

        host_name               winserver2003

        service_description       MySQL55

        use                      generic-service

        check_command         check_nt!SERVICESTATE! -d SHOWALL -l MySQL55

      }

最后检查配置是否正确

 

重启nagios服务

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/e826a2e112fbaaf02b5b96ba1d4844f8.html