监控备份等最好的工具,并从这些数据趋势静态

我对nagios,opennms和zenoss进行了一些研究,但是我并不确定自己find了我正在寻找的东西。

现在我的主要动力是能够监视备份。 这包括mysql,mssql以及最终的一些文件系统备份。

我们有一个工具,为这些不同的系统包装备份过程并收集统计数据。 所以,项目如:

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

我希望能够A)有通知,如果作业不按照计划运行B)能够设置阈值的统计数字,将触发通知C)我想能够趋势和graphics统计

我打算通过HTTP POST将这些信息发送给监控应用程序。 或者,监视应用程序也可以将其从日志文件中提取出来。

但是,我们会有其他的“任意的”(从监控系统的angular度来看)静态的监控和趋势,所以灵活性是非常重要的。

一个或多个工具还应该能够对networking接口,服务器负载等进行一般性监视和趋势分析。一旦我们获得了备份监视,我们也希望包括这些项目。

谢谢。

后续工作

我决定按照给定的顺序尝试以下内容:

  • Zabbix:看起来比其他的更“一站式”,并且易于在Ubuntu Lucid RC中安装
  • opsview
  • Nagios w / nagvis,pnp4nagios,nagiosgraph
  • 仙人掌w / npc插件
  • 穆宁:简单有点伤痕累累,但从长远来看,这可能certificate是一种祝福

我做出决定后会回来,可能会有一段时间,直到发生这种情况。

我强烈build议您不要编写自己的监控解决scheme,而是使用现有的工具,以便实现所有基本监控和警报function。 如果您selectNagios,您将免费获得对服务器和networking资源的基本监控,下面的插件可以为您提供所需的大部分剩余内容:

check_file_ages_in_dirs会告诉你备份文件是否存在; 这里有一个我用一些基本的例子写的博客文章 。

check_file可以监视文件的大小和内容(使用正则expression式),所以你可以输出你的备份统计到一个文件并监视它们。

你不能从Nagios得到的是趋势和图表; 我build议你看看Munin ,因为它很容易设置,像Nagios一样,有一堆插件。

这应该是很容易与zabbix设置。

设置自定义(和非常强大的)阈值是很容易的 – 你可以写任何你喜欢的expression式,比如“如果超过3个服务器没有成功的备份,通知我”是可能的。 您还可以使用6个不同的严重级别和升级来实现灵活的通知和警报。

zabbix具有成组数据存储和可视化function – 所有数据都存储在数据库中,并且绘制一个不需要任何configuration的度量标准 – 您只需要“免费”获取graphics。 长期存储和趋势一小时平均值计算。

至于把你的备份数据转换成zabbix,有多种可能。 你可以从文件中读取,你可以启动自定义的命令,你可以使用命令行实用程序zabbix_sender从受监视的计算机中推送它…并且可能还有更多可行的方法。

扩展很简单 – 任何返回数据的自定义命令都可以用来收集,存储和可视化数据。

当然,操作系统,应用程序,snmp和ipmi设备等的一般监控是可能的。

执行

备份由backupninja进行编排 。 我用它只是我的bash脚本的包装 – 有一个单一的备份日志。 每个脚本开始

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

所以每当任何命令[例如mysqldump或rsync]失败时,我都会收到日志错误。

所有的备份最终在rdiff仓库中,所以我有n天的增量。

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

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

validation

所有服务器上的backupninja.log由nagios监控。 我检查他们是否只包含DEBUG和INFO消息。 任何事情都会触发警报。

每一个备份都会触及一个testing文件,在中央备份存储库服务器上使用nagios监控存在和新鲜度。

另外更关键的SQL转储检查他们的大小[不只是新鲜]和完整性[例如在MySQL转储结束,我期待新的时间戳在

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

在数据同步到USB驱动器之前,所有的rdiff存档都经过validation,然后在同步之后再次进行validation。 所以即使夜间传输被中断,我也将在USB磁盘上保持一致的存储库。 检查结果logging到由nagios检查内容和新鲜度的文件。

USB磁盘每周旋转,并保存在离线,以防万一。 这可能是矫枉过正大量的数据,但工作正常〜约300GB的缓慢变化的文件/转储。

趋势

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

执行所需的时间可以在backupninja日志中检查,但现在我不打扰它。

nagios可以做趋势,但是你需要在你的插件中输出perfdata( http://nagios.sourceforge.net/docs/1_0/perfdata.html )。 如果您使用pnp4nagios http://docs.pnp4nagios.org/pnp-0.4/start,那么一切都将为您绘制graphics。

我发现使用opsview http://www.opsview.org/比configurationnagios和pnp4nagios更方便。 特别是如果你是唯一的linux精明的pipe理员在工作。 Opsview是一个伟大的webui,允许几乎所有的操作从networking浏览器。 因为它是nagios,所以你可以使用过去一直使用的所有nagios插件。 伟大的工具。

用于警报的Nagios ,用于绘制graphics的Cacti以及一些shell或perl脚本将完全按照您的要求进行操作。 把它们结合在一起,你可以做任何事情,取决于你愿意投入的努力量。

我build议OpenNMS 。 该软件包完全开源,积极支持并定期增强。 作为参考,我在他们的wikiconfiguration信息中find了监视Symantec Backup Exec的信息 。

从他们的网站..

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

披露:我在这里没有商业利益,但OpenNMS集团的老板,上面提到的“商业服务,培训和支持组织”是我的朋友。

这可以通过Circonus( http://crystus.com/ )轻松完成。 我们经常使用Resmon XML DTD导入这样的指标。