
# 配置健康检查
应用部署后，可以使用健康检查功能查看应用实例与业务运行是否正常。
本章节通过检测在升级过程中应用是否不中断服务为例，为您介绍健康检查功能。
#### 注意事项
- 单独使用存活探针时，如出现网络波动或程序启动过慢的情况，会导致实例持续被重启，且实例一直处于未就绪的状态。
  有如下解决方案：
  - 与启动探针配合使用，具体操作请参见[启动探针与存活探针配合工作](https://support.huaweicloud.com/bestpractice-cae/cae_05_0028.html)。
  
  - 使用时将"最大失败次数"调大，增加容错率，并增大"延迟时间"，保证程序在启动后再接受存活探针的检测。
    
- 检查成功：对于在健康检查中设置的请求返回状态码200。
- 检查失败：对于在健康检查中设置的请求返回状态码非200，且连续失败次数达到设置的"最大失败次数"。
 
#### 操作步骤
1. [登录CAE控制台](https://console.huaweicloud.com/cae/)。
2. 在左侧导航栏中选择"组件配置"。
3. 在"组件配置"页面上方的下拉框中选择需要操作的组件。 
   图1选择组件   
   ![](https://support.huaweicloud.com/usermanual-cae/zh-cn_image_0000001695368360.png "点击放大")
   
   
4. 单击"健康检查"模块中的"编辑"。
5. 在右侧弹框中可选择配置"存活探针"、"就绪探针"和"启动探针"。目前支持三种探针，可同时开启不同探针。 
   - 存活探针：针对应用实例进行健康检查，检测应用实例是否已经启动，此时处于启动过程中。单击"存活探针"后的![](https://support.huaweicloud.com/usermanual-cae/zh-cn_image_0000001456729741.png)进行检查方式配置。
   
   - 就绪探针：针对应用实例进行健康检查，检测应用实例是否完成启动，此时处于可对外提供服务状态。单击"就绪探针"后的![](https://support.huaweicloud.com/usermanual-cae/zh-cn_image_0000001456689713.png)进行检查方式配置。本示例需打开就绪探针。
   
   - 启动探针：针对应用实例进行健康检查，检测应用实例是否稳定运行，此时失败CAE会重启应用实例。单击"启动探针"后的![](https://support.huaweicloud.com/usermanual-cae/zh-cn_image_0000001456530065.png)进行检查方式配置。
     图2就绪探针   
     ![](https://support.huaweicloud.com/usermanual-cae/zh-cn_image_0000001518171893.png "点击放大") 
   
   
   
   
6. 选择其中一种检查方式，并配置相应的参数，具体参数请参考[表1]、[表2]。
   
   - HTTP请求检查：通过向实例发送HTTP请求检查健康情况。通过HTTP访问获得的HTTP状态码位于\[200,399\]之间，则认为访问成功，实例健康；否则认为失败，实例不健康。
   
   - TCP端口检查：通过向实例发送一个TCP Socket来检查实例的健康情况。如果可以建立连接，则认为实例健康。
   
   - 执行命令检查：通过在实例中执行探针检测命令来检查实例的健康情况。如果连接失败，则认为不健康。
   
   
    表1检查方式配置项参数 
   | 检查方式     | 配置项参数 | 参数说明                                                                                                                                                                                                                                     |
   |:---|:---|:---|
   | HTTP请求检查 | 端口    | 建立HTTP GET使用的端口。                                                                                                                                                                                                                         |
   | HTTP请求检查 | 路径    | 建立HTTP GET使用的路径。                                                                                                                                                                                                                         |
   | HTTP请求检查 | 协议    | 选择HTTP或HTTPS协议。                                                                                                                                                                                                                          |
   | HTTP请求检查 | 请求头   | 单击"添加请求头"，设置参数名和参数值，自定义请求中的HTTP头。                                                                                                                                                                                                        |
   | TCP端口检查  | 端口    | 用户指定端口，用于TCP连接。本示例选用TCP端口检查。                                                                                                                                                                                                             |
   | 执行命令     | 执行命令  | 添加执行命令，可单击"添加执行命令"添加多条执行命令。 说明： 添加执行命令时，命令行后不允许有空格。 ![](https://support.huaweicloud.com/usermanual-cae/zh-cn_image_0000001559233374.png "点击放大") |
      
    表2三种检查方式公共配置参数 
   | 配置项参数  | 参数说明                                                                                                                                                            |
   |:---|:---|
   | 检测周期   | 探测时间间隔。 默认值为10秒，最小值为1秒。本示例使用默认值。                                                                                                  |
   | 延迟时间   | 最长允许延迟时间。 默认值为0秒，最小值为0秒。本示例使用默认值。 说明： 如果用户在容器启动之前配置健康检查，建议延迟时间增长至3分钟。 |
   | 超时时间   | 配置探测的超时时间。 默认值为1秒，最小值为1秒。本示例使用默认值。                                                                                                |
   | 成功阈值   | 探测连续几次成功表示成功。 默认值为1，最小值为1，存活探针和启动探针必须为1。本示例使用默认值。                                                                                |
   | 最大失败次数 | 探测连续几次失败表示失败。 默认值为3，最小值为1。本示例使用默认值。                                                                                              |
      
   
   
7. 单击"确定"完成配置。
8. 使配置生效。 
   - 如已完成组件部署，单击页面上方"生效配置"。在右侧弹框中确认配置信息，并单击"确定"，使配置生效。
   
   - 如未完成组件部署，单击页面上方"配置并部署组件"，在右侧弹框中单击"确定"，待部署执行完成后，配置生效。
   
   
   
   
9. 验证组件健康检查功能：[升级组件](https://support.huaweicloud.com/usermanual-cae/cae_03_0033.html)后，在"组件事件"页面中观察，"组件实例健康"事件为正常，则表示组件升级成功。
   
   图3组件健康检查   
   ![](https://support.huaweicloud.com/usermanual-cae/zh-cn_image_0000001751242289.png "点击放大")
   
   
 
#### 更多参考链接
- [启动探针与存活探针配合工作](https://support.huaweicloud.com/bestpractice-cae/cae_05_0028.html)
- [使用就绪探针保证升级时流量正常](https://support.huaweicloud.com/bestpractice-cae/cae_05_0052.html)
 
