简介
今天我们来聊聊如何在 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
后点击确定。
- 输入
ssh root@你的服务器IP
例如ssh root@154.9.227.239
回车后,首次需要输入yes
,再次回车后即可登录服务器。
- 到此为止,我们的云服务器就远程连接上了。
开始部署
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
修改 listen
和 server_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