zabbix概述

摘要:
Zabbix软件能够监控众多网络参数和服务器的健康度、完整性。Zabbix使用灵活的告警机制,允许用户为几乎任何事件配置基于邮件的告警。这些功能使得Zabbix成为容量规划的理想选择。适当的配置后,Zabbix可以在监控IT基础设施方面发挥重要作用。Zabbix是根据GPL通用公共许可证的第二版编写和发布的。ServerZabbixserver是Zabbix软件的核心组件,agent向其报告可用性、系统完整性信息和统计信息。也正是由于这种设计,使得Zabbix的配置变得更加灵活易用。

概述

Zabbix 由 Alexei Vladishev 创建,目前由其成立的公司—— Zabbix SIA 积极的持续开发更新维护, 并为用户提供技术支持服务。

Zabbix 是一个企业级分布式开源监控解决方案。

Zabbix 软件能够监控众多网络参数和服务器的健康度、完整性。Zabbix 使用灵活的告警机制,允许用户为几乎任何事件配置基于邮件的告警。这样用户可以快速响应服务器问题。Zabbix 基于存储的数据提供出色的报表和数据可视化功能。这些功能使得 Zabbix 成为容量规划的理想选择。

Zabbix 支持主动轮询(polling)和被动捕获(trapping)。Zabbix所有的报表、统计数据和配置参数都可以通过基于 Web 的前端页面进行访问。基于 Web 的前端页面确保您可以在任何地方访问您监控的网络状态和服务器健康状况。适当的配置后,Zabbix 可以在监控 IT 基础设施方面发挥重要作用。无论是对于有少量服务器的小型组织,还是拥有大量服务器的大企业而言,同样适用。

Zabbix 是免费的。Zabbix 是根据GPL通用公共许可证的第二版编写和发布的。这意味着产品源代码是免费发布的,可供公共使用。

介绍

Zabbix 是一个高度成熟完善的网络监控解决方案,一个的软件包中包含了多种功能。

数据采集

  • 可用性和性能检查;
  • 支持 SNMP(包括主动轮询和被动捕获)、IPMI、JMX、VMware 监控;
  • 自定义检查;
  • 按照自定义的时间间隔采集需要的数据;
  • 通过 Server/Proxy 和 Agents 来执行数据采集。

灵活的阈值定义

  • 您可以参考后端数据库定义非常灵活的告警阈值,即触发器

高度可配置化的告警

  • 可以根据递增计划、接收者、媒介类型自定义发送告警通知;
  • 使用宏变量可以使告警通知变得更加高效有用;
  • 自动操作包含远程执行命令。

实时图形

  • 使用内置图形功能可以将监控项实时绘制成图形。

Web 监控功能

  • Zabbix可以追踪模拟鼠标在 Web 网站上的点击操作,来检查 Web 网站的功能和响应时间。

丰富的可视化选项

  • 可以组合多个监控项到单个视图中,创建自定义图表;
  • 网络拓扑图;
  • 以仪表盘样式展示自定义聚合图形和幻灯片演示;
  • 报表;
  • 监控资源的更高层次展示视图(业务视图)。

历史数据存储

  • 存储在数据库中的数据;
  • 历史配置;
  • 内置数据管理机制(housekeeping)。

配置简单

  • 将被监控设备添加为主机;
  • 主机一旦添加到数据库中,就会采集数据用于监控;
  • 将模板用于监控设备。

使用模板

  • 模板中分组检查;
  • 模板可以关联模板,继承已关联模板的属性。

网络发现

  • 自动发现网络设备;
  • Zabbix Agent 发现设备后自动注册;
  • 自动发现文件系统、网络接口和 SNMP OIDs 值。

快捷的 Web 界面

  • 基于 PHP 的 Web 前端;
  • 可以从任何地方访问;
  • 您可以定制自己的操作方式;
  • 您可以通过审计日志来查看你的操作。

Zabbix API

  • ZabbixAPI为 Zabbix 提供可编程接口,用于批量操作、第三方软件集成和其他用途。

