如何在 Linux 上安装和配置 Zabbix 监控服务器

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 监控服务器的机器上,您需要安装:

  1. Apache 1.3.12 或更高版本
  2. PHP 7.2.5 或更高版本
  3. 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 代理。 现在,您可以轻松跟踪服务器并监控它们的运行状况。