当前位置 主页 > 服务器问题 > win服务器问题汇总 >

    Nagios监控Windows Server 2008配置方法

    栏目:win服务器问题汇总 时间:2018-09-20 10:22

    Nagios监控windows服务器有三种实现方式:SNMP,NSClient++,NRPE,后面两种方式都需要在Windows服务器上安装agent,今天只和大家分享使用NSClient++方式来监控Windows Server 2008

    1.安装NSClient++

    访问http://nsclient.org/nscp/下载NSClient++,这里我使用的是NSClient++-0.3.9-x64的msi安装包。下载之后直接安装,过程中会提示输入Nagios监控服务器地址和密码。地址填写正确,密码不用设置。Nagios监控服务器事先在监控Linux服务器时候已经搭建好,以后再和大家分享。
    安装如下图所示:

    2.配置NSClient++

    编辑安装目录下的NES.ini文件,打开NSClient++的端口。方法为找到:
    [NSClient]
    ;port=12489
    去掉port前的“;”就可以启用12489端口。

    我的是安装在服务器的program files下的NSClient++-Win32-0.3.9目录中。在cmd中执行:
    cd C:\Program files\NSClient++-Win32-0.3.5
    netstat -an | more
    查看12489端口是否正常监听在。
    因为安装时候需要的模块已经勾选了,所以配置文件中不用再作设置。否则可以通过去掉每个模块前的;来启用该模块。

    到这里即完成了Windows Server 2008上的配置。接下来我们设置Nagios监控服务器。

    3.Nagios监控服务器设置

    vi /usr/local/nagios/etc/nagios.cfg
    搜索找到:
    # Definitions for monitoring a Windows machine
    # cfg_file=/usr/local/nagios/etc/objects/windows.cfg
    将第二行的#去掉打开Nagios监控的Windows模块,然后保存。

    接着编辑
    # vi /usr/local/nagios/etc/objects/windows.cfg
    找到并设置监控的服务器:
    define host{
    use windows-server ; Inherit default values from a template
    host_name winserver ; The name we're giving to this host
    alias My Windows Server ; A longer name associated with the host
    address 192.168.0.2 ; IP address of the host
    }
    设置被监控主机名和被监控的Windows服务器地址。

    接下来搜索各种监控的服务并设置:
    # Create a service for monitoring the version of NSCLient++ that is installed
    # Change the host_name to match the name of the host you defined above

    define service{
    use generic-service
    host_name winserver
    service_description NSClient++ Version
    check_command check_nt!CLIENTVERSION
    }
    监控NSClient版本。

    # Create a service for monitoring the uptime of the server
    # Change the host_name to match the name of the host you defined above

    define service{
    use generic-service
    host_name winserver
    service_description Uptime
    check_command check_nt!UPTIME
    }

    监控服务器在线时间。

    # Create a service for monitoring CPU load
    # Change the host_name to match the name of the host you defined above

    define service{
    use generic-service
    host_name winserver
    service_description CPU Load
    check_command check_nt!CPULOAD!-l 20,30,50
    }

    监控服务器CPU负载。

    # Create a service for monitoring memory usage
    # Change the host_name to match the name of the host you defined above

    define service{
    use generic-service
    host_name winserver
    service_description Memory Usage