zabbix的组件及作用 理论

  • Zabbix简介
    Zabbix是一个企业级的开源分布式监控解决方案,由C语言编写而成的底层架构(server端和agent端),由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费的技术支持赢利。
    官方网站:http://×××w.zabbix.com
    Zabbix通过C/S模式采集数据,通过B/S模式在web端展示和配置。
    被监控端:主机通过安装agent方式采集数据,网络设备通过SNMP方式采集数据
    Server端:通过收集SNMP和agent发送的数据,写入MySQL数据库,再通过php+apache在web前端展示。
    1. Zabbix运行条件:
      Server:
      Zabbix Server需运行在LAMP(Linux+Apache+Mysql+PHP)环境下,对硬件要求低
      Agent:
      目前已有的agent基本支持市面常见的OS,包含Linux、HPUX、Solaris、Sun、windows等
      SNMP:
      支持各类常见的网络设备
    2. Zabbix功能
      具备常见的商业监控软件所具备的功能(主机的性能监控、网络设备性能监控、数据库性能监控、FTP等通用协议监控、多种告警方式、详细的报表图表绘制)
      支持自动发现网络设备和服务器,支持分布式,能集中展示、管理分布式的监控点,扩展性强,server提供通用接口,可以自己开发完善各类监控。
    3. 优劣势
      优点:
      开源,无软件成本投入;
      Server对设备性能要求低(实际测试环境:虚拟机Redhat EL AS5,2GCPU 1G内存,监控5台设备,CPU使用率基本保持在10%以下,内存剩余400M以上);
      支持设备多;
      支持分布式集中管理;
      开放式接口,扩展性强;
      当监控的item比较多服务器队列比较大时可以采用被动状态,被监控客户端主动从server端去下载需要监控的item然后取数据上传到server端。这种方式对服务器的负载比较小。
      缺点:
      无厂家支持,出现问题解决比较麻烦
      需在被监控主机上安装agent,所有数据都存在数据库里,产生的数据据很大,瓶颈主要在数据库。

    1.zabbix的监控原理:

  • 组件说明:
    1)zabbix server:负责接收agent发送的报告信息的核心组件,所有配置、统计数据及操作数据都由它组织进行;
    2)database storage:专用于存储所有配置信息,以及由zabbix收集的数据;
    3)web interface:zabbix的GUI接口;通常与 Server 运?在同?台主机上;
    4)proxy:可选组件,常用于监控节点很多的分布式环境中,代理server收集部分数据转发到server,可以减轻server的压力;
    5)agent:部署在被监控的主机上,负责收集主机本地数据如cpu、内存、数据库等数据发往server端或proxy端;
    监控流程:
    agentd需要安装到被监控的主机上,它负责定期收集各项数据,并发送到zabbix server端,zabbix server将数据存储到数据库中,zabbix web根据数据在前端进行展现和绘图。这里agentd收集数据分为主动和被动两种模式:
    主动:agent请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy
    被动:server向agent请求获取监控项的数据,agent返回数据。
    客户端守护进程:
    此进程收集客户端数据,例如cpu负载、内存、硬盘使用情况等。
    zabbix_get
    zabbix工具,单独使用的命令,通常在server或者proxy端执行获取远程客户端信息的命令。通常用户排错。例如在server端获取不到客户端的内存数据,我们可以使用zabbix_get获取客户端的内容的方式来做故障排查。
    zabbix_sender
    zabbix工具,用于发送数据给server或者proxy,通常用于耗时比较长的检查。很多检查非常耗时间,导致zabbix超时。于是我们在脚本执行完毕之后,使用sender主动提交数据。
    zabbix_server
    zabbix服务端守护进程。zabbix_agentd、zabbix_get、zabbix_sender、zabbix_proxy、zabbix_java_gateway的数据最终都是提交到server
    备注:当然不是数据都是主动提交给zabbix_server,也有的是server主动去取数据。
    zabbix_proxy
    zabbix代理守护进程。功能类似server,唯一不同的是它只是一个中转站,它需要把收集到的数据提交/被提交到server里。为什么要用代理?代理是做什么的?卖个关子,请继续关注运维生存时间zabbix教程系列。
    zabbix_java_gateway
    zabbix2.0之后引入的一个功能。顾名思义:Java网关,类似agentd,但是只用于Java方面。需要特别注意的是,它只能主动去获取数据,而不能被动获取数据。它的数据最终会给到server或者proxy。
    扩展:zabbix的监控架构
    在实际监控架构中,zabbix根据网络环境、监控规模等 分了三种架构: server-client 、master-node-client、server-proxy-client三种 。
    1、server-client架构
    也是zabbix的最简单的架构,监控机和被监控机之间不经过任何代理 ,直接由zabbix server和zabbix agentd之间进行数据交互。适用于网络比较简单,设备比较少的监控环境 。
    2、server-proxy-client架构
    其中proxy是server、client之间沟通的一个桥梁,proxy本身没有前端,而且其本身并不存放数据,只是将agentd发来的数据暂时存放,而后再提交给server 。该架构经常是和master-node-client架构做比较的架构 ,一般适用于跨机房、跨网络的中型网络架构的监控。
    3、master-node-client架构
    该架构是zabbix最复杂的监控架构,适用于跨网络、跨机房、设备较多的大型环境 。每个node同时也是一个server端,node下面可以接proxy,也可以直接接client 。node有自已的配置文件和数据库,其要做的是将配置信息和监控数据向master同步,master的故障或损坏对node其下架构的完整性。

    Grafana简介:
    Grafana是一个可视化面板(Dashboard),有着非常漂亮的图表和布局展示,功能齐全的度量仪表盘和图形编辑器,支持Graphite、zabbix、InfluxDB、Prometheus和OpenTSDB作为数据源。以InfluxDB(由go语言编写,是一个开源,分布式,时间序列,事件,可度量和无外部依赖的数据库)作为底层数据库;
    Grafana主要特性:灵活丰富的图形化选项;可以混合多种风格;支持白天和夜间模式;多个数据源。

    原文地址:http://blog.51cto.com/14036860/2321509

    时间: 2024-10-16 03:50:35

    zabbix的组件及作用 理论的相关文章

    详解CloudFoundry中各个组件的作用

    CloudFoundry是一个标杆性的项目,架构设计上有很多值得借鉴之处.从CloudFoundry官网摘了一张图,我们以此剖析各个组件的作用. Router Router是整个平台的流量入口,负责分发所有的请求到对应的组件,包括来自外部用户对app的请求和平台内部的管理请求. Router是PaaS平台中至关重要的一个组件,它在内存中维护了一张路由表,记录了域名与实例的对应关系,所谓的实例自动迁移,靠得就是这张路由表,某实例宕掉了,就从路由表中剔除,新实例创建了,就加入路由表. CloudFo

    大数据hadoop领域技术总体介绍(各个组件的作用)

    2019/2/16 星期六 大数据领域技术总体介绍(各个组件的作用)1.大数据技术介绍大数据技术生态体系:Hadoop 元老级分布式海量数据存储.处理技术系统,擅长离线数据分析Hbase 基于hadoop 的分布式海量数据库,离线分析和在线业务通吃Hive sql 基于hadoop 的数据仓库工具,使用方便,功能丰富,使用方法类似SQLZookeeper 集群协调服务Sqoop 数据导入导出工具Flume 数据采集框架 //经常会结合kafka+flume数据流 或者用于大量的日志收集到hdfs

    安卓四大组件的作用、安卓Service的作用

    Activity好像是应用程式的眼睛,提供与user互动之窗. BroadcastReceiver好像是耳朵,接收来自各方的Intent. Service是在后台运行的. 一个Service 是一段长生命周期的,没有用户界面的程序.比较好的一个例子就是一个正在从播放列表中 播放歌曲的媒体播放器.在一个媒体播放器的应用中,应该会有多个activity,让使用者可以选择歌曲并播放 歌曲.然而,音乐重放这个功能并没有对应的activity,因为使用者当然会认为在导航到其它屏幕时音乐应该 还在播放的.在

    BMC手册 — 第四模块 BMC各个组件的作用和使用方法(4)

    上一小节,我们学习了wpconfig,还提到了在这一小节,我们将学习,PCM的RuleSets的学习. 学到这里你是不是发现写的步骤非常仔细明了,因为当初我也是小白接触的BMC,当时我交接的人走的很匆忙,而自己掌握的技能又满足不了业务,那段时间,自己又非常害怕和畏惧,所以我才有决心,写一个傻瓜式的管理和维护步骤. 话不多说了,现在来学习写RuleSets吧! 下面我来列举一列,如PATROLCentral修改历史数据保留为半年186天. 步骤一:创建RulSets. 步骤二:配置RuleSets

    BackgroundWorker组件的作用

    当构建一个图形化的Windows Form桌面应用程序并且需要执行在应用程序主UI线程之外的线程中长时间的任务时,BackgroundWorker类就很有用了. 要使用BackgroundWorker,我们只需要告诉它希望在后台执行那个方法并且调用RunWorkerAsync()即可 public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(ob

    Zabbix理论知识

    Zabbix 什么是Zabbix? Zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. Zabbix作用 Zabbix能够监视各种服务器的健康性.网络的稳定性以及各种应用系统的可靠性.当监控出现异常时,Zabbix通过灵活的告警策略,可以为任何事件配置基于邮件.短信.微信等告警机制. Zabbix特性: 可以通过基于Zabbix提供的web界面进行配置和操作,基于web的前端页面还提供了出色的报告和数据可视化功能. Zabbix构成 Zabbix由两部分

    Zabbix功能概述及架构介绍(理论篇)

    1.Zabbix的功能概述 1.1 zabbix是什么 Alexei Vladishev创建了Zabbix项目,当前处于活跃的开发状态,Zabbix SIA提供支持. Zabbix是一个企业级的.开源的.分布式的监控套件. Zabbix可以对网络和服务进行监控. Zabbix利用灵活的告警机制,可实现微信.短信和邮件的自动报警.Zabbix利用存储的监控数据提供监控报告及实现图形化显示. Zabbix支持polling和trapping两种方式.所有的Zabbix报告都可以通过配置参数在WEB界

    zabbix4.0理论+操作——01(zabbix介绍)

    zabbix介绍 要想实时的了解服务器的运行状况并且能在出现问题时及时解决,利用监控软件是一个很好的选择,而zabbix监控系统则在众多监控软件中脱颖而出. zabbix是一个基于web界面的企业级开源监控软件,Zabbix服务器需要LAMP环境或LNMP环境,提供分布式系统监控与网络监视功能.具备主机的性能监控,网络设备性能监控,数据库性能监控,多种告警方式,详细报表.图表的绘制等功能.监测对象可以是Linux或Windows服务器,也可以是路由器.交换机等网络设备,通过SNMP.zabbix

    zabbix(一):zabbix自动化监控系统搭建详解

    一.监控系统机制 1.监控工具工作机制 监控是通过传感器采集数据,在经过数据的存储加工后,进行展示.一般采集的数据为时间序列数据,即随时间变化而动态变化的数据:当采集到的数据超出阈值将会报警.监控功能的实现可基于专用agent.ssh.SNMP协议.IPMI(专业级监控接口IntelligentPlatform Management Interface,指挥平台管理接口) 2.SNMP协议 Simple Network Management Protocol,简单网络管理协议.由一组网络管理的标