linux系统安装zabbix监控
在 CentOS 系统上安装 Zabbix 监控网络设备(如路由器、交换机)的步骤如下,涵盖服务器端安装和网络设备配置:
一、安装前准备
环境要求
CentOS 7/8 系统(本文以 CentOS 7 为例)。
确保服务器可访问互联网,并开放以下端口:
Zabbix Server:10051(TCP)
Zabbix Agent:10050(TCP)
SNMP:161(UDP)
安装依赖
sudo yum install -y epel-release
sudo yum install -y httpd php php-mysqlnd php-gd php-bcmath php-mbstring php-xml php-ldap mariadb-server mariadb
配置数据库(MariaDB)
sudo systemctl enable mariadb --now
sudo mysql_secure_installation # 初始化数据库,设置 root 密码
二、安装 Zabbix Server
添加 Zabbix 官方仓库
sudo rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-6.0-4.el7.noarch.rpm
sudo yum clean all
安装 Zabbix 组件
sudo yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-agent
创建 Zabbix 数据库和用户
mysql -u root -p
sql
CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost';
FLUSH PRIVILEGES;
EXIT;
导入初始数据
zcat /usr/share/doc/zabbix-sql-scripts/mysql/server.sql.gz | mysql -u zabbix -p zabbix
配置 Zabbix Server
编辑 /etc/zabbix/zabbix_server.conf:
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=your_password
启动服务
sudo systemctl enable zabbix-server httpd --now
sudo systemctl restart zabbix-server
三、配置 Zabbix Web 前端
修改 PHP 时区
编辑 /etc/httpd/conf.d/zabbix.conf,设置:
php_value date.timezone Asia/Shanghai
重启 Apache
sudo systemctl restart httpd
访问 Web 安装向导
浏览器访问 http://服务器IP/zabbix,按提示完成安装:
检查预配置条件(确保全部通过)。
输入数据库名称(zabbix)、用户名和密码。
登录 Zabbix
默认管理员账号:
用户名:Admin
密码:zabbix
四、监控网络设备(以 SNMP 为例)
- 配置网络设备启用 SNMP
以 Cisco 设备为例:
! 启用 SNMPv2(社区字符串为 public)
snmp-server community public RO
snmp-server host 192.168.1.100 version 2c public # 替换为 Zabbix 服务器 IP
-
在 Zabbix 中添加网络设备
创建主机
进入 Configuration > Hosts > Create host。 填写主机名称(如 Cisco-Router)和 IP 地址。
配置 SNMP 接口
添加 SNMP 接口,选择 SNMPv2 版本。 设置 Community 为 public(与设备配置一致)。
关联模板
添加模板 Template Module Generic SNMPv2 或专用模板(如 Template Net Cisco IOS SNMPv2)。
保存并检查
等待 Zabbix 自动发现设备指标(约 1-5 分钟)。 在 Monitoring > Latest data 中查看数据。
五、防火墙和 SELinux 配置
开放端口
sudo firewall-cmd --permanent --add-port={10050/tcp,10051/tcp,161/udp}
sudo firewall-cmd --reload
SELinux 设置
sudo setsebool -P httpd_can_connect_zabbix=1 # 允许 Apache 连接 Zabbix
六、验证与排错
检查 Zabbix Server 日志
tail -f /var/log/zabbix/zabbix_server.log
测试 SNMP 连通性
snmpwalk -v2c -c public 192.168.1.1 # 替换为设备 IP
强制重新发现设备
在 Zabbix Web 中手动执行主机监控项的 Check now。
注意事项
安全建议
使用 SNMPv3(加密)替代 SNMPv2(明文社区字符串)。
定期更新 Zabbix 和数据库密码。
性能优化
为 Zabbix Server 分配足够内存(建议 ≥4GB)。
使用主动式 Agent 或 Proxy 分担负载。
模板扩展
从 Zabbix 官网下载设备专用模板(如华为、H3C)。
通过以上步骤,您可以在 CentOS 系统上部署 Zabbix,并实现对网络设备的实时监控。