权限管理系统

  • 安全的用户身份验证;
  • 指定的用户只能查看指定的权限范围内的视图。

功能强大且易于扩展的 Zabbix Agent

  • 部署于被监控对象上;
  • 支持 Linux 和 Windows ;

二进制守护进程

  • 为了更好的性能和更少的内存占用,采用 C 语言编写;
  • 便于移植。

适应更复杂的环境

  • 使用 Zabbix Proxy 代理,可以轻松实现分布式远程监控。

zabbix架构

zabbix组成

zabbix概述第1张

Zabbix 由几个主要的功能组件组成,其功能介绍如下所示。

  • Server
    • Zabbix server是 Zabbix软件的核心组件,agent 向其报告可用性、系统完整性信息和统计信息。server也是存储所有配置信息、统计信息和操作信息的核心存储库。
  • 数据库
    • 所有配置信息以及 Zabbix 采集到的数据都被存储在数据库中。
  • Web 界面
    • 为了从任何地方和任何平台轻松访问 Zabbix ,我们提供了基于 web 的界面。该界面是 Zabbix server 的一部分,通常(但不一定)和 Zabbix server 运行在同一台物理机器上。
  • Proxy
    • Zabbix proxy可以代替 Zabbix server采集性能和可用性数据。Zabbix proxy在Zabbix的部署是可选部分;但是proxy的部署可以很好的分担单个Zabbix server的负载。
  • Agent
    • Zabbix agents部署在被监控目标上,用于主动监控本地资源和应用程序,并将收集的数据发送给 Zabbix server。

数据流

另外,回过头来整体的了解下 Zabbix 内部的数据流对Zabbix的使用也很重要。首先,为了创建一个采集数据的监控项,您就必须先创建主机。其次,在任务的另外一端,必须要有监控项才能创建触发器(trigger),必须要有触发器来创建动作(action)。因此,如果您想要收到类似“X个server上CPU负载过高”这样的告警,您必须首先为Server X创建一个主机条目,其次创建一个用于监控其 CPU的监控项,最后创建一个触发器,用来触发 CPU负载过高这个动作,并将其发送到您的邮箱里。虽然这些步骤看起来很繁琐,但是使用模板的话,实际操作非常简单。也正是由于这种设计,使得 Zabbix 的配置变得更加灵活易用。

zabbix关系逻辑图

zabbix概述第2张

zabbix术语

主机(host):要监控的网络设备,可由IP或DNS名称指定;

主机组(host group):主机的逻辑容器,可以包含主机和模板,但同一个组织内的主机和模板不能互相链接;主机组通常在给用户或用户组指派监控权限时使用;

监控项(item):一个特定监控指标的相关的数据;这些数据来自于被监控对象;item是zabbix进行数据收集的核心,相对某个监控对象,每个item都由"key"标识;

触发器(trigger):一个表达式,用于评估某监控对象的特定item内接收到的数据是否在合理范围内,也就是阈值;接收的数据量大于阈值时,触发器状态将从"OK"转变为"Problem",当数据再次恢复到合理范围,又转变为"OK";

事件(event):触发一个值得关注的事情,比如触发器状态转变,新的agent或重新上线的agent的自动注册等;

动作(action):指对于特定事件事先定义的处理方法,如发送通知,何时执行操作;

报警升级(escalation):发送警报或者执行远程命令的自定义方案,如每隔5分钟发送一次警报,共发送5次等;

媒介(media):发送通知的手段或者通道,如Email、Jabber或者SMS等;

通知(notification):通过选定的媒介向用户发送的有关某事件的信息

远程命令(remote command):预定义的命令,可在被监控主机处于某特定条件下时自动执行

模板(template):用于快速定义被监控主机的预设条目集合,通常包含了item、trigger、graph、screen、application以及low-level discovery rule;模板可以直接链接至某个主机

应用(application):一组item的集合

web场景(web scennario):用于检测web站点可用性的一个活多个HTTP请求

前端(frontend):Zabbix的web接口

Zabbix使用场景及系统概述

