微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

监控 – 监控nagios中服务器内的多个Web

我想在Apache Web服务器中监视/测试多个虚拟主机,此外,我希望这些检查在Nagios中显示一个服务 – > HTTP.如果其中一个Web / URL出现故障,该服务将显示Failed / alarm.我不知道是否有可能.

我已经在另一台服务器上安装了Nagios,我想检查网络是否正在回答状态码200.

那么,问题是,nagios可以配置为检查同一服务中的多个网站吗?
是否可以在服务中设置多个check_command?

check_command   check_httpv!google.com
check_command   check_httpv!gmail.com

你如何监控nagios中的虚拟主机?你在网站上创建服务吗?

关心并提前感谢您!

解决方法

check_http一次只能检查一个站点.如果需要在单个服务检查中检查多个站点,则需要编写自己的检查来实现逻辑.这可以在一个简单的shell脚本中轻松完成,该脚本为每个虚拟主机调用check_http,并在任何check_http执行失败时将相应的失败代码返回给Nagios.这样的脚本可能如下所示.
#!/bin/sh

for HOST in $* ; do
   check_http -H $HOST [...other args...] >/dev/null 
   if [ $? -ne 0 ] ; then
      echo "$HOST not responding"
      exit 2
   fi
done
echo "All hosts ok"
exit 0

或者,您可以使用Nagios’ service dependencies来达到目标​​.假设您希望检查所有Apache虚拟主机,但如果Apache进程不可用,则不会充斥每个虚拟主机的通知.这将允许您查看每个虚拟主机的状态详细信息,允许更精细的报告,并允许您具有不同的通知和时间段选项.

要实现这一点,您将为每个虚拟主机创建一个服务检查,然后为Apache创建一个检查,可能是通过使用check_http检查IP地址并确保正在侦听端口80.

接下来,您将为每个虚拟主机的服务检查创建服务依赖项,并将它们配置为依赖于Apache检查.如果Apache检查失败,则所有虚拟主机检查(取决于Apache检查)将停止发送通知和/或执行检查,直到Apache检查恢复.

原文地址:https://www.jb51.cc/html/228268.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