我们有四台服务器用于任务关键型应用程序,这些应用程序都需要相互连接,总共有六个始终连接的连接。 我需要一种方法来监视这些连接,并且至less在任何一个连接断开时发送电子邮件。 我可以find集中的解决scheme,但没有什么真正符合这个法案。 有什么build议么?
编辑:走在前面,在Ruby中推出自己的。 Nagios看起来像是一个不错的套件,不过 – 否则会消失的。
和MarkM一样,我也会推荐Nagios–但是我认为你需要更仔细地计划你实际测量的东西。 我期望有4个等价的节点,除非有一些连接是双向的(?),否则有12个连接(ab,ac,ad,ba,bc,bd,ca,cb,cd,da,bd,dc) 。
使用Nagios很有可能定义主动检查以间隔执行,或让守护进程等待接收状态通知(在这种情况下,来自发起服务器的通信失败),甚至触发某些自动响应处理(例如重新启动崩溃的Web服务器进程)。 但是你需要考虑如何处理脑裂情况。
您可以在专用服务器上运行Nagios守护程序,也可以在群集中的任意一个或任意数量的节点上运行Nagios守护进程,但要注意同时从多个监视节点启动自动响应。
C。
Nagios是开源的,免费的,跨平台和可靠的。
如果你所要查找的是一个电子邮件,当一个服务器无法连接到另一个服务器,你可以以最快的一分钟频率,这可能是写一个简单的脚本(在VBScript或PowerShell中),ping另一台主机(或根据您的应用程序检查特定的端口),如果无法连接,则会通过电子邮件发送给您。
以下是一些来自Microsoft的示例代码,介绍如何通过VBScript进行ping操作以及如何使用CDO对象发送电子邮件 。
在PowerShell中,您可以使用System.Net.NetworkInformation.Ping对象。
一旦你掌握了脚本,你所需要做的就是以一分钟的时间重复计划每日频率的任务。
很显然,只有当无法连接的服务器可以通过邮件服务器向您发送电子邮件时才有效。