首页 > 资讯 > 如何为托管到SAE的应用配置健康检查

如何为托管到SAE的应用配置健康检查

将应用部署在SAE后,您可以使用健康检查功能查看应用实例与业务运行是否正常,以便运行异常时定位问题。SAE支持在创建或部署中配置,本文介绍如何在SAE控制台配置健康检查。

背景信息

健康检查原理

健康检查是指由Liveness探针或者Readiness探针对应用实例与应用进行定时检查,并将结果反馈给SAE控制台的过程,帮助您了解集群环境下整个服务的运行状态,以便定位问题。

SAE基于Kubernetes,提供了以下两种健康检查方式。

应用实例存活检查(Liveness配置):针对单个应用实例进行健康检查,检测应用实例是否已经启动。

检查成功:表示应用实例健康,SAE不执行任何操作。

检查失败:表示应用实例不健康,SAE会重启应用实例。

应用业务就绪检查(Readiness配置):针对应用业务进行健康检查,检测处理客户请求的应用是否已经就绪。

检查成功:表示应用准备就绪,SAE会为应用分配业务流量进行处理。

检查失败:表示应用未准备就绪,SAE会上报应用异常,不为该应用分配业务流量。

成功和失败说明

成功:健康检查成功一次即认为检查通过。

失败:如果一次健康检查失败,SAE会按照您设置的检查周期时间重新进行健康检查。直到连续3次失败后,SAE会进行Liveness失败重启应用实例、Readiness失败摘除实例不分配流量等操作。

健康检查参数

SAE健康检查通过设置以下参数,检查应用实例与应用的运行状态。

延迟时间

健康检查延迟检测时间。单位为秒,默认为10。例如设置为5,表示从实例启动5秒后开始检测。假设应用启动时长为60,建议将延迟时间设置为70。

超时时间

健康检查超时等待时间。单位为秒,默认为1。例如设置为10,如果超时等待时间超过10秒,表示本次健康检查失败,上报超时异常。如果设置为0或不设置,默认超时等待时间为1秒。

检查周期

健康检查周期。单位为秒,默认为30。例如设置为5,表示每隔5秒检查一次。

操作步骤

在创建应用过程中配置健康检查

登录SAE控制台。

在左侧导航栏,选择,在顶部菜单栏选择地域,然后单击创建应用。

在应用基本信息配置向导,设置应用相关信息,并单击下一步:应用部署配置。

在应用部署配置配置向导,选择技术栈语言和应用部署方式,设置部署信息。

展开应用健康检查设置区域,选择检查方式,并设置相关信息。

说明

应用实例存活检查和应用业务就绪检查的参数相同。

在健康检查设置中,应用实例存活检查(Liveness配置)与应用业务就绪检查(Readiness配置)二者都配置(推荐),也可二者选配其一。如果二者都配置,SAE会根据配置的检查延迟时间依次执行健康检查。

HTTP请求检查:通过向实例发送HTTP请求检查健康情况。通过HTTP访问获得的HTTP状态码位于[200,399]之间,则认为访问成功,实例健康;否则认为失败,实例不健康。

配置项

说明

路径

访问HTTP Server的路径。

端口

访问HTTP Server的端口。

高级设置

展开高级设置后,选择判断返回的字符串中是否包含设置的关键字。

协议

选择HTTP或HTTPS。

延迟时间(秒)

设置健康检查延迟检测时间。单位为秒,默认为10。

超时时间(秒)

设置健康检查超时等待时间。单位为秒。默认为1。

检查周期(秒)

设置健康检查周期。单位为秒,默认为30。

健康阈值(次)

探针在失败后,被视为成功的最小连续成功数。Liveness必须设置为1。

不健康阈值(次)

判定总体失败的连续失败数。

TCP端口检查(推荐):通过向实例发送一个TCP Socket来检查实例的健康情况。如果可以建立连接,则认为实例健康;如果连接失败,则认为不健康。

配置项

说明

TCP端口

设置TCP检查访问的端口。

延迟时间(秒)

设置健康检查延迟检测时间。单位为秒,默认为10。

超时时间(秒)

设置健康检查超时等待时间。单位为秒,默认为1。

检查周期(秒)

设置健康检查周期。单位为秒,默认为30。

健康阈值(次)

探针在失败后,被视为成功的最小连续成功数。Liveness必须设置为1。

不健康阈值(次)

判定总体失败的连续失败数。

执行命令检查:通过在实例中执行探针检测命令来检查实例的健康情况。如果执行命令后返回的状态码为0,则认为执行成功,实例健康;如果不为0,则认为执行失败,实例不健康。

配置项

说明

延迟时间(秒)

设置健康检查延迟检测时间。单位为秒,默认为10。

超时时间(秒)

设置健康检查超时等待时间。单位为秒,默认为1。

检查周期(秒)

设置健康检查周期。单位为秒,默认为30。

健康阈值(次)

探针在失败后,被视为成功的最小连续成功数。Liveness必须设置为1。

不健康阈值(次)

判定总体失败的连续失败数。

执行命令

设置应用实例或者进程内部执行的健康检查命令。如果该命令返回码为0,则表示应用健康。

执行命令的具体格式,请参见右侧的示例区域或下文中的示例。健康检查相关命令,请参见Kubernetes官网Configure Probes。

说明

设置执行命令时,首行填写命令,次行之后再填写参数。多条参数时以换行分隔,请避免出现空行情况。

单击下一步:确认规格。

