# deploy-zabbix **Repository Path**: attacker/deploy-zabbix ## Basic Information - **Project Name**: deploy-zabbix - **Description**: No description available - **Primary Language**: Shell - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2025-04-23 - **Last Updated**: 2025-09-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Zabbix 一键部署与自动化运维文档 ## 项目简介 本项目旨在实现Zabbix监控系统的服务端与客户端一键部署,支持Docker快速启动Zabbix Server,客户端一键脚本自动注册、自动授权、自动配置监控项,极大提升运维效率。 --- ## 目录结构 ``` deploy-zabbix/ ├── docker/ # 服务端Docker部署相关 │ └── docker-compose.yaml ├── agent/ # 客户端自动化脚本与配置 │ ├── zabbix-agent-universal.sh │ ├── zabbix_agentd.d/ # 监控项配置 │ └── ... ├── ansible/ # Ansible批量运维(可选) ├── init.sh # 初始化脚本 └── README.md # 项目说明文档 ``` --- ## 快速开始 ### 1. 克隆仓库 ```bash git clone https://gitee.com/attacker/deploy-zabbix.git cd deploy-zabbix ``` ### 2. 服务端部署 #### 依赖环境 - 已安装 Docker - 已安装 Docker Compose 如未安装Docker Compose,可执行: ```bash curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/sbin/docker-compose chmod +x /usr/local/sbin/docker-compose docker-compose version ``` #### 启动Zabbix服务端 ```bash cd zabbix-server/docker-compose docker-compose up -d ``` 访问 `http://服务器IP:8080` 进入Zabbix Web界面。 - 默认用户名: Admin - 默认密码: zabbix ### 3. 客户端一键部署 #### 脚本调用方式 ```bash curl -s https://gitee.com/attacker/deploy-zabbix/raw/master/agent/zabbix-agent-universal.sh | bash -s zbx服务端IP 本机主机名 ``` 示例: ```bash curl -s https://gitee.com/attacker/deploy-zabbix/raw/master/agent/zabbix-agent-universal.sh | bash -s 10.0.0.102 pro-xxx-1 ``` 参数说明: - 第1个参数:Zabbix Server地址 - 第2个参数:主机名(唯一标识,建议用主机用途+编号) #### 自动化内容 - 自动下载安装zabbix-agent并配置服务端地址 - 自动下发监控项配置(端口、进程、日志等) - 自动处理netstat等命令权限,避免端口发现权限报错 - 自动注册到服务端,无需手动添加主机 --- ## 高级运维与自定义 ### 监控项自定义 - 配置文件目录:`/etc/zabbix/zabbix_agentd.d/` - 端口监控:编辑`ports.conf`、`ports.discovery.py` - 进程监控:编辑`process.conf` - 日志监控:编辑`log.conf` ### 服务端参数调整 - 编辑`zabbix-server/docker-compose.yaml`可自定义数据库、端口等参数 --- ## 通知 Zabbix告警媒介配置: Telegram类型: 名称: Telegram Alert 类型: Script 脚本名称: zabbix-tg-alart.py 参数: {ALERT.SENDTO} {ALERT.SUBJECT} {ALERT.MESSAGE} 飞书类型: 名称: Lark Alert 类型: Script 脚本名称: zabbix-lark-alart.py 参数: {ALERT.SENDTO} {ALERT.SUBJECT} {ALERT.MESSAGE} ## 告警模版 ** Zabbix告警模板配置 ** 1. 告警通知模板(PROBLEM状态) ```plaintext **[{TRIGGER.STATUS}] {TRIGGER.NAME}** 🔥 **实例**: {HOST.NAME} ({HOST.IP}) 🏷️ **所属群组**: {HOST.HOSTGROUP} 🚨 **告警等级**: {TRIGGER.SEVERITY} 📊 **监控项**: {ITEM.NAME} (当前值: {ITEM.VALUE}) ⏰ **触发时间**: {EVENT.DATE} {EVENT.TIME} ``` 2. 恢复通知模板(OK状态) ```plaintext **[{TRIGGER.STATUS}] {TRIGGER.NAME}** ✅ **实例**: {HOST.NAME} ({HOST.IP}) 🏷️ **所属群组**: {HOST.HOSTGROUP} 📊 **监控项**: {ITEM.NAME} (恢复值: {ITEM.VALUE}) 🕒 **持续时间**: {EVENT.AGE} ⏰ **恢复时间**: {EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME} ```