设为首页 收藏本站
查看: 1040|回复: 0

[经验分享] ubuntu实现nagios对linux和windows监控

[复制链接]

尚未签到

发表于 2018-5-2 13:40:14 | 显示全部楼层 |阅读模式
与在redhat安装nagios相比,在ubuntu安装nagios监控非常简单,直接通过

apt-get即可从ubuntu的服务器上下载组件自动安装。


sudo apt-get install nagios3 nagios-nrpe-plugin

给nagiosadmin添加一个密码:

sudo htpasswd /etc/nagios3/htpasswd.users nagiosadmin

添加一个用户:

sudo htpasswd /etc/nagios3/htpasswd.users dragon

在被监控主机上安装nrpe,

sudo apt-get install nagios-nrpe-server

sudo vi /etc/nagios/nrpe.cfg

找到allowed_host添加监控主机的ip地址:


allowed_hosts=127.0.0.1,192.168.1.112

  

Service nrpe restart


在server端测试

/usr/lib/nagios/plugins/check_nrpe -H 192.168.1.124,测试成功的话会输出客户机的NRPE版本号。

NRPE_2.1.4



在server新建监控主机定义文件server02.cfg

sudo cp /etc/nagios3/conf.d/localhost_nagios2.cfg \/etc/nagios3/conf.d/server02.cfg

编辑 /etc/nagios3/conf.d/server02.cfg:注意修改address为被监控主机的地址,并添加DNShttpssh的服务监控。

define host{

                   use                     generic-host           
                   host_name    server02
                   alias               server-02
                   address         192.168.1.124
        }

define service{
                  use                   generic-service
        host_name                       server02
                  service_description     Disk Space
                   check_command         check_all_disks!20%!10%
        }

define service{
                    use                                      generic-service
                    host_name                        server02
                    service_description          Current Users
                     check_command           check_users!20!50
        }

define service{
                    use                        generic-service
                    host_name                server02
                    service_description     Total Processes
                    check_command     check_procs!250!400
        }

define service{
                 use                               generic-service
                  host_name                  server02
                  service_description             Current Load
                  check_command  check_load!5.0!4.0!3.0!10.0!6.0!4.0
        }
define service{
                           use                                 generic-service
                          host_name                          server02
                          service_description          DNS
                          check_command              check_dns!192.168.1.124
}

define service {
                        host_name                           server02
                        service_description             HTTP
                        check_command                  check_http
                       use                             generic-service
                      notification_interval                 0
}

# check that ssh services are running
define service {
                             host_name              server02
                             service_description       SSH
                              check_command      check_ssh
                              use                               generic-service

                             notification_interval      0

}


测试nagios配置是否成功

nagios3 -v /etc/nagios3/nagios.cfg


Error in configuration file '/etc/nagios3/nagios.cfg' - Line 470 (Check result path is not a valid directory)


这个文件是nagios用于存储监测主机的结果和未能监测到的服务信息


check_result_path=/var/lib/nagios3/spool/checkresults


我发现本机上并没有这个文件目录的存在,所以我新建了这个文件,可能会出现启动nagios没有报错,但无法看到监控信息的情况,查看日志提示Jul 16 20:00:59 fileserver nagios: Error: Could not open check result queue directory '/var/nagios/spool/checkresults' for reading. ”.

Sudo mkdir /var/lib/nagios3/spool/checkresults

Sudo chmod nagios:nagios /var/lib/nagios3/spool/checkresults

  

启动nagios

Service nagios3 start

打开在浏览器地址栏输入:“ip\nagios3”

DSC0000.jpg

利用NSClient++监控远程Windows上的“本地信息”

在Nagios的libexec下有check_nt这个插件,它就是用来检查windows机器的服务的。其功能类似于check_nrpe。不过还需要搭配另外一个软件NSClient++,它则类似于NRPE。

NSClient++的原理如下图

DSC0001.jpg

可以看到NSClient与nrpe最大的区别就是:

                   被监控机上安装有nrpe,并且还有插件,最终的监控是由这些插件来进行的。当监控主机将监控请求发给nrpe后,nrpe调用插件来完成监控。

                     NSClient++则不同,被监控机上只安装NSClient,没有任何的插件。当监控主机将监控请求发给NSClient++后,NSClient直接完成监控,所有的监控是由NSClient完成的。

这也说明了NSClient++的一个很大的问题:不灵活、没有可扩展性。它只能完成自己本身包含的监控操作,不能由一些插件来扩展。好在NSClient++已经做的不错了,基本上可以完全满足我们的监控需求。

安装NSClient++

DSC0002.jpg

使用check_nt可以看到winserver上nsclient++的监控情况(注意需要指定端口为:12489)

要注意两台主机之间网络是否联通,使用ping测试网络联通,winserver的防火墙有可能阻断两台主机之间的网络通信,可以选择关掉。

DSC0003.jpg

编辑nagios server端的nt.cfg里面的命令check_nt增加一些参数。
sudo vi /etc/nagios-plugins/config/nt.cfg

DSC0004.jpg

Sudo vi /etc/nagios3/objects/windows.cfg

define host{

        use             generic-host  ; Inherit default values from a template

        host_name       Nagios-Windows  ; The name we're giving to this host

        alias           My Windows Server       ; A longer name associated with the host

        address         192.168.1.139  ; IP address of the host

        }

define hostgroup{

        hostgroup_name  windows-servers ; The name of the hostgroup

        alias           Windows Servers ; Long name of the group

        }

define service{

        use                     generic-service

        host_name               Nagios-Windows

        service_description     NSClient++ Version

        check_command           check_nt!CLIENTVERSION

        }

define service{

        use                     generic-service

        host_name               Nagios-Windows

        service_description     Uptime

        check_command           check_nt!UPTIME

        }

define service{

        use                     generic-service

        host_name               Nagios-Windows

        service_description     CPU Load

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

        }

define service{

        use                     generic-service

        host_name               Nagios-Windows

        service_description     Memory Usage

        check_command           check_nt!MEMUSE!-w 80 -c 90

        }

define service{

        use                     generic-service

        host_name               Nagios-Windows

        service_description     C:\ Drive Space

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

        }

define service{

        use                     generic-service

        host_name               Nagios-Windows

        service_description     W3SVC

        check_command           check_nt!SERVICESTATE!-d SHOWALL -l W3SVC

        }

define service{

        use                     generic-service

        host_name               Nagios-Windows

        service_description     Explorer

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

        }



测试nagios配置是否成功

nagios3 -v /etc/nagios3/nagios.cfg

service nagios3 restart

Sudo vi /etc/nagios3/nagios.cfg把#cfg_file=/etc/nagios3/objects/windows.cfg前面的#给去掉。使用“nagios3 -v /etc/nagios3/nagios.cfg”测试是否有错。没有报错的话,开启nagios3.

用浏览器打开nagios的控制台等待一段时间之后就可以看到实验效果了。

DSC0005.jpg

本文允许转载但务必保留出处:(http://dragon123.blog.51cto.com/9152073/1543915)

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-454947-1-1.html 上篇帖子: 设置ubuntu支持gbk编码格式和设置eclipse 编码格式 下篇帖子: Ubuntu 12.04 安装JDK 8和Eclipse
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表