监视备份等并根据该数据进行趋势统计的最佳工具。


9

我已经对nagios,opennms和zenoss进行了一些研究,但对找到所需的东西并不自信。

对我而言,目前的主要驱动力是能够监控备份。这包括mysql,mssql,最后包括一些文件系统备份。

我们有一个工具可以包装这些不同系统的备份过程并收集统计信息。因此,像这样的项目:

  • 备份的数据库数量
  • 数据库备份文件的大小
  • 压缩的数据库备份文件的大小
  • 进行备份的时间
  • 压缩文件的时间

我希望能够A)如果作业未按计划运行则有通知B)能够在统计信息上设置阈值以触发通知C)我希望能够对统计信息进行趋势绘制和绘制图形

我正计划通过HTTP POST将此信息发送到监视应用程序。或者,监视应用程序也可以从日志文件中提取它。

但是,我们将具有要监视和趋势化的其他“任意”静态(从监视系统的角度来看)的其他过程,因此灵活性非常重要。

一个或多个工具还应该能够对网络接口,服务器负载等进行常规监视和趋势分析。一旦我们完成了备份监视,我们也将希望包括这些项目。

谢谢。

跟进

我决定按给定顺序尝试以下操作:

  • Zabbix:似乎比其他方法更像是“一站式商店”,并且易于在Ubuntu Lucid RC中安装
  • opsview
  • 带有Nagvis的Nagios,PNP4Nagios,Nagiosgraph
  • 带npc插件的仙人掌
  • Munin:简单性有点伤痕累累,但是从长远来看,这可能被证明是一件幸事。

一旦我做出决定,就会发回邮件,可能要过一会儿才能做出决定。

Answers:


4

我强烈建议您使用现有工具,而不是编写自己的监视解决方案,以便已经实现所有基本监视和警报功能。如果您选择Nagios,则可以免费获得服务器和网络资源的基本监视,并且以下插件将为您提供所需的大部分其余信息:

check_file_ages_in_dirs会告诉您备份文件是否存在;这是我写的博客文章,其中包含一些基本示例。

check_file可以监视文件大小和内容(使用正则表达式),因此您可以将备份统计信息输出到文件并进行监视。

您不会从Nagios那里得到的一件事就是趋势和图表。我建议为此考虑一下Munin,因为它设置简单,并且像Nagios一样,具有成堆的插件。


为了澄清起见,我不会编写自己的监视工具。问题是要获得有关将与我构建的备份/脚本运行框架集成的监视/趋势工具的建议。
兰迪·塞林

4

使用zabbix设置起来应该很容易。

设置自定义(且功能非常强大)的阈值很容易-您可以编写自己喜欢的任何表达式,因此可以进行如下操作:“如果这5台服务器中有3台以上没有成功备份,则通知我”。您还可以使用6种不同的严重性级别和级别来实现灵活的通知和警报。

zabbix具有捆绑的数据存储和可视化功能-所有数据都存储在数据库中,并且只需为一个指标绘制图形就不需要任何配置-您只需为其“免费”获得一个图形即可。对于长期存储和趋势计算一小时的平均值。

至于将有关备份的数据导入zabbix,有多种可能性。您可以从文件中读取它,可以启动自定义命令,可以使用命令行实用程序zabbix_sender从受监视的计算机中将其推送...,可能还有其他几种可能的方法。

扩展很容易-任何返回数据的自定义命令都可以用于收集,存储和可视化该数据。

当然,可以对操作系统,应用程序,snmp和ipmi设备等进行常规监视。


1

执行

备份由backupninja精心安排。我只是将其用作bash脚本的包装-具有单个备份日志。每个脚本都以

 function handle {
         echo Error
         error problem occured
 }
 set -e
 trap handle ERR

因此,无论何时任何命令(例如mysqldump或rsync)失败,我都会在日志中出现错误。

所有备份最终都保存在rdiff存储库中,因此我有n天的增量。

所有备份都使用rsync传输到中央存储服务器。

在存储服务器上,每天都会验证所有备份,并且在成功验证本地磁盘上的数据后,会将它们复制到外部USB驱动器。

验证

nagios监视所有服务器上的backupninja.log。我检查它们是否仅包含DEBUG和INFO消息。其他任何东西都会触发警报。

每个备份都会“触碰”一个测试文件,该文件的存在和新鲜度可以通过nagios在中央备份存储库服务器上进行监控。

另外,还要检查更重要的sql转储的大小[不仅仅是新鲜度]和完整性[例如,在mysql转储结束时,我希望有新的时间戳记

-转储于2010-04-22 23:21:02完成

每天都会对所有rdiff存档进行验证,然后将数据同步到USB驱动器,然后在同步之后再次进行验证。因此,即使夜间传输被中断,我也会在USB磁盘上拥有一致的存储库。检查结果记录到文件中,nagios检查内容和新鲜度。

为了防万一,usb磁盘每周旋转一次,并离线存储。对于大量数据而言,这可能是过高的选择,但对于约300GB的缓慢更改的文件/转储而言,效果很好。

趋势

我使用简单的自定义munin插件为每个rdiff存储库绘制diff / data的大小。

可以在backupninja日志中检查执行时间,但是现在我不关心它。


感谢您的回答。我已经有一个处理正在运行的备份(和其他任务)的框架,该框架可以收集统计信息,因此backupninja可能会过大。Nagios似乎是一个共识,然后以munin或仙人掌为趋势。
兰迪·塞林

1

nagios可以进行趋势分析,但是您需要在插件中输出perfdata(http://nagios.sourceforge.net/docs/1_0/perfdata.html)。如果您使用pnp4nagios http://docs.pnp4nagios.org/pnp-0.4/start,则将为您绘制所有图形。

我发现使用opsview http://www.opsview.org/比配置nagios和pnp4nagios容易得多。特别是如果您是唯一的Linux精通管理员。Opsview是具有强大webui的nagios,它几乎允许来自Web浏览器的所有操作。因为它是nagios,所以您可以使用过去使用过的所有nagios插件。很棒的工具。


感谢您的评论,我认为出于某些原因我已经排除了opsview,但是根据您的建议,我可能最终会尝试使用nagios。
兰迪·塞林

0

Nagios发出警报,Cacti发出图形,再加上一些shell或perl脚本,将完全满足您的要求。将它们组合在一起,您几乎可以做任何事情,具体取决于您愿意付出的努力。


您是否认为通过HTTP将统计信息“推送”到nagios或让其从日志文件中提取统计信息会更好?
兰迪·塞林

0

我推荐OpenNMS。该软件包是完全开源的,得到了​​积极的支持并得到了定期的增强。作为参考,我在他们的Wiki配置信息中找到了可监视Symantec Backup Exec的信息

从他们的网站..

OpenNMS是在开源模型下开发的世界上第一个企业级网络管理平台。它由社区支持的开源项目以及商业服务,培训和支持组织组成。

披露:我在这里没有商业利益,但是上述OpenNMS Group的所有者,“商业服务,培训和支持组织”是我的朋友。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.