HAProxy 模块编辑

此模块收集来自 HAProxy 的统计信息。它支持从 TCP 套接字、UNIX 套接字或 HTTP 收集数据,无论是否使用基本身份验证。

Metricbeat 可以从 HAProxy 收集两个指标集:infostat。使用统计页面时,info 不可使用。

配置 HAProxy 以收集统计信息编辑

在使用 Metricbeat 收集统计信息之前,您必须在 HAProxy 中启用统计信息模块。您可以通过多种方式实现:配置 HAProxy 通过 TCP 或 UNIX 套接字报告统计信息,或启用统计页面。

TCP 套接字编辑

要启用通过任何本地 IP 上的端口 14567 报告统计信息,请将以下行添加到 HAProxy 配置的 globaldefault 部分

 stats socket 127.0.0.1:14567

您应该使用内部私有 IP,或使用防火墙规则进行保护,以便只有指定的主机可以访问此数据。

UNIX 套接字编辑

要启用通过 UNIX 套接字报告统计信息,请将以下行添加到 HAProxy 配置的 globaldefault 部分

 stats socket /path/to/haproxy.sock mode 660 level admin

统计页面编辑

要启用 HAProxy 统计页面,请将以下行添加到 HAProxy 配置,然后重新启动 HAProxy。在此示例中,统计页面将在身份验证后对端口 14567 上的任何 IP 可用。

 listen stats
   bind 0.0.0.0:14567
   stats enable
   stats uri /stats
   stats auth admin:admin

兼容性编辑

HAProxy 指标集已通过 HAProxy 1.6 到 1.8 版本的测试。

示例配置

HAProxy 模块支持在 模块 中描述的标准配置选项。以下是一个示例配置

metricbeat.modules:
- module: haproxy
  metricsets: ["info", "stat"]
  period: 10s
  # TCP socket, UNIX socket, or HTTP address where HAProxy stats are reported
  # TCP socket
  hosts: ["tcp://127.0.0.1:14567"]
  # UNIX socket
  #hosts: ["unix:///path/to/haproxy.sock"]
  # Stats page
  #hosts: ["http://127.0.0.1:14567"]
  username : "admin"
  password : "admin"
  enabled: true

此模块支持使用 ssl 配置字段进行 TLS 连接,如 SSL 中所述。它还支持 标准 HTTP 配置选项 中描述的选项。

指标集

以下指标集可用