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
上面的源码目录结构中,需要我们重点关注的源码目录有:include
,libs
,zabbix_agent
,zabbix_server
,已用“*”标注了出来。
zabbix整体架构图
zabbix的整体架构如下图所示:
组件说明:
-
Zabbix Server:可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能。
-
DataBase:专用于存储所有配置信息,以及由zabbix收集的数据。
-
Web GUI:zabbix前端操作界面。
-
Zabbix Proxy:可选组件,常用于监控节点很多的分布式环境中,代理server收集部分数据转发到server,可以减轻server的压力。
-
Zabbix Agent:部署在被监控的主机上,负责收集主机本地数据如cpu、内存、数据库等指标发往server端或proxy端。
相关文章推荐
- [Caffe源码解析]1.整体结构&附带番外
- zabbix数据库表结构解析
- jQuery源码解析-整体架构
- hadoop源码解析之hdfs内部结构分析
- underScore 源码解析(一)---- 结构
- [PHP]php源码解析之源码目录结构
- 【RocketMQ源码深度解析2】源码目录结构介绍&Remoting通信层
- 注册中心 Eureka 源码解析 —— 项目结构简介
- jQuery源码分析系列 : Ajax 整体结构
- MySQL系列:innodb源码分析之page结构解析
- Uboot 源码分析----代码整体结构分析
- Linux源码解析-内核栈与thread_info结构详解
- 注册中心 Eureka 源码解析 —— 项目结构简介
- jQuery源码解析---jQuery回调模块的结构
- geth结构解析和源码分析
- jdk源码解读-并发包-Lock-ReentrantReadWriteLock(1)-整体介绍以及读锁的lock 和 unlock 解析
- 注册中心 Eureka 源码解析 —— 项目结构简介
- Redis源码解析——字典结构
- GeoServer源码解析和扩展 (三)结构篇