全部产品
云市场

健康检查

更新时间:2019-09-20 20:41:28

健康检查是指由 EDAS Agent(以下简称为 Agent)针对容器与应用进行定时检查与汇报,然后将结果反馈在控制台上的过程。健康检查能帮助您了解集群环境下整个服务的运行状态,从而为审查与定位问题提供帮助。

健康检查流程

您可以配置健康检查来监控通过 IP 地址或域名指定的终端节点。EDAS 健康检查按照固定的时间间隔,向应用程序、服务器或其他资源自动提交请求,以验证其是否可到达、是否可用及功能是否正常。您也可以通过配置健康检查 URL 来发出与用户发出的请求类似的请求,以验证应用功能的运行状态。

下图为健康检查机制中的检查流程图,该图以每10秒触发一次健康检查作为示例。

图中的 (1) 和 (2) 流程的具体说明如下:

  1. 检测应用所在的 Ali-Tomcat 是否存活。
    • 如果存活,进行第2步检测。
    • 如果没有存活,检测结束,说明健康检查失败。
  2. 检测配置的 URL 是否返回200

    说明:如果您没有配置 URL,将不会进行健康检查。

健康检查设置

在 ECS 集群和 Swarm 集群中,您可以在创建应用过程中设置健康检查 URL,也可以在应用部署完成后在应用设置页面添加或者修改健康检查。

  1. 登录 EDAS 控制台

  2. 在左侧导航栏,选择应用管理 > 应用列表,在应用列表页面右上角单击创建应用

  3. 在创建应用对话框中,输入应用相关信息,然后单击下一步。在应用配置页面,选择实例并立即部署,在部署信息配置页面您可以配置应用健康检查

    创建健康检查

    配置示例

    • 一个 WAR 包应用的默认运行容器是Tomcat,则应用端口默认为 8080,则健康检查的 URL 可以设置为 http://127.0.0.1:8080/order/healthCheck.html
    • 若该 WAR 包应用配置了容器路径为根路径,端口设置为 8081, WAR 包中包含一个可以标识健康状态的文件 healthcheck.html,则健康检查 URL 为 http://127.0.0.1:8081/healthcheck.html
  4. 针对ECS 集群和 Swarm 集群中的应用,您可在应用详情页面的应用设置区域查看健康检查的相关配置信息,并可单击修改进行修改或者删除健康检查设置。

    修改查看健康检查

  5. 修改健康检查 URL 对话框中进行设置,完成设置后单击确认则完成了健康检查的修改设置。

    • 端口健康检查:打开表示开启端口健康检查;
    • 健康检查 URL :打开并在输入框设置健康检查 URL。

    修改健康检查URL

健康检查状态说明

在设置完应用健康检查之后,应用会有不同的显示状态。

  • 容器退出:在健康检查的流程图中,当第 1 步发现 Ali-Tomcat 没有存活时,显示容器退出状态。

  • 应用异常:在健康检查的流程图中,当第 2 步发现在 3s 内您配置的 URL 返回非 200 时,显示应用异常状态。

  • 运行正常:在健康检查的流程图中,如果第 1 步与第 2 步均通过,则显示运行正常状态。

    检测过程中,如果发现您没有配置健康检查 URL,此时应用的运行状态同样显示为运行正常,但运行状态右侧会显示感叹号,鼠标在叹号上悬停时会提示:请启用应用的健康检查 URL,以便更精准的反映应用运行状态。

  • Agent 异常: 在健康检查的流程图中,在 EDAS Server 端,如发现 Agent 在 30 秒钟之内没有任何状态的汇报,则显示 Agent 异常状态。

  • ECS 已过期:表示 ECS 在 ECS 控制台已被释放。