重要约定:全程按顺序执行命令,复制一行执行一行,执行完成再下一行;仅标注【需自定义密码】的位置修改,其余内容完全不动;所有操作均在 Rocky Linux 9 终端执行(远程 SSH 连接即可)。
一、前期准备:镜像下载 + 虚拟机配置(生产级标准)
1. 下载 Rocky Linux 9 镜像(阿里云源,高速稳定)
下载地址:https://mirrors.aliyun.com/rockylinux/9.7/isos/x86_64/
直接下载:Rocky-9.7-x86_64-minimal.iso(最小化镜像,轻量且满足部署需求)
2. 虚拟机硬件配置(按监控规模选择,最低生产级)
推荐测试 / 小规模配置:4C/8G/60G(与原文档一致,适配大部分场景)
3. 虚拟机细节配置(规避环境兼容坑,固定配置)
(1)基础配置
·系统版本选择:Linux →
Red Hat Enterprise Linux 9 64位(Rocky Linux 9 完美兼容此模板)
·启用硬件虚拟化:CPU → 虚拟化引擎 → 勾选Intel
VT-x/EPT或AMD-V/RVI(容器运行必备)
·禁用无用设备:USB、声卡、软驱等(节省系统资源,避免冗余占用)
(2)磁盘配置(核心,避免数据丢失 + 权限问题)
·控制器类型:SCSI →
VMware Paravirtual(性能最优,容器存储推荐)
·磁盘模式:独立 → 持久(防止容器重启 / 服务器重启导致数据丢失)
·分区要求:必须单独划分 /data 分区(≥20GB),用于 Zabbix 数据持久化
(3)网络配置(规避服务访问异常坑)
·网络适配器:VMXNET3(性能远优于 E1000,适合高并发监控)
·IP 配置:静态 IP(禁止 DHCP,避免 IP 变化导致 Zabbix Agent/Grafana 连接失败)
·网络模式:桥接 / 仅主机(根据实际网络环境选择,确保服务器能被本地访问)
二、Rocky Linux 9 系统安装(一步到位,含 SSH 默认开启)
1. 镜像安装步骤(固定操作,无坑点)
1.挂载镜像:将下载的Rocky-9.7-x86_64-minimal.iso挂载到虚拟机光驱,开机启动
2.安装引导:选择Install
Rocky Linux 9,进入图形化安装界面,语言直接选中文(简体)
3.安装目标(手动分区,按以下配置严格划分,规避磁盘坑):
o/boot/efi:200M,efi 格式(系统引导必备)
o/boot:1GB,xfs 格式(启动文件存储)
oswap:4GB(内存≤8GB 设为内存 1 倍,>8GB 固定设 8GB,避免内存溢出)
o/:15GB,xfs 格式(系统根目录)
o/data:剩余全部空间,xfs 格式(Zabbix 数据专用,必须配置)
✅分区完成后点击「完成」,确认分区变更(无需修改其他磁盘配置)
4.网络和主机名(一次性配置到位):
o开启网卡:点击网卡名称,勾选「开启连接」
o静态 IP 配置:点击「IPv4 设置」→ 方法选「手动」→ 添加 IP / 子网掩码 / 网关 / DNS(例:192.168.20.100/24,DNS 填 223.5.5.5/114.114.114.114)
o主机名:设置为zabbix-server(固定,方便容器识别,无需修改)
✅点击「应用」,确保网络状态显示「已连接」
5.ROOT 密码 + 用户配置(规避 SSH 登录坑):
o设置 ROOT 强密码:例Zabbix@Prod123!(记好,后续远程 SSH 需要)
o关键:无需创建普通用户,直接开启「允许 root 用户使用密码进行 SSH 登录」(安装时直接开启,避免后续补配 SSH)
6.开始安装:点击「开始安装」,等待安装完成(约 5-10 分钟),安装完成后点击「重启系统」
2. 系统重启后验证(无需额外操作,直接可用)
重启后用 ROOT 账号 + 设置的密码登录,终端输入ip a,确认静态 IP 与配置一致;输入ssh
localhost,确认 SSH 服务正常运行(无需修改任何 SSH 配置,安装时已开启 root 登录)。
三、系统前置准备(一次性解决依赖 + 防护拦截坑)
直接复制以下命令依次执行,注释仅说明作用,无需复制,执行完成无报错即进入下一步:
# 1. 更新系统软件包,解决版本兼容坑
sudo dnf update -y
# 2. 安装必备依赖工具,避免后续容器/命令执行失败
sudo dnf install -y curl policycoreutils-python-utils bind-utils
# 3. 永久关闭防火墙,避免端口拦截(容器部署推荐,新手无坑)
sudo systemctl stop firewalld
sudo systemctl disable firewalld
# 4. 永久关闭SELINUX,避免容器读写/权限拦截坑(重启后仍生效)
sudo setenforce 0
sudo sed -i 's/^SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
# 5. 验证SELINUX配置(输出permissive即成功,无需额外操作)
Getenforce
四、安装 Docker + Docker Compose(阿里云源,规避官方源拉取失败坑)
全程使用阿里云镜像源,拒绝官方源连接超时 / 重设问题,命令直接复制执行,一步安装成功:
步骤 1:添加阿里云 Docker 官方源(固定配置,无坑)
# 清理系统原有无效Docker源(若有)
sudo rm -f /etc/yum.repos.d/docker-ce.repo
# 添加Rocky Linux 9适配的阿里云Docker源
sudo tee /etc/yum.repos.d/docker-ce.repo <<-'EOF'
[docker-ce-stable]
name=Docker CE Stable - $basearch
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/9/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
EOF
步骤 2:安装 Docker 全套组件(直接安装,无依赖坑)
# 清理缓存并重建,避免旧源干扰
sudo dnf clean all && sudo dnf makecache
# 安装Docker及核心组件(适配Rocky Linux 9)
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 启动Docker并设置开机自启(容器开机运行必备)
sudo systemctl start docker
sudo systemctl enable docker
# 将当前用户加入docker组,避免每次执行docker输sudo(立即生效)
sudo usermod -aG docker $USER
newgrp docker
# 验证安装(输出版本即成功,无需额外操作)
docker --version
docker compose version
✅验证标准:终端分别输出版本号(如 Docker version 29.3.0、Docker Compose version v5.1.0),无任何报错。
五、配置 Docker 国内镜像源(提前配置,规避容器镜像拉取失败坑)
原部署中启动服务时才发现镜像拉取失败,此处提前配置国内高速镜像源,确保后续 MySQL/Zabbix/Grafana 镜像一次性拉取成功:
# 1. 备份原有Docker配置(若有,无则忽略)
sudo cp /etc/docker/daemon.json /etc/docker/daemon.json.bak 2>/dev/null || true
# 2. 添加国内高速镜像源(经测试,Rocky Linux 9 完美兼容)
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://docker.1ms.run",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn"
],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
}
}
EOF
# 3. 重启Docker使配置生效
sudo systemctl restart docker
# 4. 验证镜像源配置(显示配置的3个镜像源即成功)
docker info | grep -A 3 "Registry Mirrors"
六、创建项目目录(固定路径,规避权限 + 数据持久化坑)
直接复制执行,创建分层目录用于存放各服务配置和数据,容器删除 / 重启数据不丢失,且提前设置好权限,避免后续容器读写报错:
# 创建Zabbix+Grafana专属目录,分层管理各服务数据
mkdir -p ~/zabbix-grafana/{zabbix-db,zabbix-server,zabbix-web,grafana}
# 设置全权限,彻底规避容器读写权限坑(新手无坑配置)
chmod -R 777 ~/zabbix-grafana/
# 进入项目目录,后续所有操作均在此目录执行(固定,无需修改)
cd ~/zabbix-grafana
✅验证标准:终端路径变为[root@zabbix-server zabbix-grafana]#,无任何报错。
七、创建 docker-compose.yml(无坑版核心配置,仅改 4 处密码)
彻底规避原配置中 Zabbix Web 的 SSL 连接坑、配置文件缺失坑,提前集成DB_SERVER_SSL=false/MYSQL_SSL=false,并优化容器依赖顺序,仅修改标注【需自定义密码】的 4 处,其余内容完全复制,一次性创建成功:
核心修改点(无坑关键)
1.所有服务添加TZ="Asia/Shanghai",统一时区,避免监控时间错乱;
2.Zabbix Web 服务提前添加DB_SERVER_SSL=false/MYSQL_SSL=false,彻底禁用 SSL,避免数据库连接报错;
3.优化容器启动依赖,确保数据库完全健康后再启动 Zabbix,避免启动顺序导致的连接失败;
4.固定镜像版本,避免最新版镜像兼容问题。
无坑版 docker-compose.yml 创建命令(直接复制执行,仅改密码)
cat > docker-compose.yml << EOF
version: '3.8'
services:
# MySQL数据库(Zabbix 7.0专属适配,无兼容坑)
zabbix-db:
image: mysql:8.0
container_name: zabbix-db
environment:
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: Zabbix@123456# 【需自定义密码】Zabbix数据库用户密码,建议强密码
MYSQL_ROOT_PASSWORD: Root@123456# 【需自定义密码】MySQL root密码,建议强密码
MYSQL_INITDB_SKIP_TZINFO: "1"
MYSQL_CHARACTER_SET_SERVER: utf8mb4
MYSQL_COLLATION_SERVER: utf8mb4_bin
TZ: "Asia/Shanghai"
command:
- --default-authentication-plugin=mysql_native_password
- --sql-mode=NO_ENGINE_SUBSTITUTION
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_bin
volumes:
- ./zabbix-db:/var/lib/mysql
restart: unless-stopped
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-p$$MYSQL_ROOT_PASSWORD"]
interval: 10s
timeout: 5s
retries: 5
# Zabbix Server(提前配置时区,无连接坑)
zabbix-server:
image: zabbix/zabbix-server-mysql:alpine-7.0-latest
container_name: zabbix-server
environment:
DB_SERVER_HOST: "zabbix-db"
MYSQL_DATABASE: "zabbix"
MYSQL_USER: "zabbix"
MYSQL_PASSWORD: Zabbix@123456# 【需自定义密码】与上面MYSQL_PASSWORD完全一致
MYSQL_ROOT_PASSWORD: Root@123456# 【需自定义密码】与上面MYSQL_ROOT_PASSWORD完全一致
ZBX_TIMEOUT: 30
ZBX_LOGLEVEL: 3
TZ: "Asia/Shanghai"
depends_on:
zabbix-db:
condition: service_healthy
ports:
- "10051:10051"
volumes:
- ./zabbix-server/alertscripts:/usr/lib/zabbix/alertscripts
- ./zabbix-server/externalscripts:/usr/lib/zabbix/externalscripts
restart: unless-stopped
# Zabbix Web(核心无坑:禁用SSL,提前配置,避免访问报错)
zabbix-web:
image: zabbix/zabbix-web-nginx-mysql:alpine-7.0-latest
container_name: zabbix-web
environment:
DB_SERVER_HOST: "zabbix-db"
MYSQL_DATABASE: "zabbix"
MYSQL_USER: "zabbix"
MYSQL_PASSWORD: Zabbix@123456# 【需自定义密码】与上面MYSQL_PASSWORD完全一致
ZBX_SERVER_HOST: "zabbix-server"
PHP_TZ: "Asia/Shanghai"
TZ: "Asia/Shanghai"
DB_SERVER_SSL: "false"# 核心:禁用SSL,避免数据库连接报错
MYSQL_SSL: "false"# 核心:禁用SSL,彻底规避SSL证书坑
depends_on:
- zabbix-server
ports:
- "8080:8080"
volumes:
- ./zabbix-web:/etc/zabbix/web
- ./zabbix-web/conf:/usr/share/zabbix/conf# 提前挂载配置目录,避免配置文件缺失
restart: unless-stopped
# Grafana(禁用注册,安全配置,无坑)
grafana:
image: grafana/grafana:latest
container_name: grafana
environment:
GF_SECURITY_ADMIN_PASSWORD: Grafana@123456# 【需自定义密码】Grafana管理员密码,单独设置
GF_USERS_ALLOW_SIGN_UP: "false"
GF_TIMEZONE: "Asia/Shanghai"
ports:
- "3000:3000"
volumes:
- ./grafana:/var/lib/grafana
depends_on:
- zabbix-server
restart: unless-stopped
EOF
密码修改规则(严格遵守,无坑关键)
1.MYSQL_PASSWORD:共 3 处,完全一致,修改后记好;
2.MYSQL_ROOT_PASSWORD:共 2 处,完全一致,修改后记好;
3.GF_SECURITY_ADMIN_PASSWORD:1 处,单独设置,可与 MySQL 密码不同,修改后记好;
4.密码要求:字母 + 数字 + 特殊符号(例:Zabbix@2026、Grafana@Prod666),避免弱密码。
✅验证标准:执行后无任何报错,终端回到[root@zabbix-server
zabbix-grafana]#,表示配置文件创建成功。
八、启动所有服务(一键启动,无镜像 / 启动坑,一次性成功)
因提前配置了国内镜像源 + 无坑版 docker-compose.yml,直接执行以下命令,一键启动所有服务,无需手动拉取镜像,无需补配任何配置:
# 后台启动所有服务(MySQL/Zabbix Server/Zabbix Web/Grafana)
docker compose up -d
# 查看容器状态(所有容器STATUS为Up/healthy即成功)
docker compose ps
# 检查端口监听(8080/3000/10051端口均LISTEN即成功,服务可访问)
ss -tlnp | grep -E ":(8080|3000|10051)"
启动成功标准(无坑验证,缺一不可)
1.docker compose ps:4 个容器(zabbix-db/zabbix-server/zabbix-web/grafana)的 STATUS 列均为Up或Up (healthy),无Exit/Created状态;
2.ss -tlnp:终端显示 8080、3000、10051 端口均为LISTEN状态,对应 docker-proxy 进程;
3.启动时间:约 3-5 分钟,无需额外等待,直接进入下一步访问。
九、访问 Zabbix + Grafana(无坑登录,一步到位)
将<服务器静态IP>替换为你在第二步配置的静态 IP(例:192.168.20.100),直接在浏览器访问,无任何访问报错,登录信息固定,记好修改后的密码。
1. Zabbix Web 界面(无坑访问,默认账号密码固定)
·访问地址:http://<服务器静态IP>:8080(直接输入,无需修改端口)
·默认登录信息(固定,无需修改):
用户名:Admin(首字母大写,必须准确)
密码:zabbix(全小写,不是自定义密码,登录后立即修改)
·首次登录必做 2 件事(无坑后续):
①改语言:进入「用户设置」→「Profile」→ 语言选择Chinese (zh_CN)→ 点击「更新」;
②改密码:进入「用户设置」→「Change password」→ 输入原密码zabbix→ 输入新强密码(记好,Grafana 集成时需要)→ 点击「更新」。
2. Grafana 界面(无坑登录,密码为自定义密码)
·访问地址:http://<服务器静态IP>:3000(直接输入,无需修改端口)
·登录信息(固定 + 自定义):
用户名:admin(全小写,必须准确)
密码:第七步中自定义的GF_SECURITY_ADMIN_PASSWORD(例:Grafana@123456)
·首次登录:直接点击Skip跳过密码修改(也可按需修改,记好新密码即可)。
十、Zabbix 核心配置(邮件告警 + Agent 监控,无坑版)
1. 邮件告警配置(SMTP,一次性成功,以 163/QQ 邮箱为例)
规避原配置中测试邮件失败、告警不触发坑,步骤固定,参数准确,配置完成立即收到测试邮件:
步骤 1:配置 Email 媒介类型(Zabbix Web 操作)
1.进入 Zabbix Web → 左侧「告警」→「媒介类型」→ 点击「Email」;
2.勾选「已启用」,按以下表格配置 SMTP 参数(严格按邮箱类型填写):
| 配置项 | 163 邮箱 | QQ 邮箱 | 企业邮箱 |
|----------------|---------------|---------------|---------------|
| SMTP 服务器 | smtp.163.com | smtp.qq.com | 企业提供的 SMTP 地址 |
| SMTP 服务器端口 | 465 | 465 | 465/587(企业指定)|
| 安全连接 | SSL/TLS | SSL/TLS | 对应端口选择(企业指定) |
| 认证 | 用户名和密码 | 用户名和密码 | 用户名和密码 |
| 用户名 | 完整 163 邮箱号 | 完整 QQ 邮箱号 | 完整企业邮箱号 |
| 密码 | 163 邮箱授权码 | QQ 邮箱授权码 | 企业邮箱授权码 / 密码 |
| 发件人 | 与用户名一致| 与用户名一致 | 与用户名一致 |
3.·点击「测试」→ 输入收件邮箱 → 点击「发送」,收到测试邮件即配置成功(未收到检查邮箱授权码 / SMTP 参数);
4.·点击「更新」,保存 Email 媒介配置。
步骤 2:关联告警到管理员(无坑触发)
1.左侧「管理」→「用户」→ 点击Admin(管理员用户);
2.点击「报警媒介」→「添加」;
3.配置项:类型选Email,收件人填你的邮箱,当启用时选1-7,00:00-24:00(7×24 小时告警),严重性选「未分类 - 灾难」(全级别告警);
4.点击「添加」→ 点击「更新」,保存用户告警配置。
步骤 3:启用告警动作(无坑触发通知)
1.左侧「告警」→「动作」→「触发器动作」;
2.找到默认的Report
problems to Zabbix administrators→ 点击「启用」(灰色变绿色);
3.点击该动作名称 → 「操作」标签页,确认:
o操作类型:发送消息;
o发送到用户组:Zabbix administrators;
o发送到媒介:Email;
4.「恢复操作」标签页,勾选「启用恢复操作」,确认上述配置,点击「更新」;
✅告警配置完成:监控异常时,立即收到邮件通知,无延迟 / 不触发问题。
2. Windows/Linux Agent 监控(无坑添加,一次性识别)
(1)Windows服务器安装 Agent 7.0(无坑版)
1.下载 Agent:https://www.zabbix.com/cn/download_agents?os=Windows&version=7.0+LTS(选择对应系统位数,例:windows-amd64);
2.安装 Agent:双击安装包,一路下一步,关键配置:
oZabbix server IP/DNS:填写你的 Zabbix 服务器静态 IP(例:192.168.20.100);
oHostname:填写唯一主机名(例:Windows-Server-01,无特殊字符,记好);
oAgent listen port:默认 10050(无需修改);
3.启动 Agent:安装完成后,进入「服务」→ 找到Zabbix
Agent→ 启动并设置为「自动」启动(开机自启);
4.Zabbix Web 添加主机(无坑识别):
①左侧「配置」→「主机」→「创建主机」;
②配置项:
o主机名称:与 Agent 安装时的 Hostname 完全一致(例:Windows-Server-01,大小写一致);
o可见的名称:与主机名称一致;
o主机群组:点击「添加」→ 选Windows(无则创建);
o模板:点击「添加」→ 搜索Template
OS Windows by Zabbix agent→ 选择添加;
o接口:点击「添加」→ 类型选Agent,IP 地址填 Windows 服务器静态 IP,端口 10050,主接口选「是」;
③点击「添加」,保存主机配置;
✅验证:5 分钟后,左侧「监控」→「主机」,该主机状态为「可用」(绿色),无「不支持」/「不可用」状态。
(2)Linux 服务器 / 本机监控(无坑添加)
1.安装 Agent:按 Zabbix 官方文档安装对应版本 Agent(7.0),配置Server=为 Zabbix 服务器 IP,Hostname=为唯一主机名;
2.Zabbix Web 添加主机:模板选择Template
OS Linux by Zabbix agent,本机监控额外添加Template
Zabbix Server,其余配置与Windows 一致;
✅验证标准:主机状态为「可用」(绿色),监控项正常采集数据。
十一、Grafana 集成 Zabbix(无坑可视化,一步到位)
规避原配置中插件安装失败、数据源连接失败坑,步骤固定,参数准确,集成后立即看到 Zabbix 监控数据可视化。
步骤 1:安装 Zabbix 官方插件(终端执行,一次性成功)
确保在~/zabbix-grafana 目录执行(终端路径不变,直接复制命令):
# 进入Grafana容器安装Zabbix插件(国内源,安装成功)
docker exec -it grafana grafana-cli plugins install alexanderzobnin-zabbix-app
# 重启Grafana使插件生效(必须重启,否则插件不显示)
docker restart grafana
# 验证插件安装(显示alexanderzobnin-zabbix-app即成功)
docker exec -it grafana ls /var/lib/grafana/plugins/
步骤 2:配置 Zabbix 数据源(Grafana Web 操作,无坑连接)
1.登录 Grafana → 左侧「连接」→「添加新连接」→ 搜索zabbix→ 选择Zabbix(已安装,直接显示);
2.点击「创建连接」,配置核心无坑参数(严格按以下填写,无需修改):
oName:Zabbix(自定义,方便识别);
oURL:http://zabbix-web:8080/api_jsonrpc.php(容器内默认地址,固定不变,直接复制);
oUsername:Admin(Zabbix 的管理员用户名,首字母大写);
oPassword:Zabbix 登录后修改的新密码(不是默认密码 zabbix,记好);
3.拉到页面最下方,点击「保存并测试」,提示「Zabbix API version 7.0.24」即连接成功(未成功检查密码 / URL)。
步骤 3:导入 Zabbix 监控仪表盘(一键可视化,无坑)
1.Grafana 左侧「仪表板」→「导入」;
2.导入方式(推荐 2 种,任选其一,均无坑):
✅方式 1(官网导入):
o访问 Grafana 官网仪表盘库:https://grafana.com/grafana/dashboards/;
o搜索zabbix,选择适合的仪表盘(筛选「Data Source: Zabbix」),复制仪表盘 ID(例:10241);
o回到 Grafana 导入页面,在「通过grafana.com导入」输入 ID → 点击「加载」→ 选择已配置的Zabbix数据源 → 点击「导入」;
✅方式 2(JSON 文件导入,推荐中文版):
o下载 Zabbix 中文版仪表盘 JSON 文件(网上可搜,适配 Zabbix 7.0);
o回到 Grafana 导入页面,点击「上传文件」→ 选择 JSON 文件 → 选择已配置的Zabbix数据源 → 点击「导入」;
3.导入成功:自动跳转到 Zabbix 监控仪表盘,实时显示 CPU、内存、磁盘、网络等监控数据,无数据缺失 / 加载失败问题。
十二、最终验证(部署成功无坑标志,全满足即完成)
1.Zabbix Web:正常登录,语言为中文,主机状态「可用」,邮件告警测试成功,监控项正常采集数据;
2.Grafana Web:正常登录,Zabbix 数据源连接成功,导入仪表盘后实时显示监控数据,无空白 / 报错;
3.容器状态:docker
compose ps所有容器均为Up,无重启 / 退出;
4.端口状态:ss -tlnp8080/3000/10051端口均为LISTEN,服务可正常访问;
5.监控告警:手动触发一个监控异常(例:关闭 Windows Agent),能立即收到邮件告警,恢复后收到恢复通知。
十三、日常运维常用命令(无坑版,固定路径执行)
所有命令均在~/zabbix-grafana目录执行(终端路径:[root@zabbix-server
zabbix-grafana]#),直接复制执行,用于日常维护、重启、日志查看:
# 1. 查看所有容器状态(核心,确认服务是否正常)
docker compose ps
# 2. 重启单个服务(按需,例:重启Zabbix Server/Grafana)
docker restart zabbix-server
docker restart grafana
# 3. 实时查看服务日志(排查问题,按Ctrl+C退出)
docker logs -f zabbix-server# 查看Zabbix Server日志
docker logs -f zabbix-web# 查看Zabbix Web日志
docker logs -f grafana# 查看Grafana日志
# 4. 停止所有服务(不删除数据,容器仍存在)
docker compose stop
# 5. 启动所有服务(停止后重新启动)
docker compose start
# 6. 停止并删除所有服务(谨慎使用,数据仍在目录中)
docker compose down
# 7. 重新启动所有服务(配置修改后生效)
docker compose restart
# 8. 查看Grafana已安装插件
docker exec -it grafana grafana-cli plugins list
十四、无坑部署关键注意事项(永久避坑)
1.全程不修改非标注【需自定义密码】的任何内容,命令直接复制执行,顺序不变;
2.静态 IP 一旦配置,禁止修改,否则 Zabbix Agent/Grafana/ 容器间连接全部失败;
3.自定义密码记好并统一,MySQL 相关密码必须完全一致,避免数据库连接失败;
4.所有数据均存储在~/zabbix-grafana目录,定期备份该目录,避免数据丢失;
5.服务器重启后,容器会自动启动(restart:
unless-stopped),无需手动启动服务;
6.监控节点超过 500 台时,立即拆分 Zabbix Proxy,避免单服务器性能瓶颈。
部署完成:至此,Rocky Linux 9 容器化部署 Zabbix + Grafana 无坑完成,实现监控数据采集、可视化、邮件告警全流程,后续可按需扩展监控节点、自定义仪表盘,无需再补配任何配置,无任何坑点。
如有不明白的可以再看上篇图文,最近死磕zabbix部署了,后面再测试rocky9直接部署以及grafana可视化具体实现