使用Nagios被动检查监视NTBackup / Windows Server Backup

我们使用Nagios 3监视了几台(目前大约40台)的服务器,并且在积极检查事件日志和文本日志等问题之后,我们在Nagios服务器上安装了NSCA。 下一步显然是使用send_nsca备份软件成功运行,而且我也可以在Windows上运行(来自Nagios Exchange ) – BackupExec只有在备份得到validation后才能支持运行命令,与NTBackup和Windows Server Backup类似。

我很高兴使用一个batch file来做到这一点,因为NTBackup似乎没有这个内置的,但我发现有关NTBackup是否正确填充%errorcode%冲突信息( 只有当备份运行没有错误)。

有没有人有经验或想法让NTBackup正确报告这些信息,还是有一些其他的解决scheme,我们“应该”使用?

问候,

卡尔

脚本备份正常运行。 忽略ntbackup的退出代码。 擦洗有趣的部分日志文件。 通过send_ncsa发送状态给nagios。 利润。

以下来自MS technet:

Windows 2000备份(Ntbackup.exe)没有命令行参数来指定备份操作完成后保存报告的位置。 备份报告保存在执行备份操作的用户的configuration文件文件夹中。 您可以通过单击“备份”中的“工具”菜单上的“报告”查看报告。

备份只保留最近的10个备份报告。 相应的备份##。日志文件位于“Documents and Settings \ User_Name \ Local Settings \ Application Data \ Microsoft \ Windows NT \ NTbackup \ Data”文件夹中。

我已经在Windows服务器上使用NSClient ++来允许Nagios运行各种有用的检查。 我强烈推荐它,它可能适用于你所需要的。

例如,在一个实例中,我使用NSClient ++来检查并确保目录备份被写入,以便始终有一个在过去24小时内被修改的文件。 这确实是一个很好的方法,但确保备份运行起来很简单。

它还具有允许您在Windows事件日志中search事件的function。 然后Nagios可以根据结果提出错误。 这可能能够提供更精确的检查。

我遇到了同样的问题。 我讨厌ntbackup没有通知选项。 我只是在盒子上安装ruby,并把这个脚本扔在一起。 如果将其设置为在备份之后运行,则在batch file中或不在的情况下,应始终获取最新的日志文件。 我把它放到了我的nagios服务器的mbox上,然后被其他脚本parsing。

您也可以编写一个简单的脚本,在最近的日志文件上执行一个正则expression式来确定备份是否成功。 ^ / NTBackup完成备份没有错误./如果不匹配你可以认为它是一个失败。

在我的情况下,我想保留尽可能多的数据,所以我只是通过电子邮件发送日志并parsing它。

http://pastie.org/1510940

我不知道你的问题的答案,但是,我可能会build议只是尝试。

是否有可能设置服务器失败它的备份,然后testing%errorcode%的值?

如果一个命令可以运行/创build/备份数据日志访问,可以确定一个备份状态,如:

  • 最后一次备份是成功还是失败?
  • 可用驱动器上剩余多less磁盘空间

只需要有限的信息量,系统检查可以在备份完成之后计划执行,并且Nagios可以确定和传达Windows 2008 Server Backup状态。

任何人都有一个想法在哪里可以find数据或如何编写程序来获取它?