当前位置:首页 > 系统教程 > 正文

CentOS8部署Zabbix7.0 LTS实战指南:PostgreSQL监控平台搭建与多系统Agent部署(完整流程)

Zabbix作为一款功能强大的企业级开源监控解决方案,能够有效监控服务器、网络设备及应用程序的健康状态。本文将提供一份从零开始在CentOS 8操作系统上,基于PostgreSQL数据库部署Zabbix 7.0 LTS版本的超详细教程,并涵盖Linux、Windows等不同系统上Agent的安装方法,即使是初学者也能轻松跟随完成。

一、部署前准备与环境检查

在开始安装之前,请确保你拥有一台运行CentOS 8的服务器,并具备root或sudo权限。建议系统配置不低于2核CPU、4GB内存和50GB磁盘空间,以满足Zabbix server及数据库的基本运行需求-10。首先,更新系统到最新状态:

    sudo dnf update -y  

同时,请确保服务器的防火墙(如firewalld)已开放必要的端口:80(Web前端)10051(Server接收数据)10050(Agent发送数据)-10。可以使用以下命令:

    sudo firewall-cmd --permanent --add-port={80/tcp,10050/tcp,10051/tcp}sudo firewall-cmd --reload  

二、安装与配置PostgreSQL数据库

Zabbix 7.0 LTS支持多种数据库,我们选择性能稳定且开源的PostgreSQL。首先安装PostgreSQL服务器:

    sudo dnf install -y postgresql-server postgresql-contrib  

安装完成后,初始化数据库并启动服务:

    sudo postgresql-setup --initdbsudo systemctl enable --now postgresql  

接下来,为Zabbix创建专用的数据库和用户。切换到postgres用户并登录数据库:

    sudo -u postgres psql  

在PostgreSQL交互命令行中,执行以下SQL语句。请务必将"your_strong_password_here"替换为一个强密码-8:

    CREATE DATABASE zabbix;CREATE USER zabbix WITH PASSWORD "your_strong_password_here";GRANT ALL PRIVILEGES ON DATABASE zabbix TO zabbix;\q  
CentOS8部署Zabbix7.0 LTS实战指南:PostgreSQL监控平台搭建与多系统Agent部署(完整流程) Zabbix部署  PostgreSQL监控 CentOS8教程 Zabbix Agent安装 第1张

三、安装Zabbix Server、前端与Agent

首先,从Zabbix官方仓库安装所需的仓库配置包。注意,我们需要指定7.0 LTS版本的仓库-2:

    sudo rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/8/x86_64/zabbix-release-7.0-1.el8.noarch.rpmsudo dnf clean all  

然后,安装Zabbix Server(使用PostgreSQL)、Web前端、Apache配置以及本机的Zabbix Agent-8:

    sudo dnf install -y zabbix-server-pgsql zabbix-web-pgsql zabbix-apache-conf zabbix-agent  

安装PHP及Zabbix前端所需的扩展-8:

    sudo dnf install -y php php-pgsql php-mbstring php-xmlwriter php-xmlreader php-bcmath php-gd php-ldap  

四、配置Zabbix Server并初始化数据库

编辑Zabbix Server的配置文件,设置数据库连接信息:

    sudo vi /etc/zabbix/zabbix_server.conf  

找到并修改以下参数,确保密码与之前创建数据库用户时设置的密码一致-8:

    DBHost=localhostDBName=zabbixDBUser=zabbixDBPassword=your_strong_password_here  

这是Zabbix部署中最关键的一步,配置错误将导致服务无法启动。保存退出后,将初始数据库架构和数据导入到之前创建的zabbix数据库中-8:

    sudo zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u zabbix psql zabbix  

五、配置PHP与Zabbix Web前端

编辑PHP配置文件,设置适合Zabbix的时区和参数-8:

    sudo vi /etc/php.ini  

确保修改或添加以下行(特别是时区,根据你的地理位置调整):

    date.timezone = Asia/Shanghaimax_execution_time = 300memory_limit = 128Mpost_max_size = 16Mupload_max_filesize = 2M  

接下来,配置Zabbix前端的数据库连接。复制示例配置文件并编辑-8:

    sudo cp /etc/zabbix/zabbix.conf.php.example /etc/zabbix/zabbix.conf.phpsudo vi /etc/zabbix/zabbix.conf.php  

修改数据库连接部分,确保与zabbix_server.conf中的信息匹配:

    $DB["TYPE"] = "POSTGRESQL";$DB["SERVER"] = "localhost";$DB["PORT"] = "0";$DB["DATABASE"] = "zabbix";$DB["USER"] = "zabbix";$DB["PASSWORD"] = "your_strong_password_here";  

