Oamc

Zabbix 服务端与 Agent 安装

本页目录

场景

要给一批服务器和交换机上监控,能看 CPU/内存/磁盘,出问题发邮件或钉钉。

前置条件

  • 一台 Linux 做服务端(2C4G 起步,磁盘 100G)
  • 一个数据库(MySQL/PostgreSQL,Zabbix 自带模板)
  • 能发邮件或用 Webhook 推告警

配置

# 1. 装数据库
dnf install -y mysql-server
systemctl enable --now mysqld
mysql -e "CREATE DATABASE zabbix CHARACTER SET utf8mb4;"
mysql -e "CREATE USER 'zabbix'@'localhost' IDENTIFIED BY '强密码';"
mysql -e "GRANT ALL ON zabbix.* TO 'zabbix'@'localhost';"

# 2. 装 Zabbix 源和组件
rpm -Uvh https://repo.zabbix.com/zabbix/6.4/rhel/8/x86_64/zabbix-release-6.4-1.el8.noarch.rpm
dnf install -y zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-agent

# 3. 导入表结构
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | \
  mysql --default-character-set=utf8mb4 -uzabbix -p zabbix

# 4. 配数据库密码
sed -i 's/^# DBPassword=.*/DBPassword=强密码/' /etc/zabbix/zabbix_server.conf

# 5. 启动
systemctl enable --now zabbix-server zabbix-agent httpd php-fpm

浏览器打开 http://IP/zabbix,默认 Admin / zabbix。

验证

systemctl status zabbix-server
tail -f /var/log/zabbix/zabbix_server.log
zabbix_server -V

网页能登录、Reports → System information 里没有红色报错。

回滚

systemctl disable --now zabbix-server zabbix-agent httpd php-fpm
dnf remove -y zabbix-server-mysql zabbix-web-mysql

坑

  • PHP 时区没配,网页打开报 Timezone for PHP is not set,改 php.ini 的 date.timezone。
  • 导入 SQL 用错字符集,中文界面变问号。
  • 数据库密码里有特殊字符,sed 替换会出错,直接手改配置文件。
  • 服务端和 agent 版本差太多会连不上。
  • 默认模板的阈值不一定适合你,先观察一周再调。
  • 监控端口 10051/10050 要放行,agent 默认只听 127.0.0.1 之外的地址。