心跳概述编辑

Heartbeat 是一个轻量级守护进程,您可以将其安装在远程服务器上,以定期检查您的服务状态并确定它们是否可用。与Metricbeat 不同,Heartbeat 不仅告诉您服务器是否启动或停止,还会告诉您您的服务是否可以访问。

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

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

在配置 Heartbeat 时,您会指定监视器来识别要检查的 hostname。每个监视器都根据您指定的计划运行。例如,您可以配置一个监视器每 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 平台参考