性能监控利器:Ubuntu 22.04 上的 Zabbix 安装与配置指南

简介

今天我们来聊聊如何在 Ubuntu 22.04 上安装和配置 Zabbix。我们会用到 PostgreSQL 作为数据库后端,Nginx 作为 Web 服务器,并用 Let’s Encrypt SSL 证书来保驾护航。

什么是 Zabbix?

Zabbix 是一个开源的网络监控和管理解决方案,专门用来监控网络、服务器、应用程序和服务的性能和可用性。它功能强大,支持实时监控、告警和可视化指标,帮助你深入了解 IT 基础设施的健康状况和性能。

接下来,我将一步一步教大家如何进行安装和部署!!

准备工作

服务器准备

必要前提:

  • 一个充满求知欲的大脑。
  • 一台 Linux 服务器(推荐腾讯云、阿里云或雨云等)。

我将以 雨云 为例,带大家创建一台自己的云服务器,以便学习本篇文章的内容。

注册链接: https://rainyun.ivwv.site

创建雨云服务器

以下步骤仅供参考,请根据实际需求选择配置。

  • 点击 云产品云服务器立即购买
  • 选择距离你较近的区域,以保证低延迟。

  • 按照自己需求选择配置,选择Ubuntu 22.04 版本,按照自己需求是否预装Docker。
  • 最后按照提示进行购买。
  • 购买后等待机器部署完毕,点击刚刚创建好的服务器,进入管理面板,找到远程连接相关信息。

  • 我们使用 PowerShell 进行 SSH 远程连接到服务器,Win+R 打开运行窗口,输入 powershell 后点击确定。

https://img-blog.csdnimg.cn/img_convert/c8afbeb764459a37a8451dd2ed8eeff1.png

  • 输入 ssh root@你的服务器IP 例如 ssh root@154.9.227.239 回车后,首次需要输入 yes,再次回车后即可登录服务器。

https://img-blog.csdnimg.cn/img_convert/ea5814f1d1068ca9fa2bb94631cfbdf1.png

  • 到此为止,我们的云服务器就远程连接上了。

开始部署

1. 更新系统

首先,我们更新一下包列表和已安装的包:

sudo apt update
sudo apt upgrade -y

2. 安装 PostgreSQL

接下来,安装 PostgreSQL,它将作为 Zabbix 的数据库:

sudo apt install postgresql postgresql-contrib -y

安装完成后,创建一个 PostgreSQL 用户和数据库给 Zabbix:

sudo -u postgres psql

在 PostgreSQL 命令行中执行以下命令:

CREATE USER zabbix WITH PASSWORD 'your_password';
CREATE DATABASE zabbix OWNER zabbix;
\\q

记得把 your_password 替换成一个强密码。

3. 安装 Nginx

安装 Nginx 来运行 Zabbix 的 Web 界面:

sudo apt install nginx -y

启动 Nginx 并设置开机自启:

sudo systemctl start nginx
sudo systemctl enable nginx

4. 安装 Zabbix 服务器、前端和代理

安装 Zabbix 仓库配置包:

wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-6+ubuntu24.04_all.deb
sudo dpkg -i zabbix-release_6.0-6+ubuntu24.04_all.deb
sudo apt update

安装 Zabbix 服务器、前端和代理:

sudo apt install zabbix-server-pgsql zabbix-frontend-php php8.3-pgsql zabbix-nginx-conf zabbix-sql-scripts zabbix-agent -y

5. 为 Zabbix 配置 PostgreSQL

导入 Zabbix 的初始架构和数据:

zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix

现在,配置 Zabbix 服务器使用 PostgreSQL:

sudo nano /etc/zabbix/zabbix_server.conf

更新以下参数:

DBName=zabbix
DBUser=zabbix
DBPassword=your_password

保存并关闭文件。

6. 为 Zabbix 前端配置 PHP

编辑 PHP 配置文件以适配 Zabbix:

sudo nano /etc/zabbix/nginx.conf

修改 listenserver_name 指令以匹配你的服务器配置。确保以下设置正确配置:

server {
    listen 80;
    server_name your_domain;
    ...
}

注意:your_domain 替换为你的域名。

保存并关闭文件。

启动并设置 Zabbix 服务器和代理开机自启:

sudo systemctl start zabbix-server zabbix-agent nginx php8.3-fpm
sudo systemctl enable zabbix-server zabbix-agent nginx php8.3-fpm

7. 使用 SSL 加固

Certbot 是一个自动获取和续订 Let’s Encrypt SSL 证书的工具。安装 Certbot 和 Nginx 插件:

sudo apt install certbot python3-certbot-nginx -y

使用 Certbot 为你的域名获取证书。将 your_domain 替换为你的实际域名:

sudo certbot --nginx -d your_domain

按照提示选择适当的域名并同意服务条款。Certbot 会自动配置 Nginx 使用获得的证书。

如果你的服务器上启用了防火墙,请允许 HTTPS 流量(端口 443):

sudo ufw allow http
sudo ufw allow https
sudo ufw reload

8. 配置 Zabbix 前端

打开浏览器,访问 http://your_domain/zabbix。按照屏幕上的指示完成 Zabbix 安装:

  • 选择你的语言,点击 “Next”。
  • 检查预安装条件,点击 “Next”。
  • 配置数据库连接:
    • 数据库类型:PostgreSQL
    • 数据库主机:localhost
    • 数据库名称:zabbix
    • 用户:zabbix
    • 密码:your_password

继续安装步骤,设置服务器详细信息并完成设置。

9. 登录 Zabbix

安装完成后,使用默认凭据登录 Zabbix 前端:

用户名:Admin
密码:zabbix

相关链接
雨云 - 新一代云服务提供商: https://rainyun.ivwv.site
我的博客:https://blog.ivwv.site