• 沒有找到結果。

5.4 弹性伸缩策略

5.4.1 创建弹性伸缩策略

功能介绍

创建弹性伸缩策略。

● 伸缩策略定义了伸缩组内实例的扩张和收缩操作。如果执行伸缩策略造成伸缩组 期望实例数与伸缩组内实例数不符,弹性伸缩会自动调整实例资源,以匹配期望 实例数。

● 当前伸缩策略支持告警触发策略,周期触发策略,定时触发策略。

● 在策略执行具体动作中,可设置实例变化的个数,或根据当前实例的百分比数进 行伸缩。

调试

您可以在API Explorer中调试该接口。

URI

POST /autoscaling-api/v1/{project_id}/scaling_policy

5-78 参数说明

参数 是否必选 参数类型 描述

project_id 是 String 项目ID

请求消息

● 请求参数

5-79 请求参数

_name 是 String 伸缩策略名称(1-64个字符),只能包 含中文、字母、数字、下划线或中划

● 告警策略:ALARM(与alarm_id对应)

● 定时策略:SCHEDULED(与 scheduled_policy对应)

● 周期策略:RECURRENCE(与 scheduled_policy对应) alarm_id 否 String 告警ID,即告警规则的ID,当

scaling_policy_type为ALARM时该项必

icy 否 schedu

led_pol icyobject

定时、周期任务策略,当

_action 否 scaling _policy

me 否 Integer 冷却时间,取值范围0-86400,默认为 300,单位是秒。

5-80 scheduled_policy 字段数据结构说明

参数 是否必

参数类 型

描述

launch_time 是 String 触发时间,遵循UTC时间。

● 如果scaling_policy_type为 SCHEDULED,则格式为:YYYY-MM-DDThh:mmZ。

● 如果scaling_policy_type为 RECURRENCE,则格式为:

hh:mm。

recurrence_typ

e 否 String 周期触发类型,scaling_policy_type为 RECURRENCE时该项必选。

● Daily:每天执行一次

● Weekly:每周指定天执行一次。

● Monthly:每月指定天执行一次。

recurrence_val

ue 否 String 周期触发任务数值,

scaling_policy_type为RECURRENCE时 该项必选。

● 类型为Daily时,该字段为null,表示 每天执行

● 类型为Weekly时,该字段取值范围 为1-7,1表示星期日,以此类推,

以“,”分割,例如:1,3,5。

● 类型为Monthly时,该字段取值范围 为1-31,分别表示每月的日期,以

“,”分割,例如:1,10,13,28。

start_time 否 String 周期策略重复执行开始时间,遵循UTC 时间,默认为当前时间。

格式为:YYYY-MM-DDThh:mmZ。

end_time 否 String 周期策略重复执行结束时间,遵循UTC 时间,scaling_policy_type为

RECURRENCE时该项必选。

当为周期类型策略时,不得早于当前时 间和开始时间。

格式为:YYYY-MM-DDThh:mmZ。

5-81 scaling_policy_action 字段数据结构说明

operation 否 String 操作选项,默认为ADD。

● ADD:增加实例

● REMOVE/REDUCE:减少实例

● SET:设置实例数为 instance_num

ber 否 Integer 操作实例个数,默认为1。当配额为默 认配额时,取值范围如下:

● operation为SET时,取值范围为:

0~300。

● operation为ADD或REMOVE/

REDUCE时,取值范围为:1~300。

说明配置参数时,instance_number和 instance_percentage参数只能选其中一个 进行配置。

instance_perce

ntage 否 Integer 操作实例百分比,将伸缩组容量增加、

减少或设置为伸缩组当前实例个数的百

POST https://{Endpoint}/autoscaling-api/v1/{project_id}/scaling_policy { "scaling_policy_name": "as-policy-7a75",

"scaling_policy_action": { "operation": "ADD", "instance_number": 1 },

"cool_down_time": 900, "scheduled_policy": { "launch_time": "16:00", "recurrence_type": "Daily", "start_time": "2015-12-14T03:34Z", "end_time": "2015-12-27T03:34Z"

},

"scaling_policy_type": "RECURRENCE",

"scaling_group_id": "5bc3aa02-b83e-454c-aba1-4d2095c68f8b"

}

响应消息

● 响应参数

5-82 响应参数

参数 参数类型 描述

scaling_policy_id String 伸缩策略ID

● 响应样例

{ "scaling_policy_id": "0h327883-324n-4dzd-9c61-68d03ee191dd"

}

返回值

● 正常 200

● 异常

返回值 说明

400 Bad Request 服务器未能处理请求。

401 Unauthorized 被请求的页面需要用户名和密码。

403 Forbidden 对被请求的页面访问禁止。

404 Not Found 服务器无法找到被请求的页面。

405 Method Not Allowed 请求中指定的方法不被允许。

406 Not Acceptable 服务器生成的响应无法被客户端所接受。

407 Proxy Authentication

Required 用户必须首先使用代理服务器进行验证,

这样请求才会被处理。

408 Request Timeout 请求超出了服务器的等待时间。

409 Conflict 由于冲突,请求无法被完成。

500 Internal Server Error 请求未完成。服务异常。

501 Not Implemented 请求未完成。服务器不支持所请求的功 能。

502 Bad Gateway 请求未完成。服务器从上游服务器收到一 个无效的响应。

503 Service Unavailable 请求未完成。系统暂时异常。

504 Gateway Timeout 网关超时。

错误码

请参考错误码。