nagios的调整,优化

layout: post

title: “nagios”

nagios的调整,优化

随着nagios监控的机器数量的增长,nagios服务器本身负载不可避免地超出其硬件承受的范围之内,我将选用如下组件对nagios部署进行扩展,优化,总结一下,大体思路如下:

  • 将可本地执行的检测额任务放在 remote 端执行或naigos被动接受结果(典型插件:nrpe,nsca,nrdp,send_gearman)
  • 结合被动检测,将多项检测结果并归一次传递给nagios,减少多次建立连接的开销(典型插件:check_multi)
  • 利用事件代理机制将nagios执行的任务分发给其他worker主机(典型扩展:DNX,Mod gearman, Op5 Melin)

模式

默认配置下,nagios工作于主动模式,也就是中央服务器主动轮询去被监控机上获取监控数据的方式。nagios被动检测,就是nagios客户端主动的将检查到的结果提交给nagios服务端.在某些场景下更适合采用被动检测,比如系统负载,存储状态,进程,磁盘IO吞吐…与主动模式相比,被动模式则是在被监控机上面执行插件获取监控数据,然后将数据发往监控机,最后监控机对监控数据处理。这样做的一个很大的优势就是将大部分执行插件,处理数据的工作都放在了被监控机上面(包括了数据的传输),这样就避免了监控的主机数量剧增,一次轮询时间过长而导致监控反应延迟,这也是被动模式能承担更大监控量的关键。
参考Nagios被动检测配置

扩展

常见的扩展是DNX, Mod gearman, Op5 Melin 参考《nagios系统监控实践》一书描述,对几种扩展做下简单对比:

  • DNX 在创建负载均衡模式的分布式架构可以轻松胜任,但是不支持细粒度的分发调度任务,但实现更多的配置模式的时候,存在局限性;
  • mod_gearman 依托 gearman 的分布式框架,可以实现负载均衡,分布式,代理模式,甚至提供了send_gearman send_mutil 等替代nsca,nrdp 的工具;
  • Op5 Melin 商业版本op5-monitor 的一部分,虽然可以实现"跨主机事件处理”,可以实现负载均衡,以及更高级的故障迁移等功能,但是依赖数据库,免费版配置复杂;

综上所述,mod_gearman 是个人认为很理想的扩展,参考 mod_gearman 配置

插件

  • 远程执行插件nrpe
  • 被动检测插件nsca
  • 被动检测插件nrdp
  • 插件check_mutil

方案拓扑图

nagios的调整,优化_第1张图片

你可能感兴趣的:(nagios的调整,优化)