Nagios服务器的自我监控实现有俩种方法,实现都能简单!
图-Nagios
Nagios服务器的自我监控实现
要实现资源和服务两个方面的监控,需要配置服务器端(nagios server)及被监控端(NRPE-nagios remote plugin
executor).为了能顺利地、有条理的部署nagios监控平台,一个好的工作风格是在nagios
server自身实现服务和资源的监控,然后再在其他监控端部署nrpe,从nagios
server端用check_nrpe测试通过后,再在nagios
server配置文件中逐一增加监控项目。当然如果只是监控服务而不监控主机资源,则被监控端不做任何nrpe的安装。为了方便初学者更容易上手和成功,
我们就从简单的步骤开始。
自我监控实现:配置邮件发送功能 因为报警邮件发送给用户邮箱后,监控系统本身没有必要接受别的邮件服务器发送的邮件,因此只需要使用服务器本身自带的sendmail来发送报警信息即可。用sendmail的另外一个目的就是简便。
如果系统是redhat 或 centos ,只需执行 service sendmail start
启动守护进程,然后再用dns服务器给它一个合法的域名(即A记录),马上就可以用mail命令来发送测试邮件到你的某个电子邮箱里了。收到测试邮件,就
说明邮件系统配置结束,是不是很容易呢?这里给一个发送邮件的例子:
mail -s "This is sery's nagios test mail" sery@163.com
#p#
自我监控实现:测试短信发送
正常情况下,没有任何服务器能向手机发送短消息的,要到达这个目的,得花钱购买短信服务(也有些人运用飞信一类的方式来达到这个目的,个人觉得对于运营
网站不是太靠谱)。要是在几年前,自己申请短信通道还是有可能的,2005年以后似乎门槛提高了很多。当你付费成功后,短信服务商会给你提供入口及加密关
键字;然后我们自己写个脚本就可以发送短信。以下是我的服务器用perl写的脚本:
- #!/usr/bin/perl -w
- use strict;
- use LWP::Simple;
- use URI::Escape;
- use Digest::MD5;
- my ($mobile, $content) = @ARGV;
- my $log_control = 1;
- my $key = 'Ysdbyhd6T';
- my $souce_content = substr($mobile, 0, 8) . substr($mobile, -10, 10) . $key;
- my $md5 = Digest::MD5->new;
- $md5->add($souce_content);
- my $result_conent = uc($md5->hexdigest);
- my
- $url =
- "http://http.asp.sh.cn/MT.do?Username=sery&Password=([-BVG'0&Mobile=$mobile&Content=$content&Keyword=$result_conent";
- my $result = get $url;
- if($log_control) {
- my $fh;
- open($fh, '>> /var/log/sms.log') or die "can't open log: $!";
- print $fh join(' ', time, $result, "n");
- close $fh;
- }
(以上脚本有宇捷提供) 说明: 1、my $key = 'Ysdbyhd6T'' 短信服务商给的验证关键字。 2、my $url="….." 短信服务商给的用户名、密码以及短信服务商的访问接口(url)全包括在这里了。
我们把这个文件放在目录 /usr/local/bin/ 下面,把它命名为 sms_send.pl ,用命令 chomod +x
/usr/local/bin/sms.pl
给与它执行权限。这个脚本在各种各样的unix、linux下都可以正常工作,nagios报警短信发送就是靠它了。如果读者也打算拿这个脚本发送短信的
话,只要改一下key值和url值就可以直接使用。
接下来就是验证是否可以发送短信,执行命令行
/usr/local/bin/sms.pl 13300108888 "It is a test"
,回车后数秒钟,你的手机应该能收到带有内容"It is a
test"的短信息。为了保证短信服务的可靠性,我做了一个策略:每天下午6点定时给我发一个通知短信;告诉我短信发送是正常的,也是该下班回家了。做
法:执行 crontab -e 然后输入行 00 18 * * * /usr/local/bin/sms.pl 13300108888
"It is Ok" 。
通过阅读文章,我们明白了Nagios服务器的自我监控实现的两种途径:邮箱和手机短信
【编辑推荐】
- 限制Nagios报警次数用escalations
- Nagios监控服务器的配置
- Nagios监控Windows客户端
- Ubuntu下安装运行Nagios
- 运维监控Nagios:启动服务
- Nagios远程监控软件的装置与设置装备
- nagios报警通过飞信