1 使用 Zabbix agent 监控Linux

介绍

本页将引导您完成使用Zabbix开始对Linux机器进行基本监控所需的步骤。 本教程中描述的步骤可应用于任何基于 Linux 的操作系统。

本指南适用于谁

本指南专为Zabbix新用户设计,包含了对Linux计算机进行基本监控所需的最少步骤集。 如果您正在寻找深度自定义选项或需要更高级的配置,请参阅Zabbix手册的 配置 部分。

先决条件

在继续本指南之前,您需要根据您的操作系统指南下载并安装 Zabbix 服务器和 Zabbix 前端。

安装Zabbix agent

Zabbix agent 是负责收集数据的程序。

检查您的Zabbix server版本:

zabbix_server -V

在要监控的Linux机器上安装相同版本 (推荐) 的Zabbix agent。 根据您的监控需求,它可能是安装Zabbix server的同一台机器, 也可能是另一台完全不同的机器。

选择最合适的安装方法:

  • 作为Docker容器运行 - 请参阅 Zabbix Docker 存储库 中的可用镜像列表。

  • 从Zabbix 软件包 安装(适用于 Alma Linux, CentOS, Debian, Oracle Linux, Raspberry Pi OS, RHEL, Rocky Linux, SUSE Linux Enterprise Server, Ubuntu).

  • 从源码编译安装。

配置 Zabbix 用于监控

Zabbix agent 可以在主动或被动模式下(同时)收集指标。

被动检查是一种简单的数据请求。Zabbix server 或 proxy 请求一些数据(例如,CPU 负载),Zabbix agent 将结果发送回 server。主动检查需要更复杂的处理。Agent 必须首先从 server(s) 获取 待独立处理的项目列表,然后批量发送数据回 server。 更多详情请参阅 被动和主动 agent 检查

Zabbix 提供的监控模板通常提供两种选择 - 一个用于 Zabbix agent 的模板和一个用于 Zabbix agent(主动)的模板。使用第一个选项时,Agent 将在被动模式下收集指标。 这些模板将提供相同的监控结果,但使用不同的通信协议。

进一步的 Zabbix 配置取决于您选择用于 主动被动 Zabbix agent 检查的模板。

被动模式检查

Zabbix agent

  1. 在安装了Agent的机器上,打开Agent配置文件。

    sudo vi /etc/zabbix/zabbix_agentd.conf

  2. 在Server参数中添加您的Zabbix服务器的IP地址或DNS名称。

    Server=192.0.2.22

  3. 重启Zabbix agent。

    systemctl restart zabbix-agent

Zabbix 前端

1. 登录到 Zabbix 前端。

2. 在 Zabbix 网页界面中 创建一个主机

  • 主机名 字段中,输入主机名(例如,“Linux 服务器”)。
  • 模板 字段中,输入或选择将与主机 关联 的模板“Linux by Zabbix agent”。
  • 主机群组 字段中,输入或选择一个主机群组(例如,“Linux 服务器”)。
  • 接口 参数中,添加 Agent 接口并指定已安装 Agent 的 Linux 机器的 IP 地址或 DNS 名称。

3. 点击 添加 以添加主机。此主机将代表受监控的 Linux 机器。

主动模式检查

Zabbix agent

1. 在安装了Agent的机器上打开Agent配置文件。

sudo vi /etc/zabbix/zabbix_agentd.conf

2. 在ServerActive参数中添加您的Zabbix服务器的IP地址或DNS名称(以及可选端口)。例如:

ServerActive=192.0.2.0:10051

Zabbix agent将使用此地址连接到Zabbix服务器的trapper端口(默认:10051),并请求主动检查的配置数据。

3. 定义Hostname参数,该参数必须与在Zabbix前端中定义的主机名匹配。在我们的示例中,它是:

Hostname=Linux server

Hostname值必须匹配,因为对于主动检查,Zabbix agent使用它从服务器检索正确的主机配置。具体来说,Agent发起与Server的连接,并使用Hostname值进行自我识别。然后,Server为该主机提供监控配置。如果这些值不同,Agent将不会收到适当的配置,导致缺失指标或监控问题。

4. 重启Zabbix agent。

systemctl restart zabbix-agent

Zabbix 前端

1. 登录 Zabbix 前端。

2. 在 Zabbix 网页界面中 创建一个主机

  • 主机名 字段中,输入一个主机名(例如,“Linux 服务器”),该名称应与之前在 Agent 配置文件中定义的 Hostname 参数值相匹配。
  • 模板 字段中,输入或选择模板“Linux by Zabbix agent active”,该模板将被 关联 到主机。
  • 主机群组 字段中,输入或选择一个主机群组(例如,“Linux 服务器”)。
  • 保持 接口 未定义;对于主动检查,无需定义接口,因为 Agent 会主动发起与服务器的连接,而不是监听来自服务器的连接。

3. 点击 添加 以添加主机。这个主机将代表被监控的 Linux 机器。

查看收集的指标

恭喜!此时,Zabbix已经在监视您的Linux机器。

要查看收集的指标,请打开 监视->主机 菜单 ,然后点击主机旁边的 最新数据

此操作将打开从 Linux 服务器主机收集的所有最新指标的列表。

设置问题告警

Zabbix可以使用多种方法通知您有关基础设施的问题。 本指南提供了发送电子邮件告警的配置步骤。

1. 转到 用户设置 -> 配置, 切换到 媒体 选项卡并 添加你的邮箱地址.

2. 按照 接收问题通知 指南进行操作。

下次,当Zabbix检测到问题时,您应该会通过电子邮件收到告警。

测试配置

在 Linux 上,您可以通过运行以下命令模拟高 CPU 负载,以接收问题告警:

cat /dev/urandom | md5sum

您可能需要运行多个 md5sum 进程才能使 CPU 负载超过阈值。

当Zabbix检测到问题时,它将出现在 监控->问题 部分.

如果 配置了告警,您还将收到问题通知。

另请参阅:

  • 创建监控项 - 如何开始监控额外的指标(不使用模板的自定义监控)。
  • Zabbix agent 监控项, 适用于 Windows 的 Zabbix agent 监控项 - 使用 Zabbix agent 在 Windows 上监控的完整指标列表。
  • 问题升级 - 如何创建多步骤告警场景 (例如,首先向系统管理员发送消息,然后,如果问题在 45 分钟内未解决, 向数据中心经理发送消息)。
  • 从软件包安装 - 如何使用官方的 RPM 和 DEB 软件包为各种 Linux 发行版安装 Zabbix 组件,确保访问最新功能和错误修复。