HAProxy 模块

编辑

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

Metricbeat 可以从 HAProxy 收集两个 metricset: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。在此示例中,身份验证后,任何 IP 上的端口 14567 都可以访问统计信息页面。

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

兼容性

编辑

HAProxy metricset 已在 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 配置选项 中描述的选项。

Metricset

以下 metricset 可用