您的位置:首页 > 其它

Zabbix源码解析之源码整体结构

2019-12-05 12:04 3003 查看

zabbix源码目录结构

|-- bin         // 包含Windows下对zabbix_sender进行二次开发所需要的头文件与库
|-- build       // 包含Windows下的编译文件,二进制程序文件等
|-- conf        // agent,proxy,server的配置文件
|-- database    // 数据库脚本
|-- frontends   // PHP前端
|-- include     // zabbix公共头文件(*)
|-- m4          // 依赖第三方库的说明文件
|-- man         // 使用手册
|-- misc        // 包含图片,脚本等杂项文件
|-- sass
`-- src         // zabbix的实现源码文件
   |-- libs             // zabbix公共基础模块的代码(*)
   |-- modules          // zabbix可加载模块的开发示例
   |   `-- dummy
   |-- zabbix_agent     // zabbix客户端源码文件,主要是包括数据自动收集、被动监控和自动发送数据(*)
   |-- zabbix_get       // zabbix_get工具的源码
   |-- zabbix_java      // Java网关的源码
   |-- zabbix_proxy     // zabbix代理模块源码文件
   |   |-- datasender
   |   |-- heart
   |   |-- housekeeper
   |   |-- proxyconfig
   |   `-- taskmanager
   |-- zabbix_sender    // zabbix_sender工具的源码
   `-- zabbix_server    // zabbix服务端源码.每个子目录对应服务端一种子进程(*)
       |-- alerter
       |-- dbconfig
       |-- dbsyncer
       |-- discoverer
       |-- escalator
       |-- housekeeper
       |-- httppoller
       |-- ipmi
       |-- odbc
       |-- pinger
       |-- poller
       |-- preprocessor
       |-- proxypoller
       |-- scripts
       |-- selfmon
       |-- snmptrapper
       |-- taskmanager
       |-- timer
       |-- trapper
       `-- vmware

上面的源码目录结构中,需要我们重点关注的源码目录有:includelibszabbix_agentzabbix_server,已用“*”标注了出来。

zabbix整体架构图

zabbix的整体架构如下图所示:

组件说明:

  • Zabbix Server:可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能。

  • DataBase:专用于存储所有配置信息,以及由zabbix收集的数据。

  • Web GUI:zabbix前端操作界面。

  • Zabbix Proxy:可选组件,常用于监控节点很多的分布式环境中,代理server收集部分数据转发到server,可以减轻server的压力。

  • Zabbix Agent:部署在被监控的主机上,负责收集主机本地数据如cpu、内存、数据库等指标发往server端或proxy端。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  zabbix