服务健康检查策略
接口功能介绍
接口约束
无
URI
/cgw/v1/upstream/updateHealthCheckConfig
请求方式: POST
Content-Type: application/json
路径参数
无
Query参数
无
请求参数
请求头header参数
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
regionId | 是 | String | 资源池编码 | 7a2828074ef6e32e041a2ef124b19e63 |
请求体body参数
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
id | 是 | String | 服务内部id | 878da73f7dba36ff0ae80e004a4f28f9 | |
instId | 是 | String | 实例ID | 1234563f7dba36ff0ae80e004a4f28f9 | |
active | 否 | Object | 服务健康检查-主动健康检查配置 | ActiveHealthCheckDTO | |
passive | 否 | Object | 服务健康检查-被动健康检查配置 | PassiveHealthCheckDTO |
表 ActiveHealthCheckDTO
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
concurrency | 否 | Integer | 主动检查时同时检查的目标数,默认值10 | 10 | |
enable | 否 | Boolean | 是否开启,开启true,不开启false,默认不开启 | false | |
healthy | 否 | Object | ActiveHealthyDTO | ||
httpPath | 否 | String | 主动检查的 HTTP 请求路径,默认值/ | / | |
httpsVerifyCertificate | 否 | Boolean | 主动检查使用 HTTPS 类型检查时,是否检查远程主机的SSL证书, 默认值true | true | |
port | 否 | Integer | 主动检查的 HTTP 请求主机端口(范围1~6553, 默认值 | 1 | |
reqHeaders | 否 | Array of Objects | 主动检查使用 HTTP 或 HTTPS类型检查时,设置额外的请求头信息, 默认值[] | String | |
timeout | 否 | Integer | 主动检查的超时时间(单位:秒),默认值1 | 1 | |
type | 否 | String | 主动检查的类型配置项:http、https、tcp,默认值http | http | |
unhealthy | 否 | Object | ActiveUnhealthyDTO |
表 ActiveHealthyDTO
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
httpStatuses | 否 | Array of Objects | 主动检查(健康节点) HTTP 或 HTTPS 类型检查时,健康节点的HTTP状态码,校验范围200~599,默认值[200, 302] | Integer | |
interval | 否 | Integer | 主动检查(健康节点)检查的间隔时间(单位:秒),大于等于1,默认值1 | 1 | |
successes | 否 | Integer | 主动检查(健康节点)确定节点健康的次数,校验范围1~254,默认值2 | 1 |
表 ActiveUnhealthyDTO
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
httpFailures | 否 | Integer | 主动检查(非健康节点)HTTP 或 HTTPS 类型检查时,确定节点非健康的次数,校验范围1~254,默认值5 | 5 | |
httpStatuses | 否 | Array of Objects | 主动检查(非健康节点) HTTP 或 HTTPS 类型检查时,非健康节点的HTTP状态码,校验范围200~599,默认值[429, 404, 500, 501, 502, 503, 504, 505] | Integer | |
interval | 否 | Integer | 主动检查(非健康节点)检查的间隔时间(单位:秒),大于等于1,默认值1 | 1 | |
tcpFailures | 否 | Integer | 主动检查(非健康节点)TCP 类型检查时,确定节点非健康的次数,校验范围1~254,默认值2 | 2 | |
timeouts | 否 | Integer | 主动检查(非健康节点)确定节点非健康的超时次数,校验范围1~254,默认值3 | 3 |
表 PassiveHealthCheckDTO
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
enable | 否 | Boolean | 是否开启,开启true,不开启false,默认不开启 | false | |
healthy | 否 | Object | PassiveHealthyDTO | ||
unhealthy | 否 | Object | PassiveUnhealthyDTO |
表 PassiveHealthyDTO
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
httpStatuses | 否 | Array of Objects | 被动检查(健康节点) HTTP 或 HTTPS 类型检查时,健康节点的HTTP状态码,校验范围200~599,默认值[200, 201, 202, 203, 204, 205, 206, 207, 208, 226, 300, 301, 302, 303, 304, 305, 306, 307, 308] | Integer | |
successes | 否 | Integer | 被动检查(健康节点)确定节点健康的次数,校验范围0~254,默认值5 | 5 | |
type | 否 | String | 被动检查的类型配置项:http、https、tcp,默认值http | http |
表 PassiveUnhealthyDTO
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
httpFailures | 否 | Integer | 被动检查(非健康节点)HTTP 或 HTTPS 类型检查时,确定节点非健康的次数,校验范围0~254,默认值5 | 5 | |
httpStatuses | 否 | Array of Objects | 被动检查(非健康节点) HTTP 或 HTTPS 类型检查时,非健康节点的HTTP状态码,校验范围200~599,默认值[429, 500, 503] | Integer | |
tcpFailures | 否 | Integer | 被动检查(非健康节点)TCP 类型检查时,确定节点非健康的次数,校验范围0~254,默认值2 | 2 | |
timeouts | 否 | Integer | 被动检查(非健康节点)确定节点非健康的超时次数,校验范围0~254,默认值7 | 7 |
响应参数
参数 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|
statusCode | Integer | 接口状态码 | 2000 | |
code | String | 错误码,异常时非空 | CGW_1001 | |
returnObj | Object | 返回数据 | {} | |
message | String | 异常描述 | success |
请求示例
请求url
https://127.0.0.1:8080/cgw/v1/upstream/updateHealthCheckConfig
请求头header
{
"regionId": "1234567890"
}
请求体body
{
"id": "00000000000000000050",
"active": {
"enable": true,
"type": "tcp",
"timeout": 1,
"concurrency": 10,
"healthy": {
"interval": 1,
"httpStatuses": [200, 302],
"successes": 2
},
"unhealthy": {
"interval": 1,
"httpStatuses": [429, 404, 500, 501, 502, 503, 504, 505],
"httpFailures": 5,
"tcpFailures": 2,
"timeouts": 3
}
},
"passive": {
"enable": true,
"type": "tcp",
"healthy": {
"httpStatuses": [200, 201, 202, 203, 204, 205, 206, 207, 208, 226, 300, 301, 302, 303, 304, 305, 306, 307, 308],
"successes": 5
},
"unhealthy": {
"httpStatuses": [429, 500, 503],
"tcpFailures": 2,
"timeouts": 7,
"httpFailures": 2
}
},
"instId": "878da73f7dba36ff0ae80e004a4f28f9"
}
响应示例
{
"message": "String",
"returnObj": {},
"statusCode": 2000
}
状态码
请参考 状态码说明。
错误码
请参考 错误码说明。