什么是zabbix
Zabbix由Alexei Vladishev创建,目前由Zabbix SIA积极开发和支持。
Zabbix是企业级的开源分布式监视解决方案。
Zabbix是监视网络众多参数以及服务器的运行状况和完整性的软件。Zabbix使用灵活的通知机制,允许用户为几乎任何事件配置基于电子邮件的警报。这样可以快速响应服务器问题。Zabbix基于存储的数据提供了出色的报告和数据可视化功能。这使得Zabbix非常适合容量规划。
Zabbix支持轮询和陷阱。所有Zabbix报表和统计信息以及配置参数都可以通过基于Web的前端进行访问。基于Web的前端确保可以从任何位置评估网络的状态和服务器的运行状况。正确配置的Zabbix可以在监视IT基础结构中发挥重要作用。对于具有少量服务器的小型组织和具有大量服务器的大型公司而言,也是如此。
Zabbix是免费的。Zabbix是根据GPL通用公共许可证版本2 编写和分发的。这意味着Zabbix的源代码是免费分发的,并且可供公众使用
普通监控
![](https://img.haomeiwen.com/i18603521/b9baa496281d8f05.png)
分布式监控
![](https://img.haomeiwen.com/i18603521/2ff2e5c85d1cec2a.png)
Zabbix 优点
开源,无软件成本投入
Server 对设备性能要求低
支持设备多,自带多种监控模板
支持分布式集中管理,有自动发现功能,可以实现自动化监控
当监控的 item 比较多服务器队列比较大时可以采用被动状态,被监控客户端主动 从server 端去下载需要监控的item 然后取数据上传到 server 端。 这种方式对服务器的负载比较小。
Api 的支持,方便与其他系统结合
Zabbix 缺点
需在被监控主机上安装 agent,所有数据都存在数据库里, 产生的数据很大,瓶颈主要在数据库。
![](https://img.haomeiwen.com/i18603521/e9ca30f834e9cfd2.png)
Zabbix监控方式
被动模式
主动模式
1、Server
Zabbix server 是agent程序报告系统可用性、系统完整性和统计数据的核心组件,是所有配置信息、统计信息和操作数据的核心存储器。
2、数据库存储
所有配置信息和Zabbix收集到的数据都被存储在数据库中。
3、Web界面
为了从任何地方和任何平台都可以轻松的访问Zabbix, 我们提供基于Web的Zabbix界面。该界面是Zabbix Server的一部分,通常跟Zabbix Server运行在同一台物理机器上。
4、Proxy 代理服务器
Zabbix proxy 可以替Zabbix Server收集性能和可用性数据。
Zabbix Proxy是一个可以从一个或多个受监控设备收集监控数据,并将信息发送到Zabbix sever,基本上是代server工作的。所有收集的数据都在本地进行缓存,然后传送到proxy所属的Zabbix sever。
部署Proxy是可选的,但是可能非常有益于分散单个Zabbix sever的负载。 如果只有proxy收集数据,sever上的进程就会减少CPU消耗和磁盘I / O负载。
Zabbix proxy是完成远程区域、分支机构、没有本地管理员的网络的集中监控的理想解决方案。
Zabbix proxy需要使用独立的数据库。
5、Agent监控代理
Zabbix agents监控代理 部署在监控目标上,能够主动监控本地资源和应用程序,并将收集到的数据报告给Zabbix Server。
6、数据流
监控方面,为了创建一个监控项(item)用于采集数据,必须先创建一个主机(host)。告警方面,在监控项里创建触发器(trigger),通过触发器(trigger)来触发告警动作(action)。 因此,如果你想收到Server XCPU负载过高的告警,你必须: 1. 为Server 创建一个host并关联一个用于对CPU进行监控的监控项(Item)。 2. 创建一个Trigger,设置成当CPU负载过高时会触发 3. Trigger被触发,发送告警邮件 。
Zabbix常用术语的含义
1、主机 (host)
- 一台你想监控的网络设备,用IP或域名表示
2、主机组 (host group)
- 主机的逻辑组;它包含主机和模板。一个主机组里的主机和模板之间并没有任何直接的关联。通常在给不同用户组的主机分配权限时候使用主机组。
3、监控项 (item)
- 你想要接收的主机的特定数据,一个度量数据。
4、触发器 (trigger)
- 一个被用于定义问题阈值和“评估”监控项接收到的数据的逻辑表达式
当接收到的数据高于阈值时,触发器从“OK”变成“Problem”状态。当接收到的数据低于阈值时,触发器保留/返回一个“OK”的状态。
5、动作 (action)
- 一个对事件做出反应的预定义的操作。
一个动作由操作(例如发出通知)和条件(当时操作正在发生)组成
6、媒介 (media)
- 发送告警通知的手段;告警通知的途径
7、远程命令 (remote command)
- 一个预定义好的,满足一些条件的情况下,可以在被监控主机上自动执行的命令
8、模版 (template)
- 一组可以被应用到一个或多个主机上的实体(监控项,触发器,图形,应用,Web场景等)的集合
模版的任务就是加快对主机监控任务的实施;也可以使监控任务的批量修改更简单。模版是直接关联到每台单独的主机上。
9、web 场景 (web scenario)
- 利用一个或多个HTTP请求来检查网站的可用性
10、前端 (frontend)
- Zabbix提供的web界面
11、Zabbix server
- Zabbix软件实现监控的核心程序,主要功能是与Zabbix server和Agents进行交互、触发器计算、发送告警通知;并将数据集中保存等
12、Zabbix agent
Zabbix agent部署在监控的目标上,主动监测本地的资源和应用(硬件,内存,处理器统计等)。
Zabbix agent收集本地的操作信息并将数据报告给Zabbix server用于进一步处理。一旦出现异常 (比如硬盘空间已满或者有崩溃的服务进程), Zabbix server会主动警告管理员指定机器上的异常
网友评论