zoukankan      html  css  js  c++  java
  • Zabbix简介

    一 Zabbix简介

    1.1 概述

    Zabbix是一个企业级的高度集成开源监控软件,提供分布式监控解决方案。可以用来监控设备、服务等可用性和性能。

    1.2 所支持监控方式

    目前由zabbix提供包括但不限于以下事项类型的支持
    Zabbix agent checks     #这是客户端来进行数据采集,又分为Zabbix agent(被动模式:客户端等着服务器端来要数据),Zabbix agent (active)(主动模式:客户端主动发送数据到服务器端)
    SNMP agent checks       #SNMP方式,如果要监控打印机网络设备等支持SNMP设备的话,但是又不能安装agent的设备。
    SNMP traps
    IPMI checks             #IPMI即智能平台管理接口,现在是业界通过的标准。用户可以利用IPMI监视服务器的物理特性,如温度、电压、电扇工作状态、电源供应以及机箱入侵等。
    Simple checks        #简单检查,选择此方式后icmping主机判断主机是否存活
    VMware monitoring        #VMware监控
    Log file monitoring        #监控日志文件
    Calculated items        #监控项的计算
    Zabbix internal checks  #内部检查允许监控Zabbix的内部流程。 换句话说,您可以监视与Zabbix服务器或Zabbix代理到底发生了什么。
    SSH checks            #SSH检查。Zabbix服务器必须执行SSH检查最初的配置SSH2的支持。
    Telnet checks        #Telnet检查。Telnet检查表现为缺少代理的监控。 Zabbix代理不需要远程登录检查。
    External checks        #Zabbix服务器执行的外部检查是检查通过运行shell脚本或二进制。外部检查不需要任何代理被监控主机上运行。
    Aggregate checks        #总体检查Zabbix服务器通过直接从项目收集汇总信息数据库查询。
    Trapper items        #陷阱项目接受传入的数据,而不是查询它。对于您可能要“推”到Zabbix的任何数据都是有用的。
    JMX monitoring        #java管理扩展,是java平台上为应用程序、设备、系统等植入管理功能的框架。JMX可以跨越一系列异构操作系统平台、系统体系架构和网络传输协议,灵活地开发无缝集成的系统、网络和服务管理应用。
    ODBC checks            #ODBC监控对应数据库监控Zabbix前端项目类型。ODBC是一个C编程语言中间件API用于访问数据库管理系统(DBMS)。 ODBC的概念是由微软,后来移植到其他平台。

    二 Zabbix优势

    • 自由开放源代码产品,可以对其进行任意修改和二次开发,采用GPL协议;
    • 安装和配置简单;
    • 搭建环境简单,基于开源软件构建平台;
    • 完全支持Linux、Unix、Windows、AIX、BSD等平台,采用C语言编码,系统占用小,数据采集性能和速度非常快;
    • 数据采集持久存储到数据库,便于对监控数据的二次分析;
    • 非常丰富的扩展能力,轻松实现自定义监控项和实现数据采集;

    三 Zabbix架构及服务

    3.1 部署架构

    Client/Server:通用架构
    Client/Node/Server和Client/Proxy/Server:分布式架构,Zabbix-Server将采集的数据持久的存储到数据库中,前端UI展示,Agent采集数据是,Proxy做代理,Server处理数据。
    采集方式:SNMP、SSH、Telent、IPMI等多种协议。

    3.2 相关服务

    • zabbix_server:Zabbix服务端的核心程序;
    • zabbix_proxy:Zabbix代理服务程序,用于分布式监控proxy模式中;
    • zabbix_agent(d):Zabbix专用客户端程序(守护进程),收集客户端数据;
    • zabbix_java_gateway:Zabbix的Java采集服务端,用于JMX的监控方式;
    • zabbix_sender:Zabbix的trapping模式,将采集到的数据通过定时任务主动发送给zabbix_server;
    • zabbix_get:Zabbix的一个数据获取测试命令。

    四 Zabbix运行流程

    五 Zabbix特性

    5.1 数据收集

    • 可用、性能检测;
    • 支持Agent、SNMP、SSH、Telnet等;
    • 自定义的检测;
    • 自定义收集数据的频率;
    • 服务端/代理端和客户端模式。

    5.2 灵活的触发器

    • 可用定义非常灵活的告警阀值和多种告警相关联的条件。

    5.3 高度可定制的告警

    • 发送通知,告警级别、动作升级、收件人和媒体类型;
    • 通知可用使用远程命令的自动调用和执行。

    5.4 实时的绘图功能

    • 监控项将数据实时绘制在图形上。

    5.5 Web监控能力

    • Zabbix可用模拟浏览器请求一个网站,并检查返回值和响应时间。

    5.6 多种可视化展示

    • 自定义监控的展示图,将多种监控数据集中展示到一张图中;
    • 网络拓扑图;
    • 自定义的Screens和Slide shows将多种图形集中展示;
    • 报表功能;
    • 资源使用情况的监控展示。

    5.7 历史数据的存储

    • 数据存储在数据库中;
    • 历史数据的存放周期可配置;
    • 定期删除过期的历史数据。

    5.8 配置简易

    • 第一步:添加设备
    • 第二步:应用模板即可完成监控

    5.9 使用模板

    • 模板可以分组;
    • 模板具有可继承性。

    5.10 网络发现

    • 支持自动发现网络设备和服务器;
    • Agent自动注册;
    • 支持自动发现实时动态监控项的批量监控,自动发现文件系统、网络接口、SNMP OID。

    5.11 快速的访问接口

    • Web页面基于PHP;
    • 远程访问;
    • 日志审计。

    5.12 API功能

    • 应用API功能可以方便地和其他系统结合,包括手机客户端的使用。

    5.13 系统权限

    • 不同的用户展示监控的资源不同;
    • 对用户的身份认证。

    5.14 程序特性

    • 用C语言编写,其性能和内存开销非常小。

    5.15 大型环境的支持

    • 利用Zabbix-Proxy方式即可轻松构建远程监控。
    注意:crontab运行中对时间要求很高,确保所有设备尽量有时间同步或者NTP服务。
  • 相关阅读:
    3、看源码MVC中的Controllr的Json方法
    2、MVC+IOC容器+ORM结合
    1、看源码MVC如何实例化控制器?
    6、UnityConfig实现AOP
    5、动态代理AOP实现-DynamicProxy模式
    1、面向切面编程
    通过js看类似C#中的回掉
    C#新开一个线程取到数据,如何更新到主线程UI上面
    2.C#自定义Attribute
    1.C#中几个简单的内置Attribute
  • 原文地址:https://www.cnblogs.com/liujunjun/p/12254847.html
Copyright © 2011-2022 走看看