更新健康检查
功能介绍
更新健康检查。
接口约束
如果该健康检查绑定的负载均衡器的provisioning状态不是ACTIVE,不能更新该健康检查。
调试
您可以在API Explorer中直接运行调试该接口。
URI
PUT /v2/{project_id}/elb/healthmonitors/{healthmonitor_id}
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
操作用户的项目ID。 获取方法详见获取项目ID。 |
healthmonitor_id |
是 |
String |
健康检查id。 |
请求消息
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
healthmonitor |
是 |
Healthmonitor object |
健康检查对象。详见表3。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
否 |
String |
健康检查名称。 支持的最大字符长度:255 |
delay |
否 |
Integer |
健康检查间隔,单位秒,取值范围[1,50]。 |
max_retries |
否 |
Integer |
健康检查最大重试次数,取值范围[1,10]。 |
admin_state_up |
否 |
Boolean |
健康检查的管理状态。 该字段为预留字段,暂未启用。默认为true。 |
timeout |
否 |
Integer |
健康检查超时时间,单位秒,取值范围[1,50]。
说明:
建议该值小于delay的值。 |
type |
否 |
String |
健康检查的类型。 取值范围:TCP、UDP_CONNECT、HTTP。 |
monitor_port |
否 |
Integer |
健康检查端口号,取值范围[1,65535]。 默认为空,表示使用后端云服务器的protocol_port作为健康检查的检查端口。 |
expected_codes |
否 |
String |
期望HTTP响应状态码,指定下列值: 单值,例如200; 列表,例如200,202; 区间,例如200-204。 仅当type为HTTP时生效。 |
domain_name |
否 |
String |
健康检查时,发送的http请求的域名。 仅当type为HTTP时生效。 默认为空,表示使用负载均衡器的vip_address作为http请求的目的地址。 以数字或字母开头,只能包含数字、字母、’-’、’.’。 例如:www.test.com 支持的最大字符长度:100 |
url_path |
否 |
String |
健康检查时发送的http请求路径。默认为“/”。 以“/”开头。 仅当type为HTTP时生效。 例如:“/test” 支持的最大字符长度:80 |
http_method |
否 |
String |
HTTP请求的方法;默认值:GET 取值范围:GET、HEAD、POST、PUT、DELETE、TRACE、OPTIONS、CONNECT、PATCH。 仅当type为HTTP时生效。
说明:
该字段为预留字段,暂未启用。 |
响应消息
参数 |
参数类型 |
描述 |
---|---|---|
healthmonitor |
Healthmonitor object |
健康检查对象。详见表5。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
健康检查ID。 |
tenant_id |
String |
健康检查所在的项目ID。 |
project_id |
String |
此参数和tenant_id参数含义一样,均指健康检查所在的项目ID。 |
name |
String |
健康检查名称。 |
delay |
Integer |
健康检查间隔,单位秒,取值范围[1,50]。 |
max_retries |
Integer |
健康检查最大重试次数,取值范围[1,10]。 |
max_retries_down |
Integer |
健康检查连续失败多少次后,将后端服务器的健康检查状态由ONLINE判定为OFFLINE,取值范围[1,10]。 |
pools |
Array of Pools objects |
健康检查关联的后端云服务器组的ID列表。详见表6 |
admin_state_up |
Boolean |
健康检查的管理状态。 该字段为预留字段,暂未启用。取值范围:true/false。
|
timeout |
Integer |
健康检查超时时间,单位秒,取值范围[1,50]。
说明:
建议该值小于delay的值。 |
type |
String |
健康检查的类型。 取值范围:TCP、UDP_CONNECT、HTTP。 |
monitor_port |
Integer |
健康检查端口号,取值范围[1,65535]。 默认为空,表示使用后端云服务器的protocol_port作为健康检查的检查端口。 |
expected_codes |
String |
期望HTTP响应状态码,指定下列值: 单值,例如200; 列表,例如200,202; 区间,例如200-204。 仅当type为HTTP时生效。 暂时不支持该字段,统一置为200。 |
domain_name |
String |
健康检查时,发送的http请求的域名。 仅当type为HTTP时生效。 默认为空,表示使用负载均衡器的vip_address作为http请求的目的地址。 以数字或字母开头,只能包含数字、字母、’-’、’.’。 例如:www.test.com |
url_path |
String |
健康检查时发送的http请求路径。默认为“/”。 以“/”开头。 仅当type为HTTP时生效。 例如:“/test” |
http_method |
String |
HTTP请求的方法;默认值:GET 取值范围:GET、HEAD、POST、PUT、DELETE、TRACE、OPTIONS、CONNECT、PATCH。 仅当type为HTTP时生效。
说明:
该字段为预留字段,暂未启用。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
id |
是 |
String |
后端服务器组id |
请求示例
- 请求样例 更新健康检查
PUT https://{endpoint}/v2/145483a5107745e9b3d80f956713e6a3/elb/healthmonitors/b7633ade-24dc-4d72-8475-06aa22be5412 { "healthmonitor": { "delay": 15, "name": "health-xx", "timeout": 12 } }
响应示例
- 响应样例
{ "healthmonitor": { "name": "health-xx", "admin_state_up": true, "tenant_id": "145483a5107745e9b3d80f956713e6a3", "project_id": "145483a5107745e9b3d80f956713e6a3", "domain_name": null, "delay": 15, "expected_codes": "200", "max_retries": 10, "http_method": "GET", "timeout": 12, "pools": [ { "id": "bb44bffb-05d9-412c-9d9c-b189d9e14193" } ], "url_path": "/", "type": "HTTP", "id": "2dca3867-98c5-4cde-8f2c-b89ae6bd7e36", "monitor_port": 112 } }
返回码
请参见状态码。