Nagios 简介
是一个开源软件,可以监控网络设备网络流量、Linux/windows主机状态,甚至可以监控打印机
它可以运行在Linux上或windows上
基于浏览器的web界面方便运维人员查看监控项目的状态
支持web界面配置、管理操作
支持短信、邮件通知
可以自定义脚本实现自定义化监控
Nagios官网 http://www.nagios.org
一、安装
1.安装yum扩展源
32位:
[root@Kry103 ~]#rpm -ivh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
64位:
[root@Kry103 ~]#rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
linux系统位数查看
[root@Kry103 ~]# getconf LONG_BIT
2.安装nagios及其他程序
[root@Kry103 ~]# yum -y install httpd nagios nagios-plugins nagios-plugins-all nrpe nagios-plugins-nrpe
3.设置nagios登录帐号密码
[root@Kry103 ~]# htpasswd -c /etc/nagios/passwd nagiosadmin
New password: 123123
Re-type new password: 123123
nagiosadmin:为帐号,不可自定义。
123123:为密码,可自定义。
4启动服务
[root@Kry103 ~]# service httpd start
[root@Kry103 ~]# service nagios start
5.登录nagios
浏览器中输入:http://IP/nagios
我的访问地址:http://192.168.0.103/nagios/
输入帐号密码登录。
二、添加监控客户端(无须nrpe实现监控)
无需nagios和nrpe,可以实现的监控,但是监控内容只限定于无须登录监控主机就能获取到的信息,如ping、ssh、http;
1.服务端添加监控对象
[root@Kry103 ~]# vim /etc/nagios/conf.d/192.168.0.136.cfg #创建以监控对象IP为配置文件名。
说明:
本地的nagios工具去连接远程机器,也就是说即使客户端不需要安装nagios-plugins及nrpe也是可以实现监控。
define service:定义监控服务,这里定义了ssh、ping、http。
max_check_attempts 5:表示检测5次都有问题才会告警,如果为1,检测到问题立即告警。
normal_check_interval 1 :重新检测的时间间隔,单位是分钟,默认是3分钟
notification_interval 60 :在服务出现异常后,故障一直没有解决,nagios再次对使用者发出通知的时间。单位是分钟。如果为0,所有事件只通知一次。
2.检测配置文件
[root@Kry103 ~]# nagios -v /etc/nagios/nagios.cfg
注意:nagios -v只能检测主配置文件。检测主配置文件时,会自动去检测所有的子配置文件,也包括conf.d下的子配置文件。如果指定检测子配置文件,即使子配置文件没有问题,也会报错。
3.重启服务
[root@Kry103 conf.d]# service nagios rstart
4.访问
直接浏览器访问:http://192.168.0.103/nagios/--点击services
如果报http错误,说明136机器上面80端口没被使用,安装一个nginx或者apache。
[img]C:\Users\Administrator\AppData\Local\YNote\data\smilezcj@163.com\856916c3969540189ab00081d97a8b52\clipboard.png[/img]
三、添加监控客户端(需要nrpe实现监控)
需要登录到监控主机上才能够获取到的信息,如负载、磁盘容量、内存使用率等等。
1.安装yum扩展源(客户端)
32位:
[root@Kry136 ~]#rpm -ivh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
64位:
[root@Kry136 ~]#rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
2.安装nagios(客户端)
[root@kry136 ~]# yum -y install nagios-plugins nagios-plugins-all nrpe nagios-plugins-nrpe
3.修改nrpe配置文件(客户端)
[root@kry136 ~]# vim /etc/nagios/nrpe.cfg
修改以下内容:
allowed_hosts #允许那台机器来链接你,如果指定多个用逗号隔开
dont_blame_nrpe #NRPE守护进程是否将允许客户(0为拒绝|1为允许)
4.启动服务(客户端)
[root@kry136 ~]# service nrpe start
5.编辑commands.cfg配置文件
[root@Kry103 ~]# vim /etc/nagios/objects/commands.cfg
末尾添加以下内容:
conmmand_name :定义命令名称,可自定义。
6.编辑192.168.0.136.cfg配置文件
[root@Kry103 ~]# vim /etc/nagios/conf.d/192.168.0.136.cfg
第二部分添加的内容,直接追加内容:
追加以下内容:
说明:
check_nrpe:就是服务端commands.cfg配置文件中,command_name check_nrpe定义的。
check_load:这个的定义实在客户端nrpe.cfg中定义的检测脚本,打开文件可以发现调用的文件是/usr/lib64/nagios/plugins/check_loa,而参数-w是waming的意思,只要超过三个数(15,10,5)其中一个超过,就会编程waming,而-c则是critical.可以自定义修改界值,也可以直接执行命令。
check_command:定义监控触发界值。满足什么条件报Waming,满足什么条件报Critical
check_hda1:监控磁盘,在客户端/etc/nagios/nrpe.cfg中command中括号中定义的。
service_description:定义该监控内容描述,名称自定义取。
7.修改、添加磁盘监控(客户端)
因为df -Th查看到本机磁盘只有/dev/sda1、/dev/sda2
[root@kry136 ~]# vim /etc/nagios/nrpe.cfg
修改以下内容:
在修改内容下添加以下内容:
8.检查配置文件
[root@Kry103 ~]# nagios -v /etc/nagios/nagios.cfg
8.重启服务
[root@Kry103 ~]# service nagios restart
[root@kry136 ~]# service nrpe restart
四、常见错误
1.登录nagios点击hosts时,报错:It appears as though you do not have permission to view information for any。
解决办法:重新设置nagios登录用户名为"nagiosadmin"
[root@Kry103 ~]# htpasswd -c /etc/nagios/passwd nagiosadmin
2.localhost监控报以下错误:HTTP WARNING: HTTP/1.1 403 Forbidden - 5159 bytes in 0.002 second response time
[img]C:\Users\Administrator\AppData\Local\YNote\data\smilezcj@163.com\922c3a306a874f7b80da2ef304fdd0aa\clipboard.png[/img]
解决办法:添加一个index.html文件
[root@Kry103 ~]# echo nagios > /var/www/html/index.html
[root@Kry103 html]# service httpd restart
3.[root@Kry103 conf.d]# nagios -v /etc/nagios/conf.d/192.168.0.136.cfg
Error in configuration file '/etc/nagios/conf.d/192.168.0.136.cfg' - Line 1 (NULL value)
Error processing main config file!
原因:nagios -v只能针对nagios.cfg配置文件使用,会自动去检测所有子配置文件,也包括conf.d里面的子配置文件,如果直接针对子配置文件使用,即使子配置文件没有问题,也会报错。
解决办法:直接去检测祝配置文件,如:nagios -v /etc/nagios/nagios.cfg
是一个开源软件,可以监控网络设备网络流量、Linux/windows主机状态,甚至可以监控打印机
它可以运行在Linux上或windows上
基于浏览器的web界面方便运维人员查看监控项目的状态
支持web界面配置、管理操作
支持短信、邮件通知
可以自定义脚本实现自定义化监控
Nagios官网 http://www.nagios.org
一、安装
1.安装yum扩展源
32位:
[root@Kry103 ~]#rpm -ivh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
64位:
[root@Kry103 ~]#rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
linux系统位数查看
[root@Kry103 ~]# getconf LONG_BIT
2.安装nagios及其他程序
[root@Kry103 ~]# yum -y install httpd nagios nagios-plugins nagios-plugins-all nrpe nagios-plugins-nrpe
3.设置nagios登录帐号密码
[root@Kry103 ~]# htpasswd -c /etc/nagios/passwd nagiosadmin
New password: 123123
Re-type new password: 123123
nagiosadmin:为帐号,不可自定义。
123123:为密码,可自定义。
4启动服务
[root@Kry103 ~]# service httpd start
[root@Kry103 ~]# service nagios start
5.登录nagios
浏览器中输入:http://IP/nagios
我的访问地址:http://192.168.0.103/nagios/
输入帐号密码登录。
二、添加监控客户端(无须nrpe实现监控)
无需nagios和nrpe,可以实现的监控,但是监控内容只限定于无须登录监控主机就能获取到的信息,如ping、ssh、http;
1.服务端添加监控对象
[root@Kry103 ~]# vim /etc/nagios/conf.d/192.168.0.136.cfg #创建以监控对象IP为配置文件名。
define host{ use linux-server host_name 192.168.0.136 alias 0.136 address 192.168.0.136 } define service{ use generic-service host_name 192.168.0.136 service_description check_ping check_command check_ping!100.0,20%!200.0,50% max_check_attempts 5 normal_check_interval 1 } define service{ use generic-service host_name 192.168.0.136 service_description check_ssh check_command check_ssh max_check_attempts 5 normal_check_interval 1 } define service{ use generic-service host_name 192.168.0.136 service_description check_http check_command check_http max_check_attempts 5 normal_check_interval 1 } |
说明:
本地的nagios工具去连接远程机器,也就是说即使客户端不需要安装nagios-plugins及nrpe也是可以实现监控。
define service:定义监控服务,这里定义了ssh、ping、http。
max_check_attempts 5:表示检测5次都有问题才会告警,如果为1,检测到问题立即告警。
normal_check_interval 1 :重新检测的时间间隔,单位是分钟,默认是3分钟
notification_interval 60 :在服务出现异常后,故障一直没有解决,nagios再次对使用者发出通知的时间。单位是分钟。如果为0,所有事件只通知一次。
2.检测配置文件
[root@Kry103 ~]# nagios -v /etc/nagios/nagios.cfg
注意:nagios -v只能检测主配置文件。检测主配置文件时,会自动去检测所有的子配置文件,也包括conf.d下的子配置文件。如果指定检测子配置文件,即使子配置文件没有问题,也会报错。
3.重启服务
[root@Kry103 conf.d]# service nagios rstart
4.访问
直接浏览器访问:http://192.168.0.103/nagios/--点击services
如果报http错误,说明136机器上面80端口没被使用,安装一个nginx或者apache。
[img]C:\Users\Administrator\AppData\Local\YNote\data\smilezcj@163.com\856916c3969540189ab00081d97a8b52\clipboard.png[/img]
三、添加监控客户端(需要nrpe实现监控)
需要登录到监控主机上才能够获取到的信息,如负载、磁盘容量、内存使用率等等。
1.安装yum扩展源(客户端)
32位:
[root@Kry136 ~]#rpm -ivh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
64位:
[root@Kry136 ~]#rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
2.安装nagios(客户端)
[root@kry136 ~]# yum -y install nagios-plugins nagios-plugins-all nrpe nagios-plugins-nrpe
3.修改nrpe配置文件(客户端)
[root@kry136 ~]# vim /etc/nagios/nrpe.cfg
修改以下内容:
将:allowed_hosts=127.0.0.1 改为:allowed_hosts=192.168.0.103 将:dont_blame_nrpe=0 改为:dont_blame_nrpe=1 |
allowed_hosts #允许那台机器来链接你,如果指定多个用逗号隔开
dont_blame_nrpe #NRPE守护进程是否将允许客户(0为拒绝|1为允许)
4.启动服务(客户端)
[root@kry136 ~]# service nrpe start
5.编辑commands.cfg配置文件
[root@Kry103 ~]# vim /etc/nagios/objects/commands.cfg
末尾添加以下内容:
define command{ command_name check_nrpe command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ } |
conmmand_name :定义命令名称,可自定义。
6.编辑192.168.0.136.cfg配置文件
[root@Kry103 ~]# vim /etc/nagios/conf.d/192.168.0.136.cfg
第二部分添加的内容,直接追加内容:
define host{ use linux-server host_name 192.168.0.136 alias 0.136 address 192.168.0.136 } define service{ use generic-service host_name 192.168.0.136 service_description check_ping check_command check_ping!100.0,20%!200.0,50% max_check_attempts 5 normal_check_interval 1 } define service{ use generic-service host_name 192.168.0.136 service_description check_ssh check_command check_ssh max_check_attempts 5 normal_check_interval 1 } define service{ use generic-service host_name 192.168.0.136 service_description check_http check_command check_http max_check_attempts 5 normal_check_interval 1 } |
追加以下内容:
define service{ use generic-service host_name 192.168.0.136 service_description check_load check_command check_nrpe!check_load max_check_attempts 5 normal_check_interval 1 } define service{ use generic-service host_name 192.168.0.136 service_description check_disk_sda1 check_command check_nrpe!check_hda1 max_check_attempts 5 normal_check_interval 1 } define service{ use generic-service host_name 192.168.0.136 service_description check_disk_sda2 check_command check_nrpe!check_hda2 max_check_attempts 5 normal_check_interval 1 } |
说明:
check_nrpe:就是服务端commands.cfg配置文件中,command_name check_nrpe定义的。
check_load:这个的定义实在客户端nrpe.cfg中定义的检测脚本,打开文件可以发现调用的文件是/usr/lib64/nagios/plugins/check_loa,而参数-w是waming的意思,只要超过三个数(15,10,5)其中一个超过,就会编程waming,而-c则是critical.可以自定义修改界值,也可以直接执行命令。
check_command:定义监控触发界值。满足什么条件报Waming,满足什么条件报Critical
check_hda1:监控磁盘,在客户端/etc/nagios/nrpe.cfg中command中括号中定义的。
service_description:定义该监控内容描述,名称自定义取。
7.修改、添加磁盘监控(客户端)
因为df -Th查看到本机磁盘只有/dev/sda1、/dev/sda2
[root@kry136 ~]# vim /etc/nagios/nrpe.cfg
修改以下内容:
将: command[check_hda1]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/hda1 改为: command[check_hda1]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/sda1 |
在修改内容下添加以下内容:
command[check_hda2]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/sda2 |
8.检查配置文件
[root@Kry103 ~]# nagios -v /etc/nagios/nagios.cfg
8.重启服务
[root@Kry103 ~]# service nagios restart
[root@kry136 ~]# service nrpe restart
四、常见错误
1.登录nagios点击hosts时,报错:It appears as though you do not have permission to view information for any。
解决办法:重新设置nagios登录用户名为"nagiosadmin"
[root@Kry103 ~]# htpasswd -c /etc/nagios/passwd nagiosadmin
2.localhost监控报以下错误:HTTP WARNING: HTTP/1.1 403 Forbidden - 5159 bytes in 0.002 second response time
[img]C:\Users\Administrator\AppData\Local\YNote\data\smilezcj@163.com\922c3a306a874f7b80da2ef304fdd0aa\clipboard.png[/img]
解决办法:添加一个index.html文件
[root@Kry103 ~]# echo nagios > /var/www/html/index.html
[root@Kry103 html]# service httpd restart
3.[root@Kry103 conf.d]# nagios -v /etc/nagios/conf.d/192.168.0.136.cfg
Error in configuration file '/etc/nagios/conf.d/192.168.0.136.cfg' - Line 1 (NULL value)
Error processing main config file!
原因:nagios -v只能针对nagios.cfg配置文件使用,会自动去检测所有子配置文件,也包括conf.d里面的子配置文件,如果直接针对子配置文件使用,即使子配置文件没有问题,也会报错。
解决办法:直接去检测祝配置文件,如:nagios -v /etc/nagios/nagios.cfg
编辑回复