14.4.4 配置Nagios客户端nrpe服务
您可以在百度里搜索“跟老男孩学Linux运维:Web集群实战 艾草文学(www.321553.xyz)”查找最新章节!
14.4.4 配置Nagios客户端nrpe服务
可通过以下命令配置客户端的nrpe.cfg。
[root@web01 nagios]# cd /usr/local/nagios/etc [root@web01 etc]#sed -n '79p' nrpe.cfg allowed_hosts=127.0.0.1 [root@web01 etc]# sed-i 's#allowed_hosts=127.0.0.1#allowed_hosts=127.0.0.1,10.0.0.7#g'nrpe.cfg [root@web01 etc]# sed -n '79p' nrpe.cfgallowed_hosts=127.0.0.1,10.0.0.7
加入可以监控当前client的Nagios Server端的IP,如下:
allowed_hosts=127.0.0.1,10.0.0.7#<==再次提醒,allowed_hosts=后面的ip为Nagios服务器端的ip,不是客户端的。#<==如果机器大于500台做集群或分布式监控时,可以使用多个Nagios Server ,IP要用逗号隔开。
然后在命令模式下执行shift+g命令到结尾(shift+g为vi里切到结尾的快速操作命令请牢记类似的命令),并进行如下修改。
第一步,注释掉或者干脆删除199~203行,即下面几行:
#command[check_users]=/usr/local/nagios// libexec/check_users -w5 -c 10 #command[check_load]=/usr/local/nagios// libexec/check_load-w 15,10,5 -c 30,25,20 #command[check_hda1]=/usr/local/nagios//libexec/check_disk -w 20% -c 10% -p /dev/hda1#command[check_zombie_procs]=/usr/local/nagios//libexec/check_procs -w 5 -c 10 -s Z#command[check_total_procs]=/usr/local/nagios// libexec/check_procs-w 150 -c 200
第二步,在下面新添加要监控的内容:
command[check_load]=/usr/local/nagios/libexec/check_load -w15,10,5 -c 30,25,20command[check_mem]=/usr/local/nagios/libexec/check_memory.pl -w 10%-c 3% command[check_disk]=/usr/local/nagios/libexec/check_disk -w15% -c 7% -p /command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c10% command[check_iostat]=/usr/local/nagios/libexec/check_iostat -w6 -c 10
上面依次为对负载、内存、硬盘、虚拟内存、磁盘I/O进行监控,这些都是本地的服务(我们一般通过nrpe去客户端执行脚本插件获取信息,这样的模式称为被动监控,与nsca的客户端主动提交结果不冲突),由Nagios服务器端通过nrpe插件定时在client的nrpe服务上获取信息。
之后,启动Nagios client nrpe守护进程。
[root@web01 etc]# /usr/local/nagios/bin/nrpe -c/usr/local/nagios/etc/nrpe.cfg -d
现在,检查启动结果。
[root@web01 etc]# netstat -lntup|grep nrpe tcp 0 0 0.0.0.0:5666.0.0.0:* LISTEN 1609/nrpe [root@web01 etc]# ps -ef|grep nrpe|grep-v grep nagios 1609 1 0 21:21 00:00:00 /usr/local/nagios/bin/nrpe-c /usr/local/nagios/etc/nrpe.cfg -d
技巧:重启client端Nagios nrpe服务的组合命令如下:
[root@web01 etc]# pkill nrpe [root@web01 etc]#/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
这时,可以将nrpe加入开机自启动了,命令如下:
[root@web01 etc]# echo "#nagios nrpe process cmd by oldboy2015-6-7" >> /etc/rc.local [root@web01 etc]# echo"/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d">> /etc/rc.local [root@web01 etc]# tail -2 /etc/rc.local#nagios nrpe process cmd by oldboy 2015-6-7/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
如果你够勤快,也可以写一个简单的客户端启动脚本来停止和关闭nrpe服务。
重要提醒:客户端的nrpe.cfg配置文件,最好保留一份到计算机上,这样以后在其他的机器上装nrpe时,直接上传即可,就省得费劲修改了。
关于/usr/local/nagios/etc/nrpe.cfg配置文件的详细说明见14.9节。
到此,web01、web02客户端的安装配置部分全部结束。在此过程中,也会存在一些安装报错情况,一起来分析。
错误1:安装nrpe时执行make all命令报错。
checking for SSL headers... configure: error: Cannot find sslheaders
解答:提示缺少ssl,通过如下命令可解决。
yum -y install openssl openssl -devel
错误2:安装nagios-plugins时执行make命令报错。
check_http.c: In function 'process_arguments': check_http.c:312:error: 'ssl_version' undeclared (first use in this function)check_http.c:312: error: (Each undeclared identifier is reportedonly once check_http.c:312: error: for each function it appearsin.) make[2]: *** [check_http.o] Error 1 make[2]: Leaving directory`/root/tools/nagios-plugins-1.4.16/plugins' make[1]: ***[all-recursive] Error 1 make[1]: Leaving directory`/root/tools/nagios-plugins-1.4.16' make: *** [all] Error 2
问题解决:
根据报错提示执行yum install openssl openssl-develperl-devel-y命令,删除已经解压的nagios-plugins-1.4.16目录,重新解压编译安装。 跟老男孩学Linux运维:Web集群实战