17.4 Zabbix 监控(基于 PostgreSQL)
安装 zabbix7-server
zabbix7-server 是服务器端(Zabbix Server)。它负责接收和处理监控数据,应安装在监控服务器上。
使用 pkg 安装会额外安装 MySQL,并可能导致绑定冲突,因此推荐使用 Ports 安装:
# cd /usr/ports/net-mgmt/zabbix7-server/
# make config
按如图配置,选中 PGSQL 后按回车键:
安装 PostgreSQL
请读者自行完成 PostgreSQL 16 的安装、初始化及服务自启。
安装 Nginx
请读者自行完成 Nginx 的安装和服务自启。
安装 zabbix7-frontend
zabbix7-frontend 是 Web 控制前端(Zabbix Frontend)。
使用 pkg 安装:
上述安装过程会自动安装 PHP,本文中安装的版本是 PHP8.3(写作本文时 PHP8.4 会报错),具体可用版本可以到 zabbix7-frontend 看一下。
或者使用 ports 安装:
PDO
注意所使用的 PHP 版本要与 Zabbix 前端兼容。
使用 pkg 安装:
或者使用 ports 安装:
安装 zabbix7-agent
zabbix7-agent 负责收集监控数据,应安装在被监控的服务器上。
使用 pkg 安装:
或者使用 ports 安装:
守护进程
设置 PostgreSQL 数据库
请读者自行初始化 PostgreSQL 数据库后再执行以下命令:
必须退出再继续:
参考文献
设置 Zabbix Server
Zabbix Server 的主要配置文件位于 /usr/local/etc/zabbix7/zabbix_server.conf。
加入以下内容:
设置 Zabbix Agent
Zabbix Agent 的配置文件位于 /usr/local/etc/zabbix7/zabbix_agentd.conf。
加入以下内容:
配置 Zabbix 前端
Zabbix 前端配置文件模板位于 /usr/local/www/zabbix7/conf/zabbix.conf.php.example(Zabbix Frontend 配置模板)。
复制 Zabbix 示例配置文件为正式配置文件:
编辑 /usr/local/www/zabbix7/conf/zabbix.conf.php,将:
修改如下:
配置 nginx
备份原有 Nginx 主配置文件:
编辑 /usr/local/etc/nginx/nginx.conf 文件,清空原有内容,修改如下,
配置 PHP
编辑 /usr/local/etc/php.ini-production 文件
/usr/local/etc/php.ini-production 文件将生产环境 PHP 配置文件复制为默认配置文件:
编辑 /usr/local/etc/php.ini 文件:
找到
;date.timezone =修改为date.timezone = Asia/Shanghai(注意要删掉原来开头的;)找到
post_max_size = 8M修改为post_max_size = 16M找到
max_execution_time = 30,修改为max_execution_time = 300找到
max_input_time = 60,修改为max_input_time = 300
启动服务
登录
Zabbix Web 前端的默认用户名和密码如下:
用户名:
Admin密码:
zabbix

配置中文



故障排除与未竟事宜
日志
代理:
/var/log/zabbix/zabbix_agentd.log服务器端:
/var/log/zabbix/zabbix_server.logPHP 相关错误:
/var/log/nginx/error.log
待解决
中文显示乱码
部分监控项未显示
HTTP 等安全配置待完善
参考文献
最后更新于
这有帮助吗?