https://www.zabbix.com/cn/features
Zabbix是一个企业级解决方案,支持实时监控数千台服务器,虚拟机和网络设备,采集百万级监控指标,适用于任
何IT基础架构、服务、应用程序和资源的解决方案

zabbix概述第3张

常见的监控方案:

开源监控软件:cacti、nagios、zabbix、smokeping、open-falcon等

Cacti:

https://www.cacti.net/
https://github.com/Cacti/cacti

Nagios

https://www.nagios.org/

SmokePing

Cacti是基于LAMP平台展现的网络流量监测及分析工具,通过SNMP技术或自定义脚本从目标设备/主机获取监控指标信息;其次进行数据存储,调用模板将数据存到数据库,使用rrdtool存储和更新数据,通过rrdtool绘制结果图形;最后进行数据展现,通过Web方式将监控结果呈现出来,常用于在数据中心监控网络设备。Nagios用来监视系统和网络的开源应用软件,利用其众多的插件实现对本机和远端服务的监控,当被监控对象发生异常时,会及时向管理员告警,提供一批预设好的监控插件,用户可以之间调用,也可以自定义Shell脚本来监控服务,适合各企业的业务监控,可通过Web页面显示对象状态、日志、告警信息,分层告警机制及自定义监控相对薄弱。
https://oss.oetiker.ch/smokeping/
http://blogs.studylinux.net/?p=794

Open-falcon

https://www.open-falcon.org/
https://github.com/XiaoMi/open-falcon

Zabbix

https://www.zabbix.com/cn/

Prometheus

新一代的监控系统

免责声明:文章转载自《zabbix概述》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇BAT文件如何注释在VMware下进行的使用ssh服务管理远程主机下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

程序员应具备的PS基本技能(三):程序员使用PSD源文件切图

若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/article/details/102478062本文章博客地址:https://blog.csdn.net/qq21497936/article/details...

Build GMP on 64bit Windows

1、MSYS2 环境搭建 1.1、安装 msys2的主页地址: http://www.msys2.org/ 下载32位或64位,我这里 下载了64位 msys2-x86_64-20161025.exe 双击傻瓜式安装 1.2、更新软件包 开始菜单->MSYS2 64bit->MSYS2 MinGW 32-bit 剩下的工作都在这个bashshe...

Linux系统登录:本地登录与远程登录

安装登录系统的位置可以将登录方式分为两种:本地登录和远程登录。本地登录可以使用图形界面和命令行模式(也称字符界面)两种方式;远程登录可以使用SSH、Telnent、VNC、SFTP 4种方式。 常见的远程登录方式有SSH、Telnet、VNC和SFTP 4种。 SSH:SSH(Secure Shell)是一种使用加密技术保护传输数据包的远程登录工具,所有数...

curl用法详解

前言 昨天现场的浏览器崩溃了,楼主苦逼,就临时用了curl测试了下图片请求接口。今天总结下。 一.what? curl is a tool to transfer data from or to a server curl是用在命令行和脚本进行传输数据到服务器或者从服务器传输数据的工具。 二.特性 支持广泛的协议,如:ftp、http、https、pop...

Ubuntu16.04安装rabbitmq(实战)

安装Erlang 由于RabbitMQ需要基于Erlang/OTP,所以在安装RabbitMQ之前需要先安装Erlang/OTP。同样的,在Ubuntu标准的repositories中,Erlang/OTP的版本很老,推荐不要直接安装在Ubuntu标准的repositories中Erlang/OTP,而是安装新版本。 添加地址 首先执行下面两个命令,添加E...

用SourceForge管理开源项目

SourceForge.net是开源软件开发者进行开发管理的集中式场所,也是全球最大开源软件开发平台和仓库。 Sourceforge为开源软件开发测试提供了高性能的免费空间: 1、空间稳定性非常高,无广告,速度快,无限空间容量以及流量。 2、支持PHP、Perl、Python、Ruby、shell等多种脚本,支持FTP上传。 3、可以绑定自己的顶级域名,...