Zabbix 是一个用于监控服务器、网络设备、网络服务和应用程序的开源实用程序。 它有助于密切关注网络基础设施并检测硬件或软件程序的问题。 Zabbix 工具从被监控的设备中收集信息并将其发送给中央机构。
Zabbix 有两个主要组件: Zabbix 服务器 和 Zabbix 代理. Zabbix 服务器 是从被监控设备接收收集到的数据的主要组件。 Zabbix 代理 从您要监控的设备中收集数据并将其转发到 Zabbix 服务器。
在这篇文章中,我们将解释如何在 Linux 上安装和配置 Zabbix 以监控服务器的健康状况。 我们将使用两台 Linux 机器; 一个作为监控服务器,我们将在其上安装和配置 Zabbix 服务器,另一个作为我们要监控的客户端。 在客户端机器上,我们将安装 Zabbix 代理,它将收集数据并向 Zabbix 服务器报告。 我们还将在 Zabbix 监控服务器上安装 Zabbix 代理,以便它也可以监控自己。
笔记: 我们将使用 Ubuntu 20.04 LTS (Focal Fossa) 对于 Zabbix 服务器和客户端机器。 对于两台机器,我们都需要 Sudo 权限。
第 1 步:安装先决条件
Zabbix 使用 MySQL 作为后端数据库,用于在使用时存储收集到的信息 Apache 和 PHP 作为服务 Web 界面的前端。 在您要配置为 Zabbix 监控服务器的机器上,您需要安装:
- Apache 1.3.12 或更高版本
- PHP 7.2.5 或更高版本
- MySQL:5.5 或 8.0.x
安装 Apache 网络服务器
Apache Web 服务器将用于为 Zabbix Web 界面提供服务。 在终端中发出以下命令进行安装:
$ sudo apt update $ sudo apt install apache2
您也可以访问我们关于如何安装的帖子 Apache Linux 上的网络服务器。
验证是否 Apache 服务已启用并正在运行。 发出以下命令:
$ sudo systemctl status apache2
如果服务未启用或未运行,您可以手动启用并使用以下命令启动:
$ sudo systemctl enable apache2 $ sudo systemctl start apache2
现在,如果您的系统上正在运行防火墙,请允许 Apache 通过这:
$ sudo ufw allow ‘Apache’
安装和配置 PHP 包
现在我们将安装 PHP 以及一些依赖项。 在终端中发出以下命令来执行此操作:
$ sudo apt install php-cli php-common php-dev php-pear php-gd php-mbstring php-mysql php-xml php-bcmath libapache2-mod-php
PHP包安装完成后,我们需要做一些配置。 编辑“php.ini”的配置文件 阿帕奇2:
$ sudo nano /etc/php/7.4/apache2/php.ini
在文件中进行以下更改。 删除分号 (;) 来自 日期.时区 线。
date.timezone = <Your_Time_Zone> max_execution_time = 600 max_input_time = 600 memory_limit = 256M post_max_size = 32M upload_max_filesize = 16M
代替
现在编辑“php.ini”的配置文件 PHP 命令行:
$ sudo nano /etc/php/7.4/cli/php.ini
在此文件中进行与上述相同的更改,然后保存,然后 close 它。
安装和配置 MySQL 服务器
现在在这一步中,我们将安装和配置 MySQL 服务器来存储 Zabbix 服务器从代理收集的数据。 目前在 Ubuntu 20.04 LTS 存储库上可用的 MySQL 版本是 8.0. 您还可以按照我们关于安装 MySQL 服务器的指南进行操作。
在终端中发出以下命令以安装 MySQL 服务器:
$ sudo apt install mysql-server
安装完成后,发出以下命令以保护 SQL 服务器。 它将设置 根密码 用于 MySQL 服务器以及其他一些安全选项。
$ sudo mysql_secure_installation
打 是的 对于所有提示。 当要求设置 root 密码时,输入两次密码。
第 2 步:安装和配置 Zabbix
现在我们将在安装了所有先决条件的同一台机器上安装和配置 Zabbix (Apache、MySQL 和 PHP)。
1.安装Zabbix存储库
首先,我们需要下载 Zabbix 官方存储库并将其安装到我们的系统中。 在终端中发出以下命令来执行此操作:
$ wget https://repo.zabbix.com/zabbix/5.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.2-1+ubuntu20.04_all.deb $ sudo dpkg -i zabbix-release_5.2-1+ubuntu20.04_all.deb
现在更新本地存储库以包含 Zabbix 存储库:
$ sudo apt update
更新存储库后,您可以使用以下命令安装 Zabbix:
$ sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-agent
它还将安装 Zabbix 代理 这将让 Zabbix 服务器监控自己。
2.导入Zabbix Schema
现在我们需要将 Zabbix 初始模式导入新创建的“Zabbix”数据库。
$ zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
提供您在 Zabbix 数据库创建期间创建的 MySQL 用户“Zabbix”的密码。
3.为Zabbix Server配置数据库
现在我们将在 MySQL 上创建一个新数据库并为 Zabbix 服务器配置它。
创建数据库
以 root 用户身份登录 MYSQL 控制台。 发出以下命令来执行此操作:
$ sudo mysql -u root -p
现在要创建数据库,请发出以下命令:
create database zabbix character set utf8 collate utf8_bin;
然后创建一个用户和一个密码并授予它访问数据库的权限:
grant all privileges on zabbix.* to [email protected]'localhost' identified by 'PASSWORD';
现在发出以下命令以应用更改:
flush privileges;
然后退出控制台:
exit
现在已经为 Zabbix 服务器创建了数据库和用户。
配置数据库
为了将 Zabbix 服务器指向数据库,编辑 Zabbix 配置文件 zabbix_server.conf 使用以下命令:
$ sudo nano /etc/Zabbix/ zabbix_server.conf
查找以下行:
# DBPassword=
取消注释此行并将其值设置为您在创建过程中创建的 MySQL 用户“Zabbix”的密码 Zabbix 数据库创建 在上一步中。
然后保存并 close 这 zabbix_server.conf 文件。
完成 Zabbix 配置后,重新启动 Apache 服务器:
$ sudo systemctl restart apache2.service
然后启动并启用 Zabbix 服务器:
$ systemctl start zabbix-server $ systemctl enable zabbix-server
还要验证 Zabbix 服务器是否处于活动状态并正常运行:
$ systemctl status zabbix-server
第 3 步:配置 Zabbix 前端
现在让我们配置基于浏览器的 Zabbix 前端。 打开任何网络浏览器并转到以下地址:
https://zabbix-server-hostname-or-IP/zabbix
将出现一个带有以下欢迎屏幕的向导。 点击 下一步.
接下来,向导将检查所有 先决条件. 确保先决条件的所有值都是 好的 然后点击 下一步.
出现以下画面时,输入“扎比克斯” 您之前配置的用户,然后单击 下一步.
现在,您将被要求输入 Zabbix 服务器详细信息. 提供 Zabbix 服务器主机名或 IP 地址 或者您也可以将详细信息保留为默认值。 然后点击 下一步.
然后选择你的 时区 和 主题 用于网络界面。 然后点击 下一步.
现在,您将看到 安装前总结 供审查。 如果一切正常,请单击 下一步.
接下来会通知你Zabbix前端的安装已经完成。 点击 结束 到 close 安装向导。 然后使用以下默认凭据登录到 Zabbix 服务器:
Username: Admin Password: zabbix
登录后,您将看到以下仪表板,其中有一个可用的主机,即 Zabbix 服务器本身,因为我们还在其上安装了代理。 现在 Zabbix 服务器将开始监控自己。
第 4 步:在客户端安装和配置 Zabbix Agent
现在在客户端机器上,我们将安装代理并将其连接到 Zabbix 服务器。
安装和配置代理
1. 在终端中发出以下命令来安装 Zabbix 存储库:
$ wget https://repo.zabbix.com/zabbix/5.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.2-1+ubuntu20.04_all.deb $ sudo dpkg -i zabbix-release_5.2-1+ubuntu20.04_all.deb
然后安装代理:
$ sudo apt install zabbix-agent
3.编辑Zabbix代理配置文件:
$ sudo nano /etc/zabbix/zabbix_agentd.conf
在文件中搜索以下条目:
Server=127.0.0.1
将其替换为 Zabbix 服务器的 IP 地址,在我们的示例中为:
Server=192.168.72.157
然后保存并 close Zabbix 代理配置文件。
4.启动并启用Zabbix服务:
$ sudo systemctl start zabbix-agent $ sudo systemctl enable zabbix-agent
然后验证 Zabbix 代理是否处于活动状态并正常运行。
$ sudo systemctl status zabbix-agent
5. 另外,允许端口 10050 通过防火墙:
$ sudo ufw allow 10050/tcp
将主机添加到 Zabbix 服务器
在上一节中,我们在客户端机器上安装了代理。 现在,我们将在 Zabbix 服务器中添加这台机器。
1. 登录Zabbix server web界面,访问:
https://zabbix-server-hostname-or-IP/zabbix.
2. 前往 配置 > 主机 从左侧导航栏中。 然后点击 创建主机 如以下屏幕截图中的箭头所示。
3. 键入 主机名 Zabbix 代理机器,然后将其添加到 Linux 服务器 团体。
4. 键入 IP地址 Zabbix 代理机器。
5.然后去 模板 选项卡,选择 模板/操作系统。
从列表中,选择 Zabbix 代理的 Linux 然后点击 选择.
然后点击 添加 按钮。
现在点击 添加 Web 界面底部的按钮以将此主机添加到 Zabbix 服务器。 添加后,您将收到通知 已添加主机 窗口顶部的通知。
如果您前往 Dashboard,您将看到两个主机添加到您的 Zabbix 服务器; 一个是 Zabbix 服务器本身,另一个是客户端机器。
在这篇文章中,您学习了如何在 Linux 上安装和配置 Zabbix 服务器。 您还学习了如何在 Zabbix 服务器和客户端机器上安装和配置 Zabbix 代理。 现在,您可以轻松跟踪服务器并监控它们的运行状况。