如何监控Nagios中的Microsoft SQL群集可用性?

我们在集群设置中运行一个旨在与Microsoft SQL Server集成的系统。 目前我们在Nagios下都有数据库节点的监控,除了数据库主机检查外,一切正常。

check_tcp -H $ HOSTADDRESS $ -p 1433

可能不能像这样直接监视故障转移群集。 我应该如何监视集群的数据库可用性呢?

对于群集上的SQL Server,它必须安装为虚拟节点,无论是默认实例还是命名实例。 因此,TCP主机名是具有正确端口的虚拟名称应该工作。 例如,如果我有一个具有物理节点的双节点群集:

  • Physical1
  • Physical2

不要监视这些SQL Server的任何一个。 当安装SQL Server时,假设我select了Virtual1的虚拟节点名称,那么它就是您要监控的Virtual1。 如果SQL Server启动,则群集启动。 如果您只想检查群集是否已启动,请查找群集群组的networking名称。

为什么不能像应用程序那样使用mssql-plugin连接到相同的ip / hostname? 要完成监控,我会为每个群集节点添加一个虚拟IP主机和两台主机。 所以如果你的一个节点出现故障,你会得到一个通知,但是你知道集群仍然可以,因为你没有收到通知。