
1 简介Zabbix 是一款开源企业级监控平台用于监控服务器、网络设备、数据库、中间件等各类软硬件资源采集 CPU、内存、磁盘、网络、服务状态等指标支持告警、绘图、数据存储、可视化报表。核心组件Zabbix‑Server核心服务接收采集数据、处理告警、存储数据。Zabbix‑Agent部署在被监控主机上采集本机硬件与应用数据分主动模式、被动模式。Web 前端PHP 页面做配置管理、图表查看、告警展示。数据库MySQL/MariaDB存放监控配置、采集历史数据、告警记录。Proxy 代理可选大规模环境代理收集多节点数据再上报 server分担压力。主要工作模式被动模式server 主动连接 agent 拉取数据小规模常用主动模式agent 主动上报数据给 server适合大量被监控主机核心概念主机 Host被监控的设备监控项 Item具体采集指标CPU 使用率、磁盘使用率触发器 Trigger设置阈值指标超出阈值触发告警告警媒介邮件、钉钉、企业微信等告警推送方式模板 Template预定义监控项、触发器快速批量套用给主机官方用户手册https://www.zabbix.com/documentation/current/en/manual/2 zabbix平台部署2.1 部署Zabbix‑Serverserver1做server系统使用rocky-9.6镜像配置仓库安装zabbix官方yum源rpm包[rootserver1 ~]# rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-latest-6.0.el9.noarch.rpm安装zabbix server、web前端、agent[rootserver1 ~]# dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent安装mysql数据库创建初始数据库密码设置为password[rootserver1 ~]# yum install -y mysql-server[rootserver1 ~]# systemctl start mysqld[rootserver1 ~]# mysqlmysqlcreate database zabbix charactersetutf8mb4 collate utf8mb4_bin;#创建zabbix库字符集utf8mb4支持完整中文、emojimysqlcreate user zabbixlocalhost identified bypassword;#创建数据库用户 zabbix只允许本机登录密码 passwordmysqlgrant all privileges on zabbix.* to zabbixlocalhost;#给zabbix用户授予zabbix库全部权限mysqlsetglobal log_bin_trust_function_creators1;#Zabbix导入数据库schema会创建函数开启这个参数关闭函数创建的安全限制否则导入会报错mysqlquit;导入zabbix初始架构和数据此文件较大需要多等待一段时间[rootserver1 ~]# zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-setutf8mb4 -uzabbix -p zabbix[rootserver1 ~]# mysqlmysqlshow databases;mysqluse zabbix mysqlshow tables;mysqlsetglobal log_bin_trust_function_creators0;#关闭刚才临时放开的函数创建权限提升数据库安全mysqlquit;可查看已导入的数据修改 zabbix server 连接数据库的密码开启服务并设置开机自启动[rootserver1 ~]# vim /etc/zabbix/zabbix_server.conf[rootserver1 ~]# systemctl restart zabbix-server zabbix-agent httpd php-fpm[rootserver1 ~]# systemctl enable zabbix-server zabbix-agent httpd php-fpm2.2 前端初始化使用浏览器访问前端IP/zabbix填写前端连接数据库使用的用户和密码密码为password登录前端管理界面用户名 Admin 密码 zabbix前端界面汉化系统安装中文语言包并修复 zabbix 绘图图表中文方框乱码[rootserver1 ~]# dnf install glibc-langpack-zh -y#安装系统中文语言包[rootserver1 ~]# localectl list-locales | grep zh_CN#检查系统是否已经生成zh_CN中文locale[rootserver1 ~]# cd /usr/share/zabbix/assets/fonts/#进入zabbix前端字体目录将字体文件放入此目录下[rootserver1 fonts]# rm -f graphfont.ttf #重新建立软链接把simkai.ttf楷体作为zabbix绘图字体[rootserver1 fonts]# ln -s simkai.ttf graphfont.ttf设置好后可在前端界面中使用中文图表也可正常查看2.3 添加Zabbix‑Agent 1Rocky Linux新开虚拟机server2系统依旧使用rocky-9.6镜像安装zabbix-agent修改配置文件允许server1 的 zabbix 服务器采集本机的监控数据[rootserver2 ~]# rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-latest-6.0.el9.noarch.rpm[rootserver2 ~]# yum install -y zabbix-agent[rootserver2 ~]# vim /etc/zabbix/zabbix_agentd.conf[rootserver2 ~]# systemctl enable --now zabbix-agent.service在前端页面中添加server2暂不使用模板2.4 添加Zabbix‑Agent 2CentOS 7再开一个虚拟机server3使用CentOS 7系统模拟监控不同系统的服务器安装zabbix-agent修改配置文件允许server1 的 zabbix 服务器采集本机的监控数据[rootserver3 ~]# rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-latest-6.0.el7.noarch.rpm[rootserver3 ~]# yum install -y zabbix-agent[rootserver3 ~]# vim /etc/zabbix/zabbix_agentd.conf[rootserver3 ~]# systemctl enable --now zabbix-agent.service在前端页面添加server3同时使用模板监控项中可以查看数据采集间隔添加完server3后经过采集间隔系统抓取到数据会显示已经可用由于server2未添加监控项可用性依旧是灰色检测zabbix-agent的连通性[rootserver1 ~]# yum install -y zabbix-get[rootserver1 ~]# zabbix_get -s 192.168.40.172 -p 10050 -k agent.ping#输出为1即没问题[rootserver1 ~]# zabbix_get -s 192.168.40.172 -p 10050 -k system.hostname