修改自动扩缩容策略 - UpdateV2DeploymentHpa
功能介绍
本接口用于在已部署的服务上修改定时扩缩容策略,适用于需要根据业务负载或特定时间自动调整服务实例个数的场景。调用此接口前,确保服务已成功部署并获取了有效的服务ID,部署ID,并提供详细的扩缩容策略参数,如扩缩容时间、实例个数范围、条件触发器等。修改成功后,系统将根据设定的策略自动调整服务实例个数,确保服务在指定时间内的性能和可用性。如果提供的服务ID无效、参数配置错误或系统资源不足,将返回相应的异常信息,提示用户检查输入数据的有效性或联系技术支持。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权,具体权限要求请参见权限和授权项。
- 如果使用身份策略授权,需具备如下身份策略权限。
授权项
访问级别
资源类型(*为必须)
条件键
别名
依赖的授权项
modelarts:service:updateHpa
Read
service *
-
-
-
URI
PUT /v2/{project_id}/services/{service_id}/deployments/{deployment_id}/hpa
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| project_id | 是 | String | 参数解释: 用户项目ID。获取方法请参见获取项目ID和名称。 约束限制: 不涉及。 取值范围: 账号的项目ID。 默认取值: 不涉及。 |
| service_id | 是 | String | 参数解释: 服务ID,在创建服务时即可在返回体中获取,也可通过查询服务列表获取当前用户拥有的服务,其中service_id字段即为服务ID。 约束限制: 不涉及。 取值范围: 服务ID。 默认取值: 不涉及。 |
| deployment_id | 是 | String | 参数解释: 部署ID,在创建部署时即可在返回体中获取,也可通过查询服务部署列表获取当前用户拥有的部署,其中deployment_id字段即为部署ID。 约束限制: 不涉及。 取值范围: 部署ID。 默认取值: 不涉及。 |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 是 | String | 参数解释: 用户Token。通过调用IAM服务获取用户Token接口获取响应消息头中X-Subject-Token的值。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| Content-Type | 是 | String | 参数解释: 消息体的类型(格式)。 约束限制: 不涉及。 取值范围: 默认取值: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| id | 是 | String | 参数解释: 自动扩缩容策略绑定的目标ID 取值范围: 实例组ID 约束限制: 不涉及。 默认取值: 不涉及。 |
| hpa_rules | 否 | Array of HpaRules objects | 参数解释: 自动扩缩容规则。 约束限制: 不涉及。 |
| workspace_id | 否 | String | 参数解释: 工作空间ID。 取值范围:
约束限制: 不涉及。 默认取值: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| name | 否 | String | 参数解释: 自动扩缩容规则名。 取值范围: 支持4-64个字符,可以包含小写字母、数字和中划线,必须以小写字母开头,不能以中划线结尾。 约束限制: 不涉及。 默认取值: 不涉及。 |
| id | 否 | String | 参数解释: 自动扩缩容id 取值范围: 支持4-64个字符,可以包含字母、汉字、数字、中划线和下划线。 约束限制: 不涉及。 默认取值: 不涉及。 |
| disable | 否 | Boolean | 参数解释: 自动扩缩容规则是否启用。 取值范围: 约束限制: 不涉及。 默认取值: 不涉及。 |
| type | 是 | String | 参数解释: 自动扩缩容类型。 取值范围: 约束限制: 不涉及。 默认取值: 不涉及。 |
| status | 否 | String | 参数解释: 自动扩缩容类型。 取值范围: 约束限制: 不涉及。 默认取值: 不涉及。 |
| operate | 否 | String | 参数解释: 自动扩缩容类型。 取值范围: 约束限制: 不涉及。 默认取值: 不涉及。 |
| schedule | 是 | String | 参数解释: 定时自动扩缩容执行的cron表达式,不支持秒,从分钟开始设定 取值范围: 不涉及。 约束限制: 不涉及。 默认取值: 不涉及。 |
| target_replicas | 是 | Integer | 参数解释: 自动扩缩容目标实例数。 取值范围: 1-128,接口能接受浮点类型,后端会自动向下取整 约束限制: 不涉及。 默认取值: 不涉及。 |
| min_replicas | 否 | Integer | 参数解释: 自动扩缩容最小实例数。 取值范围: 1-128,接口能接受浮点类型,后端会自动向下取整 约束限制: 不涉及。 默认取值: 不涉及。 |
| max_replicas | 否 | Integer | 参数解释: 自动扩缩容最大实例数。 取值范围: 1-128,接口能接受浮点类型,后端会自动向下取整 约束限制: 不涉及。 默认取值: 不涉及。 |
| downscale_window | 否 | Integer | 参数解释: 自动扩缩容扩容冷却时间。 取值范围: 1-128,接口能接受浮点类型,后端会自动向下取整 约束限制: 不涉及。 默认取值: 不涉及。 |
| upscale_window | 否 | Integer | 参数解释: 自动扩缩容缩容冷却时间。 取值范围: 1-128,接口能接受浮点类型,后端会自动向下取整 约束限制: 不涉及。 默认取值: 不涉及。 |
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 参数解释: 自动扩缩容策略ID 取值范围: 不涉及。 |
| name | String | 参数解释: 自动扩缩容策略名称 取值范围: 不涉及。 |
| type | String | 参数解释: 自动扩缩容类型。 取值范围: |
| target_resource_id | String | 参数解释: 自动扩缩容策略绑定的目标ID 取值范围: 实例组ID |
| target_resource_type | String | 参数解释: 自动扩缩容策略绑定的目标类型。 取值范围: |
| min_replicas | Integer | 参数解释: 自动扩缩容最小实例数。 取值范围: 1-128 |
| max_replicas | Integer | 参数解释: 自动扩缩容最大实例数。 取值范围: 1-128 |
| status | String | 参数解释:** 自动扩缩容策略状态。 取值范围: |
| workspace_id | String | 参数解释: 工作空间ID。 取值范围:
|
| hpa_rules | Array of HpaRule objects | 参数解释: 自动扩缩容规则列表 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 参数解释: 自动扩缩容规则ID 取值范围: 不涉及。 |
| hpa_id | String | 参数解释: 自动扩缩容规则关联的策略ID 取值范围: 不涉及。 |
| name | String | 参数解释: 自动扩缩容规则名 取值范围: 支持4-64个字符,可以包含字母、汉字、数字、中划线和下划线。 |
| type | String | 参数解释: 自动扩缩容类型。 取值范围: |
| schedule | String | 参数解释: 定时自动扩缩容执行的cron表达式,不支持秒,从分钟开始设定 取值范围: 不涉及。 |
| target_replicas | Integer | 参数解释: 自动扩缩容目标实例数。 取值范围: 1-128 |
| disable | String | 参数解释: 自动扩缩容规则是否启用。 取值范围: |
| status | String | 参数解释: 自动扩缩容规则状态。 取值范围: |
状态码:400
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释: ModelArts错误码。 取值范围: 不涉及。 |
| error_msg | String | 参数解释: 具体错误信息。 取值范围: 不涉及。 |
状态码:404
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释: ModelArts错误码。 取值范围: 不涉及。 |
| error_msg | String | 参数解释: 具体错误信息。 取值范围: 不涉及。 |
请求示例
-
"operate":"ADD" 用于添加规则;确保schedule是不重复的。
{{request_url}}/v2/{project_id}/services/{service_id}/deployments/{deployment_id}/hpa { "id" : "8a927efb-07bd-48fc-8261-a3f79fb02199", "hpa_rules" : [ { "disable" : false, "name" : "test-rule3", "schedule" : "38 10 * * ?", "target_replicas" : 3, "type" : "CRON_HPA", "operate" : "ADD" } ] } -
"operate":"UPDATE" 用于修改规则;确保hpa_rules中的id是切实存在的规则id;确保schedule是不重复的。
{{request_url}}/v2/{{project_id}}/services/{{service_id}}/{{group_id}}/hpa { "id" : "8a927efb-07bd-48fc-8261-a3f79fb02199", "hpa_rules" : [ { "disable" : false, "id" : "accba651-d3fd-4434-8254-61d30e9e1b45", "name" : "test-rule3", "schedule" : "38 10 * * ?", "target_replicas" : 3, "type" : "CRON_HPA", "operate" : "UPDATE" } ] } -
"operate":"DELETE" 用于删除规则;确保hpa_rules中的id是切实存在的规则id。
{{request_url}}/v2/{{project_id}}/services/{{service_id}}/{{group_id}}/hpa { "id" : "8a927efb-07bd-48fc-8261-a3f79fb02199", "hpa_rules" : [ { "disable" : false, "id" : "accba651-d3fd-4434-8254-61d30e9e1b45", "name" : "test-rule3", "schedule" : "38 10 * * ?", "target_replicas" : 3, "type" : "CRON_HPA", "operate" : "DELETE" } ] }
响应示例
状态码:200
修改自动扩缩容策略。
{
"hpa_rules" : [ {
"disable" : true,
"hpa_id" : "8521e55e-219f-4769-8a2f-08a78c02182e",
"id" : "accba651-d3fd-4434-8254-61d30e9e1b45",
"name" : "test-rule2",
"schedule" : "0 0 * * ?",
"status" : "CREATING",
"target_replicas" : 1,
"type" : "CRON_HPA"
}, {
"disable" : false,
"hpa_id" : "8521e55e-219f-4769-8a2f-08a78c02182e",
"id" : "7447626f-6c94-4ad7-a527-d3fa04706788",
"name" : "test-rule3",
"schedule" : "38 10 * * ?",
"status" : "CREATING",
"target_replicas" : 3,
"type" : "CRON_HPA"
} ],
"id" : "8521e55e-219f-4769-8a2f-08a78c02182e",
"name" : "cron-hpa-8a927efb-2e23-42e5-92ea-de86b4aba750",
"status" : "ACTIVE",
"target_resource_id" : "8a927efb-2e23-42e5-92ea-de86b4aba750",
"target_resource_type" : "GROUP",
"type" : "CRON_HPA"
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | 修改自动扩缩容策略。 |
| 400 | 请求参数不合法。 |
| 404 | 资源未找到。 |
错误码
请参见错误码。