在确认规格配置向导,查看您所创建应用的详细信息以及配置费用情况,并单击确认创建。

页面会跳转至创建完成配置向导,您可以单击应用详情页进入基本信息页面。

在部署应用过程中配置健康检查

警告

重新部署应用后,该应用将会被重启。为避免业务中断等不可预知的错误,请在业务低峰期执行部署操作。

更新应用配置的路径因实例数的不同而不同。本文以实例数大于等于1为例,介绍如何配置目标功能。当实例数等于0时的操作路径,请参见更新应用。

登录SAE控制台。

在左侧导航栏,选择,在顶部菜单栏选择地域,然后单击具体应用名称。

在基本信息页面右上角,单击部署应用。

展开应用健康检查设置区域,选择检查方式,并设置相关信息。

说明

应用实例存活检查和应用业务就绪检查的参数相同。

在健康检查设置中,应用实例存活检查(Liveness配置)与应用业务就绪检查(Readiness配置)二者都配置(推荐),也可二者选配其一。如果二者都配置,SAE会根据配置的检查延迟时间依次执行健康检查。

HTTP请求检查:通过向实例发送HTTP请求检查健康情况。通过HTTP访问获得的HTTP状态码位于[200,399]之间,则认为访问成功,实例健康;否则认为失败,实例不健康。

配置项

说明

路径

访问HTTP Server的路径。

端口

访问HTTP Server的端口。

高级设置

展开高级设置后,选择判断返回的字符串中是否包含设置的关键字。

协议

选择HTTP或HTTPS。

延迟时间(秒)

设置健康检查延迟检测时间。单位为秒,默认为10。

超时时间(秒)

设置健康检查超时等待时间。单位为秒。默认为1。

检查周期(秒)

设置健康检查周期。单位为秒,默认为30。

健康阈值(次)

探针在失败后,被视为成功的最小连续成功数。Liveness必须设置为1。

不健康阈值(次)

判定总体失败的连续失败数。

TCP端口检查(推荐):通过向实例发送一个TCP Socket来检查实例的健康情况。如果可以建立连接,则认为实例健康;如果连接失败,则认为不健康。

配置项

说明

TCP端口

设置TCP检查访问的端口。

延迟时间(秒)

设置健康检查延迟检测时间。单位为秒,默认为10。

超时时间(秒)

设置健康检查超时等待时间。单位为秒,默认为1。

检查周期(秒)

设置健康检查周期。单位为秒,默认为30。

健康阈值(次)

探针在失败后,被视为成功的最小连续成功数。Liveness必须设置为1。

不健康阈值(次)

判定总体失败的连续失败数。

执行命令检查:通过在实例中执行探针检测命令来检查实例的健康情况。如果执行命令后返回的状态码为0,则认为执行成功,实例健康;如果不为0,则认为执行失败,实例不健康。

配置项

说明

延迟时间(秒)

设置健康检查延迟检测时间。单位为秒,默认为10。

超时时间(秒)

设置健康检查超时等待时间。单位为秒,默认为1。

检查周期(秒)

设置健康检查周期。单位为秒,默认为30。

健康阈值(次)

探针在失败后,被视为成功的最小连续成功数。Liveness必须设置为1。

不健康阈值(次)

判定总体失败的连续失败数。

执行命令

设置应用实例或者进程内部执行的健康检查命令。如果该命令返回码为0,则表示应用健康。

执行命令的具体格式,请参见右侧的示例区域或下文中的示例。健康检查相关命令,请参见Kubernetes官网Configure Probes。

说明

设置执行命令时,首行填写命令,次行之后再填写参数。多条参数时以换行分隔,请避免出现空行情况。

配置完成后,单击确认。

验证结果

健康检查配置成功后,您可以在目标应用的基本信息页面,单击实例部署信息页签,在默认分组区域查看实例的运行状态,将鼠标移至状态后的标志上,可查看健康检查配置的详细信息。

运行状态

说明

运行状态

说明

Liveness健康检查未配置

Readiness健康检查未配置

Liveness与Readiness健康检查未配置

表示实例未配置健康检查。

说明

推荐同时配置Liveness和Readiness检查。

如果您需要了解健康检查的配置说明,您可以单击查看详情,查看配置文档。

表示实例正在或等待进行健康检查。

说明

应用启动后,需要等待健康检查所设置的延迟时间,才会开始健康检查。

Liveness健康检查失败

Readiness健康检查失败

Liveness与Readiness健康检查失败

表示健康检查失败,实例不健康。

说明

如果您需要查看检查失败原因,您可以单击失败,跳转至应用事件页面,查看健康检查的详细信息。

表示健康检查通过,实例健康。

相关知识

如何使用电脑健康状况检查应用
托幼机构健康检查管理PPT课件.ppt
托幼机构中的健康检查管理
配置健康检查探测物理专线连通性
卫生健康委关于印发托育机构设置标准(试行)和托育机构管理规范(试行)的通知  托育机构设置标准(试行)  托育机构管理规范(试行)
为保证幼儿健康,托幼机构的健康检查应从哪几方面着手?
spring boot 应用在 k8s 中的健康检查(一)
金安区卫生健康委开展托育机构专项监督检查
如何为孩子选择靠谱的托育机构
国家卫生健康委关于印发托育机构设置标准(试行)和托育机构管理规范(试行)的通知

网址: 如何为托管到SAE的应用配置健康检查 https://m.trfsz.com/newsview400726.html