Heartbeat 概述

编辑

Heartbeat 是一款轻量级守护进程,安装在远程服务器上,用于定期检查服务的运行状态并确定其是否可用。与仅能告知服务器是否启动或关闭的 Metricbeat 不同,Heartbeat 可以告知你的服务是否可访问。

当您需要验证是否满足服务正常运行时间的服务级别协议 (SLA) 时,Heartbeat 非常有用。在其他场景中,例如安全用例,当您需要验证外部人员是否无法访问您私有企业服务器上的服务时,它也很有用。

您可以将 Heartbeat 配置为 ping 指定主机名的所有可解析的 DNS IP 地址。这样,您可以检查所有负载均衡的服务是否可用。

配置 Heartbeat 时,您需要指定用于标识要检查的主机的监控器。每个监控器都根据您指定的计划运行。例如,您可以将一个监控器配置为每 10 分钟运行一次,而另一个监控器则在 9:00 到 17:00 之间运行。

Heartbeat 目前支持用于通过以下方式检查主机的监控器:

  • ICMP (v4 和 v6) 回显请求。当您只需要检查服务是否可用时,请使用 icmp 监控器。此监控器需要 root 权限。
  • TCP。使用 tcp 监控器通过 TCP 连接。您可以选择配置此监控器以通过发送和/或接收自定义有效负载来验证端点。
  • HTTP。使用 http 监控器通过 HTTP 连接。您可以选择配置此监控器以验证服务是否返回预期的响应,例如特定的状态代码、响应头或内容。

tcphttp 监控器都支持 SSL/TLS 和一些代理设置。

Heartbeat 是一个 Elastic Beat。它基于 libbeat 框架。更多信息,请参见 Beats 平台参考手册