六、启动服务并完成Web安装

启动所有相关服务,并设置开机自启:

    sudo systemctl enable --now zabbix-server zabbix-agent httpd php-fpm  

如果系统启用了SELinux,需要执行以下命令允许前端与服务器及数据库通信-1-2:

    sudo setsebool -P httpd_can_connect_zabbix onsudo setsebool -P httpd_can_network_connect_db on  

现在,打开浏览器,访问 http://你的服务器IP地址/zabbix。你将看到Zabbix安装向导。跟随向导步骤:

  1. 欢迎页面:检查所有前提条件是否显示为“OK”。
  2. 数据库配置:数据库类型选择“PostgreSQL”,填写数据库名称(zabbix)、用户(zabbix)和密码。
  3. 服务器详情:输入Zabbix Server的名称(可自定义)。
  4. 安装前总结:确认信息无误。
  5. 完成安装:下载配置文件zabbix.conf.php,并将其上传到服务器的/etc/zabbix/目录下,覆盖我们之前手动创建的文件。然后点击完成。

最后,使用默认用户名 Admin 和密码 zabbix 登录Zabbix前端-10。恭喜你,Zabbix Server监控平台的核心部分已经部署完成!这是你掌握PostgreSQL监控技术的重要一步。

七、在不同系统上安装Zabbix Agent

要监控其他服务器,你需要在目标机器上安装Zabbix Agent。Agent负责收集数据并发送给Zabbix Server。

1. 在RHEL/CentOS/AlmaLinux/Rocky Linux (RPM系) 上安装

对于与Server同系的Linux,安装非常类似。首先添加仓库并安装-6:

    sudo rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/8/x86_64/zabbix-release-7.0-1.el8.noarch.rpmsudo dnf install -y zabbix-agent2  # 推荐安装功能更强的Agent2  

2. 在Ubuntu/Debian (DEB系) 上安装

对于Debian系系统,使用以下命令-2-9:

    wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-1+ubuntu22.04_all.debsudo dpkg -i zabbix-release_7.0-1+ubuntu22.04_all.debsudo apt updatesudo apt install -y zabbix-agent2  

3. 在Windows系统上安装

从Zabbix官网下载页面下载适用于Windows的Agent预编译MSI安装包-2-4。运行安装程序,在配置步骤中,最关键的是将“Zabbix Server”的地址修改为你的Zabbix Server的IP地址或主机名-9。安装完成后,Windows服务中会出现“Zabbix Agent”服务。

4. 配置Agent并关联到Server

无论哪种系统,安装后都需要编辑Agent的配置文件(Linux通常在/etc/zabbix/zabbix_agent2.conf,Windows在C:\Program Files\Zabbix Agent\zabbix_agent2.conf),修改两个关键参数-6:

    Server=你的Zabbix_Server_IP地址ServerActive=你的Zabbix_Server_IP地址  

Server参数定义允许哪些Server来拉取数据(被动检查),ServerActive定义Agent主动将数据发送到哪个Server(主动检查)。配置完成后,重启Agent服务。

最后,在Zabbix Web前端添加主机:进入 配置 → 主机 → 创建主机。填写主机名称(如“Web-Server-01”),选择一个或多个模板(如“Linux by Zabbix agent”),在“接口”中添加Agent的IP地址和端口(默认10050),然后点击添加-6-9。稍等片刻,如果一切正常,主机的“可用性”列ZBX图标将变为绿色。至此,你已完成了一台主机的Zabbix Agent安装与监控接入。

八、故障排除与安全建议

  • 服务无法启动:首先检查 /var/log/zabbix/zabbix_server.log 日志文件。最常见的错误是数据库连接失败,请反复确认zabbix_server.conf中的密码是否正确。
  • 前端提示数据库错误:检查/etc/zabbix/zabbix.conf.php文件权限是否正确(应为apache用户可读),以及其中的数据库信息。
  • Agent数据无法获取:在Agent主机上使用 telnet Zabbix_Server_IP 10051 测试端口连通性。检查Agent和Server的防火墙设置。
  • 安全加固:生产环境中,务必修改默认的Admin用户密码;考虑为PostgreSQL的zabbix用户设置更严格的权限,而非ALL PRIVILEGES-5;定期更新Zabbix版本以获取安全补丁。

通过这篇详尽的CentOS8教程,你不仅学会了如何搭建Zabbix监控平台,还掌握了监控其他服务器的核心方法。接下来,你可以探索Zabbix强大的模板、触发器、报警动作和可视化图表功能,构建起符合你业务需求的完整监控体系。