【运维监控】四款云服务监控工具介绍:Nagios 、 ganglia、zabbix、onealert

在咱们平常的工做中,有时候须要监控和管理平台的运行情况,而服务运行是否存在异常,是否有软硬件bug等,均须要第一时间知道。对服务状态了如指掌,是一个很重要的事情。那么这个如何作到呢,咱们以前在进行私有云平台研发过程当中,曾经用过一些工具,在必定程度上能帮到你们,这里记录一下,但愿对有须要的同窗有帮助。前端

一些常见的监控、告警工具:Nagios 、 ganglia、zabbix、onealert ios

 
一.Nagios:
Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设置,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。
 
 
功能介绍:
Nagios 能够监控的功能有: 
一、监控网络服务(SMTP、POP三、HTTP、NNTP、PING等);
二、监控主机资源(处理器负荷、磁盘利用率等);

三、简单地插件设计使得用户能够方便地扩展本身服务的检测方法;web

四、并行服务检查机制;数据库

五、具有定义网络分层结构的能力,用"parent"主机定义来表达网络主机间的关系,这种关系可被用来发现和明晰主机宕机或不可达状态;安全

六、当服务或主机问题产生与解决时将告警发送给联系人(经过EMail、短信、用户定义方式);服务器

七、具有定义事件句柄功能,它能够在主机或服务的事件发生时获取更多问题定位;微信

八、自动的日志回滚;网络

九、能够支持并实现对主机的冗余监控;app

十、可选的WEB界面用于查看当前的网络状态、通知和故障历史、日志文件等;运维

 

 
 
二.Ganglia:
Ganglia是UC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点。Ganglia的核心包含gmond、gmetad以及一个Web前端。主要是用来监控系统性能,如:cpu 、mem、硬盘利用率, I/O负载、网络流量状况等,经过曲线很容易见到每一个节点的工做状态,对合理调整、分配系统资源,提升系统总体性能起到重要做用。
 
大体介绍:

每台计算机都运行一个收集和发送度量数据的名为 gmond 的守护进程。接收全部度量数据的主机能够显示这些数据而且能够将这些数据的精简表单传递到层次结构中。正由于有这种层次结构模式,才使得 Ganglia 能够实现良好的扩展。gmond 带来的系统负载很是少,这使得它成为在集群中各台计算机上运行的一段代码,而不会影响用户性能。全部这些数据屡次收集会影响节点性能。网络中的 "抖动"发生在大量小消息同时出现时,能够经过将节点时钟保持一致,来避免这个问题。

gmetad能够部署在集群内任一台节点或者经过网络链接到集群的独立主机,它经过单播路由的方式与gmond通讯,收集区域内节点的状态信息,并以XML数据的形式,保存在数据库中。

由RRDTool工具处理数据,并生成相应的的图形显示,以Web方式直观的提供给客户端。

Ganglia包括以下几个程序,他们之间经过XDR(xml的压缩格式)或者XML格式传递监控数据,达到监控效果。集群内的节点,经过运行gmond收集发布节点状态信息,而后gmetad周期性的轮询gmond收集到的信息,而后存入rrd数据库,经过web服务器能够对其进行查询展现。

 

 

 

 
三.zabbix:

zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

zabbix能监视各类网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各类问题。

zabbix由2部分构成,zabbix server与可选组件zabbix agent。

zabbix server能够经过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它能够运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。

​zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

zabbix能监视各类网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各类问题。

zabbix由2部分构成,zabbix server与可选组件zabbix agent。

zabbix server能够经过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它能够运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。

zabbix agent须要安装在被监视的目标服务器上,它主要完成对硬件信息或与操做系统有关的内存,CPU等信息的收集。zabbix agent能够运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows (2000/2003/XP/Vista)等系统之上。

zabbix server能够单独监视远程服务器的服务状态;同时也能够与zabbix agent配合,能够轮询zabbix agent主动接收监视数据(agent方式),同时还可被动接收zabbix agent发送的数据(trapping方式)。

另外zabbix server还支持SNMP (v1,v2),能够与SNMP软件(例如:net-snmp)等配合使用。

zabbix环境搭建:
要想搭建一个Zabbix的工做环境,须要从服务器入手。与服务器通讯,管理员须要使用一个Zabbix前端界面,与Zabbix服务器和数据库进行通讯。三个关键(界面、服务器和数据库)能够安装在同一台服务器上,可是若是你拥有一个更大更复杂的环境,将它们安装在不一样的主机上也是一个选项。Zabbix服务器可以直接监控到同一网络中的设备,若是其余网络的设备也须要被监控,那还须要一台Zabbix代理服务器。
 
关于zabbix的学习,能够看看zabbix中文社区:  http://www.zabbix.org.cn/ ,这里面对于安装配置以及经常使用的优化等有较好的介绍。

zabbix的主要特色:

- 安装与配置简单,学习成本低

- 支持多语言(包括中文)

- 免费开源

- 自动发现服务器与网络设备

- 分布式监视以及WEB集中管理功能

- 能够无agent监视

- 用户安全认证和柔软的受权方式

- 经过WEB界面设置或查看监视结果

- email等通知功能

等等

Zabbix主要功能:


- CPU负荷

- 内存使用

-磁盘使用

- 网络情况

- 端口监视

- 日志监视。

 

 
 
 
 
四.onealert:
SaaS模式的云告警平台,目前支持Nagios报警、Zabbix报警 、Cacti报警、Solarwinds报警 、VmWare报警、阿里云报警、监控宝报警等...
在全部开源监控软件里面,Zabbix 的告警方式无疑是最棒的。告警的方式各式各样,从 Email 告警到飞信、139/189邮箱、最后到微信甚至电话告警,接入存在各类问题以及困难,有没有什么软件可以将他们All In one呢? 
关于onealert的介绍,也能够看看这个文章: http://www.jianshu.com/p/88ed82372888

Zabbix传统告警方法

Email:调用 sendmail 、sendEmail 等脚本经过 SMTP 发送邮件

飞信:飞信已经退出历史舞台,再也不有人使用

189/139:发送邮箱邮件至邮箱,邮箱将短信转到用户手机短信,存在必定的延迟

微信:须要申请一个微信公众号,并接入API,整个流程比较复杂,并且存在会话时间限制

短信:众多短信网关收费不一样、稳定性也不肯定,须要经过API接入

传统告警 VS OneAlert

在整个使用过程当中,得出了传统告警方式的不足以及给个了 OneAlert 告警的功能,具体以下:

传统告警方式的不足
  • Zabbix 邮件告警常常发不出去
  • 如需短信告警,要么购买短信猫要么购买短信 API,整个流程太麻烦
  • 微信告警须要申请公众号以及 API 接入,并且会话有时间限制
  • 夜间的告警基本成为一个摆设,试问谁能被微弱的短信声叫醒
  • 阿里云、腾讯云、Zabbix 各类系统告警都须要单独配置,工做繁琐
  • 广泛缺乏告警分析
  • 139/189 发送告警存在明显的延迟
OneAlert告警功能
  • 告警 All In One,支持微信、邮箱、短信、APP、电话告警
  • 支持接入 Zabbix、Nagios、阿里云、腾讯云、监控宝等等告警信息
  • 灵活的分配策略,可灵活的分配告警信息发送给相关人员
  • 微信、邮箱、app 等告警方式所有免费
 
相关文章
相关标签/搜索