青蛙学Linux—Zabbix运维监控平台

Zabbix是一款综合了数据收集、数据展现、数据提取、监控报警、用户展现等方面的综合运维平台,是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。Zabbix能监视各类网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各类问题。java

Zabbix由2部分构成,Zabbix Server与可选组件Zabbix Agent。Zabbix Server能够经过SNMP、Zabbix Agent、ping、端口监视等方法提供对远程服务器/网络状态的监视、数据收集等功能;它能够运行在Linux、Solaris、HP-UX、AIX、Free BSD、Open BSD以及OS X等平台上。 安全

Zabbix的官网为:https://www.zabbix.com服务器

一、Zabbix的优缺点

Zabbix使用简单,学习入门较快,功能也十分强大,是一个能够快速构建起来的运维监控平台。Zabbix的功能可以知足中小企业(服务器数量少于500台)的运维监控需求,所以是中小企业运维监控的首选平台。网络

可是,当Zabbix监控的服务器数量较多时,会产生不少问题:好比监控数据不许确、报警超时等。这是由于Zabbix对运行Zabbix Server的服务器性能要求较高,当监控的服务器数量超过500台后,监控性能会急剧降低,此时须要对Zabbix进行分布式部署,而且须要提高运行Zabbix Server的服务器性能。架构

在安全性方面,Zabbix Agent若是发生故障,收集到的数据将会丢失。同时,Zabbix Server也是单点的,还须要对Zabbix Server构建高可用架构。运维

二、Zabbix应用组件

Zabbix主要由如下几个组件构成:分布式

  • Zabbix Server:Zabbix的核心组件,是全部配置信息、统计信息和操做数据的核心存储器。它主要负责接收客户端发送的报告和信息,同时,全部的配置、统计数据和配置操做数据均由其组织
  • Zabbix Database Storage:主要用于数据存储,全部配置信息和Zabbix收集到的数据都被存储在这里。经常使用的存储设备有MySQL、Oracle、SQLite等
  • Zabbix Web:Zabbix提过的GUI,使用户能够经过Web页面访问Zabbix以方便查看各类监控数据
  • Zabbix Proxy:可选组件,用于Zabbix分布式监控环境。Zabbix Proxy可代替Zabbix Server客户端的性能和可用性数据,汇总后统一发往Zabbix Server
  • Zabbix Agent:部署在被监控主机上,可以主动监控本地资源和应用程序,并将收集到的数据发往Zabbix Server或Zabbix Proxy

三、Zabbix服务进程和运行架构

默认状况下Zabbix包含如下五个进程(根据安装的组件不一样会运行不一样的进程):工具

  • zabbix_agentd:Zabbix Agent的守护进程
  • zabbix_get:Zabbix提供的一个工具,能够从客户端拉取数据;该工具可用于当Zabbix Server没法获取到客户端信息时进行排错
  • zabbix_sender:用于Zabbix Agent主动推送监控数据到Zabbix Server,对于须要监控大量主机的环境很是有用,能够很大程度上减轻Zabbix Server的服务器压力
  • zabbix_proxy:Zabbix Proxy的守护进程
  • zabbix_java_gateway(可选):JAVA网关,相似zabbix_agent,主要用于JAVA环境的监控。只能主动将数据推送到Zabbix Server上,Zabbix Server不能从它上面拉取数据
  • zabbix_server:Zabbix Server的守护进程

Zabbix的整个运行架构以下图所示:性能

图片1

相关文章
相关标签/搜索