summaryrefslogtreecommitdiff
path: root/data/zh_cn/ess/2014-08-28/api-docs.php
diff options
context:
space:
mode:
authorZhineng Li <[email protected]>2026-02-13 10:54:11 +0800
committerZhineng Li <[email protected]>2026-02-13 10:54:11 +0800
commit7347bac4ab7e136157fc94777e6cf87ef9e08599 (patch)
tree0dec367dac6e152161a6f7cc0dba6ebbef1f34a2 /data/zh_cn/ess/2014-08-28/api-docs.php
downloadacs-metadata-full-1.0.0+20260212.tar.gz
acs-metadata-full-1.0.0+20260212.zip
Diffstat (limited to 'data/zh_cn/ess/2014-08-28/api-docs.php')
-rw-r--r--data/zh_cn/ess/2014-08-28/api-docs.php27445
1 files changed, 27445 insertions, 0 deletions
diff --git a/data/zh_cn/ess/2014-08-28/api-docs.php b/data/zh_cn/ess/2014-08-28/api-docs.php
new file mode 100644
index 0000000..6283c5e
--- /dev/null
+++ b/data/zh_cn/ess/2014-08-28/api-docs.php
@@ -0,0 +1,27445 @@
+<?php return [
+ 'version' => '1.0',
+ 'info' => [
+ 'style' => 'RPC',
+ 'product' => 'Ess',
+ 'version' => '2014-08-28',
+ ],
+ 'directories' => [
+ [
+ 'id' => 63491,
+ 'title' => '伸缩组',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateScalingGroup',
+ 'DeleteScalingGroup',
+ 'ModifyScalingGroup',
+ 'EnableScalingGroup',
+ 'DisableScalingGroup',
+ 'SetGroupDeletionProtection',
+ 'AttachLoadBalancers',
+ 'DetachLoadBalancers',
+ 'DetachDBInstances',
+ 'AttachDBInstances',
+ 'AttachVServerGroups',
+ 'DetachVServerGroups',
+ 'DescribeScalingGroups',
+ 'DescribeScalingInstances',
+ 'DescribeScalingActivities',
+ 'DescribeScalingActivityDetail',
+ 'DescribeLimitation',
+ 'DescribeElasticStrength',
+ 'VerifyAuthentication',
+ 'SuspendProcesses',
+ 'ResumeProcesses',
+ 'VerifyUser',
+ ],
+ ],
+ [
+ 'id' => 63513,
+ 'title' => '伸缩配置',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateScalingConfiguration',
+ 'DeleteScalingConfiguration',
+ 'ModifyScalingConfiguration',
+ 'DescribeScalingConfigurations',
+ 'DeactivateScalingConfiguration',
+ ],
+ ],
+ [
+ 'id' => 63519,
+ 'title' => '伸缩规则',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateScalingRule',
+ 'DeleteScalingRule',
+ 'ModifyScalingRule',
+ 'DescribeScalingRules',
+ ],
+ ],
+ [
+ 'id' => 63524,
+ 'title' => '触发任务',
+ 'type' => 'directory',
+ 'children' => [
+ 'AttachInstances',
+ 'DetachInstances',
+ 'ExecuteScalingRule',
+ 'RemoveInstances',
+ ],
+ ],
+ [
+ 'id' => 63529,
+ 'title' => '定时任务',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateScheduledTask',
+ 'DeleteScheduledTask',
+ 'ModifyScheduledTask',
+ 'DescribeScheduledTasks',
+ ],
+ ],
+ [
+ 'id' => 63534,
+ 'title' => '生命周期挂钩',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateLifecycleHook',
+ 'DeleteLifecycleHook',
+ 'ModifyLifecycleHook',
+ 'DescribeLifecycleActions',
+ 'DescribeLifecycleHooks',
+ 'RecordLifecycleActionHeartbeat',
+ 'CompleteLifecycleAction',
+ ],
+ ],
+ [
+ 'id' => 63542,
+ 'title' => '事件通知',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateNotificationConfiguration',
+ 'DeleteNotificationConfiguration',
+ 'ModifyNotificationConfiguration',
+ 'DescribeNotificationConfigurations',
+ 'DescribeNotificationTypes',
+ ],
+ ],
+ [
+ 'id' => 63548,
+ 'title' => '实例',
+ 'type' => 'directory',
+ 'children' => [
+ 'SetInstancesProtection',
+ 'SetInstanceHealth',
+ 'EnterStandby',
+ 'ExitStandby',
+ 'RebalanceInstances',
+ ],
+ ],
+ [
+ 'id' => 63554,
+ 'title' => '地域',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeRegions',
+ ],
+ ],
+ [
+ 'id' => 63556,
+ 'title' => '标签',
+ 'type' => 'directory',
+ 'children' => [
+ 'ListTagResources',
+ 'ListTagKeys',
+ 'ListTagValues',
+ 'TagResources',
+ 'UntagResources',
+ ],
+ ],
+ [
+ 'id' => 63562,
+ 'title' => '报警',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateAlarm',
+ 'DeleteAlarm',
+ 'DisableAlarm',
+ 'EnableAlarm',
+ 'ModifyAlarm',
+ 'DescribeAlarms',
+ ],
+ ],
+ [
+ 'id' => 165918,
+ 'title' => '其他',
+ 'type' => 'directory',
+ 'children' => [
+ 'AttachAlbServerGroups',
+ 'CreateEciScalingConfiguration',
+ 'DeleteEciScalingConfiguration',
+ 'DescribeEciScalingConfigurations',
+ 'DetachAlbServerGroups',
+ 'ModifyEciScalingConfiguration',
+ 'ScaleWithAdjustment',
+ 'ChangeResourceGroup',
+ 'AttachServerGroups',
+ 'DetachServerGroups',
+ 'ModifyInstanceAttribute',
+ 'DescribePatternTypes',
+ 'ApplyScalingGroup',
+ 'ModifyAlertConfiguration',
+ 'DescribeAlertConfiguration',
+ 'SuspendInstanceRefresh',
+ 'ResumeInstanceRefresh',
+ 'CancelInstanceRefresh',
+ 'DescribeInstanceRefreshes',
+ 'RollbackInstanceRefresh',
+ 'StartInstanceRefresh',
+ ],
+ ],
+ ],
+ 'components' => [
+ 'schemas' => [],
+ ],
+ 'apis' => [
+ 'CreateScalingGroup' => [
+ 'summary' => '如果您需要根据业务变动需求与策略自动增加或减少指定类型的实例数量,则可以通过调用API CreateScalingGroup创建伸缩组来自动调整您的业务计算能力(即实例数量)。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92658',
+ 'abilityTreeNodes' => [
+ 'FEATUREessGIWHSQ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的名称,同一地域下伸缩组名称唯一。'."\n"
+ ."\n"
+ .'长度为2~64个英文或中文字符,以数字、大小写英文字母或中文开头,可以包含数字、下划线(_)、短划线(-)和半角句号(.)。'."\n"
+ ."\n"
+ .'默认值为ScalingGroupId的值。 ',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'LaunchTemplateId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例启动模板ID,用于指定伸缩组从实例启动模板获取启动配置信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lt-m5e3ofjr1zn1aw7****',
+ ],
+ ],
+ [
+ 'name' => 'LaunchTemplateVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例启动模板的版本。取值范围: '."\n"
+ .' '."\n"
+ .'- 固定的模板版本号。'."\n"
+ .'- Default:始终使用模板默认版本。'."\n"
+ .'- Latest:始终使用模板最新版本。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Default',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例的ID。创建伸缩组时,将从指定的实例获取所需的配置信息,并自动创建伸缩配置。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-28wt4****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。更多信息,请参见[地域与可用区](~~40654~~)。 ',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'MinSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组内实例台数的最小值,当伸缩组内实例数小于`MinSize`的值时,弹性伸缩会自动创建实例。 '."\n"
+ ."\n"
+ .'> `MinSize`的值必须小于或等于`MaxSize`的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'MaxSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组内实例台数的最大值,当伸缩组内实数大于`MaxSize`的值时,弹性伸缩会自动移出实例。 '."\n"
+ ."\n"
+ .'<props="china">MaxSize的取值范围和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。</props>'."\n"
+ ."\n"
+ .'<props="intl">MaxSize的取值范围和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。</props>'."\n"
+ ."\n"
+ .'<props="partner">MaxSize的取值范围和弹性伸缩使用情况有关,请前往配额中心查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。</props>'."\n"
+ ."\n"
+ .'如果**单个伸缩组可以设置的组内最大实例数**对应的配额值为2000,则`MaxSize`的取值范围为0~2000。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '20',
+ ],
+ ],
+ [
+ 'name' => 'DefaultCooldown',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => ' 一次伸缩活动(添加或移出实例)结束后的一段冷却时间。取值范围:0~86400,单位:秒。'."\n"
+ ."\n"
+ .'冷却时间内,该伸缩组不执行其它的伸缩活动,仅针对云监控报警任务触发的伸缩活动有效。 '."\n"
+ ."\n"
+ .'默认值:300。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '300',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '传统型负载均衡CLB(原SLB)实例ID。取值可以是由多台CLB实例ID组成一个JSON数组,ID之间用半角逗号(,)隔开。'."\n"
+ ."\n"
+ .'<props="china">单个伸缩组可以关联的CLB总数和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以关联的负载均衡实例总数**对应的配额值。</props>'."\n"
+ ."\n"
+ .'<props="intl">单个伸缩组可以关联的CLB总数和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以关联的负载均衡实例总数**对应的配额值。</props>'."\n"
+ ."\n"
+ .'<props="partner">单个伸缩组可以关联的CLB总数和弹性伸缩使用情况有关,请前往配额中心查看**单个伸缩组可以关联的负载均衡实例总数**对应的配额值。</props>',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["lb-bp1u7etiogg38yvwz****", "lb-bp168cqrux9ai9l7f****", "lb-bp1jv3m9zvj22ufxp****"]',
+ ],
+ ],
+ [
+ 'name' => 'DBInstanceIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'RDS实例ID。取值可以是由多台RDS实例ID组成一个JSON数组,ID之间用半角逗号(,)隔开。 '."\n"
+ ."\n"
+ .'<props="china">单个伸缩组可以关联的RDS实例总数和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以关联的RDS实例总数**对应的配额值。</props>'."\n"
+ ."\n"
+ .'<props="intl">单个伸缩组可以关联的RDS实例总数和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以关联的RDS实例总数**对应的配额值。</props>'."\n"
+ ."\n"
+ .'<props="partner">单个伸缩组可以关联的RDS实例总数和弹性伸缩使用情况有关,请前往配额中心查看**单个伸缩组可以关联的RDS实例总数**对应的配额值。</props>',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["rm-bp142f86de0t7****", "rm-bp18l1z42ar4o****", "rm-bp1lqr97h4aqk****"]',
+ ],
+ ],
+ [
+ 'name' => 'RemovalPolicy.1',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定实例移出策略的第一段筛选策略。不允许与RemovalPolicy.2和RemovalPolicy.3取值相同。取值范围:'."\n"
+ ."\n"
+ .'- OldestInstance:移出最早加入伸缩组的ECS实例。'."\n"
+ .'- NewestInstance:移出最新加入伸缩组的ECS实例。'."\n"
+ .'- OldestScalingConfiguration:移出最早伸缩配置创建的ECS实例。'."\n"
+ .'- CustomPolicy:基于自定义缩容策略Function函数移除ECS实例。'."\n"
+ ."\n"
+ .'OldestScalingConfiguration中提到的伸缩配置泛指组内实例配置信息来源,包括伸缩配置和启动模板。CustomPolicy仅支持设置为首位移出策略,当指定CustomPolicy需同时指定CustomPolicyARN参数。'."\n"
+ ."\n"
+ .'> 伸缩组移出ECS实例还受伸缩组的扩缩容策略(MultiAZPolicy)影响。更多信息,请参见[设置移出实例的组合策略](~~254822~~)。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'OldestScalingConfiguration',
+ ],
+ ],
+ [
+ 'name' => 'RemovalPolicy.2',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定实例移出策略的第二段筛选策略,不允许与RemovalPolicy.1和RemovalPolicy.3取值相同。取值范围:'."\n"
+ ."\n"
+ .'- OldestInstance:移出最早加入伸缩组的ECS实例。'."\n"
+ .'- NewestInstance:移出最新加入伸缩组的ECS实例。'."\n"
+ .'- OldestScalingConfiguration:移出最早伸缩配置创建的ECS实例。'."\n"
+ ."\n"
+ .'> 伸缩组移出ECS实例还受伸缩组的扩缩容策略(MultiAZPolicy)影响。更多信息,请参见[设置移出实例的组合策略](~~254822~~)。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'OldestInstance',
+ ],
+ ],
+ [
+ 'name' => 'RemovalPolicy.3',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定实例移出策略的第三段筛选策略,不允许与RemovalPolicy.1和RemovalPolicy.2取值相同。取值范围:'."\n"
+ ."\n"
+ .'- OldestInstance:移出最早加入伸缩组的ECS实例。'."\n"
+ .'- NewestInstance:移出最新加入伸缩组的ECS实例。'."\n"
+ .'- OldestScalingConfiguration:移出最早伸缩配置创建的ECS实例。'."\n"
+ ."\n"
+ .'> 伸缩组移出ECS实例还受伸缩组的扩缩容策略(MultiAZPolicy)影响。更多信息,请参见[设置移出实例的组合策略](~~254822~~)。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'NewestInstance',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '虚拟交换机的ID。指定后,伸缩组的网络类型为专有网络。'."\n"
+ ."\n"
+ .'> 当伸缩组未指定VSwitchId或VSwitchIds.N参数时,伸缩组的网络类型默认为经典网络。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-bp14zolna43z266bq****',
+ ],
+ ],
+ [
+ 'name' => 'MultiAZPolicy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => ' 多可用区伸缩组ECS实例扩缩容策略。取值范围: '."\n"
+ .' '."\n"
+ .'- PRIORITY:先指定的虚拟交换机(VSwitchIds.N)优先级最高。弹性伸缩优先在优先级最高的交换机所在可用区尝试扩缩容,如果无法扩缩容,则自动在下一优先级的交换机所在可用区进行扩缩容。 '."\n"
+ .'- COST_OPTIMIZED:扩容时弹性伸缩按vCPU单价从低到高尝试创建ECS实例,缩容时按vCPU单价从高到低尝试移出ECS实例。当伸缩配置设置了抢占式计费方式的多实例规格时,优先创建对应抢占式实例。您可以继续通过CompensateWithOnDemand参数指定当抢占式实例由于库存等原因无法创建时,是否自动尝试以按量付费的方式创建。 '."\n"
+ ."\n"
+ .' > COST_OPTIMIZED仅在伸缩配置设置了多实例规格或者选用了抢占式实例的情况下生效。 '."\n"
+ .'- BALANCE:在伸缩组指定的多可用区之间均匀分配ECS实例。如果由于库存不足等原因可用区之间变得不平衡,您可以通过API [RebalanceInstance](~~71516~~)平衡资源。 '."\n"
+ .'- COMPOSABLE:是一种组合策略,您可以根据需要自主组合上述多可用区伸缩组ECS实例的扩缩容策略。或者进一步指定参数,对伸缩组的容量进行更精细地控制。'."\n"
+ ."\n"
+ .'默认值:PRIORITY。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PRIORITY',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的健康检查方式。取值范围:'."\n"
+ ."\n"
+ .'- NONE:不做健康检查。'."\n"
+ .'- ECS:对伸缩组内的实例做健康检查(ECS类型和ECI类型的伸缩组均使用本取值开启实例健康检查)。'."\n"
+ .'- LOAD_BALANCER: 根据负载均衡(暂不支持CLB负载均衡类型)健康检查结果判断实例健康状态。'."\n"
+ ."\n\n"
+ .'默认值:ECS。'."\n"
+ ."\n"
+ .'> 如果需要同时开启实例健康检查和负载均衡健康检查,请使用`HealthCheckTypes`参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ ],
+ [
+ 'name' => 'ScalingPolicy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定伸缩组的回收模式。取值范围: '."\n"
+ ."\n"
+ .'- recycle:伸缩组的回收模式为停机回收模式。 '."\n"
+ .'- release:伸缩组的回收模式为释放模式。'."\n"
+ .'- forcerelease:伸缩组的回收模式为强制释放模式。'."\n"
+ ."\n"
+ .' >选择`forcerelease`后,在弹性收缩活动中系统会强制释放`运行中`(Running)的实例。强制释放实例相当于断电操作,会导致该实例内存以及存储中的临时数据被擦除,数据无法恢复,请您谨慎选择。'."\n"
+ ."\n"
+ .'- forcerecycle:伸缩组的回收模式为强制停机回收模式。'."\n"
+ ."\n"
+ .' >选择`forcerecycle`后,在弹性收缩活动中系统会强制关机`运行中`(Running)的实例。强制关机相当于断电操作,会导致该实例内存以及存储中的临时数据被擦除,数据无法恢复,请您谨慎选择。'."\n"
+ ."\n"
+ .'ScalingPolicy指定伸缩组的回收模式,但实例被移出伸缩组时的具体动作,由RemoveInstances的RemovePolicy参数决定,更多信息,请参见[RemoveInstances](~~25955~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'recycle',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'OnDemandBaseCapacity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所需要按量实例个数的最小值,取值范围:0~1000。当按量实例个数少于该值时,将优先创建按量实例。 '."\n"
+ ."\n"
+ .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ ],
+ [
+ 'name' => 'OnDemandPercentageAboveBaseCapacity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组满足最小按量实例数(OnDemandBaseCapacity)要求后,超出的实例中按量实例应占的比例,取值范围:0~100。'."\n"
+ ."\n"
+ .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '20',
+ ],
+ ],
+ [
+ 'name' => 'SpotInstanceRemedy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启补齐抢占式实例。开启后,当收到抢占式实例将被回收的系统消息时,伸缩组将尝试创建新的实例,替换掉将被回收的抢占式实例。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'CompensateWithOnDemand',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '当`MultiAZPolicy`取值为`COST_OPTIMIZED`时,如果因价格、库存等原因无法创建足够的抢占式实例,是否允许自动尝试创建按量实例满足ECS实例数量要求。取值范围:'."\n"
+ ."\n"
+ .'- true:允许。'."\n"
+ .'- false:不允许。'."\n"
+ ."\n"
+ .'默认值:true。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'SpotInstancePools',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定可用实例规格的个数,伸缩组将按成本最低的多个规格均衡创建抢占式实例。取值范围:1~10。'."\n"
+ ."\n"
+ .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为2。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ ],
+ ],
+ [
+ 'name' => 'DesiredCapacity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组内ECS实例的期望数量,伸缩组会自动将ECS实例数量维持在期望实例数。取值不得大于MaxSize,且不得小于MinSize。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ ],
+ ],
+ [
+ 'name' => 'GroupDeletionProtection',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启伸缩组删除保护。取值范围:'."\n"
+ ."\n"
+ .'- true:开启伸缩组删除保护,此时不能删除该伸缩组。'."\n"
+ .'- false:关闭伸缩组删除保护。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'GroupType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组管理的实例类型。取值范围:'."\n"
+ ."\n"
+ .'- ECS:伸缩组内管理的伸缩实例为ECS实例。'."\n"
+ ."\n"
+ .'- ECI:伸缩组内管理的伸缩实例为ECI实例。'."\n"
+ ."\n"
+ .'默认值:ECS。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ ],
+ [
+ 'name' => 'ContainerGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECI实例ID,即容器组ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'eci-uf6fonnghi50u374****',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchIds',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '一台或多台虚拟交换机的ID。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。指定后,伸缩组的网络类型为专有网络。'."\n"
+ ."\n"
+ .'指定多台虚拟交换机时:'."\n"
+ ."\n"
+ .'- 所属的VPC必须相同。'."\n"
+ ."\n"
+ .'- 所属的可用区可以不同。'."\n"
+ ."\n"
+ .'- 虚拟交换机的优先级按照数字升序排序,1表示最高优先级。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动选择下一优先级的虚拟交换机创建ECS实例。'."\n"
+ ."\n"
+ .'> 当伸缩组未指定VSwitchId或VSwitchIds参数时,伸缩组的网络类型默认为经典网络。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '一台或多台虚拟交换机的ID。如果您使用了VSwitchIds.N参数,VSwitchId参数将被忽略。指定后,伸缩组的网络类型为专有网络。'."\n"
+ ."\n"
+ .'指定多台虚拟交换机时:'."\n"
+ ."\n"
+ .'- 所属的VPC必须相同。'."\n"
+ ."\n"
+ .'- 所属的可用区可以不同。'."\n"
+ ."\n"
+ .'- 虚拟交换机的优先级按照数字升序排序,1表示最高优先级。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动选择下一优先级的虚拟交换机创建ECS实例。'."\n"
+ ."\n"
+ .'> 当伸缩组未指定VSwitchId或VSwitchIds.N参数时,伸缩组的网络类型默认为经典网络。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-bp14zolna43z266bq****',
+ ],
+ 'required' => false,
+ 'example' => 'vsw-bp14zolna43z266bq****',
+ 'maxItems' => 8,
+ ],
+ ],
+ [
+ 'name' => 'LifecycleHook',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '生命周期挂钩信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '生命周期挂钩信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DefaultResult' => [
+ 'description' => '等待状态结束后的下一步动作。取值范围:'."\n"
+ ."\n"
+ .'- CONTINUE:继续响应弹性扩张活动或者继续响应弹性收缩活动。'."\n"
+ .'- ABANDON:直接释放弹性扩张活动创建出来的ECS实例或者直接将弹性收缩活动中的ECS实例从伸缩组移除。'."\n"
+ ."\n"
+ .'当伸缩组发生弹性收缩活动(SCALE_IN)并触发多个生命周期挂钩时,DefaultResult取值为ABANDON的生命周期挂钩触发的等待状态结束时,会提前结束其它对应的等待状态。其他情况下,下一步动作均以最后一个结束等待状态的下一步动作为准。'."\n"
+ ."\n"
+ .'默认值:CONTINUE。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CONTINUE',
+ ],
+ 'LifecycleHookName' => [
+ 'description' => '生命周期挂钩名称,指定后不支持修改,未指定时默认与生命周期挂钩ID相同。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lifecyclehook****',
+ ],
+ 'LifecycleTransition' => [
+ 'description' => '生命周期挂钩适用的伸缩活动类型,取值范围:'."\n"
+ ."\n"
+ .'- SCALE_OUT:伸缩组弹性扩张活动。'."\n"
+ .'- SCALE_IN:伸缩组弹性收缩活动。'."\n"
+ ."\n"
+ .'> 若伸缩组指定生命周期挂钩,此参数必选,其他相关参数可选。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SCALE_OUT',
+ ],
+ 'NotificationMetadata' => [
+ 'description' => '伸缩活动的等待状态的固定字符串信息。参数长度不能超过128个字符。弹性伸缩每次推送消息到通知对象时,会同时发送您预先指定的NotificationMetadata参数值,便于管理和标记不同类别的通知信息。当您同时指定了NotificationArn参数时,NotificationMetadata参数方可生效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test',
+ ],
+ 'NotificationArn' => [
+ 'description' => '生命周期挂钩通知对象标识符,支持轻量消息队列(原 MNS)的队列或主题,参数取值格式:acs:ess:{region}:{account-id}:{resource-relative-id}。'."\n"
+ ."\n"
+ .'- region:伸缩组所在的地域。'."\n"
+ .'- account-id:阿里云账号ID。'."\n"
+ ."\n"
+ .'例如:'."\n"
+ ."\n"
+ .'- MNS队列:acs:ess:{region}:{account-id}:queue/{queuename}。'."\n"
+ .'- MNS主题:acs:ess:{region}:{account-id}:topic/{topicname}。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs:ess:cn-hangzhou:1111111111:queue/queue2',
+ ],
+ 'HeartbeatTimeout' => [
+ 'description' => '生命周期挂钩为伸缩组活动设置的等待时间,等待状态超时后会执行下一步动作。取值范围:30~21600,单位:秒。'."\n"
+ ."\n"
+ .'创建了生命周期挂钩后,您可以调用[RecordLifecycleActionHeartbeat](~~73846~~)延长ECS实例的等待时间,也可以调用[CompleteLifecycleAction](~~73847~~)提前结束伸缩活动的等待状态。'."\n"
+ ."\n"
+ .'默认值:600。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '600',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'VServerGroup',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '伸缩组关联虚拟服务器组的信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组关联虚拟服务器组的信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'VServerGroupAttribute' => [
+ 'description' => '后端服务器组属性。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '后端服务器组属性。',
+ 'type' => 'object',
+ 'properties' => [
+ 'VServerGroupId' => [
+ 'description' => '虚拟服务器组ID。'."\n"
+ ."\n"
+ .'更多信息,请参见[AttachVServerGroups](~~98983~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rsp-bp1443g77****',
+ ],
+ 'Weight' => [
+ 'description' => '弹性伸缩将实例添加到虚拟服务器组后,实例作为后端服务器的权重。权重越高,实例将被分配到越多的访问请求。如果权重为0,则实例不会收到访问请求。取值范围:0~100。默认值:50。'."\n"
+ ."\n"
+ .'更多信息,请参见[AttachVServerGroups](~~98983~~)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ 'Port' => [
+ 'description' => '弹性伸缩将实例添加到虚拟服务器组后,实例使用的端口号,取值范围:1~65535。'."\n"
+ ."\n"
+ .'更多信息,请参见[AttachVServerGroups](~~98983~~)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '22',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ 'LoadBalancerId' => [
+ 'description' => '虚拟服务器组所属传统型负载均衡CLB(原SLB)实例的ID。'."\n"
+ ."\n"
+ .'更多信息,请参见[AttachVServerGroups](~~98983~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lb-bp1u7etiogg38yvwz****',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '伸缩组的标签信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组的标签信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '伸缩组的标签键。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Department',
+ ],
+ 'Value' => [
+ 'description' => '伸缩组的标签值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Finance',
+ ],
+ 'Propagate' => [
+ 'description' => '标识该标签是否为可传播标签,取值范围:'."\n"
+ .'- true:伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n"
+ .'- false:伸缩组上的标签不会传播到实例上。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ ],
+ [
+ 'name' => 'LaunchTemplateOverride',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '启动模板信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '启动模板信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,请同时指定本参数和LaunchTemplateOverride.N.WeightedCapacity。'."\n"
+ ."\n"
+ .'本参数用于指定实例规格,会覆盖启动模板中的实例规格。您可以指定N个本参数,扩展启动模板支持N个实例规格。N的取值范围:1~20。'."\n"
+ .'> 仅当LaunchTemplateId参数指定了启动模板时,本参数生效。'."\n"
+ ."\n"
+ .'InstanceType的取值范围:在售的ECS实例规格,请参见[实例规格族](~~25378~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.c5.xlarge',
+ ],
+ 'WeightedCapacity' => [
+ 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,在指定LaunchTemplateOverride.N.InstanceType后,再指定本参数。两个参数一一对应,N需要保持一致。'."\n"
+ ."\n"
+ .'本参数用于指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。'."\n"
+ ."\n"
+ .'由于每个实例规格的vCPU个数、内存大小等性能指标会有差异,您可以根据自身需求,给不同的实例规格配置不同的权重。'."\n"
+ ."\n"
+ .' 例如:'."\n"
+ ."\n"
+ .'- 当前容量:0。'."\n"
+ .'- 期望容量:6。'."\n"
+ .'- ecs.c5.xlarge规格容量:4。'."\n"
+ ."\n"
+ .'为满足期望容量,伸缩组将为用户扩容2台ecs.c5.xlarge实例。'."\n"
+ ."\n"
+ .'>扩容时伸缩组的容量不得超过最大容量(MaxSize)与实例规格的最大权重之和。'."\n"
+ ."\n"
+ .'WeightedCapacity的取值范围:1~500。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ 'SpotPriceLimit' => [
+ 'description' => '本参数用于指定实例启动模板覆盖规格(即`LaunchTemplateOverride.N.InstanceType`)的竞价价格上限。您可以指定N个该参数,扩展启动模板支持N个实例规格。N的取值范围:1~20。'."\n"
+ .'>仅当`LaunchTemplateId`参数指定了启动模板时,该参数才生效。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.025',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'AlbServerGroup',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ALB服务器组的相关信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ALB服务器组的相关信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AlbServerGroupId' => [
+ 'description' => 'ALB服务器组ID。'."\n"
+ ."\n"
+ .'N为ALB服务器组的编号。一个伸缩组支持关联的ALB服务器组数量有限,如需查看或手动申请提升配额值,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sgp-ddwb0y0g6y9bjm****',
+ ],
+ 'Weight' => [
+ 'description' => '弹性伸缩将实例添加到ALB服务器组后,实例作为后端服务器的权重。权重越高,实例将被分配到越多的访问请求。如果权重为0,则实例不会收到访问请求。取值范围:0~100。'."\n"
+ ."\n"
+ .'N为ALB服务器组的编号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ 'Port' => [
+ 'description' => '弹性伸缩将实例添加到ALB服务器组后,实例使用的端口号,取值范围:1~65535。'."\n"
+ ."\n"
+ .'N为ALB服务器组的编号。'."\n"
+ ."\n"
+ .'> 如果N相同,Port不同,系统会默认向伸缩组关联多个不同Port的该ALB服务器组。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '22',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'ServerGroup',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '负载均衡服务器组的相关信息集合。'."\n"
+ .'>不支持同时在`AlbServerGroups`和`ServerGroups`中设置相同的服务器组信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡服务器组的相关信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServerGroupId' => [
+ 'description' => '服务器组的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sgp-5yc3bd9lfyh*****',
+ ],
+ 'Type' => [
+ 'description' => '服务器组类型。取值范围:'."\n"
+ ."\n"
+ .'- ALB:表示应用型负载均衡(Application Load Balancer)。'."\n"
+ .'- NLB:表示网络型负载均衡(Network Load Balancer)。'."\n"
+ .'- GWLB: 网关型负载均衡 GWLB(Gateway Load Balancer)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ALB',
+ ],
+ 'Weight' => [
+ 'description' => '弹性伸缩将实例添加到服务器组后,实例作为后端服务器的权重。取值范围:0~100。'."\n"
+ ."\n"
+ .'权重越高,实例将被分配到越多的访问请求。如果权重为0,则实例不会收到访问请求。'."\n"
+ ."\n"
+ .'> ALB和NLB类型负载均衡该参数为必填参数,GWLB类型负载均衡不能设置该参数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ 'Port' => [
+ 'description' => '弹性伸缩将实例添加到服务器组后,实例使用的端口号。取值范围:1~65535。'."\n"
+ ."\n"
+ .'> ALB和NLB类型负载均衡该参数为必填参数,GWLB类型负载均衡不能设置该参数且默认值为6081。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '22',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'AzBalance',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的容量是否在多个可用区间均衡分布(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效),取值范围:'."\n"
+ .'- true:伸缩组的容量在多个可用区间均衡分布。'."\n"
+ .'- false:伸缩组的容量不在多个可用区间均衡分布。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'AllocationStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '容量分配策略,决定了伸缩组如何选择可用的实例规格类型满足容量。容量分布策略同时对按量和抢占式容量生效(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。取值范围:'."\n"
+ ."\n"
+ .'- priority:按照配置的实例规格的顺序创建实例。'."\n"
+ .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n"
+ ."\n"
+ .'默认值:priority。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'priority',
+ ],
+ ],
+ [
+ 'name' => 'SpotAllocationStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '抢占式容量分布策略。您可以通过该参数单独指定抢占式容量的分布策略(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。取值范围:'."\n"
+ ."\n"
+ .'- priority:按照配置的实例规格的顺序创建实例。'."\n"
+ .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n"
+ ."\n"
+ .'默认值:priority。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lowestPrice',
+ ],
+ ],
+ [
+ 'name' => 'MaxInstanceLifetime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例在伸缩组中存活的最大时间。单位为秒。'."\n"
+ ."\n"
+ .'取值范围:`[86400, Integer.maxValue]`。'."\n"
+ ."\n"
+ .'默认值:null。'."\n"
+ .'>ECI类型的伸缩组或停机不收费的伸缩组不支持设置该参数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => 'null',
+ ],
+ ],
+ [
+ 'name' => 'CustomPolicyARN',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '自定义缩容策略Function函数ARN。仅当RemovalPolicies配置第一个移除策略为CustomPolicy时生效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs:fc:cn-zhangjiakou:16145688****:services/ess_custom_terminate_policy.LATEST/functions/ess_custom_terminate_policy_name',
+ ],
+ ],
+ [
+ 'name' => 'ResourceGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '新创建的伸缩组所属的资源组ID。'."\n"
+ .'>将新创建的伸缩组归属到指定的资源组中。如果不指定该参数,则归属为默认资源组。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rg-123****',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerConfig',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '负载均衡CLB(原SLB)配置列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡CLB(原SLB)配置列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'LoadBalancerId' => [
+ 'description' => '负载均衡CLB(原SLB)实例的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '147b46d767c-cn-qingdao-cm5****',
+ ],
+ 'Weight' => [
+ 'description' => '弹性伸缩将实例添加到负载均衡CLB(原SLB)服务器组后,实例作为后端服务器的权重。权重越高,实例将被分配到越多的访问请求。如果权重为0,则实例不会收到访问请求。'."\n"
+ ."\n"
+ .'取值范围:0~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckTypes',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '伸缩组的健康检查方式。'."\n"
+ .'> 使用此参数可以设置多个值,开启多个健康检查选项。如果设置了`HealthCheckType`参数,则本参数将被忽略。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组的健康检查方式列表。取值范围:'."\n"
+ ."\n"
+ .'- NONE:不做健康检查。'."\n"
+ .'- ECS:对伸缩组内的实例做健康检查(ECS类型和ECI类型的伸缩组均使用本取值开启实例健康检查)。'."\n"
+ .'- LOAD_BALANCER: 根据负载均衡(暂不支持负载均衡CLB类型)健康检查结果判断实例健康状态。'."\n"
+ ."\n"
+ .'默认值:ECS。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'DBInstance',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '伸缩组关联的数据库列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组关联的数据库配置信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DBInstanceId' => [
+ 'description' => '数据库实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rm-m5eqju85s45mu0***',
+ ],
+ 'Type' => [
+ 'description' => '数据库类型。取值范围:'."\n"
+ ."\n"
+ .'- RDS。'."\n"
+ .'- Redis。'."\n"
+ .'- MongoDB。'."\n"
+ ."\n"
+ .'默认值:RDS。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'RDS',
+ ],
+ 'AttachMode' => [
+ 'description' => '伸缩组与数据库关联方式。取值范围:'."\n"
+ ."\n"
+ .'- SecurityIp :修改IP白名单模式,通过将扩容实例自动添加到数据库IP白名单(目前仅RDS数据库支持)。'."\n"
+ .'- SecurityGroup:安全组模式,通过将伸缩配置安全组添加至数据库安全组白名单,实现安全组下实例数据库访问。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SecurityIp',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'StopInstanceTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '缩容流程中等待ECS实例停机成功的超时时间,单位为秒。'."\n"
+ .'取值范围:30~240。'."\n"
+ ."\n"
+ .'> - 该参数仅在 ScalingPolicy = release 模式下的缩容流程里生效。 '."\n"
+ .'- 如果设置了该参数,系统会最长等待StopInstanceTimeout时间将实例停机成功,超时后无论实例是否成功停机都会继续缩容。 '."\n"
+ .'- 如果没有设置该参数,系统会长时间等待实例停机成功,只有实例停机成功后才继续缩容,停机失败时,缩容流程会回滚,缩容失败。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'CapacityOptions',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '容量选项。',
+ 'type' => 'object',
+ 'properties' => [
+ 'OnDemandBaseCapacity' => [
+ 'description' => '已有伸缩组内所需要的按量实例数的最小值,当伸缩组内按量实例个数少于该值时,系统将优先创建按量实例。取值范围:0~1000。'."\n"
+ ."\n"
+ .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ 'OnDemandPercentageAboveBaseCapacity' => [
+ 'description' => '伸缩组满足最小按量实例数`OnDemandBaseCapacity`要求后,超出的实例中按量实例应占的比例。取值范围:0~100。'."\n"
+ ."\n"
+ .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '20',
+ ],
+ 'CompensateWithOnDemand' => [
+ 'description' => '当`MultiAZPolicy`取值为`COST_OPTIMIZED`时,如果因价格、库存等原因无法创建足够的抢占式实例,是否允许自动尝试创建按量实例满足ECS实例数量要求。取值范围:'."\n"
+ ."\n"
+ .'- true:允许。'."\n"
+ .'- false:不允许。'."\n"
+ ."\n"
+ .'默认值:true。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'SpotAutoReplaceOnDemand' => [
+ 'description' => '当开启`CompensateWithOnDemand`后,如果按量比例超过`OnDemandPercentageAboveBaseCapacity`比例时,会尝试使用spot替换按量容量。常见场景`CompensateWithOnDemand`因Spot库存或价格原因导致Spot降级按量实例,为避免按量实例长时间存在,尝试使用Spot替换多余的按量容量。取值范围:'."\n"
+ ."\n"
+ .'- true:允许。'."\n"
+ .'- false:不允许。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'PriceComparisonMode' => [
+ 'description' => '伸缩组成本优化策略的比价模式。取值范围:'."\n"
+ ."\n"
+ .'- PricePerUnit:使用每单位容量价格比价。'."\n"
+ ."\n"
+ .' 实例在伸缩组中容量大小等于为实例规格设置的权重,默认为1,即一台ECS所占容量为1。'."\n"
+ ."\n"
+ .'- PricePerVCpu:使用每单位vCpu价格进行比价。'."\n"
+ ."\n"
+ .'默认值:PricePerUnit。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PricePerUnit',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'BalanceMode',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡模式',
+ 'description' => '可用区均衡模式,仅当开启可用区均衡模式时生效。取值范围:'."\n"
+ .' '."\n"
+ .'- BalancedBestEffort:'."\n"
+ .'当某可用区资源创建失败时,会降级至其他可用区,保障资源的尽力交付。'."\n"
+ ."\n"
+ .'- BalancedOnly:'."\n"
+ .'当某可用区资源创建失败时,不会降级至其他可用区,扩容活动部分成功,避免资源在不同可用区过度不均衡。'."\n"
+ ."\n"
+ .'默认值:BalancedBestEffort。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'BalancedBestEffort',
+ ],
+ ],
+ [
+ 'name' => 'AutoRebalance',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '自动重新平衡设置',
+ 'description' => '是否开启伸缩组自动均衡,仅当可用区均衡伸缩组开启了BalancedOnly才生效。取值范围:'."\n"
+ .'- false:不开启伸缩组自动均衡。'."\n"
+ .'- true:开启伸缩组自动均衡时,伸缩组会自动检测可用区见容量,当可用区容量不均衡时,会主动进行可用区扩缩,进行可用区容量再均衡。'."\n"
+ ."\n"
+ .'默认值: false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'ScalingGroupId' => [
+ 'description' => '伸缩组ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp14wlu85wrpchm0****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 404 => [
+ [
+ 'errorCode' => 'ResourceNotAvailable.VPCNetwork',
+ 'errorMessage' => 'The specified zone does not support vpc network or sold out.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingGroupId\\": \\"asg-bp14wlu85wrpchm0****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateScalingGroupResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <ScalingGroupId>asg-bp14wlu85wrpchm0****</ScalingGroupId>\\n</CreateScalingGroupResponse>","errorExample":""}]',
+ 'title' => '创建一个伸缩组',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'伸缩组是具有相同应用场景的ECS实例的集合。 '."\n"
+ ."\n"
+ .'<props="china">一个地域下支持创建的伸缩组数量和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**伸缩组总数**对应的配额值。</props>'."\n"
+ ."\n"
+ .'<props="intl">一个地域下支持创建的伸缩组数量和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**伸缩组总数**对应的配额值。</props>'."\n"
+ ."\n"
+ .'<props="partner">一个地域下支持创建的伸缩组数量和弹性伸缩使用情况有关,请前往配额中心查看**伸缩组总数**对应的配额值。</props>'."\n"
+ ."\n\n"
+ .'伸缩组创建成功后不会立即生效。您需要先调用[EnableScalingGroup](~~25939~~)接口启用伸缩组,伸缩组才能触发伸缩活动和执行伸缩规则。 '."\n"
+ ."\n"
+ .'伸缩组、关联的传统型负载均衡CLB(原SLB)实例和关联的RDS实例必须在同一个地域。更多信息,请参见[地域与可用区](~~40654~~)。 '."\n"
+ ."\n"
+ .'如果您为伸缩组关联了CLB实例,伸缩组会自动将加入伸缩组的ECS实例添加到CLB实例的后端服务器组。您可以指定ECS实例需要加入的服务器组,支持默认服务器组和虚拟服务器,具体说明如下:'."\n"
+ ."\n"
+ .'>如果您同时指定了默认服务器组和多个虚拟服务器组,ECS实例会同时添加至这些服务器组中。'."\n"
+ ."\n"
+ .'- 默认服务器组:用来接收前端请求的ECS实例,如果监听没有设置虚拟服务器组或主备服务器组,默认将请求转发至默认服务器组中的ECS实例。'."\n"
+ .'- 虚拟服务器组:当您需要将不同的请求转发到不同的后端服务器上,或着需要通过域名和URL进行请求转发时,可以选择使用虚拟服务器组。'."\n"
+ ."\n"
+ .'ECS实例在加入CLB实例的后端服务器组后,权重默认为50。CLB实例需要满足以下条件: '."\n"
+ ."\n"
+ .'- 该CLB实例的状态必须是active,您可以调用[DescribeLoadBalancers](~~27582~~)接口查看指定CLB实例的状态。 '."\n"
+ ."\n"
+ .'- 该CLB实例配置的所有监听端口必须开启健康检查,否则伸缩组创建失败。 '."\n"
+ ."\n"
+ .'如果您为伸缩组关联了应用型负载均衡ALB服务器组、网络型负载均衡NLB服务器组或网关型负载均衡GWLB服务器组,伸缩组会自动将加入伸缩组的ECS实例添加为ALB服务器组、NLB服务器组或GWLB服务器组的后端服务器,处理ALB实例、NLB实例或GWLB实例分发的访问请求。您可以指定多个ALB服务器组、NLB服务器组或GWLB服务器组,但服务器组必须与伸缩组属于同一个VPC。更多信息,请参见[AttachAlbServerGroups](~~266800~~)或[AttachServerGroups](~~600535~~)。'."\n"
+ ."\n\n"
+ .'如果您为伸缩组关联了RDS实例,伸缩组会自动将加入伸缩组的ECS实例的内网IP添加到RDS实例的访问白名单。RDS实例需要满足以下条件: '."\n"
+ ."\n"
+ .'- 该RDS实例的状态必须是Running,您可以调用[DescribeDBInstances](~~26232~~)接口查看指定RDS实例的状态。'."\n"
+ ."\n"
+ .'- 该RDS实例访问白名单的IP数不能超过上限值。更多信息,请参见RDS文档[设置白名单](~~43185~~)。'."\n"
+ ."\n"
+ .'如果伸缩组的`MultiAZPolicy`设置为`COST_OPTIMIZED`:'."\n"
+ ."\n"
+ .'- 当指定OnDemandBaseCapacity、OnDemandPercentageAboveBaseCapacity和SpotInstancePools参数时,即指定成本优化策略下的实例分配方式,在扩缩容时将优先满足该实例分配方式。'."\n"
+ ."\n"
+ .'- 当不指定OnDemandBaseCapacity、OnDemandPercentageAboveBaseCapacity或SpotInstancePools参数时,成本优化策略下将仅按照成本最低的方式进行实例创建。'."\n"
+ ."\n"
+ .'如果您为伸缩组设置了可传播标签,即`Tag.N.Propagate`为`true`时:'."\n"
+ ."\n"
+ .'- 伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n"
+ .'- 如果您在伸缩配置中指定了实例标签,并且选择将伸缩组的标签传播到该实例,则所有标签都会同时存在。'."\n"
+ .'- 如果伸缩配置中的标签和伸缩组中的可传播标签指定了相同的标签键,则优先使用伸缩配置中的标签值。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|IncorrectDBInstanceStatus|The current status of DB instance "XXX" does not support this action.|指定RDS实例的状态必须是Running。|'."\n"
+ .'|400|IncorrectLoadBalancerHealthCheck|The current health check type of specified load balancer does not support this action.|指定的CLB实例必须开启健康检查。|'."\n"
+ .'|400|IncorrectLoadBalancerStatus|The current status of the specified load balancer does not support this action.|指定CLB实例的状态必须是active。|'."\n"
+ .'|400|IncorrectVSwitchStatus|The current status of virtual switch does not support this operation.|虚拟交换机不可用,无法创建ECS实例。|'."\n"
+ .'|400|InvalidDBInstanceId. RegionMismatch|DB instance "XXX" and the specified scaling group are not in the same Region.|指定的RDS实例与伸缩组必须在同一地域。|'."\n"
+ .'|400|InvalidLoadBalancerId.IncorrectAddressType|The current address type of specified load balancer does not support this action.|指定虚拟交换机后,CLB实例为私网类型。|'."\n"
+ .'|400|InvalidLoadBalancerId.IncorrectInstanceNetworkType|The network type of the instance in specified Load Balancer does not support this action.|指定的CLB实例内搭载的ECS实例的网络类型与伸缩组的网络类型必须一致。|'."\n"
+ .'|400|InvalidLoadBalancerId.RegionMismatch|The specified Load Balancer and the specified scaling group are not in the same Region.|指定的CLB实例与伸缩组必须在同一地域。|'."\n"
+ .'|400|InvalidLoadBalancerId.VPCMismatch|The specified virtual switch and the instance in specified Load Balancer are not in the same VPC.|伸缩组内的CLB实例搭载的ECS实例与虚拟交换机应该在同一个VPC中。|'."\n"
+ .'|400|InvalidParameter|The specified value of parameter "ScalingPolicy" is not valid.|指定的回收模式参数不存在。|'."\n"
+ .'|400|InvalidParameter.Conflict|The value of parameter &lt;parameter name&gt; and parameter &lt;parameter name&gt; are conflict.|指定的MinSize不能大于MaxSize。|'."\n"
+ .'|400|InvalidScalingGroupName.Duplicate|The specified value of parameter &lt;parameter name&gt; is duplicated.|伸缩组名已存在。|'."\n"
+ .'|400|QuotaExceeded.DBInstanceSecurityIP|Security IP quota exceeded in DB instance "XXX".|指定的RDS实例访问白名单的IP个数达到上限。|'."\n"
+ .'|400|QuotaExceeded.PrivateIpAddress|Private IP address quota exceeded in the specified virtual switch.|虚拟交换机无法再分配多余的私有IP地址。|'."\n"
+ .'|400|QuotaExceeded.ScalingGroup|Scaling group quota exceeded.|用户的伸缩组使用个数达到上限。|'."\n"
+ .'|400|QuotaExceeded.VPCInstance|Instance quota exceeded in the specified VPC.|该VPC内的实例数超过数量限制。|'."\n"
+ .'|404|InvalidDBInstanceId.NotFound|DB instance "XXX" does not exist.|指定的RDS实例不存在。|'."\n"
+ .'|404|InvalidLoadBalancerId.NotFound|The specified Load Balancer does not exist.|指定的CLB实例不存在。|'."\n"
+ .'|404|InvalidRegionId.NotFound|The specified region does not exist.|指定的地域不存在。|'."\n"
+ .'|404|InvalidVSwitchId.NotFound|The specified virtual switch does not exist.|指定的虚拟交换机不存在。|'."\n"
+ .'|400|LaunchTemplateVersionSet.NotFound|The specific version of launch template is not exist.|实例启动模板指定版本不存在。|'."\n"
+ .'|400|LaunchTemplateSet.NotFound|The specified launch template set is not found.|指定实例启动模板不存在。|'."\n"
+ .'|400|TemplateMissingParameter.ImageId|The input parameter "ImageId" that is mandatory for processing this request is not supplied.|实例启动模板指定版本缺少镜像信息。|'."\n"
+ .'|400|TemplateMissingParameter.InstanceTypes|The input parameter "InstanceTypes" that is mandatory for processing this request is not supplied.|实例启动模板指定版本缺少实例规格信息。|'."\n"
+ .'|400|TemplateMissingParameter.SecurityGroup|The input parameter "SecurityGroup" that is mandatory for processing this request is not supplied.|实例启动模板指定版本缺少安全组信息。|'."\n"
+ .'|400|TemplateVersion.NotNumber|The input parameter "LaunchTemplateVersion" is supposed to be a string representing the version number.|指定实例启动模板固定版本号为非数字。'."\n"
+ .'|400|AlbServerGroup.NotExist|The ServerGroup "%s" do(es) not exist.|账号下不存在指定的ALB服务器组。|',
+ ],
+ 'DeleteScalingGroup' => [
+ 'summary' => '删除一个伸缩组。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '92667',
+ 'abilityTreeNodes' => [
+ 'FEATUREess909XOL',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'ForceDelete',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '如果伸缩组存在ECS实例/ECI实例或正在进行伸缩活动,是否强制删除伸缩组并移出和释放ECS实例/ECI实例。取值范围:'."\n"
+ ."\n"
+ .'- true:强制删除伸缩组。会先停止伸缩组,拒绝接收新的伸缩活动请求,然后等待已有的伸缩活动完成,最后将伸缩组内所有ECS实例/ECI实例移出伸缩组(手动添加的ECS实例/ECI实例会被移出伸缩组,弹性伸缩自动创建的ECS实例/ECI实例会被自动删除)并删除伸缩组。 '."\n"
+ ."\n"
+ .'- false:不强制删除伸缩组。满足以下两个条件时,会先停止伸缩组,然后再删除伸缩组。'."\n"
+ ."\n"
+ .' - 伸缩组没有任何伸缩活动正在执行。 '."\n"
+ ."\n"
+ .' - 伸缩组当前的ECS实例/ECI实例数量(Total Capacity)为0。 '."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteScalingGroupResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</DeleteScalingGroupResponse>","errorExample":""}]',
+ 'title' => '删除一个伸缩组',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'删除伸缩组需注意以下信息:'."\n"
+ ."\n"
+ .'- 删除伸缩组会删除相关联的伸缩配置、伸缩规则、伸缩活动、伸缩请求的信息。'."\n"
+ ."\n"
+ .'- 删除伸缩组不会删除定时任务、云监控报警任务、负载均衡实例以及RDS实例。'."\n"
+ ."\n"
+ .'- 如果创建伸缩组时设置了`开启伸缩组保护`功能,则您不能在控制台或者通过API删除该伸缩组,可以有效避免误删除伸缩组的操作。'."\n"
+ ."\n"
+ .'- 创建ECS实例时开启了`实例释放保护`功能,并加入伸缩组进行托管后,如果您需要删除伸缩组,则手动添加的ECS实例会被强制移出该伸缩组,自动创建的ECS实例也会随该伸缩组一起被自动释放掉。'."\n"
+ ."\n"
+ .' >删除伸缩组前,为了避免伸缩组中的ECS实例被强制释放,即使您单独为ECS实例开启了实例释放保护功能,仍然需要在伸缩组中设置伸缩组内ECS实例的保护功能,使其在删除伸缩组时不会被强制释放。具体操作,请参见[SetInstancesProtection](~~459342~~)。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组在该用户账号下不存在。|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|您并未向弹性伸缩完整授权OpenAPI接口。|'."\n"
+ .'|400|InstanceInUse|You cannot delete a scaling configuration or scaling group while there is an instance associated with it.|指定的伸缩组中存在ECS实例/ECI实例。',
+ ],
+ 'ModifyScalingGroup' => [
+ 'summary' => '修改一个伸缩组。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92709',
+ 'abilityTreeNodes' => [
+ 'FEATUREessXN6KX4',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待修改伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asg-bp1ffogfdauy0jw0****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的名称,同一地域下伸缩组名称唯一。长度为2~64个字符,以数字、大小英文字母或中文开头,可以包含数字、下划线(_)、短划线(-)和半角句号(.)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'MinSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组内ECS实例或ECI实例台数的最小值,当伸缩组内ECS或ECI实例数小于`MinSize`时,弹性伸缩会自动创建ECS实例或ECI实例。'."\n"
+ ."\n"
+ .'> `MinSize`的值必须小于或等于`MaxSize`的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'MaxSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组内ECS实例或ECI实例台数的最大值,当伸缩组内ECS或ECI实例数大于`MaxSize`时,弹性伸缩会自动移出ECS实例或ECI实例。'."\n"
+ ."\n"
+ .'<props="china">MaxSize的取值范围和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。</props>'."\n"
+ ."\n"
+ .'<props="intl">MaxSize的取值范围和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。</props>'."\n"
+ ."\n"
+ .'<props="partner">MaxSize的取值范围和弹性伸缩使用情况有关,请前往配额中心查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。</props>'."\n"
+ ."\n"
+ .'例如,如果**单个伸缩组可以设置的组内最大实例数**对应的配额值为2000,则`MaxSize`的取值范围为0~2000。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '99',
+ ],
+ ],
+ [
+ 'name' => 'DefaultCooldown',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '一次伸缩活动(添加或移出ECS实例或ECI实例)结束后的一段冷却时间。取值范围:0~86400,单位:秒。'."\n"
+ ."\n"
+ .'冷却时间内,该伸缩组不执行其他的伸缩活动,仅针对云监控报警任务触发的伸缩活动有效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '86400',
+ 'minimum' => '0',
+ 'example' => '600',
+ ],
+ ],
+ [
+ 'name' => 'RemovalPolicy.1',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定移出ECS实例的第一段伸缩组策略。取值范围:'."\n"
+ ."\n"
+ .'- OldestInstance:移出最早加入伸缩组的ECS实例。'."\n"
+ .'- NewestInstance:移出最新加入伸缩组的ECS实例。'."\n"
+ .'- OldestScalingConfiguration:移出最早伸缩配置创建的ECS实例。'."\n"
+ .'- CustomPolicy:基于自定义缩容策略Function函数移除ECS实例。'."\n"
+ ."\n"
+ .'>OldestScalingConfiguration中提到的伸缩配置泛指组内实例配置信息来源,包括伸缩配置和启动模板。CustomPolicy仅支持设置为首位移除策略,当指定CustomPolicy需同时指定CustomPolicyARN参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'OldestScalingConfiguration',
+ ],
+ ],
+ [
+ 'name' => 'RemovalPolicy.2',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定移出ECS实例的第二段伸缩组策略。取值范围:'."\n"
+ ."\n"
+ .'- OldestInstance:移出最早加入伸缩组的ECS实例。'."\n"
+ .'- NewestInstance:移出最新加入伸缩组的ECS实例。'."\n"
+ .'- OldestScalingConfiguration:移出最早伸缩配置创建的ECS实例。'."\n"
+ .'>OldestScalingConfiguration中提到的伸缩配置泛指组内实例配置信息来源,包括伸缩配置和启动模板。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'NewestInstance',
+ ],
+ ],
+ [
+ 'name' => 'RemovalPolicy.3',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定移出ECS实例的第三段伸缩组策略。取值范围:'."\n"
+ ."\n"
+ .'- OldestInstance:移出最早加入伸缩组的ECS实例。'."\n"
+ .'- NewestInstance:移出最新加入伸缩组的ECS实例。'."\n"
+ .'- OldestScalingConfiguration:移出最早伸缩配置创建的ECS实例。'."\n"
+ ."\n"
+ .'>OldestScalingConfiguration中提到的伸缩配置泛指组内实例配置信息来源,包括伸缩配置和启动模板。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'OldestInstance',
+ ],
+ ],
+ [
+ 'name' => 'ActiveScalingConfigurationId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组内生效的伸缩配置的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asc-bp17pelvl720x5ub****',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的健康检查方式。取值范围:'."\n"
+ ."\n"
+ .'- NONE:不做健康检查。'."\n"
+ .'- ECS:对伸缩组内的实例做健康检查(ECS类型和ECI类型的伸缩组均使用本取值开启实例健康检查)。'."\n"
+ .'- LOAD_BALANCER: 根据负载均衡(暂不支持CLB负载均衡类型)健康检查结果判断实例健康状态。'."\n"
+ ."\n"
+ .'默认值:ECS。'."\n"
+ ."\n"
+ .'> 如果需要同时开启实例健康检查和负载均衡健康检查,请使用`HealthCheckTypes`参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ ],
+ [
+ 'name' => 'LaunchTemplateId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例启动模板ID,用于指定伸缩组从实例启动模板获取启动配置信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lt-m5e3ofjr1zn1aw7****',
+ ],
+ ],
+ [
+ 'name' => 'LaunchTemplateVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例启动模板的版本。取值范围:'."\n"
+ .' '."\n"
+ .'- 固定的模板版本号。'."\n"
+ .'- Default:始终使用模板默认版本。'."\n"
+ .'- Latest:始终使用模板最新版本。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Default',
+ ],
+ ],
+ [
+ 'name' => 'OnDemandBaseCapacity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所需要按量实例个数的最小值,取值范围:0~1000。当按量实例个数少于该值时,将优先创建按量实例。'."\n"
+ ."\n"
+ .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ ],
+ [
+ 'name' => 'OnDemandPercentageAboveBaseCapacity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组满足最小按量实例数(OnDemandBaseCapacity)要求后,超出的实例中按量实例应占的比例,取值范围:0~100。'."\n"
+ ."\n"
+ .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '20',
+ ],
+ ],
+ [
+ 'name' => 'SpotInstanceRemedy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启补齐抢占式实例。开启后,当收到抢占式实例将被回收的系统消息时,伸缩组将尝试创建新的实例,替换掉将被回收的抢占式实例。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'CompensateWithOnDemand',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '当`CreateScalingGroup`接口的`MultiAZPolicy`取值为`COST_OPTIMIZED`时,如果因价格、库存等原因无法创建足够的抢占式实例,是否允许自动尝试创建按量实例满足ECS实例数量要求。取值范围:'."\n"
+ ."\n"
+ .'- true:允许。'."\n"
+ .'- false:不允许。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'SpotInstancePools',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定可用实例规格的个数,伸缩组将按成本最低的多个规格均衡创建抢占式实例。取值范围:0~10。'."\n"
+ ."\n"
+ .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为2。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ ],
+ ],
+ [
+ 'name' => 'DesiredCapacity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组内ECS实例或ECI实例的期望数量。设置该参数意味着开启了期望实例数功能,伸缩组会自动将ECS实例或ECI实例数量维持在期望实例数。取值范围:MaxSize≥期望实例数量≥MinSize。'."\n"
+ .'>如果期望实例数功能关闭后又重新开启,则您需要重新设置`DesiredCapacity`值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ ],
+ ],
+ [
+ 'name' => 'GroupDeletionProtection',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启伸缩组删除保护。取值范围:'."\n"
+ ."\n"
+ .'- true:开启伸缩组删除保护,此时不能删除该伸缩组。'."\n"
+ .'- false:关闭伸缩组删除保护。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'MultiAZPolicy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '多可用区伸缩组ECS实例扩缩容策略。取值范围:'."\n"
+ .' '."\n"
+ .'- PRIORITY:根据虚拟交换机(VSwitchIds.N)的优先级进行扩缩容。弹性伸缩优先在优先级最高的交换机所在可用区尝试扩缩容,如果无法扩缩容,则自动在下一优先级的交换机所在可用区进行扩缩容。'."\n"
+ ."\n"
+ .'- COST_OPTIMIZED:扩容时弹性伸缩按vCPU单价从低到高尝试创建ECS实例,缩容时按vCPU单价从高到低尝试移出ECS实例。当伸缩配置设置了抢占式计费方式的多实例规格时,优先创建对应抢占式实例。您可以继续通过`CompensateWithOnDemand`参数,指定弹性伸缩在无法创建抢占式实例时,是否自动尝试创建按量付费实例。'."\n"
+ ."\n"
+ .' > COST_OPTIMIZED仅在伸缩配置设置了多实例规格或者选用了抢占式实例的情况下生效。'."\n"
+ ."\n"
+ .'- BALANCE:在伸缩组指定的多可用区之间均匀分配ECS实例。如果由于库存不足等原因可用区之间变得不平衡,您可以通过API [RebalanceInstance](~~71516~~)平衡资源。'."\n"
+ .'- COMPOSABLE:是一种组合策略,您可以根据需要自主组合上述多可用区伸缩组ECS实例的扩缩容策略。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PRIORITY',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchIds',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '一台或多台虚拟交换机的ID。'."\n"
+ ."\n"
+ .'只有当伸缩组网络类型为VPC时,当前参数才生效。指定虚拟交换机所属的VPC必须和伸缩组所属的VPC相同。'."\n"
+ ."\n"
+ .'虚拟交换机可以来自多个可用区。虚拟交换机的优先级按照数字升序排序,1表示最高优先级。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动选择下一优先级的虚拟交换机创建ECS实例。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '一台或多台虚拟交换机的ID,N的取值范围:1~5。'."\n"
+ ."\n"
+ .'只有当伸缩组网络类型为VPC时,当前参数才生效。指定虚拟交换机所属的VPC必须和伸缩组所属的VPC相同。'."\n"
+ ."\n"
+ .'虚拟交换机可以来自多个可用区。虚拟交换机的优先级按照数字升序排序,1表示最高优先级。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动选择下一优先级的虚拟交换机创建ECS实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-bp1oo2a7isyrb8igf****',
+ ],
+ 'required' => false,
+ 'example' => 'vsw-bp1oo2a7isyrb8igf****',
+ 'maxItems' => 8,
+ ],
+ ],
+ [
+ 'name' => 'LaunchTemplateOverride',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '启动模板信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '启动模板信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,请同时指定本参数和LaunchTemplateOverride.N.WeightedCapacity。'."\n"
+ ."\n"
+ .'本参数用于指定实例规格,会覆盖启动模板中的实例规格。您可以指定N个本参数,扩展启动模板支持N个实例规格。N的取值范围:1~20。'."\n"
+ .'> 仅当LaunchTemplateId参数指定了启动模板时,本参数生效。'."\n"
+ ."\n"
+ .'InstanceType的取值范围:在售的ECS实例规格,请参见[实例规格族](~~25378~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.c5.xlarge',
+ ],
+ 'WeightedCapacity' => [
+ 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,在指定LaunchTemplateOverride.N.InstanceType后,再指定本参数。两个参数一一对应,N需要保持一致。'."\n"
+ ."\n"
+ .'本参数用于指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。'."\n"
+ .'权重越大,满足期望容量所需的本实例规格的实例数量越少。'."\n"
+ ."\n"
+ .'由于每个实例规格的vCPU个数、内存大小等性能指标会有差异,您可以根据自身需求,给不同的实例规格配置不同的权重。'."\n"
+ ."\n"
+ .' 例如:'."\n"
+ ."\n"
+ .'- 当前容量:0。'."\n"
+ .'- 期望容量:6。'."\n"
+ .'- ecs.c5.xlarge规格容量:4。'."\n"
+ ."\n"
+ .'为满足期望容量,伸缩组将为用户扩容2台ecs.c5.xlarge实例。'."\n"
+ ."\n"
+ .'>扩容时伸缩组的容量不得超过最大容量(MaxSize)与实例规格的最大权重之和。'."\n"
+ ."\n"
+ .'WeightedCapacity的取值范围:1~500。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ 'SpotPriceLimit' => [
+ 'description' => '本参数用于指定实例启动模板覆盖规格(即`LaunchTemplateOverride.N.InstanceType`)的竞价价格上限。您可以指定N个该参数,扩展启动模板支持N个实例规格。N的取值范围:1~20。'."\n"
+ .'>仅当`LaunchTemplateId`参数指定了启动模板时,该参数才生效。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.025',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'AzBalance',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的容量是否在多个可用区间均衡分布(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效),取值范围:'."\n"
+ .'- true:伸缩组的容量在多个可用区间均衡分布。'."\n"
+ .'- false:伸缩组的容量不在多个可用区间均衡分布。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'AllocationStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '容量分配策略,决定了伸缩组如何选择可用的实例规格类型满足容量。容量分布策略同时对按量和抢占式容量生效(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。取值范围:'."\n"
+ ."\n"
+ .'- priority:按照配置的实例规格的顺序创建实例。'."\n"
+ .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n"
+ ."\n"
+ .'默认值:priority。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'priority',
+ ],
+ ],
+ [
+ 'name' => 'SpotAllocationStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '抢占式容量分布策略。您可以通过该参数单独指定抢占式容量的分布策略(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。取值范围:'."\n"
+ ."\n"
+ .'- priority:按照配置的实例规格的顺序创建实例。'."\n"
+ .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n"
+ ."\n"
+ .'默认值:priority。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lowestPrice',
+ ],
+ ],
+ [
+ 'name' => 'MaxInstanceLifetime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例在伸缩组中存活的最大时间。单位为秒。'."\n"
+ ."\n"
+ .'取值范围:0或`[86400, Integer.maxValue]`。其中,0表示清空MaxInstanceLifetime设置过的值(即未设置MaxInstanceLifetime值)。'."\n"
+ ."\n"
+ .'默认值:null。'."\n"
+ ."\n"
+ .'>ECI类型的伸缩组或停机不收费的伸缩组不支持设置该参数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => 'null',
+ ],
+ ],
+ [
+ 'name' => 'CustomPolicyARN',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '自定义缩容策略Function函数ARN。仅当RemovalPolicies配置第一个移除策略为CustomPolicy时生效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs:fc:cn-zhangjiakou:16145688****:services/ess_custom_terminate_policy.LATEST/functions/ess_custom_terminate_policy_name',
+ ],
+ ],
+ [
+ 'name' => 'DisableDesiredCapacity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组是否关闭期望实例数功能。取值范围:'."\n"
+ .'- false:启用期望实例数功能。'."\n"
+ .'- true:关闭期望实例数功能。'."\n"
+ .'>只有伸缩组当前无伸缩活动时,才能将该参数设置为true(即伸缩组的期望实例数功能关闭),伸缩组当前的`DesiredCapacity`属性也会被清空,但伸缩组中当前的实例数量不发生变化。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ScalingPolicy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定伸缩组的回收模式。取值范围:'."\n"
+ ."\n"
+ .'- recycle:伸缩组的回收模式为停机回收模式。'."\n"
+ ."\n"
+ .'- release:伸缩组的回收模式为释放模式。'."\n"
+ ."\n"
+ .'- forcerelease:伸缩组的回收模式为强制释放模式。'."\n"
+ ."\n"
+ .' >选择`forcerelease`后,在弹性收缩活动中系统会强制释放`运行中`(Running)的实例。强制释放实例相当于断电操作,会导致该实例内存以及存储中的临时数据被擦除,数据无法恢复,请您谨慎选择。'."\n"
+ ."\n"
+ .'- forcerecycle:伸缩组的回收模式为强制停机回收模式。'."\n"
+ ."\n"
+ .' >选择`forcerecycle`后,在弹性收缩活动中系统会强制关机`运行中`(Running)的实例。强制关机相当于断电操作,会导致该实例内存以及存储中的临时数据被擦除,数据无法恢复,请您谨慎选择。'."\n"
+ ."\n"
+ .'ScalingPolicy指定伸缩组的回收模式,但实例被移出伸缩组时的具体动作,由RemoveInstances的RemovePolicy参数决定,更多信息,请参见[RemoveInstances](~~25955~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'recycle',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckTypes',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '伸缩组的健康检查方式。'."\n"
+ .'> 使用此参数可以设置多个值,开启多个健康检查选项。如果设置了`HealthCheckType`参数,则本参数将被忽略。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组的健康检查方式列表。取值范围:'."\n"
+ ."\n"
+ .'- NONE:不做健康检查。'."\n"
+ .'- ECS:对伸缩组内的实例做健康检查(ECS类型和ECI类型的伸缩组均使用本取值开启实例健康检查)。'."\n"
+ .'- LOAD_BALANCER: 根据负载均衡(暂不支持负载均衡CLB类型)健康检查结果判断实例健康状态。'."\n"
+ ."\n"
+ .'默认值:ECS。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'StopInstanceTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '缩容流程中等待ECS实例停机成功的超时时间,单位为秒。'."\n"
+ .'取值范围:30~240。'."\n"
+ ."\n"
+ .'> - 该参数仅在 ScalingPolicy = release 模式下的缩容流程里生效。 '."\n"
+ .'- 如果设置了该参数,系统会最长等待StopInstanceTimeout时间将实例停机成功,超时后无论实例是否成功停机都会继续缩容。 '."\n"
+ .'- 如果没有设置该参数,系统会长时间等待实例停机成功,只有实例停机成功后才继续缩容,停机失败时,缩容流程会回滚,缩容失败。'."\n"
+ .'- 该参数设置为0时,表示取消该参数配置。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'CapacityOptions',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '容量选项。',
+ 'type' => 'object',
+ 'properties' => [
+ 'OnDemandBaseCapacity' => [
+ 'description' => '已有伸缩组内所需要的按量实例数的最小值,当伸缩组内按量实例个数少于该值时,系统将优先创建按量实例。取值范围:0~1000。'."\n"
+ ."\n"
+ .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ 'OnDemandPercentageAboveBaseCapacity' => [
+ 'description' => '伸缩组满足最小按量实例数`OnDemandBaseCapacity`要求后,超出的实例中按量实例应占的比例。取值范围:0~100。'."\n"
+ ."\n"
+ .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '20',
+ ],
+ 'CompensateWithOnDemand' => [
+ 'description' => '当`CreateScalingGroup`接口的`MultiAZPolicy`取值为`COST_OPTIMIZED`时,如果因价格、库存等原因无法创建足够的抢占式实例,是否允许自动尝试创建按量实例满足ECS实例数量要求。取值范围:'."\n"
+ ."\n"
+ .'- true:允许。'."\n"
+ .'- false:不允许。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'SpotAutoReplaceOnDemand' => [
+ 'description' => '当开启`CompensateWithOnDemand`后,如果按量比例超过`OnDemandPercentageAboveBaseCapacity`比例时,会尝试使用spot替换按量容量。常见场景`CompensateWithOnDemand`因Spot库存或价格原因导致Spot降级按量实例,为避免按量实例长时间存在,尝试使用Spot替换多余的按量容量。取值范围:'."\n"
+ ."\n"
+ .'- true:允许。'."\n"
+ .'- false:不允许。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'PriceComparisonMode' => [
+ 'description' => '伸缩组成本优化策略的比价模式。取值范围:'."\n"
+ ."\n"
+ .'- PricePerUnit:使用每单位容量价格比价。'."\n"
+ ."\n"
+ .' 实例在伸缩组中容量大小等于为实例规格设置的权重,默认为1,即一台ECS所占容量为1。'."\n"
+ ."\n"
+ .'- PricePerVCpu:使用每单位vCpu价格进行比价。'."\n"
+ ."\n"
+ .'默认值:PricePerUnit。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PricePerUnit',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'BalanceMode',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡模式',
+ 'description' => '可用区均衡模式,仅当开启可用区均衡模式时生效。取值范围:'."\n"
+ .' '."\n"
+ .'- BalancedBestEffort:'."\n"
+ .'当某可用区资源创建失败时,会降级至其他可用区,保障资源的尽力交付。'."\n"
+ ."\n"
+ .'- BalancedOnly:'."\n"
+ .'当某可用区资源创建失败时,不会降级至其他可用区,扩容活动部分成功,避免资源在不同可用区过度不均衡。'."\n"
+ ."\n"
+ .'默认值:BalancedBestEffort。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'BalancedBestEffort',
+ ],
+ ],
+ [
+ 'name' => 'AutoRebalance',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启伸缩组自动均衡,仅当可用区均衡伸缩组开启了BalancedOnly才生效。取值范围:'."\n"
+ .'- false:不开启伸缩组自动均衡。'."\n"
+ .'- true:开启伸缩组自动均衡时,伸缩组会自动检测可用区见容量,当可用区容量不均衡时,会主动进行可用区扩缩,进行可用区容量再均衡。'."\n"
+ ."\n"
+ .'默认值: false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyScalingGroupResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</ModifyScalingGroupResponse>","errorExample":""}]',
+ 'title' => '修改一个伸缩组',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 不支持修改以下参数:'."\n"
+ ."\n"
+ .' - RegionId'."\n"
+ ."\n"
+ .' - LoadBalancerId'."\n"
+ ."\n"
+ .' > 如果需要修改负载均衡实例,请使用[AttachLoadBalancers](~~85125~~)和[DetachLoadBalancers](~~85141~~)接口。 '."\n"
+ ."\n"
+ .' - DBInstanceId'."\n"
+ ."\n"
+ .' > 如果需要修改RDS实例,请使用[AttachDBInstances](~~85379~~)和[DetachDBInstances](~~85380~~)接口。 '."\n"
+ .' '."\n"
+ .'- 当伸缩组的状态为Active或Inactive时才能调用该接口。'."\n"
+ ."\n"
+ .'- 启用新的伸缩配置不会影响通过早前伸缩配置创建并正在运行的ECS实例或ECI实例。'."\n"
+ ."\n"
+ .'- 如果修改了MaxSize,导致当前伸缩组的ECS或ECI实例数超过MaxSize,则伸缩组会自动移出ECS实例或ECI实例,使得伸缩组的ECS或ECI实例数等于MaxSize。'."\n"
+ ."\n"
+ .'- 如果伸缩组修改了MinSize,导致当前伸缩组的ECS或ECI实例数低于MinSize,则伸缩组会自动加入ECS实例或ECI实例,使得伸缩组的ECS或ECI实例数等于MinSize。'."\n"
+ ."\n"
+ .'- 如果伸缩组设置了DesiredCapacity时,修改了DesiredCapacity,导致当前伸缩组的ECS或ECI实例数与DesiredCapacity不一致,则伸缩组会自动加入或移除ECS实例或ECI实例,使得伸缩组的ECS或ECI实例数等于DesiredCapacity。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|账号下不存在指定的伸缩组。|'."\n"
+ .'|400|InvalidScalingGroupName.Duplicate|The specified value of parameter `parameter name` is duplicated.|伸缩组名已存在。|'."\n"
+ .'|404|InvalidScalingConfigurationId.NotFound|The specified scaling configuration does not exist.|伸缩组中不存在指定的伸缩配置。|'."\n"
+ .'|400|InvalidScalingConfigurationId.InstanceTypeMismatch|The specified scaling configuration and existing active scaling configuration have different instance type.|指定的伸缩配置的实例规格与当前生效的伸缩配置的实例规格不匹配。|'."\n"
+ .'|400|InvalidParameter.Conflict|The value of parameter `parameter name` and parameter `parameter name` are confilict.|指定的MinSize大于MaxSize。|'."\n"
+ .'|400|LaunchTemplateVersionSet.NotFound|The specific version of launch template is not exist.|不存在指定的实例启动模板版本。|'."\n"
+ .'|400|LaunchTemplateSet.NotFound|The specified launch template set is not found.|不存在指定的实例启动模板。|'."\n"
+ .'|400|TemplateMissingParameter.ImageId|The input parameter "ImageId" that is mandatory for processing this request is not supplied.|实例启动模板指定版本缺少镜像信息。|'."\n"
+ .'|400|TemplateMissingParameter.InstanceTypes|The input parameter "InstanceTypes" that is mandatory for processing this request is not supplied.|指定的实例启动模板版本缺少实例规格信息。|'."\n"
+ .'|400|TemplateMissingParameter.SecurityGroup|The input parameter "SecurityGroup" that is mandatory for processing this request is not supplied.|指定的实例启动模板版本缺少安全组信息。|'."\n"
+ .'|400|TemplateVersion.NotNumber|The input parameter "LaunchTemplateVersion" is supposed to be a string representing the version number.|指定的实例启动模板固定版本号应该是数字。',
+ ],
+ 'EnableScalingGroup' => [
+ 'summary' => '启用一个伸缩组。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92696',
+ 'abilityTreeNodes' => [
+ 'FEATUREessUCEVTM',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp14wlu85wrpchm0****',
+ ],
+ ],
+ [
+ 'name' => 'ActiveScalingConfigurationId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要在伸缩组内启用的伸缩配置的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asc-bp1ffogfdauy0nu5****',
+ ],
+ ],
+ [
+ 'name' => 'LaunchTemplateId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例启动模板的ID,用于指定伸缩组从实例启动模板获取启动配置信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lt-m5e3ofjr1zn1aw7****',
+ ],
+ ],
+ [
+ 'name' => 'LaunchTemplateVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例启动模板的版本。取值范围: '."\n"
+ ."\n"
+ .'- 固定的模板版本号。'."\n"
+ .'- Default:始终使用模板默认版本。'."\n"
+ .'- Latest:始终使用模板最新版本。'."\n"
+ .' ',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Default',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '启用伸缩组后需要加入伸缩组的ECS实例的ID,N的取值范围:1~20。'."\n"
+ ."\n"
+ .'指定加入伸缩组的ECS实例需要满足以下条件: '."\n"
+ .' '."\n"
+ .'- 必须与伸缩组在同一个地域。'."\n"
+ ."\n"
+ .'- 必须处于Running状态。'."\n"
+ ."\n"
+ .'- 不能已加入到其他伸缩组中。'."\n"
+ ."\n"
+ .'- 付费方式为包年包月、按量付费或抢占式实例。'."\n"
+ ."\n"
+ .'- 如果伸缩组指定VswitchID,则不支持Classic类型的ECS实例加入伸缩组,也不支持其他VPC的ECS实例加入伸缩组。'."\n"
+ ."\n"
+ .'- 如果伸缩组没有指定VswitchID,则不支持VPC类型的ECS实例加入伸缩组。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '启用伸缩组后需要加入伸缩组的ECS实例的ID,N的取值范围:1~20。'."\n"
+ ."\n"
+ .'指定加入伸缩组的ECS实例需要满足以下条件: '."\n"
+ .' '."\n"
+ .'- 必须与伸缩组在同一个地域。'."\n"
+ ."\n"
+ .'- 必须处于Running状态。'."\n"
+ ."\n"
+ .'- 不能已加入到其他伸缩组中。'."\n"
+ ."\n"
+ .'- 付费方式为包年包月、按量付费或抢占式实例。'."\n"
+ ."\n"
+ .'- 如果伸缩组指定VswitchID,则不支持Classic类型的ECS实例加入伸缩组,也不支持其他VPC的ECS实例加入伸缩组。'."\n"
+ ."\n"
+ .'- 如果伸缩组没有指定VswitchID,则不支持VPC类型的ECS实例加入伸缩组。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-283vv****',
+ ],
+ 'required' => false,
+ 'example' => 'i-283vv****',
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerWeight',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '加入伸缩组中ECS实例或ECI实例作为后端服务器的权重,N的取值范围:1~20,该参数取值范围:1~100。'."\n"
+ ."\n"
+ .'默认值:50。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '加入伸缩组的ECS实例或ECI实例作为后端服务器的权重,N的取值范围:1~20,该参数取值范围:1~100。'."\n"
+ ."\n"
+ .'默认值:50。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ 'required' => false,
+ 'example' => '50',
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'LaunchTemplateOverride',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例启动模板的覆盖层信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例启动模板的覆盖层信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,请同时指定本参数和LaunchTemplateOverride.N.WeightedCapacity。'."\n"
+ ."\n"
+ .'本参数用于指定实例规格,会覆盖启动模板中的实例规格。您可以指定N个本参数,扩展启动模板支持N个实例规格。N的取值范围:1~10。'."\n"
+ .'> 仅当LaunchTemplateId参数指定了启动模板时,本参数生效。'."\n"
+ ."\n"
+ .'InstanceType的取值范围:在售的ECS实例规格,请参见[实例规格族](~~25378~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.c5.xlarge',
+ ],
+ 'WeightedCapacity' => [
+ 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,在指定LaunchTemplateOverride.N.InstanceType后,再指定本参数。两个参数一一对应,N需要保持一致。'."\n"
+ ."\n"
+ .'本参数用于指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。'."\n"
+ ."\n"
+ .'由于每个实例规格的vCPU个数、内存大小等性能指标会有差异,您可以根据自身需求,给不同的实例规格配置不同的权重。'."\n"
+ ."\n"
+ .' 例如:'."\n"
+ ."\n"
+ .'- 当前容量:0。'."\n"
+ .'- 期望容量:6。'."\n"
+ .'- ecs.c5.xlarge规格容量:4。'."\n"
+ ."\n"
+ .'为满足期望容量,伸缩组将为用户扩容2台ecs.c5.xlarge实例。'."\n"
+ ."\n"
+ .'>扩容时伸缩组的容量不得超过最大容量(MaxSize)与实例规格的最大权重之和。'."\n"
+ ."\n"
+ .'WeightedCapacity的取值范围:1~500。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<EnableScalingGroupResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</EnableScalingGroupResponse>","errorExample":""}]',
+ 'title' => '启用一个伸缩组',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 当伸缩组处于Inactive状态,且伸缩组配置了组内实例的配置信息来源(伸缩配置、启动模板或者在创建伸缩组时指定ECS实例)时,才可以调用该接口来启用伸缩组。否则,会调用失败。'."\n"
+ ."\n"
+ .' >一个伸缩组在同一时刻有且只有一个生效的实例配置信息来源。在调用接口时,您可以为伸缩组指定伸缩配置或启动模板。如果调用该接口前您已经为伸缩组配置了实例配置信息来源,在调用时再指定伸缩配置或启动模板会覆盖原有的配置信息。'."\n"
+ ."\n"
+ .'- 当该接口指定了加入伸缩组的ECS实例(InstanceId.N),调用该接口后,弹性伸缩会判断在加入ECS实例后伸缩组的ECS实例数量(Total Capacity)是否在最小值(MinSize)和最大值(MaxSize)之间:'."\n"
+ ."\n"
+ .' - 如果伸缩组的Total Capacity小于MinSize,调用成功后,弹性伸缩服务会自动创建差额的按量付费的ECS实例。'."\n"
+ ."\n"
+ .' 例如:创建伸缩组时,指定MinSize为5,在启用伸缩组的InstanceId.N参数中指定2台已有ECS实例,则弹性伸缩在加入2台已有ECS实例之后,再自动创建3台ECS实例。 '."\n"
+ ."\n"
+ .' - 如果伸缩组的Total Capacity大于MaxSize,则调用失败。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组在当前账号下不存在。|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|您并未向弹性伸缩完整授权OpenAPI接口。|'."\n"
+ .'|400|IncorrectScalingGroupStatus|The current status of the specified scaling group does not support this action.|指定的伸缩组处于Deleting状态。|'."\n"
+ .'|404|InvalidScalingConfigurationId.NotFound|The specified scaling configuration does not exist.|指定的伸缩配置不存在指定的伸缩组中。|'."\n"
+ .'|400|InvalidScalingConfigurationId.InstanceTypeMismatch|The specified scaling configuration and existing active scaling configuration have different instance type.|指定的伸缩配置的实例规格与当前生效的伸缩配置的实例规格不匹配。|'."\n"
+ .'|400|MissingActiveScalingConfiguration|An active scaling configuration for the specified scaling group is not supplied.|伸缩组中未指定生效的伸缩配置。|'."\n"
+ .'|404|InvalidInstanceId.NotFound|Instance "XXX" does not exist.|指定的ECS实例在当前账号下不存在。|'."\n"
+ .'|400|InvalidInstanceId. RegionMismatch|Instance "XXX" and the specified scaling group are not in the same Region.|指定的ECS实例与伸缩组所处的地域不匹配。|'."\n"
+ .'|400|InvalidInstanceId. InstanceTypeMismatch|Instance "XXX" and existing active scaling configuration have different instance type.|指定的ECS实例与伸缩配置的实例规格不匹配。|'."\n"
+ .'|400|IncorrectInstanceStatus|The current status of instance "XXX" does not support this action.|指定的ECS实例未处于Running状态。|'."\n"
+ .'|400|InvalidInstanceId. NetworkTypeMismatch|The network type of instance "XXX" does not support this action.|指定的ECS实例的网络类型与伸缩组的网络类型不匹配。|'."\n"
+ .'|400|InvalidInstanceId.VPCMismatch|Instance "XXX" and the specified scaling group are not in the same VPC.|指定的伸缩组与添加的ECS实例不在同一个VPC当中。|'."\n"
+ .'|400|InvalidInstanceId.InUse|Instance "XXX" is already attached to another scaling group.|指定的ECS实例已加入其它伸缩组。|'."\n"
+ .'|400|IncorrectLoadBalancerStatus|The current status of the specified load balancer does not support this action.|指定的负载均衡实例未处于active状态。|'."\n"
+ .'|400|IncorrectLoadBalancerHealthCheck|The current health check type of specified load balancer does not support this action.|指定的负载均衡实例未开启健康检查。|'."\n"
+ .'|400|InvalidLoadBalancerId.IncorrectInstanceNetworkType|The network type of the instance in specified Load Balancer does not support this action.|指定的负载均衡实例含有的ECS实例的网络类型与伸缩组的网络类型不匹配。|'."\n"
+ .'|400|InvalidLoadBalancerId.VPCMismatch|The specified virtual switch and the instance in specified Load Balancer are not in the same VPC.|指定的伸缩组的负载均衡实例含有的ECS实例与VSwitchId不在同一个VPC当中。|'."\n"
+ .'|400|IncorrectDBInstanceStatus|The current status of DB instance "XXX" does not support this action.|指定的RDS实例未处于Running状态。|'."\n"
+ .'|400|IncorrectCapacity.MaxSize|To attach the instances, the total capacity will be greater than the max size.|加入的ECS实例数使得Total Capacity超过MaxSize。|'."\n"
+ .'|400|LaunchTemplateVersionSet.NotFound|The specific version of launch template is not exist.|实例启动模板指定版本不存在。|'."\n"
+ .'|400|LaunchTemplateSet.NotFound|The specified launch template set is not found.|指定实例启动模板不存在。|'."\n"
+ .'|400|TemplateMissingParameter.ImageId|The input parameter "ImageId" that is mandatory for processing this request is not supplied.|实例启动模板指定版本缺少镜像信息。|'."\n"
+ .'|400|TemplateMissingParameter.InstanceTypes|The input parameter "InstanceTypes" that is mandatory for processing this request is not supplied.|实例启动模板指定版本缺少实例规格信息。|'."\n"
+ .'|400|TemplateMissingParameter.SecurityGroup|The input parameter "SecurityGroup" that is mandatory for processing this request is not supplied.|实例启动模板指定版本缺少安全组信息。|'."\n"
+ .'|400|TemplateVersion.NotNumber|The input parameter "LaunchTemplateVersion" is supposed to be a string representing the version number.|指定实例启动模板固定版本号为非数字。',
+ ],
+ 'DisableScalingGroup' => [
+ 'summary' => '停用一个伸缩组。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92694',
+ 'abilityTreeNodes' => [
+ 'FEATUREessUCEVTM',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<DisableScalingGroupResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</DisableScalingGroupResponse>","errorExample":""}]',
+ 'title' => '停用一个伸缩组',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'停用一个指定的伸缩组前,您需要注意以下事项:'."\n"
+ ."\n"
+ .'- 停用伸缩组之前发生的伸缩活动,会继续完成,而之后触发的伸缩活动会被拒绝。'."\n"
+ ."\n"
+ .'- 当伸缩组为Active状态时才可以调用该接口。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组在当前账号下不存在。',
+ ],
+ 'SetGroupDeletionProtection' => [
+ 'summary' => '为伸缩组开启或关闭删除保护。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92717',
+ 'abilityTreeNodes' => [
+ 'FEATUREessF87COY',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupDeletionProtection',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否为伸缩组开启删除保护。取值范围:'."\n"
+ ."\n"
+ .'- true:开启删除保护功能。开启删除保护功能后,不能在控制台或者通过调用API删除伸缩组。如果需要删除该伸缩组,必须先关闭删除保护功能。'."\n"
+ .'- false:关闭删除保护功能。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => true,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1igpak5ft1flyp****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CCC29E24-3AEC-4F2C-8A14-78B14FA7****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CCC29E24-3AEC-4F2C-8A14-78B14FA7****\\"\\n}","errorExample":""},{"type":"xml","example":"<SetGroupDeletionProtectionResponse>\\n <RequestId>CCC29E24-3AEC-4F2C-8A14-78B14FA7****</RequestId>\\n</SetGroupDeletionProtectionResponse>","errorExample":""}]',
+ 'title' => '为伸缩组开启或关闭删除保护',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' |HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|伸缩组不存在。|'."\n"
+ .'|400|InvalidOperation.Conflict|Specific operation may conflicts with other operations, please retry later.|操作冲突,请稍后再试。'."\n",
+ ],
+ 'AttachLoadBalancers' => [
+ 'summary' => '添加一个或多个负载均衡实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92650',
+ 'abilityTreeNodes' => [
+ 'FEATUREess2GK585',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asg-bp1avr6ensitts3w****',
+ ],
+ ],
+ [
+ 'name' => 'ForceAttach',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否把当前伸缩组内的实例全部添加为负载均衡CLB(原SLB)实例的后端服务器。取值范围:'."\n"
+ .' '."\n"
+ .'- true:添加 。如果该参数值为`true`,则将负载均衡实例添加到伸缩组时,系统会将当前伸缩组中已有的实例全部添加为负载均衡实例的后端服务器。'."\n"
+ .' >如果负载均衡实例已添加至伸缩组,而您需要将伸缩组中全部实例添加为该负载均衡实例的后端服务器,则您可以再次将该负载均衡实例添加到伸缩组,并选择`ForceAttach`为`true`状态。'."\n"
+ ."\n"
+ .'- false:不添加 。如果该参数值为`false`,则将负载均衡实例添加到伸缩组时,系统不会将当前伸缩组中已有的实例添加为负载均衡实例的后端服务器。'."\n"
+ ."\n"
+ .'默认值:false。'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'Async',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '添加负载均衡CLB(原SLB)实例时,是否采用异步调用的方式。异步调用能保证操作的事务性,即所有操作都执行成功或者某个操作失败时所有操作的执行结果都不生效,建议您采用异步调用。'."\n"
+ ."\n"
+ .'取值范围:'."\n"
+ ."\n"
+ .'- true:异步调用。请求将返回伸缩活动的ID。'."\n"
+ ."\n"
+ .'- false:同步调用。'."\n"
+ ."\n\n"
+ .'默认值:false。'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancer',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '需要添加的负载均衡CLB(原SLB)实例的ID列表,N的取值范围:1~5。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '需要添加的负载均衡CLB(原SLB)实例的ID列表,N的取值范围:1~5。'."\n"
+ ."\n"
+ .'>支持最多一次添加5个负载均衡实例到伸缩组。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lb-2zeur05gfs****',
+ ],
+ 'required' => false,
+ 'example' => 'lb-2zeur05gfs****',
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerConfig',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '负载均衡CLB(原SLB)配置列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡CLB(原SLB)配置列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'LoadBalancerId' => [
+ 'description' => '负载均衡CLB(原SLB)实例的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '147b46d767c-cn-qingdao-cm5****',
+ ],
+ 'Weight' => [
+ 'description' => '弹性伸缩将ECS实例或ECI实例添加到CLB(原SLB)服务器组后,ECS实例或ECI实例作为后端服务器的权重。权重越高,ECS实例或ECI实例将被分配到越多的访问请求。如果权重为0,则ECS实例或ECI实例不会收到访问请求。'."\n"
+ ."\n"
+ .'取值范围:0~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingActivityId' => [
+ 'description' => '伸缩活动的ID。'."\n"
+ ."\n"
+ .'仅当`Async`为`true`时返回该值。您可使用API [DescribeScalingActivities](~~25961~~)遍历查询返回的伸缩活动ID,查看伸缩活动的执行状态。',
+ 'type' => 'string',
+ 'example' => 'asa-bp140qd7mak8k63f****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp140qd7mak8k63f****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<AttachLoadBalancersResponse>\\n <ScalingActivityId>asa-bp140qd7mak8k63f****</ScalingActivityId>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</AttachLoadBalancersResponse>","errorExample":""}]',
+ 'title' => '添加一个或多个负载均衡实例',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'向伸缩组添加负载均衡实例时需要满足以下条件: '."\n"
+ ."\n"
+ .'- 负载均衡实例与伸缩组必须属于同一账号和同一个地域。'."\n"
+ ."\n"
+ .'- 负载均衡实例必须处于`运行中`状态。 '."\n"
+ ."\n"
+ .'- 负载均衡实例至少配置有一个监听且必须开启健康检查。'."\n"
+ ."\n"
+ .'- 如果负载均衡实例与伸缩组的网络类型均为VPC,必须处于同一VPC。'."\n"
+ ."\n"
+ .'- 当伸缩组的网络类型为VPC,负载均衡实例的网络类型为经典网络时,如果负载均衡实例后端服务器中包含VPC实例,该实例必须与伸缩组处于同一VPC。'."\n"
+ ."\n"
+ .'- 不超过伸缩组关联负载均衡实例的限额,具体限额,请参见[使用限制](~~25863~~)。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|您并未授予弹性伸缩完整的OpenAPI调用权限。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|账号下不存在指定的伸缩组。|'."\n"
+ .'|400|QuotaExceeded.LoadBalancer|LoadBalancer quota exceeded in the scaling group "%s".|伸缩组中负载均衡实例超出配额限制。|'."\n"
+ .'|404|InvalidLoadBalancerId.NotFound|The load balancer "%s" does not exist.|不存在指定的负载均衡实例。|'."\n"
+ .'|400|InvalidLoadBalancerId.RegionMismatch|The load balancer "%s" and the specified scaling group are not in the same Region.|负载均衡实例与伸缩组不在同一地域。|'."\n"
+ .'|400|IncorrectLoadBalancerStatus|The current status of the load balancer "%s" does not support this action.|当前负载均衡实例状态不支持此操作。|'."\n"
+ .'|400|IncorrectLoadBalancerHealthCheck|The current health check type of the load balancer "%s" does not support this action.|当前负载均衡实例未开启健康检查。|'."\n"
+ .'|400|InvalidLoadBalancerId.VPCMismatch|The specified virtual switch and the instance in the load balancer "%s" are not in the same VPC.|负载均衡实例与伸缩组不在同一VPC下。|'."\n"
+ .'|400|QuotaExceeded.BackendServer|Backend server quota exceeded in the load balancer "%s".|负载均衡实例后端服务器数量超出限额。|'."\n"
+ .'|404|InvalidScalingConfigurationId.NotFound|The specified scaling configuration does not exist.|未找到当前伸缩组启用的伸缩配置。',
+ ],
+ 'DetachLoadBalancers' => [
+ 'summary' => '移除一个或多个负载均衡实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92691',
+ 'abilityTreeNodes' => [
+ 'FEATUREess2GK585',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asg-bp1ffogfdauy0jw0****',
+ ],
+ ],
+ [
+ 'name' => 'ForceDetach',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否移除负载均衡实例后端服务器中属于当前伸缩组的ECS实例。取值范围:'."\n"
+ ."\n"
+ .'- true:移除ECS实例。'."\n"
+ ."\n"
+ .'- false:不移除ECS实例。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。'."\n"
+ ."\n"
+ .'只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'Async',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '移除负载均衡实例时,是否采用异步调用的方式。异步调用能保证操作的事务性,即所有操作都执行成功或者某个操作失败时所有操作的执行结果都不生效,建议您采用异步调用。'."\n"
+ ."\n"
+ .'取值范围:'."\n"
+ ."\n"
+ .'- true:异步调用。请求将返回伸缩活动的ID。'."\n"
+ ."\n"
+ .'- false:同步调用。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancer',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID,单次最多支持移除5台负载均衡实例。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡实例的ID,单次最多支持移除5台负载均衡实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lb-2zeur05gfs****',
+ ],
+ 'required' => true,
+ 'example' => 'lb-2zeur05gfs****',
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingActivityId' => [
+ 'description' => '伸缩活动的ID。'."\n"
+ ."\n"
+ .'仅当`Async=true`时返回该值。您可使用API [DescribeScalingActivities](~~25961~~)遍历查询返回的伸缩活动ID,查看伸缩活动的执行状态。',
+ 'type' => 'string',
+ 'example' => 'asa-bp140qd7mak8k63f****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp140qd7mak8k63f****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<DetachLoadBalancersResponse>\\n <ScalingActivityId>asa-bp140qd7mak8k63f****</ScalingActivityId>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</DetachLoadBalancersResponse>","errorExample":""}]',
+ 'title' => '移除一个或多个负载均衡实例',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|您并未授予弹性伸缩完整的OpenAPI调用权限。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|账号下不存在指定的伸缩组。|'."\n"
+ .'|404|InvalidLoadBalancerId.NotFound|The Load Balancer "%s" does not exist.|伸缩组中不存在指定的负载均衡实例。',
+ ],
+ 'DetachDBInstances' => [
+ 'summary' => '移除一个或多个RDS实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92689',
+ 'abilityTreeNodes' => [
+ 'FEATUREessJZ6DNF',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1igpak5ft1flyp****',
+ ],
+ ],
+ [
+ 'name' => 'ForceDetach',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '当RDS实例从伸缩组移除时,是否移除RDS实例IP白名单中属于伸缩组内实例的私网IP。取值范围:'."\n"
+ ."\n"
+ .'- true:移除。'."\n"
+ ."\n"
+ .'- false:不移除。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'DBInstance',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'RDS实例的ID,单次最多支持移除5个RDS实例。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'RDS实例的ID,单次最多支持移除5个RDS实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rm-bp12cy3****',
+ ],
+ 'required' => true,
+ 'example' => 'rm-bp12cy3****',
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'RemoveSecurityGroup',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组是否移除关联数据库时添加的安全组白名单。仅针对`AttachMode`参数取值为`SecurityGroup`的数据库有效,取值范围:'."\n"
+ ."\n"
+ .'- true:会移除伸缩组关联数据库时添加的安全组ID。'."\n"
+ .'- false:不会移除伸缩组关联数据库时添加的安全组ID。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<DetachDBInstancesResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</DetachDBInstancesResponse>","errorExample":""}]',
+ 'title' => '移除一个或多个RDS实例',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|账号下不存在指定的伸缩组。|'."\n"
+ .'|400|InvalidDBInstanceId.NotFound|DB instance "%s" does not exist.|不存在指定的RDS实例。',
+ ],
+ 'AttachDBInstances' => [
+ 'summary' => '添加一个或多个RDS实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92648',
+ 'abilityTreeNodes' => [
+ 'FEATUREessJZ6DNF',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1avr6ensitts3w****',
+ ],
+ ],
+ [
+ 'name' => 'ForceAttach',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '当RDS实例添加到伸缩组时,是否把当前伸缩组内实例的私网IP全部添加到RDS实例IP白名单中。取值范围:'."\n"
+ ."\n"
+ .'- true:添加。'."\n"
+ ."\n"
+ .'- false:不添加。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'DBInstance',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'RDS实例的ID,N的取值范围:1~5。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'RDS实例的ID,N的取值范围:1~5。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rm-bp12cy3****',
+ ],
+ 'required' => true,
+ 'example' => 'rm-bp12cy3****',
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'AttachMode',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组与数据库关联方式。取值范围:'."\n"
+ ."\n"
+ .'- SecurityIp:修改IP白名单模式,通过将扩容实例自动添加到数据库白名单(目前仅RDS数据库支持)进行关联。'."\n"
+ .'- SecurityGroup:安全组模式,通过将伸缩配置安全组添加至数据库安全组白名单进行关联,实现安全组下实例数据库访问。'."\n"
+ ."\n"
+ .'默认值:SecurityIp。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SecurityIp',
+ ],
+ ],
+ [
+ 'name' => 'Type',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据库类型。取值范围:'."\n"
+ ."\n"
+ .'- RDS。'."\n"
+ .'- Redis。'."\n"
+ .'- MongoDB。'."\n"
+ ."\n"
+ .'默认值:RDS。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'RDS',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<AttachDBInstancesResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</AttachDBInstancesResponse>","errorExample":""}]',
+ 'title' => '添加一个或多个RDS实例',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'向伸缩组添加RDS实例时需要满足以下条件:'."\n"
+ ."\n"
+ .'- RDS实例与伸缩组必须属于同一账号。'."\n"
+ ."\n"
+ .'- RDS实例必须处于未锁定状态,关于锁定策略,请参见[RDS使用须知](~~41872~~)。'."\n"
+ ."\n"
+ .'- RDS实例必须处于运行中状态。'."\n"
+ ."\n"
+ .'- 如果将伸缩组中已存在的RDS实例再次添加到伸缩组,则伸缩组内的RDS实例数量不会改变,但系统会尝试把当前伸缩组内的ECS实例私网IP全部加入到RDS实例的IP白名单中。'."\n"
+ ."\n"
+ .'>添加RDS实例后,RDS IP白名单的default分组中包含的IP不能超过1000条。关于IP白名单,请参见[设置白名单](~~96118~~)。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|账号下不存在指定的伸缩组。|'."\n"
+ .'|400|QuotaExceeded.RDS|"RDS" quota exceeded.|伸缩组中RDS实例超出配额限制。|'."\n"
+ .'|400|InvalidDBInstanceId.NotFound|The specified value of parameter "%s" is not valid.|不存在指定的RDS实例。|'."\n"
+ .'|400|IncorrectDBInstanceStatus|The current status of DB instance "%s" does not support this action.|当前RDS实例状态不支持该操作。|'."\n"
+ .'|400|QuotaExceeded.DBInstanceSecurityIP|Security IP quota exceeded in DB instance "%s".|RDS实例后端IP白名单个数超出配额。|'."\n"
+ .'|400|InvalidInstanceIds.PrivateIpNotFound|Can not find all private ips of instances in specific scaling group.|无法获取组内实例的私网IP。',
+ ],
+ 'AttachVServerGroups' => [
+ 'summary' => '添加负载均衡实例下的一个或者多个虚拟服务器组。 。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92651',
+ 'abilityTreeNodes' => [
+ 'FEATUREess2GK585',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属地域的ID,如cn-hangzhou、cn-shanghai,更多信息,请参见[地域和可用区](~~40654~~)。 ',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'ForceAttach',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否将当前伸缩组内的ECS实例或ECI实例添加到新增的虚拟服务器组。'."\n"
+ ."\n"
+ .'- true:添加。'."\n"
+ ."\n"
+ .'- false:不添加。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'VServerGroup',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '伸缩组关联的虚拟服务器组的信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组关联的虚拟服务器组的信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'VServerGroupAttribute' => [
+ 'description' => '虚拟服务器组属性。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '虚拟服务器组属性。',
+ 'type' => 'object',
+ 'properties' => [
+ 'VServerGroupId' => [
+ 'description' => '虚拟服务器组的ID。其中:'."\n"
+ ."\n"
+ .'- 第一个N为负载均衡实例编号,取值范围:1~5。'."\n"
+ ."\n"
+ .'- 第二个N为负载均衡实例下虚拟服务器组的编号,取值范围:1~5。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rsp-bp1jp1rge****',
+ ],
+ 'Weight' => [
+ 'description' => '弹性伸缩将ECS实例或ECI实例添加到虚拟服务器组时设置的权重,取值范围:0~100。其中:'."\n"
+ ."\n"
+ .'- 第一个N为负载均衡实例编号,取值范围:1~5。'."\n"
+ ."\n"
+ .'- 第二个N为负载均衡实例下虚拟服务器组的编号,取值范围:1~5。'."\n"
+ ."\n"
+ .'默认值:50。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ 'Port' => [
+ 'description' => '弹性伸缩将ECS实例或ECI实例添加到虚拟服务器组时使用的端口号,取值范围:1~65535。其中:'."\n"
+ ."\n"
+ .'- 第一个N为负载均衡实例编号,取值范围:1~5。'."\n"
+ ."\n"
+ .'- 第二个N为负载均衡实例下虚拟服务器组的编号,取值范围:1~5。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '22',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ 'LoadBalancerId' => [
+ 'description' => '虚拟服务器组所属负载均衡实例的ID。N为负载均衡实例编号,取值范围:1~5。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lb-bp1u7etiogg38yvwz****',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<AttachVServerGroupsResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</AttachVServerGroupsResponse>","errorExample":""}]',
+ 'title' => 'AttachVServerGroups',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 向伸缩组添加虚拟服务器组时需要满足以下条件:'."\n"
+ ."\n"
+ .' - 负载均衡实例与伸缩组必须属于同一账号。'."\n"
+ ."\n"
+ .' - 负载均衡实例与伸缩组必须处于同一地域。'."\n"
+ ."\n"
+ .' - 负载均衡实例必须处于运行中状态。'."\n"
+ ."\n"
+ .' - 负载均衡实例至少配置有一个监听且必须开启健康检查。'."\n"
+ ."\n"
+ .' - 如果负载均衡实例与伸缩组的网络类型均为VPC,必须处于同一VPC。'."\n"
+ ."\n"
+ .' - 当伸缩组的网络类型为VPC,负载均衡实例的网络类型为经典网络时,如果虚拟服务器组包含VPC实例,该实例必须与伸缩组处于同一VPC。'."\n"
+ ."\n"
+ .' - 待添加虚拟服务器组必须属于对应的负载均衡实例。'."\n"
+ ."\n"
+ .' - 不超过伸缩组内虚拟服务器组的限额,具体限额,请参见使用限制。'."\n"
+ ."\n"
+ .'- 添加伸缩组内虚拟服务器组时,需要同时指定以下属性:'."\n"
+ ."\n"
+ .' - 负载均衡实例ID(LoadBalancerId)'."\n"
+ ."\n"
+ .' - 虚拟服务器组ID(VServerGroupId)'."\n"
+ ."\n"
+ .' - 虚拟服务器组端口号(Port)'."\n"
+ ."\n"
+ .' >如果通过不同的端口号将同一虚拟服务器组添加至伸缩组,视为伸缩组内添加了多个虚拟服务器组。如果请求参数中的虚拟服务器组ID和端口号同时重复,默认使用最先配置的一组,忽略其余虚拟服务器组。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|您未授予弹性伸缩完整的OpenAPI调用权限。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|账号下不存在指定的伸缩组。|'."\n"
+ .'|404|InvalidLoadBalancerId.NotFound|The load balancer "%s" does not exist.|账号下不存在指定的负载均衡实例。|'."\n"
+ .'|400|InvalidLoadBalancerId.RegionMismatch|The load balancer "%s" and the specified scaling group are not in the same Region.|负载均衡实例与伸缩组不在同一地域。|'."\n"
+ .'|400|IncorrectLoadBalancerStatus|The current status of the load balancer "%s" does not support this action.|当前负载均衡实例状态不支持此操作。|'."\n"
+ .'|400|IncorrectLoadBalancerHealthCheck|The current health check type of the load balancer "%s" does not support this action.|当前负载均衡实例未开启健康检查。|'."\n"
+ .'|400|InvalidLoadBalancerId.VPCMismatch|The specified virtual switch and the instance in the load balancer "%s" are not in the same VPC.|负载均衡实例与伸缩组不在同一VPC下。|'."\n"
+ .'|400|InvalidVServerGroupId.ForLoadBalancer|Invalid VServerGroupId For LoadBalancer "%s".|VServerGroupId对应的虚拟服务器组不属于指定的负载均衡实例。|'."\n"
+ .'|400|QuotaExceeded.VServerGroup|VServerGroup quota exceeded in the specified scaling group.|当前伸缩组内可配置的虚拟服务器组个数达到上限。',
+ ],
+ 'DetachVServerGroups' => [
+ 'summary' => '移除一个或者多个虚拟服务器组。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92692',
+ 'abilityTreeNodes' => [
+ 'FEATUREess2GK585',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属地域的ID,例如`cn-hangzhou`、`cn-shanghai`。更多信息,请参见[地域和可用区](~~40654~~)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1fo0dbtsbmqa9h****',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'ForceDetach',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否从待移除虚拟服务器组中移除当前伸缩组内的实例。 '."\n"
+ ."\n"
+ .'- true:移除。如果该参数取值为`true`,则从伸缩组中移除负载均衡实例时,系统会将负载均衡实例后端服务器上与伸缩组关联的实例移除。'."\n"
+ ."\n"
+ .'- false:不移除。如果该参数取值为`false`,则从伸缩组中移除负载均衡实例时,系统不会从负载均衡实例后端服务器上移除与伸缩组关联的实例。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'VServerGroup',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '伸缩组关联的虚拟服务器组的信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '待移除的虚拟服务器组的信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'VServerGroupAttribute' => [
+ 'description' => '虚拟服务器属性列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '虚拟服务器组列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'VServerGroupId' => [
+ 'description' => '虚拟服务器组ID。其中:'."\n"
+ ."\n"
+ .'- 第一个N为负载均衡实例编号,取值范围:1~5。'."\n"
+ ."\n"
+ .'- 第二个N为负载均衡实例下虚拟服务器组的编号,取值范围:1~5。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rsp-bp1jp1rge****',
+ ],
+ 'Port' => [
+ 'description' => '弹性伸缩将ECS实例或ECI实例添加到虚拟服务器组时使用的端口号,取值范围:1~65535。其中:'."\n"
+ ."\n"
+ .'- 第一个N为负载均衡实例编号,取值范围:1~5。'."\n"
+ ."\n"
+ .'- 第二个N为负载均衡实例下虚拟服务器组的编号,取值范围:1~5。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '22',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ 'LoadBalancerId' => [
+ 'description' => '虚拟服务器组所属负载均衡实例的ID。'."\n"
+ ."\n"
+ .'N为负载均衡实例编号,取值范围:1~5。'."\n"
+ ."\n"
+ .'>支持最多一次从伸缩组移除5个负载均衡实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lb-bp1p90y3ya9h8s62d****',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<DetachVServerGroupsResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</DetachVServerGroupsResponse>","errorExample":""}]',
+ 'title' => 'DetachVServerGroups',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 确定待移除的虚拟服务器组时,需要同时指定以下参数:'."\n"
+ ."\n"
+ .' - 负载均衡实例ID(LoadBalancerId)'."\n"
+ .' - 虚拟服务器组ID(VServerGroupId) '."\n"
+ .' - 虚拟服务器组端口号(Port)'."\n"
+ ."\n"
+ .'- 如果请求参数中的虚拟服务器组与伸缩组中的虚拟服务器组相匹配,则移除该虚拟服务器组。如果未能匹配,则忽略移除请求,且接口不报错。'."\n"
+ ."\n"
+ .'- 如果移除伸缩组的负载均衡实例时,您需要确认该负载均衡实例不再向伸缩组内实例分发请求,避免造成服务请求丢失的情况。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|您未授予弹性伸缩完整的OpenAPI调用权限。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|账号下不存在指定的伸缩组。|'."\n"
+ .'|400|InvalidParameter|The specified value of parameter "%s" is not valid.|参数值不合法。|'."\n"
+ .'|400|MissingParameter|The input parameter "%s" that is mandatory for processing this request is not supplied.|缺少必要的参数。',
+ ],
+ 'DescribeScalingGroups' => [
+ 'summary' => '查询伸缩组。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92683',
+ 'abilityTreeNodes' => [
+ 'FEATUREess7569XW',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属地域的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组列表的页码。起始值:1。'."\n"
+ ."\n"
+ .'默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数。最大值:50。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'enumValueTitles' => [
+ 10 => '10',
+ ],
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.1',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.1为待查询的伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.2',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.2为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.3',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.3为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.4',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.4为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.5',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.5为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.6',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.6为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.7',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.7为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.8',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.8为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.9',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.9为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.10',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.10为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.11',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.11为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.12',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.12为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.13',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.13为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.14',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.14为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.15',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.15为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.16',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.16为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.17',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.17为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.18',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.18为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.19',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.19为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupName.20',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ScalingGroupName.20为待查询伸缩组的名称。查询结果会忽略失效的伸缩组名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup****',
+ ],
+ ],
+ [
+ 'name' => 'GroupType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组管理的实例类型。取值范围:'."\n"
+ ."\n"
+ .'- ECS:伸缩组内管理的伸缩实例为ECS实例。'."\n"
+ ."\n"
+ .'- ECI:伸缩组内管理的伸缩实例为ECI实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ScalingGroupId.N为待查询伸缩组的ID,N的取值范围:1~20。查询结果会忽略失效的伸缩组ID,并且不报错。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ScalingGroupId.N为待查询伸缩组的ID,N的取值范围:1~20。查询结果会忽略失效的伸缩组ID,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp14wlu85wrpchm0****',
+ ],
+ 'required' => false,
+ 'example' => 'asg-bp14wlu85wrpchm0****',
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'ResourceGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待查询的伸缩组所属的资源组ID。'."\n"
+ .'>当没有伸缩组属于当前资源组下时,查询结果为空,并且不会报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rg-123****',
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '伸缩组的标签信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组的标签信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '伸缩组的标签键。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Department',
+ ],
+ 'Value' => [
+ 'description' => '伸缩组的标签值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Finance',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '伸缩组的总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ScalingGroups' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ScalingGroup' => [
+ 'description' => '伸缩组信息的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组信息的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'VpcId' => [
+ 'description' => '伸缩组所属VPC的ID。',
+ 'type' => 'string',
+ 'example' => 'vpc-bp1vwnn14rqpyiczj****',
+ ],
+ 'CreationTime' => [
+ 'description' => '伸缩组的创建时间。',
+ 'type' => 'string',
+ 'example' => '2014-08-14T10:58Z',
+ ],
+ 'TotalInstanceCount' => [
+ 'description' => '伸缩组内所有ECS实例的数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ScalingGroupName' => [
+ 'description' => '伸缩组的名称。',
+ 'type' => 'string',
+ 'example' => 'dyrSuvBOtO1dEdIlIbp****',
+ ],
+ 'SpotInstancePools' => [
+ 'description' => '指定可用实例规格的个数,伸缩组将按成本最低的多个规格均衡创建抢占式实例。可能值:0~10。'."\n"
+ ."\n"
+ .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为2。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'StoppedCapacity' => [
+ 'description' => '伸缩组中处于节省停机效果的实例数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'OnDemandPercentageAboveBaseCapacity' => [
+ 'description' => '伸缩组满足最小按量实例数(OnDemandBaseCapacity)要求后,超出的实例中按量实例应占的比例。可能值:0~100。'."\n"
+ ."\n"
+ .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'ModificationTime' => [
+ 'description' => '修改时间。',
+ 'type' => 'string',
+ 'example' => '2014-08-14T10:58Z',
+ ],
+ 'MinSize' => [
+ 'description' => '伸缩组内ECS实例台数的最小值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ScalingGroupId' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp14wlu85wrpchm0****',
+ ],
+ 'CompensateWithOnDemand' => [
+ 'description' => '当`MultiAZPolicy`取值为`COST_OPTIMIZED`时,如果因价格、库存等原因无法创建足够的抢占式实例,是否允许自动尝试创建按量实例满足ECS实例数量要求。可能值:'."\n"
+ ."\n"
+ .'- true:允许。'."\n"
+ .'- false:不允许。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'ScalingPolicy' => [
+ 'description' => '指定伸缩组的回收模式。可能值:'."\n"
+ .' '."\n"
+ .'- recycle:伸缩组的回收模式为停机回收模式。'."\n"
+ .'- release:伸缩组的回收模式为释放模式。'."\n"
+ .'- forcerelease:伸缩组的回收模式为强制释放模式。'."\n"
+ ."\n"
+ .'关于被移出实例的动作,请参见[RemoveInstances](~~25955~~)。 ',
+ 'type' => 'string',
+ 'example' => 'recycle',
+ ],
+ 'RemovingWaitCapacity' => [
+ 'description' => '伸缩组中处于移除挂起状态的ECS实例的数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ActiveCapacity' => [
+ 'description' => '已成功加入伸缩组,并正常运行的ECS实例数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'OnDemandBaseCapacity' => [
+ 'description' => '已有伸缩组内所需要的按量实例数的最小值,可能值:0~1000。即当伸缩组内按量实例个数少于该最小值时,系统将优先创建按量实例。'."\n"
+ ."\n"
+ .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ 'ProtectedCapacity' => [
+ 'description' => '伸缩组中处于保护中状态的ECS实例的数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'HealthCheckType' => [
+ 'description' => '伸缩组的健康检查方式。可能值:'."\n"
+ ."\n"
+ .'- NONE:不做健康检查。'."\n"
+ .'- ECS:对伸缩组内的实例做健康检查(ECS类型和ECI类型的伸缩组均使用本取值开启实例健康检查)。'."\n"
+ .'- LOAD_BALANCER: 根据负载均衡(暂不支持clb负载均衡类型)健康检查结果判断实例健康状态。',
+ 'type' => 'string',
+ 'example' => 'ECS',
+ ],
+ 'LifecycleState' => [
+ 'description' => '伸缩组的状态信息。可能值:'."\n"
+ ."\n"
+ .'- Active:生效状态,处于生效状态的伸缩组才能接收执行伸缩规则的请求并触发伸缩活动。'."\n"
+ ."\n"
+ .'- Inactive:失效状态,处于失效状态的伸缩组不接收任何执行伸缩规则的请求。'."\n"
+ ."\n"
+ .'- Deleting:伸缩组正在删除,处于删除中状态的伸缩组不接收任何执行伸缩规则的请求,并且不能修改伸缩组相关参数。',
+ 'type' => 'string',
+ 'example' => 'Active',
+ ],
+ 'GroupDeletionProtection' => [
+ 'description' => '是否开启了伸缩组删除保护。可能值:'."\n"
+ ."\n"
+ .'- true:开启伸缩组删除保护,此时不能删除该伸缩组。'."\n"
+ .'- false:关闭伸缩组删除保护。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'ActiveScalingConfigurationId' => [
+ 'description' => '伸缩组内生效的伸缩配置的ID。',
+ 'type' => 'string',
+ 'example' => 'asc-bp1et2qekq3ojr33****',
+ ],
+ 'GroupType' => [
+ 'description' => '伸缩组管理的实例类型。',
+ 'type' => 'string',
+ 'example' => 'ECS',
+ ],
+ 'MultiAZPolicy' => [
+ 'description' => '多可用区伸缩组ECS实例扩缩容策略。可能值:'."\n"
+ .' '."\n"
+ .'- PRIORITY:根据您定义的虚拟交换机(VSwitchIds.N)扩缩容。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动使用下一优先级的虚拟交换机创建ECS实例。'."\n"
+ ."\n"
+ .'- COST_OPTIMIZED:按vCPU单价从低到高进行尝试创建。当伸缩配置设置了抢占式计费方式的多实例规格时,优先创建对应抢占式实例。您可以继续通过CompensateWithOnDemand参数指定当抢占式实例由于库存等原因无法创建时,是否自动尝试以按量付费的方式创建。'."\n"
+ .' > COST_OPTIMIZED仅在伸缩配置设置了多实例规格或者选用了抢占式实例的情况下生效。'."\n"
+ ."\n"
+ .'- BALANCE:在伸缩组指定的多可用区之间均匀分配ECS实例。如果由于库存不足等原因可用区之间变得不平衡,您可以通过API [RebalanceInstance](~~71516~~)平衡资源。'."\n"
+ .'- COMPOSABLE:是一种组合策略,您可以根据需要自主组合上述多可用区伸缩组ECS实例的扩缩容策略。',
+ 'type' => 'string',
+ 'example' => 'PRIORITY',
+ ],
+ 'RemovingCapacity' => [
+ 'description' => '正在移出伸缩组的ECS实例的数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'PendingWaitCapacity' => [
+ 'description' => '伸缩组中处于加入挂起状态的ECS实例的数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'StandbyCapacity' => [
+ 'description' => '伸缩组中处于备用状态的实例数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PendingCapacity' => [
+ 'description' => '正在加入伸缩组,还未完成相关配置的ECS实例的数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'LaunchTemplateId' => [
+ 'description' => '伸缩组使用的实例启动模板的ID。',
+ 'type' => 'string',
+ 'example' => 'lt-m5e3ofjr1zn1aw7****',
+ ],
+ 'TotalCapacity' => [
+ 'description' => '当伸缩组设置了实例规格权重,表示伸缩组内所有ECS实例的加权容量总和。否则,表示伸缩组内所有ECS实例的数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'DesiredCapacity' => [
+ 'description' => '伸缩组内ECS实例的期望数量,伸缩组会自动将ECS实例数量维持在期望实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'SpotInstanceRemedy' => [
+ 'description' => '是否开启补齐抢占式实例。开启后,当收到抢占式实例将被回收的系统消息时,伸缩组将尝试创建新的实例,替换掉将被回收的抢占式实例。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'LaunchTemplateVersion' => [
+ 'description' => '伸缩组使用的实例启动模板的版本。',
+ 'type' => 'string',
+ 'example' => 'Default',
+ ],
+ 'RegionId' => [
+ 'description' => '伸缩组所属的地域的ID。',
+ 'type' => 'string',
+ 'example' => 'cn-qingdao',
+ ],
+ 'VSwitchId' => [
+ 'description' => '伸缩组关联虚拟交换机的ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-bp1whw2u46cn8zubm****',
+ ],
+ 'MaxSize' => [
+ 'description' => '伸缩组内ECS实例台数的最大值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'DefaultCooldown' => [
+ 'description' => '伸缩组默认的冷却时间。冷却时间内,该伸缩组不执行其他的伸缩活动,仅针对[云监控](~~35170~~)报警任务触发的伸缩活动有效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ ],
+ 'VServerGroups' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'VServerGroup' => [
+ 'description' => '后端服务器组列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '后端服务器组列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'LoadBalancerId' => [
+ 'description' => '后端服务器组所属的负载均衡实例的ID。',
+ 'type' => 'string',
+ 'example' => '147b46d767c-cn-qingdao-cm5****',
+ ],
+ 'VServerGroupAttributes' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'VServerGroupAttribute' => [
+ 'description' => '后端服务器组属性。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '后端服务器组属性。',
+ 'type' => 'object',
+ 'properties' => [
+ 'VServerGroupId' => [
+ 'description' => '后端服务器组的ID。',
+ 'type' => 'string',
+ 'example' => 'rsp-bp12bjrny****',
+ ],
+ 'Weight' => [
+ 'description' => '后端服务器组的权重。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Port' => [
+ 'description' => '负载均衡实例对外提供服务的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '22',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'LaunchTemplateOverrides' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'LaunchTemplateOverride' => [
+ 'description' => '扩展启动模板的实例规格信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '扩展启动模板的实例规格信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'WeightedCapacity' => [
+ 'description' => '指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ 'InstanceType' => [
+ 'description' => '指定的实例规格,会覆盖启动模板中的实例规格。',
+ 'type' => 'string',
+ 'example' => 'ecs.c5.xlarge',
+ ],
+ 'SpotPriceLimit' => [
+ 'description' => '本参数用于指定实例启动模板覆盖规格(即`LaunchTemplateOverride.N.InstanceType`)的竞价价格上限。您可以指定N个该参数,扩展启动模板支持N个实例规格。N的取值范围:1~10。'."\n"
+ .'>仅当`LaunchTemplateId`参数指定了启动模板时,该参数才生效。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '0.025',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'AlbServerGroups' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'AlbServerGroup' => [
+ 'description' => 'ALB服务器组的相关信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ALB服务器组的相关信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AlbServerGroupId' => [
+ 'description' => 'ALB服务器组的ID。',
+ 'type' => 'string',
+ 'example' => 'sgp-ddwb0y0g6y9bjm****',
+ ],
+ 'Weight' => [
+ 'description' => '弹性伸缩将ECS实例添加到ALB服务器组后,ECS实例作为后端服务器的权重。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'Port' => [
+ 'description' => '弹性伸缩将ECS实例添加到ALB服务器组后,ECS实例使用的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ServerGroups' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ServerGroup' => [
+ 'description' => '负载均衡服务器组的相关信息集合。'."\n"
+ .'>您可以通过此参数获取伸缩组关联的ALB类型服务组、NLB类型服务器组和GWLB类型服务组的相关信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡服务器组的相关信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServerGroupId' => [
+ 'description' => '服务器组的ID。',
+ 'type' => 'string',
+ 'example' => 'sgp-i9ouakeaerr*****',
+ ],
+ 'Type' => [
+ 'description' => '服务器组类型。可能值:'."\n"
+ ."\n"
+ .'- ALB:表示应用型负载均衡(Application Load Balancer)。'."\n"
+ .'- NLB:表示网络型负载均衡(Network Load Balancer)。'."\n"
+ .'- GWLB: 网关型负载均衡 GWLB(Gateway Load Balancer)。',
+ 'type' => 'string',
+ 'example' => 'ALB',
+ ],
+ 'Weight' => [
+ 'description' => '弹性伸缩将ECS实例添加到服务器组后,ECS实例作为后端服务器的权重。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'Port' => [
+ 'description' => '弹性伸缩将ECS实例添加到服务器组后,ECS实例使用的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RemovalPolicies' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'RemovalPolicy' => [
+ 'description' => 'ECS实例移出伸缩组的策略的集合。可能值:'."\n"
+ .'- OldestInstance:移出最早创建的ECS实例。'."\n"
+ .'- NewestInstance:移出最新创建的ECS实例。'."\n"
+ .'- OldestScalingConfiguration:移出最早由伸缩配置创建的ECS实例。'."\n"
+ .'- CustomPolicy:基于自定义缩容策略Function函数移除ECS实例。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ECS实例移出伸缩组的策略的集合。可能值:'."\n"
+ .'- OldestInstance:移出最早创建的ECS实例。'."\n"
+ .'- NewestInstance:移出最新创建的ECS实例。'."\n"
+ .'- OldestScalingConfiguration:移出最早由伸缩配置创建的ECS实例。'."\n"
+ .'- CustomPolicy:基于自定义缩容策略Function函数移除ECS实例。',
+ 'type' => 'string',
+ 'example' => 'OldestScalingConfiguration',
+ ],
+ ],
+ ],
+ ],
+ 'DBInstanceIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'DBInstanceId' => [
+ 'description' => '伸缩组关联RDS实例的ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组关联RDS实例的ID。',
+ 'type' => 'string',
+ 'example' => 'rm-bp15556qzebg1****',
+ ],
+ ],
+ ],
+ ],
+ 'LoadBalancerIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'LoadBalancerId' => [
+ 'description' => '伸缩组关联的负载均衡实例的ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组关联的负载均衡实例的ID列表。',
+ 'type' => 'string',
+ 'example' => 'lb-bp19byhscefk3x0li****',
+ ],
+ ],
+ ],
+ ],
+ 'VSwitchIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'VSwitchId' => [
+ 'description' => '伸缩组关联虚拟交换机的ID集合。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组关联虚拟交换机的ID集合。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。',
+ 'type' => 'string',
+ 'example' => 'vsw-bp1whw2u46cn8zubm****',
+ ],
+ ],
+ ],
+ ],
+ 'SuspendedProcesses' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SuspendedProcess' => [
+ 'description' => '暂停中的流程,如果没有,则返回值为空。可能值:'."\n"
+ ."\n"
+ .'- ScaleIn:缩容流程。'."\n"
+ .'- ScaleOut:扩容流程。'."\n"
+ .'- HealthCheck:健康检查。'."\n"
+ .'- AlarmNotification:报警任务。'."\n"
+ .'- ScheduledAction:定时任务。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '暂停中的流程,如果没有,则返回值为空。可能值:'."\n"
+ ."\n"
+ .'- ScaleIn:缩容流程。'."\n"
+ .'- ScaleOut:扩容流程。'."\n"
+ .'- HealthCheck:健康检查。'."\n"
+ .'- AlarmNotification:报警任务。'."\n"
+ .'- ScheduledAction:定时任务。',
+ 'type' => 'string',
+ 'example' => 'ScaleIn',
+ ],
+ ],
+ ],
+ ],
+ 'SystemSuspended' => [
+ 'description' => '弹性伸缩是否停止执行伸缩组内的伸缩活动。可能值:'."\n"
+ ."\n"
+ .'- true:停止执行伸缩组内的伸缩活动,说明该伸缩组已经连续扩缩容失败超过7天。您需要修改伸缩组或者伸缩配置,来恢复伸缩活动的执行。'."\n"
+ ."\n"
+ .'- false:执行伸缩组内的伸缩活动。'."\n"
+ ."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'MonitorGroupId' => [
+ 'description' => '伸缩组关联的云监控应用分组ID。',
+ 'type' => 'string',
+ 'example' => '1497****',
+ ],
+ 'AzBalance' => [
+ 'description' => '伸缩组的容量是否在多个可用区间均衡分布,可能值:'."\n"
+ .'- true:伸缩组的容量在多个可用区间均衡分布。'."\n"
+ .'- false:伸缩组的容量不在多个可用区间均衡分布。'."\n"
+ .'>仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,该参数生效。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'AllocationStrategy' => [
+ 'description' => '容量分配策略,决定了伸缩组如何选择可用的实例规格类型满足容量。容量分布策略同时对按量和抢占式容量生效。可能值:'."\n"
+ .'- priority:按照配置的实例规格的顺序创建实例。'."\n"
+ .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n"
+ .'>仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,该参数生效。',
+ 'type' => 'string',
+ 'example' => 'priority',
+ ],
+ 'SpotAllocationStrategy' => [
+ 'description' => '抢占式容量分布策略。您可以通过该参数单独指定抢占式容量的分布策略(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。可能值:'."\n"
+ ."\n"
+ .'- priority:按照配置的实例规格的顺序创建实例。'."\n"
+ .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。',
+ 'type' => 'string',
+ 'example' => 'lowestPrice',
+ ],
+ 'MaxInstanceLifetime' => [
+ 'description' => '实例在伸缩组中存活的最大时间。单位为秒。'."\n"
+ ."\n"
+ .'可能值:0或`[86400, Integer.maxValue]`。其中,0表示清空MaxInstanceLifetime设置过的值(即未设置MaxInstanceLifetime值)。'."\n"
+ ."\n"
+ .'默认值:null。'."\n"
+ ."\n"
+ .'>ECI类型的伸缩组或停机不收费的伸缩组不支持设置该参数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => 'null',
+ ],
+ 'CustomPolicyARN' => [
+ 'description' => '自定义缩容策略Function函数ARN。仅当RemovalPolicies配置第一个移除策略为CustomPolicy时生效。',
+ 'type' => 'string',
+ 'example' => 'acs:fc:cn-zhangjiakou:16145688****:services/ess_custom_terminate_policy.LATEST/functions/ess_custom_terminate_policy_name',
+ ],
+ 'InitCapacity' => [
+ 'description' => '伸缩组中处于实例扩容前初始化状态的实例数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'ResourceGroupId' => [
+ 'description' => '伸缩组所属的资源组ID。',
+ 'type' => 'string',
+ 'example' => 'rg-123****',
+ ],
+ 'LoadBalancerConfigs' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'LoadBalancerConfig' => [
+ 'description' => '负载均衡CLB(原SLB)配置列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡CLB(原SLB)配置列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'LoadBalancerId' => [
+ 'description' => '负载均衡CLB(原SLB)实例的ID。',
+ 'type' => 'string',
+ 'example' => '147b46d767c-cn-qingdao-cm5****',
+ ],
+ 'Weight' => [
+ 'description' => '弹性伸缩将ECS实例添加到负载均衡CLB(原SLB)服务器组后,ECS实例作为后端服务器的权重。权重越高,ECS实例将被分配到越多的访问请求。如果权重为0,则ECS实例不会收到访问请求。'."\n"
+ ."\n"
+ .'取值范围:0~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'EnableDesiredCapacity' => [
+ 'description' => '是否启用期望实例数标识。可能值:'."\n"
+ .'- true:开启。查询伸缩组后会返回期望实例数信息。'."\n"
+ .'- false:未开启。查询伸缩组后不会返回期望实例数信息。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'Tags' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Tag' => [
+ 'description' => '伸缩组的标签信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组的标签信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'TagKey' => [
+ 'description' => '伸缩组的标签键。',
+ 'type' => 'string',
+ 'example' => 'Department',
+ ],
+ 'TagValue' => [
+ 'description' => '伸缩组的标签值。',
+ 'type' => 'string',
+ 'example' => 'Finance',
+ ],
+ 'Propagate' => [
+ 'description' => '标识该标签是否为可传播标签,可能值:'."\n"
+ ."\n"
+ .'- true:伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n"
+ .'- false:伸缩组上的标签不会传播到实例上。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'HealthCheckTypes' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'HealthCheckType' => [
+ 'description' => '伸缩组的健康检查方式。可能值:'."\n"
+ ."\n"
+ .'- NONE:不做健康检查。'."\n"
+ .'- ECS:对伸缩组内的实例做健康检查(ECS类型和ECI类型的伸缩组均使用本取值开启实例健康检查)。'."\n"
+ .'- LOAD_BALANCER: 根据负载均衡(暂不支持clb负载均衡类型)健康检查结果判断实例健康状态。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组的健康检查方式。可能值:'."\n"
+ ."\n"
+ .'- NONE:不做健康检查。'."\n"
+ .'- ECS:对伸缩组内的实例做健康检查(ECS类型和ECI类型的伸缩组均使用本取值开启实例健康检查)。'."\n"
+ .'- LOAD_BALANCER: 根据负载均衡(暂不支持clb负载均衡类型)健康检查结果判断实例健康状态。',
+ 'type' => 'string',
+ 'example' => 'ECS',
+ ],
+ ],
+ ],
+ ],
+ 'DBInstances' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'DBInstance' => [
+ 'description' => '伸缩组关联的数据库列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组关联的数据库配置信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DBInstanceId' => [
+ 'description' => '数据库实例ID。',
+ 'type' => 'string',
+ 'example' => 'rm-m5eqju85s45mu0***',
+ ],
+ 'Type' => [
+ 'description' => '数据库类型。可能值:'."\n"
+ ."\n"
+ .'- RDS。'."\n"
+ .'- Redis。'."\n"
+ .'- MongoDB。',
+ 'type' => 'string',
+ 'example' => 'RDS',
+ ],
+ 'SecurityGroupIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SecurityGroupId' => [
+ 'description' => '伸缩组向数据库添加的安全组白名单列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组是否会从数据库安全组白名单移除关联数据库列表中的安全组。当CreateScalingGroup接口中的`AttachMode`参数取值为`SecurityGroup`时的关联数据库列表有效,可能值:'."\n"
+ ."\n"
+ .'- true:会从数据库安全组白名单中移除此列表中的安全组。'."\n"
+ .'- false:不会从数据库安全组白名单中移除此列表中的安全组。',
+ 'type' => 'string',
+ 'example' => 'sg-uf65zt66cf2a0q47***',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'SpotCapacity' => [
+ 'description' => '伸缩组中抢占式实例的数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'StopInstanceTimeout' => [
+ 'description' => '缩容流程中等待ECS实例停机成功的超时时间,单位为秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ ],
+ 'CapacityOptions' => [
+ 'description' => '容量选项。',
+ 'type' => 'object',
+ 'properties' => [
+ 'OnDemandBaseCapacity' => [
+ 'description' => '已有伸缩组内所需要的按量实例数的最小值,当伸缩组内按量实例个数少于该值时,系统将优先创建按量实例。可能值:0~1000。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'OnDemandPercentageAboveBaseCapacity' => [
+ 'description' => '伸缩组满足最小按量实例数`OnDemandBaseCapacity`要求后,超出的实例中按量实例应占的比例。取值范围:0~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'CompensateWithOnDemand' => [
+ 'description' => '当`MultiAZPolicy`取值为`COST_OPTIMIZED`时,如果因价格、库存等原因无法创建足够的抢占式实例,是否允许自动尝试创建按量实例满足ECS实例数量要求。可能值:'."\n"
+ ."\n"
+ .'- true:允许。'."\n"
+ .'- false:不允许。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'SpotAutoReplaceOnDemand' => [
+ 'description' => '当开启`CompensateWithOnDemand`后,如果按量比例超过`OnDemandPercentageAboveBaseCapacity`比例时,会尝试使用spot替换按量容量。常见场景`CompensateWithOnDemand`因Spot库存或价格原因导致Spot降级按量实例,为避免按量实例长时间存在,尝试使用Spot替换多余的按量容量。取值范围:'."\n"
+ ."\n"
+ .'- true:允许。'."\n"
+ .'- false:不允许。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'PriceComparisonMode' => [
+ 'description' => '伸缩组成本优化策略的比价模式。可能值:'."\n"
+ ."\n"
+ .'- PricePerUnit:使用每单位容量价格比价。'."\n"
+ ."\n"
+ .' 实例在伸缩组中容量大小等于为实例规格设置的权重,默认为1,即一台ECS所占容量为1。'."\n"
+ ."\n"
+ .'- PricePerVCpu:使用每单位vCpu价格进行比价。'."\n"
+ ."\n"
+ .'默认值:PricePerUnit。',
+ 'type' => 'string',
+ 'example' => 'PricePerUnit',
+ ],
+ ],
+ ],
+ 'BalanceMode' => [
+ 'title' => '负载均衡模式',
+ 'description' => '可用区均衡模式,仅当开启可用区均衡模式时生效。可能值:'."\n"
+ .' '."\n"
+ .'- BalancedBestEffort:'."\n"
+ .'当某可用区资源创建失败时,会降级至其他可用区,保障资源的尽力交付。'."\n"
+ ."\n"
+ .'- BalancedOnly:'."\n"
+ .'当某可用区资源创建失败时,不会降级至其他可用区,扩容活动部分成功,避免资源在不同可用区过度不均衡。',
+ 'type' => 'string',
+ 'example' => 'BalancedBestEffort',
+ ],
+ 'AutoRebalance' => [
+ 'title' => '自动平衡伸缩组',
+ 'description' => '是否开启伸缩组自动均衡,仅当可用区均衡伸缩组开启了BalancedOnly才生效。可能值:'."\n"
+ .'- false:不开启伸缩组自动均衡。'."\n"
+ .'- true:开启伸缩组自动均衡时,伸缩组会自动检测可用区见容量,当可用区容量不均衡时,会主动进行可用区扩缩,进行可用区容量再均衡。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"ScalingGroups\\": {\\n \\"ScalingGroup\\": [\\n {\\n \\"VpcId\\": \\"vpc-bp1vwnn14rqpyiczj****\\",\\n \\"CreationTime\\": \\"2014-08-14T10:58Z\\",\\n \\"TotalInstanceCount\\": 1,\\n \\"ScalingGroupName\\": \\"dyrSuvBOtO1dEdIlIbp****\\",\\n \\"SpotInstancePools\\": 5,\\n \\"StoppedCapacity\\": 1,\\n \\"OnDemandPercentageAboveBaseCapacity\\": 20,\\n \\"ModificationTime\\": \\"2014-08-14T10:58Z\\",\\n \\"MinSize\\": 1,\\n \\"ScalingGroupId\\": \\"asg-bp14wlu85wrpchm0****\\",\\n \\"CompensateWithOnDemand\\": true,\\n \\"ScalingPolicy\\": \\"recycle\\",\\n \\"RemovingWaitCapacity\\": 1,\\n \\"ActiveCapacity\\": 1,\\n \\"OnDemandBaseCapacity\\": 30,\\n \\"ProtectedCapacity\\": 1,\\n \\"HealthCheckType\\": \\"ECS\\",\\n \\"LifecycleState\\": \\"Active\\",\\n \\"GroupDeletionProtection\\": true,\\n \\"ActiveScalingConfigurationId\\": \\"asc-bp1et2qekq3ojr33****\\",\\n \\"GroupType\\": \\"ECS\\",\\n \\"MultiAZPolicy\\": \\"PRIORITY\\",\\n \\"RemovingCapacity\\": 0,\\n \\"PendingWaitCapacity\\": 1,\\n \\"StandbyCapacity\\": 1,\\n \\"PendingCapacity\\": 0,\\n \\"LaunchTemplateId\\": \\"lt-m5e3ofjr1zn1aw7****\\",\\n \\"TotalCapacity\\": 1,\\n \\"DesiredCapacity\\": 5,\\n \\"SpotInstanceRemedy\\": true,\\n \\"LaunchTemplateVersion\\": \\"Default\\",\\n \\"RegionId\\": \\"cn-qingdao\\",\\n \\"VSwitchId\\": \\"vsw-bp1whw2u46cn8zubm****\\",\\n \\"MaxSize\\": 2,\\n \\"DefaultCooldown\\": 60,\\n \\"VServerGroups\\": {\\n \\"VServerGroup\\": [\\n {\\n \\"LoadBalancerId\\": \\"147b46d767c-cn-qingdao-cm5****\\",\\n \\"VServerGroupAttributes\\": {\\n \\"VServerGroupAttribute\\": [\\n {\\n \\"VServerGroupId\\": \\"rsp-bp12bjrny****\\",\\n \\"Weight\\": 1,\\n \\"Port\\": 22\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"LaunchTemplateOverrides\\": {\\n \\"LaunchTemplateOverride\\": [\\n {\\n \\"WeightedCapacity\\": 4,\\n \\"InstanceType\\": \\"ecs.c5.xlarge\\",\\n \\"SpotPriceLimit\\": 0.025\\n }\\n ]\\n },\\n \\"AlbServerGroups\\": {\\n \\"AlbServerGroup\\": [\\n {\\n \\"AlbServerGroupId\\": \\"sgp-ddwb0y0g6y9bjm****\\",\\n \\"Weight\\": 100,\\n \\"Port\\": 80\\n }\\n ]\\n },\\n \\"ServerGroups\\": {\\n \\"ServerGroup\\": [\\n {\\n \\"ServerGroupId\\": \\"sgp-i9ouakeaerr*****\\",\\n \\"Type\\": \\"ALB\\",\\n \\"Weight\\": 100,\\n \\"Port\\": 80\\n }\\n ]\\n },\\n \\"RemovalPolicies\\": {\\n \\"RemovalPolicy\\": [\\n \\"OldestScalingConfiguration\\"\\n ]\\n },\\n \\"DBInstanceIds\\": {\\n \\"DBInstanceId\\": [\\n \\"rm-bp15556qzebg1****\\"\\n ]\\n },\\n \\"LoadBalancerIds\\": {\\n \\"LoadBalancerId\\": [\\n \\"lb-bp19byhscefk3x0li****\\"\\n ]\\n },\\n \\"VSwitchIds\\": {\\n \\"VSwitchId\\": [\\n \\"vsw-bp1whw2u46cn8zubm****\\"\\n ]\\n },\\n \\"SuspendedProcesses\\": {\\n \\"SuspendedProcess\\": [\\n \\"ScaleIn\\"\\n ]\\n },\\n \\"SystemSuspended\\": true,\\n \\"MonitorGroupId\\": \\"1497****\\",\\n \\"AzBalance\\": false,\\n \\"AllocationStrategy\\": \\"priority\\",\\n \\"SpotAllocationStrategy\\": \\"lowestPrice\\",\\n \\"MaxInstanceLifetime\\": 0,\\n \\"CustomPolicyARN\\": \\"acs:fc:cn-zhangjiakou:16145688****:services/ess_custom_terminate_policy.LATEST/functions/ess_custom_terminate_policy_name\\",\\n \\"InitCapacity\\": 0,\\n \\"ResourceGroupId\\": \\"rg-123****\\",\\n \\"LoadBalancerConfigs\\": {\\n \\"LoadBalancerConfig\\": [\\n {\\n \\"LoadBalancerId\\": \\"147b46d767c-cn-qingdao-cm5****\\",\\n \\"Weight\\": 10\\n }\\n ]\\n },\\n \\"EnableDesiredCapacity\\": false,\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagKey\\": \\"Department\\",\\n \\"TagValue\\": \\"Finance\\",\\n \\"Propagate\\": false\\n }\\n ]\\n },\\n \\"HealthCheckTypes\\": {\\n \\"HealthCheckType\\": [\\n \\"ECS\\"\\n ]\\n },\\n \\"DBInstances\\": {\\n \\"DBInstance\\": [\\n {\\n \\"DBInstanceId\\": \\"rm-m5eqju85s45mu0***\\",\\n \\"Type\\": \\"RDS\\",\\n \\"SecurityGroupIds\\": {\\n \\"SecurityGroupId\\": [\\n \\"sg-uf65zt66cf2a0q47***\\"\\n ]\\n }\\n }\\n ]\\n },\\n \\"SpotCapacity\\": 0,\\n \\"StopInstanceTimeout\\": 60,\\n \\"CapacityOptions\\": {\\n \\"OnDemandBaseCapacity\\": 0,\\n \\"OnDemandPercentageAboveBaseCapacity\\": 0,\\n \\"CompensateWithOnDemand\\": true,\\n \\"SpotAutoReplaceOnDemand\\": false,\\n \\"PriceComparisonMode\\": \\"PricePerUnit\\"\\n },\\n \\"BalanceMode\\": \\"BalancedBestEffort\\",\\n \\"AutoRebalance\\": false\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeScalingGroupsResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>1</TotalCount>\\n <ScalingGroups>\\n <VpcId>vpc-bp1vwnn14rqpyiczj****</VpcId>\\n <CreationTime>2014-08-14T10:58Z</CreationTime>\\n <TotalInstanceCount>1</TotalInstanceCount>\\n <ScalingGroupName>dyrSuvBOtO1dEdIlIbp****</ScalingGroupName>\\n <SpotInstancePools>5</SpotInstancePools>\\n <StoppedCapacity>1</StoppedCapacity>\\n <OnDemandPercentageAboveBaseCapacity>20</OnDemandPercentageAboveBaseCapacity>\\n <ModificationTime>2014-08-14T10:58Z</ModificationTime>\\n <MinSize>1</MinSize>\\n <ScalingGroupId>asg-bp14wlu85wrpchm0****</ScalingGroupId>\\n <CompensateWithOnDemand>true</CompensateWithOnDemand>\\n <ScalingPolicy>recycle</ScalingPolicy>\\n <RemovingWaitCapacity>1</RemovingWaitCapacity>\\n <ActiveCapacity>1</ActiveCapacity>\\n <OnDemandBaseCapacity>30</OnDemandBaseCapacity>\\n <ProtectedCapacity>1</ProtectedCapacity>\\n <HealthCheckType>ECS</HealthCheckType>\\n <LifecycleState>Active</LifecycleState>\\n <GroupDeletionProtection>true</GroupDeletionProtection>\\n <ActiveScalingConfigurationId>asc-bp1et2qekq3ojr33****</ActiveScalingConfigurationId>\\n <GroupType>ECS</GroupType>\\n <MultiAZPolicy>PRIORITY</MultiAZPolicy>\\n <RemovingCapacity>0</RemovingCapacity>\\n <PendingWaitCapacity>1</PendingWaitCapacity>\\n <StandbyCapacity>1</StandbyCapacity>\\n <PendingCapacity>0</PendingCapacity>\\n <LaunchTemplateId>lt-m5e3ofjr1zn1aw7****</LaunchTemplateId>\\n <TotalCapacity>1</TotalCapacity>\\n <DesiredCapacity>5</DesiredCapacity>\\n <SpotInstanceRemedy>true</SpotInstanceRemedy>\\n <LaunchTemplateVersion>Default</LaunchTemplateVersion>\\n <RegionId>cn-qingdao</RegionId>\\n <VSwitchId>vsw-bp1whw2u46cn8zubm****</VSwitchId>\\n <MaxSize>2</MaxSize>\\n <DefaultCooldown>60</DefaultCooldown>\\n <VServerGroups>\\n <LoadBalancerId>147b46d767c-cn-qingdao-cm5****</LoadBalancerId>\\n <VServerGroupAttributes>\\n <VServerGroupId>rsp-bp12bjrny****</VServerGroupId>\\n <Weight>1</Weight>\\n <Port>22</Port>\\n </VServerGroupAttributes>\\n </VServerGroups>\\n <LaunchTemplateOverrides>\\n <WeightedCapacity>4</WeightedCapacity>\\n <InstanceType>ecs.c5.xlarge</InstanceType>\\n <SpotPriceLimit>0.025</SpotPriceLimit>\\n </LaunchTemplateOverrides>\\n <AlbServerGroups>\\n <AlbServerGroupId>sgp-ddwb0y0g6y9bjm****</AlbServerGroupId>\\n <Weight>100</Weight>\\n <Port>80</Port>\\n </AlbServerGroups>\\n <ServerGroups>\\n <ServerGroupId>sgp-i9ouakeaerr*****</ServerGroupId>\\n <Type>ALB</Type>\\n <Weight>100</Weight>\\n <Port>80</Port>\\n </ServerGroups>\\n <RemovalPolicies>OldestScalingConfiguration</RemovalPolicies>\\n <DBInstanceIds>rm-bp15556qzebg1****</DBInstanceIds>\\n <LoadBalancerIds>lb-bp19byhscefk3x0li****</LoadBalancerIds>\\n <VSwitchIds>vsw-bp1whw2u46cn8zubm****</VSwitchIds>\\n <SuspendedProcesses>ScaleIn</SuspendedProcesses>\\n <SystemSuspended>true</SystemSuspended>\\n <MonitorGroupId>1497****</MonitorGroupId>\\n <AzBalance>false</AzBalance>\\n <AllocationStrategy>priority</AllocationStrategy>\\n <SpotAllocationStrategy>lowestPrice</SpotAllocationStrategy>\\n <CustomPolicyARN>acs:fc:cn-zhangjiakou:16145688****:services/ess_custom_terminate_policy.LATEST/functions/ess_custom_terminate_policy_name</CustomPolicyARN>\\n <InitCapacity>0</InitCapacity>\\n <ResourceGroupId>rg-123****</ResourceGroupId>\\n <LoadBalancerConfigs>\\n <LoadBalancerId>147b46d767c-cn-qingdao-cm5****</LoadBalancerId>\\n <Weight>10</Weight>\\n </LoadBalancerConfigs>\\n <EnableDesiredCapacity>false</EnableDesiredCapacity>\\n <Tags>\\n <TagKey>Department</TagKey>\\n <TagValue>Finance</TagValue>\\n <Propagate>false</Propagate>\\n </Tags>\\n <HealthCheckTypes>ECS</HealthCheckTypes>\\n <DBInstances>\\n <DBInstanceId>rm-m5eqju85s45mu0***</DBInstanceId>\\n <Type>RDS</Type>\\n <SecurityGroupIds>sg-uf65zt66cf2a0q47***</SecurityGroupIds>\\n </DBInstances>\\n <SpotCapacity>0</SpotCapacity>\\n <StopInstanceTimeout>60</StopInstanceTimeout>\\n <CapacityOptions>\\n <OnDemandBaseCapacity>0</OnDemandBaseCapacity>\\n <OnDemandPercentageAboveBaseCapacity>0</OnDemandPercentageAboveBaseCapacity>\\n <CompensateWithOnDemand>true</CompensateWithOnDemand>\\n <SpotAutoReplaceOnDemand>false</SpotAutoReplaceOnDemand>\\n </CapacityOptions>\\n </ScalingGroups>\\n</DescribeScalingGroupsResponse>","errorExample":""}]',
+ 'title' => '查询伸缩组列表',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeScalingInstances' => [
+ 'summary' => '查询伸缩组内ECS实例、ECI实例或托管实例的列表,并列出ECS实例、ECI实例或托管实例的信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '92684',
+ 'abilityTreeNodes' => [
+ 'FEATUREessPMOEEX',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属地域的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp1igpak5ft1flyp****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingConfigurationId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '关联伸缩配置的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asc-bp1i65jd06v04vdh****',
+ ],
+ ],
+ [
+ 'name' => 'HealthStatus',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例或ECI实例在伸缩组中的健康状态。未处于运行中(Running)状态的ECS实例或ECI实例会被判定为不健康的实例,取值范围:'."\n"
+ ."\n"
+ .'- Healthy:健康的ECS实例或ECI实例。'."\n"
+ .'- Unhealthy:不健康的ECS实例或ECI实例。'."\n"
+ ."\n"
+ .'弹性伸缩会自动移出伸缩组中不健康的ECS实例或ECI实例,并释放自动创建的ECS实例或ECI实例。'."\n"
+ ."\n"
+ .'是否释放手动添加的ECS实例或ECI实例由其托管状态决定。如果实例生命周期未托管给伸缩组,只移出实例但不释放。如果实例生命周期托管给伸缩组,移出并释放实例。'."\n"
+ ."\n"
+ .'> 请确保账号可用额度充足。如果账号欠费,所有后付费的ECS实例或ECI实例(包括按量付费实例和抢占式实例)都会停机,甚至被释放。欠费后伸缩组内ECS实例或ECI实例状态变化,请参见[欠费说明](~~170589~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Healthy',
+ ],
+ ],
+ [
+ 'name' => 'LifecycleState',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例、ECI实例或托管实例在伸缩组中的生命周期状态,取值范围:'."\n"
+ .' '."\n"
+ .'- InService:已成功加入伸缩组并正常提供服务。'."\n"
+ .'- Pending:加入中。ECS实例或ECI实例加入伸缩组时包括加入负载均衡实例的后端服务器、RDS实例的访问白名单等过程。'."\n"
+ .'- Pending:Wait:加入挂起中。如果伸缩组内创建了适用于弹性扩张活动的生命周期挂钩,ECS实例或ECI实例在加入伸缩组时被挂起并等待挂钩超时时间结束。'."\n"
+ .'- Protected:保护中。ECS实例或ECI实例正常提供服务,但弹性伸缩不管理ECS实例或ECI实例的生命周期,而是由您手动管理。'."\n"
+ .'- Standby:备用中。ECS实例或ECI实例不提供服务,负载均衡权重被置为零,且弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n"
+ .'- Stopped:停用中。ECS实例、ECI实例或托管实例已停机,不提供服务。'."\n"
+ .'- Removing:移出中。ECS实例或ECI实例移出伸缩组时包括移出负载均衡实例的后端服务器、RDS实例的访问白名单等过程。'."\n"
+ .'- Removing:Wait:移出挂起中。如果伸缩组内创建了适用于弹性收缩活动的生命周期挂钩,ECS实例或ECI实例在移出伸缩组时被挂起并等待挂钩超时时间结束。'."\n"
+ .'>托管实例不支持配置生命周期挂钩、关联到负载均衡和健康检查功能。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'InService',
+ ],
+ ],
+ [
+ 'name' => 'CreationType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组中实例的创建方式,取值范围: '."\n"
+ ."\n"
+ .'- AutoCreated:弹性伸缩根据实例配置信息来源自动创建的ECS实例或ECI实例。'."\n"
+ .'- Attached:不是通过弹性伸缩服务创建,而是由您手动添加到伸缩组中的ECS实例或ECI实例。'."\n"
+ .'- Managed:不是通过弹性伸缩服务创建,而是由您手动添加到伸缩组中的托管实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AutoCreated',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例列表的页码,起始值:1。'."\n"
+ ."\n"
+ .'默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值:100。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '200',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'ScalingActivityId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩活动的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asa-bp1c9djwrgxjyk31****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '伸缩组中实例的ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组中实例的ID,N的取值范围:1~20。'."\n"
+ ."\n"
+ .'返回查询结果时忽略失效的InstanceId,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-bp109k5j3dum1ce6****',
+ ],
+ 'required' => false,
+ 'example' => 'i-bp109k5j3dum1ce6****',
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'CreationTypes',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '伸缩组中实例的创建方式,此参数和CreationType参数只能同时传入一个。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组中实例的创建方式,此参数和CreationType参数不能同时设置。取值范围:'."\n"
+ .'- AutoCreated:弹性伸缩根据实例配置信息来源自动创建的ECS实例。'."\n"
+ .'- Attached:不是通过弹性伸缩服务创建,而是由您手动添加到伸缩组中的ECS实例。'."\n"
+ .'- Managed:不是通过弹性伸缩服务创建,而是由您手动添加到伸缩组中的托管实例。'."\n"
+ .'>设置该参数时,您可以选择多个创建方式(例如取值为AutoCreated、Attached、Managed)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AutoCreated',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'LifecycleStates',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ECS实例、ECI实例或托管实例在伸缩组中的生命周期状态列表,此参数和`LifecycleState`参数只能同时传入一个,建议您使用此参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ECS实例、ECI实例或托管实例在伸缩组中的生命周期状态,取值范围:'."\n"
+ ."\n"
+ .'- InService:已成功加入伸缩组并正常提供服务。'."\n"
+ .'- Pending:加入中。ECS实例或ECI实例加入伸缩组时包括加入负载均衡实例的后端服务器、RDS实例的访问白名单等过程。'."\n"
+ .'- Pending:Wait:加入挂起中。如果伸缩组内创建了适用于弹性扩张活动的生命周期挂钩,ECS实例或ECI实例在加入伸缩组时被挂起并等待挂钩超时时间结束。'."\n"
+ .'- Protected:保护中。ECS实例或ECI实例正常提供服务,但弹性伸缩不管理ECS实例或ECI实例的生命周期,而是由您手动管理。'."\n"
+ .'- Standby:备用中。ECS实例或ECI实例不提供服务,负载均衡权重被置为零,且弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n"
+ .'- Stopped:停用中。ECS实例、ECI实例或托管实例已停机,不提供服务。'."\n"
+ .'- Removing:移出中。ECS实例或ECI实例移出伸缩组时包括移出负载均衡实例的后端服务器、RDS实例的访问白名单等过程。'."\n"
+ .'- Removing:Wait:移出挂起中。移出挂起中。如果伸缩组内创建了适用于弹性收缩活动的生命周期挂钩,ECS实例或ECI实例在移出伸缩组时被挂起并等待挂钩超时时间结束。'."\n"
+ .'>托管实例不支持配置生命周期挂钩、关联到负载均衡和健康检查功能。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'InService',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'B13527BF-1FBD-4334-A512-20F5E9D3****',
+ ],
+ 'PageSize' => [
+ 'description' => '每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'TotalSpotCount' => [
+ 'description' => '当前伸缩组中,运行状态的抢占式实例总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ 'TotalCount' => [
+ 'description' => '实例的总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ScalingInstances' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ScalingInstance' => [
+ 'description' => '实例信息组成的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例信息组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => [
+ 'description' => '实例加入伸缩组的时间,精确到分钟。',
+ 'type' => 'string',
+ 'example' => '2020-05-18T03:11Z',
+ ],
+ 'LoadBalancerWeight' => [
+ 'description' => '负载均衡实例权重。'."\n"
+ .'> 该参数已废弃,不建议使用。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'LaunchTemplateId' => [
+ 'description' => '实例启动模板的ID。',
+ 'type' => 'string',
+ 'example' => 'lt-m5e3ofjr1zn1aw7****',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例的ID。',
+ 'type' => 'string',
+ 'example' => 'i-bp109k5j3dum1ce6****',
+ ],
+ 'SpotStrategy' => [
+ 'description' => '抢占式实例的抢占策略。可能值:'."\n"
+ ."\n"
+ .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n"
+ .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。',
+ 'type' => 'string',
+ 'example' => 'SpotWithPriceLimit',
+ ],
+ 'LaunchTemplateVersion' => [
+ 'description' => '实例启动模板的版本。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'HealthStatus' => [
+ 'description' => 'ECS实例或ECI实例在伸缩组中的健康状态。未处于运行中(Running)状态的ECS实例或ECI实例会被判定为不健康的实例,可能值: '."\n"
+ ."\n"
+ .'- Healthy:健康的ECS实例或ECI实例。'."\n"
+ .'- Unhealthy:不健康的ECS实例或ECI实例。'."\n"
+ ."\n"
+ .'弹性伸缩会自动移出伸缩组中不健康的ECS实例或ECI实例,并释放自动创建的ECS实例或ECI实例。'."\n"
+ ."\n"
+ .'是否释放手动添加的ECS实例或ECI实例由其托管状态决定。如果实例生命周期未托管给伸缩组,只移出实例但不释放。如果实例生命周期托管给伸缩组,移出并释放实例。'."\n"
+ ."\n"
+ .'> 请确保账号可用额度充足。如果账号欠费,所有后付费的ECS实例或ECI实例(包括按量付费实例和抢占式实例)都会停机,甚至被释放。欠费后伸缩组内ECS实例或ECI实例状态变化,请参见[欠费说明](~~170589~~)。',
+ 'type' => 'string',
+ 'example' => 'Healthy',
+ ],
+ 'ScalingGroupId' => [
+ 'description' => '所属伸缩组的ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp1igpak5ft1flyp****',
+ ],
+ 'WarmupState' => [
+ 'description' => '实例的预热状态,可能值:'."\n"
+ .' '."\n"
+ .'- NoNeedWarmup:不需要预热。'."\n"
+ .'- WaitingForInstanceWarmup:等待预热结束。'."\n"
+ .'- InstanceWarmupFinish:预热结束。'."\n"
+ .' ',
+ 'type' => 'string',
+ 'example' => 'NoNeedWarmup',
+ ],
+ 'LifecycleState' => [
+ 'description' => 'ECS实例、ECI实例或托管实例在伸缩组中的生命周期状态,可能值:'."\n"
+ .' '."\n"
+ .'- InService:已成功加入伸缩组并正常提供服务。'."\n"
+ .'- Pending:加入中。ECS实例或ECI实例加入伸缩组时包括加入负载均衡实例的后端服务器、RDS实例的访问白名单等过程。'."\n"
+ .'- Pending:Wait:加入挂起中。如果伸缩组内创建了适用于弹性扩张活动的生命周期挂钩,ECS实例或ECI实例在加入伸缩组时被挂起并等待挂钩超时时间结束。'."\n"
+ .'- Protected:保护中。ECS实例或ECI实例正常提供服务,但弹性伸缩不管理ECS实例或ECI实例的生命周期,而是由您手动管理。'."\n"
+ .'- Standby:备用中。ECS实例或ECI实例不提供服务,负载均衡权重被置为零,且弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n"
+ .'- Stopped:停用中。ECS实例、ECI实例或托管实例已停机,不提供服务。'."\n"
+ .'- Removing:移出中。ECS实例或ECI实例移出伸缩组时包括移出负载均衡实例的后端服务器、RDS实例的访问白名单等过程。'."\n"
+ .'- Removing:Wait:移出挂起中。如果伸缩组内创建了适用于弹性收缩活动的生命周期挂钩,ECS实例或ECI实例在移出伸缩组时被挂起并等待挂钩超时时间结束。'."\n"
+ .'>托管实例不支持配置生命周期挂钩、关联到负载均衡和健康检查功能。',
+ 'type' => 'string',
+ 'example' => 'InService',
+ ],
+ 'CreationType' => [
+ 'description' => '伸缩组中实例的创建方式,可能值:'."\n"
+ ."\n"
+ .'- AutoCreated:弹性伸缩根据实例配置信息来源自动创建的ECS实例。'."\n"
+ .'- Attached:不是通过弹性伸缩服务创建,而是由您手动添加到伸缩组中的ECS实例。'."\n"
+ .'- Managed:不是通过弹性伸缩服务创建,而是由您手动添加到伸缩组中的托管实例。',
+ 'type' => 'string',
+ 'example' => 'AutoCreated',
+ ],
+ 'ZoneId' => [
+ 'description' => '实例所属的可用区ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-g',
+ ],
+ 'ScalingConfigurationId' => [
+ 'description' => '关联伸缩配置的ID。',
+ 'type' => 'string',
+ 'example' => 'asc-bp1i65jd06v04vdh****',
+ ],
+ 'Entrusted' => [
+ 'description' => '手动添加实例到伸缩组时,是否将实例托管给伸缩组,托管状态的手动添加实例,在移除伸缩组(不包括手动移除)时,将执行释放操作。可能值:'."\n"
+ .'- true:将实例托管给伸缩组。'."\n"
+ .'- false:不将实例托管给伸缩组。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'WeightedCapacity' => [
+ 'description' => '实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ 'CreatedTime' => [
+ 'description' => '实例加入伸缩组的时间,精确到秒。',
+ 'type' => 'string',
+ 'example' => '2020-05-18T03:11:39Z',
+ ],
+ 'ScalingActivityId' => [
+ 'description' => '实例加入伸缩组时,伸缩活动的ID。',
+ 'type' => 'string',
+ 'example' => 'asa-bp1c9djwrgxjyk31****',
+ ],
+ 'InstanceType' => [
+ 'description' => '实例的规格。',
+ 'type' => 'string',
+ 'example' => 'ecs.n1.small',
+ ],
+ 'ScalingInstanceId' => [
+ 'description' => '伸缩组内的实例标识,与ECS实例或ECI实例的ID一一对应。',
+ 'type' => 'string',
+ 'example' => 'asi-j6cj1gcte640ekhb****',
+ ],
+ 'PrivateIpAddress' => [
+ 'description' => '伸缩组中实例的内网IP地址。',
+ 'type' => 'string',
+ 'example' => '1**.2*.1**.2**',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B13527BF-1FBD-4334-A512-20F5E9D3****\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"TotalSpotCount\\": 4,\\n \\"TotalCount\\": 1,\\n \\"ScalingInstances\\": {\\n \\"ScalingInstance\\": [\\n {\\n \\"CreationTime\\": \\"2020-05-18T03:11Z\\",\\n \\"LoadBalancerWeight\\": 50,\\n \\"LaunchTemplateId\\": \\"lt-m5e3ofjr1zn1aw7****\\",\\n \\"InstanceId\\": \\"i-bp109k5j3dum1ce6****\\",\\n \\"SpotStrategy\\": \\"SpotWithPriceLimit\\",\\n \\"LaunchTemplateVersion\\": \\"1\\",\\n \\"HealthStatus\\": \\"Healthy\\",\\n \\"ScalingGroupId\\": \\"asg-bp1igpak5ft1flyp****\\",\\n \\"WarmupState\\": \\"NoNeedWarmup\\",\\n \\"LifecycleState\\": \\"InService\\",\\n \\"CreationType\\": \\"AutoCreated\\",\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"ScalingConfigurationId\\": \\"asc-bp1i65jd06v04vdh****\\",\\n \\"Entrusted\\": true,\\n \\"WeightedCapacity\\": 4,\\n \\"CreatedTime\\": \\"2020-05-18T03:11:39Z\\",\\n \\"ScalingActivityId\\": \\"asa-bp1c9djwrgxjyk31****\\",\\n \\"InstanceType\\": \\"ecs.n1.small\\",\\n \\"ScalingInstanceId\\": \\"asi-j6cj1gcte640ekhb****\\",\\n \\"PrivateIpAddress\\": \\"1**.2*.1**.2**\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeScalingInstancesResponse>\\n <RequestId>B13527BF-1FBD-4334-A512-20F5E9D3****</RequestId>\\n <PageSize>10</PageSize>\\n <PageNumber>1</PageNumber>\\n <TotalSpotCount>4</TotalSpotCount>\\n <TotalCount>1</TotalCount>\\n <ScalingInstances>\\n <CreationTime>2020-05-18T03:11Z</CreationTime>\\n <LoadBalancerWeight>50</LoadBalancerWeight>\\n <LaunchTemplateId>lt-m5e3ofjr1zn1aw7****</LaunchTemplateId>\\n <InstanceId>i-bp109k5j3dum1ce6****</InstanceId>\\n <SpotStrategy>SpotWithPriceLimit</SpotStrategy>\\n <LaunchTemplateVersion>1</LaunchTemplateVersion>\\n <HealthStatus>Healthy</HealthStatus>\\n <ScalingGroupId>asg-bp1igpak5ft1flyp****</ScalingGroupId>\\n <WarmupState>NoNeedWarmup</WarmupState>\\n <LifecycleState>InService</LifecycleState>\\n <CreationType>AutoCreated</CreationType>\\n <ZoneId>cn-hangzhou-g</ZoneId>\\n <ScalingConfigurationId>asc-bp1i65jd06v04vdh****</ScalingConfigurationId>\\n <Entrusted>true</Entrusted>\\n <WeightedCapacity>4</WeightedCapacity>\\n <CreatedTime>2020-05-18T03:11:39Z</CreatedTime>\\n <ScalingActivityId>asa-bp1c9djwrgxjyk31****</ScalingActivityId>\\n <InstanceType>ecs.n1.small</InstanceType>\\n <ScalingInstanceId>asi-j6cj1gcte640ekhb****</ScalingInstanceId>\\n <PrivateIpAddress>1**.2*.1**.2**</PrivateIpAddress>\\n </ScalingInstances>\\n</DescribeScalingInstancesResponse>","errorExample":""}]',
+ 'title' => '查询伸缩组内实例列表',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeScalingActivities' => [
+ 'summary' => '查询伸缩活动。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '92680',
+ 'abilityTreeNodes' => [
+ 'FEATUREessACRSW1',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩活动所属伸缩组的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩活动列表的页码,起始值:1。'."\n"
+ ."\n"
+ .'默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值:50。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'maximum' => '50',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。'."\n"
+ .'>调用该API时,`ScalingGroupId`和`ScalingActivityId.N`参数必须二选一进行配置,如果两个参数同时都不配置,则会报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'StatusCode',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩活动的状态。取值范围:'."\n"
+ .'- Successful:执行成功的伸缩活动。 '."\n"
+ .'- Warning:部分执行成功的伸缩活动。 '."\n"
+ .'- Failed:执行失败的伸缩活动。'."\n"
+ .'- InProgress:正在执行的伸缩活动。'."\n"
+ .'- Rejected:执行伸缩活动请求被拒绝。 ',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'Successful',
+ ],
+ ],
+ [
+ 'name' => 'ScalingActivityId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '为待查询伸缩活动的ID。'."\n"
+ .'>调用该API时,`ScalingGroupId`和`ScalingActivityId.N`参数必须二选一进行配置,如果两个参数同时都不配置,则会报错。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '待查询伸缩活动的ID。'."\n"
+ .'>调用该API时,`ScalingGroupId`和`ScalingActivityId.N`参数必须二选一进行配置,如果两个参数同时都不配置,则会报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asa-bp161xudmuxdzofe****',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'InstanceRefreshTaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例刷新任务ID,可以设置此参数查询实例刷新任务相关的伸缩活动列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ir-a12ds234fasd*****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CC107349-57B7-4405-B1BF-9BF5AF7F****',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '伸缩活动总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ScalingActivities' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ScalingActivity' => [
+ 'description' => '伸缩活动信息组成的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩活动信息组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Progress' => [
+ 'description' => '伸缩活动的运行进度。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'ScalingInstanceNumber' => [
+ 'description' => '- 如果伸缩活动类型为扩容,该参数表示本次伸缩活动中被创建或从停机回收状态启动的实例的个数。'."\n"
+ .'- 如果伸缩活动类型为缩容,该参数表示本次伸缩活动中被删除或进入停机回收状态的实例的个数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'AttachedCapacity' => [
+ 'description' => '执行完伸缩活动后,伸缩组中用户手动添加的实例的总数。',
+ 'type' => 'string',
+ 'example' => '0',
+ ],
+ 'TotalCapacity' => [
+ 'description' => '执行完伸缩活动后,伸缩组中实例的总数。',
+ 'type' => 'string',
+ 'example' => '2',
+ ],
+ 'ScalingGroupId' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ 'AutoCreatedCapacity' => [
+ 'description' => '执行完伸缩活动后,伸缩组中由伸缩组负责自动创建的实例的总数。',
+ 'type' => 'string',
+ 'example' => '2',
+ ],
+ 'EndTime' => [
+ 'description' => '伸缩活动的结束时间。',
+ 'type' => 'string',
+ 'example' => '2020-09-10T09:54Z',
+ ],
+ 'StartTime' => [
+ 'description' => '伸缩活动的开始时间。',
+ 'type' => 'string',
+ 'example' => '2020-09-10T09:54Z',
+ ],
+ 'Description' => [
+ 'description' => '伸缩活动的描述信息。',
+ 'type' => 'string',
+ 'example' => 'Add \\"1\\" ECS instance',
+ ],
+ 'StatusCode' => [
+ 'description' => '伸缩活动的状态。可能值:'."\n"
+ .'- Successful:执行成功的伸缩活动。 '."\n"
+ .'- Warning:部分执行成功的伸缩活动。 '."\n"
+ .'- Failed:执行失败的伸缩活动。 '."\n"
+ .'- InProgress:正在执行的伸缩活动。'."\n"
+ .'- Rejected:执行伸缩活动请求被拒绝。 ',
+ 'type' => 'string',
+ 'example' => 'Successful',
+ ],
+ 'Cause' => [
+ 'description' => '触发伸缩活动的原因。',
+ 'type' => 'string',
+ 'example' => 'A user requests to execute scaling rule \\"asr-bp12tcnol686y1ik****\\", changing the Total Capacity from \\"1\\" to \\"2\\".',
+ ],
+ 'ScalingActivityId' => [
+ 'description' => '伸缩活动的ID。',
+ 'type' => 'string',
+ 'example' => 'asa-bp161xudmuxdzofe****',
+ ],
+ 'StatusMessage' => [
+ 'description' => '伸缩活动的状态信息。',
+ 'type' => 'string',
+ 'example' => '\\"1\\" ECS instances are added',
+ ],
+ 'CreatedCapacity' => [
+ 'description' => '当前伸缩活动新建的实例数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'DestroyedCapacity' => [
+ 'description' => '当前伸缩活动释放的实例数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'StartedCapacity' => [
+ 'description' => '当前伸缩活动从停机不收费状态启动的实例数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'StoppedCapacity' => [
+ 'description' => '当前伸缩活动进入停机不收费状态的实例数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'CreatedInstances' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'CreatedInstance' => [
+ 'description' => '当前伸缩活动新建实例列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '当前伸缩活动新建实例列表。',
+ 'type' => 'string',
+ 'example' => '[ "i-abc1", "i-abc2" ]',
+ ],
+ ],
+ ],
+ ],
+ 'DestroyedInstances' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'DestroyedInstance' => [
+ 'description' => '当前伸缩活动释放实例列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '当前伸缩活动释放实例列表。',
+ 'type' => 'string',
+ 'example' => '[ "i-abc1", "i-abc2" ]',
+ ],
+ ],
+ ],
+ ],
+ 'StartedInstances' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'StartedInstance' => [
+ 'description' => '当前伸缩活动启动的停机不收费实例列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '当前伸缩活动启动的停机不收费实例列表。',
+ 'type' => 'string',
+ 'example' => '[ "i-abc1", "i-abc2" ]',
+ ],
+ ],
+ ],
+ ],
+ 'StoppedInstances' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'StoppedInstance' => [
+ 'description' => '当前伸缩活动进入停机不收费状态实例列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '当前伸缩活动进入停机不收费状态实例列表。',
+ 'type' => 'string',
+ 'example' => '[ "i-abc1", "i-abc2" ]',
+ ],
+ ],
+ ],
+ ],
+ 'ErrorCode' => [
+ 'description' => '伸缩活动失败时的错误码。',
+ 'type' => 'string',
+ 'example' => 'OperationDenied.NoStock',
+ ],
+ 'ErrorMessage' => [
+ 'description' => '伸缩活动失败时的错误信息。',
+ 'type' => 'string',
+ 'example' => 'The specified ECS resource is out of stock in this region. Please try again later.',
+ ],
+ 'Detail' => [
+ 'description' => '伸缩活动详细信息。',
+ 'type' => 'string',
+ 'example' => '"new ECS instances "i-j6c8ilerw, i-j6c8iler4mx" are created."',
+ ],
+ 'TriggerSourceType' => [
+ 'description' => '伸缩活动触发源类型。可能值:'."\n"
+ ."\n"
+ .'- Cms:通过报警任务方式触发伸缩活动。'."\n"
+ .'- Api:用户通过API方式触发伸缩活动。'."\n"
+ .'- Ess:通过系统任务方式触发伸缩活动。',
+ 'type' => 'string',
+ 'example' => 'Api',
+ ],
+ 'TriggerSourceId' => [
+ 'description' => '伸缩活动触发源ID。可能值:'."\n"
+ ."\n"
+ .'- Cms触发源ID:显示为报警任务ID。'."\n"
+ .'- Api触发源ID:显示为主账号UID或子账号UID。'."\n"
+ .'- Ess触发源ID:显示为空。',
+ 'type' => 'string',
+ 'example' => '2346366580*****',
+ ],
+ 'LifecycleHookContext' => [
+ 'description' => '生命周期挂钩上下文信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DisableLifecycleHook' => [
+ 'description' => '伸缩活动是否禁用所有生命周期挂钩。可能值:'."\n"
+ ."\n"
+ .'- true:禁用。'."\n"
+ .'- false:不禁用。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'IgnoredLifecycleHookIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'IgnoredLifecycleHookId' => [
+ 'description' => '伸缩活动禁用的生命周期挂钩ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩活动禁用的生命周期挂钩ID列表。',
+ 'type' => 'string',
+ 'example' => 'ash-bp14zolna43z266bq***',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ActivityMetadata' => [
+ 'description' => '伸缩活动的元数据。',
+ 'type' => 'string',
+ 'example' => '{\\"goatscaler.io/managed\\":\\"true\\"}',
+ ],
+ 'InstanceRefreshTaskId' => [
+ 'description' => '实例刷新任务ID。',
+ 'type' => 'string',
+ 'example' => 'ir-asdf12adsxg*****',
+ ],
+ 'ErrorMessages' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ErrorMessages' => [
+ 'description' => '伸缩活动失败或部分成功时的错误信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Description' => [
+ 'description' => '伸缩活动的异常描述。',
+ 'type' => 'string',
+ 'example' => 'Fail to create instances into scaling group.',
+ ],
+ 'Code' => [
+ 'description' => '伸缩活动失败或部分成功时的错误码。',
+ 'type' => 'string',
+ 'example' => 'OperationDenied.NoStock',
+ ],
+ 'Message' => [
+ 'description' => '伸缩活动失败或部分成功时的错误信息。',
+ 'type' => 'string',
+ 'example' => 'The resource is out of stock in the specified zone. Please try other types, or choose other regions and zones.',
+ ],
+ 'FailedInstanceIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'FailedInstanceIds' => [
+ 'description' => '失败的实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-8vbedazhjj6a6******',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CC107349-57B7-4405-B1BF-9BF5AF7F****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"ScalingActivities\\": {\\n \\"ScalingActivity\\": [\\n {\\n \\"Progress\\": 100,\\n \\"ScalingInstanceNumber\\": 1,\\n \\"AttachedCapacity\\": \\"0\\",\\n \\"TotalCapacity\\": \\"2\\",\\n \\"ScalingGroupId\\": \\"asg-bp18p2yfxow2dloq****\\",\\n \\"AutoCreatedCapacity\\": \\"2\\",\\n \\"EndTime\\": \\"2020-09-10T09:54Z\\",\\n \\"StartTime\\": \\"2020-09-10T09:54Z\\",\\n \\"Description\\": \\"Add \\\\\\\\\\\\\\"1\\\\\\\\\\\\\\" ECS instance\\",\\n \\"StatusCode\\": \\"Successful\\",\\n \\"Cause\\": \\"A user requests to execute scaling rule \\\\\\\\\\\\\\"asr-bp12tcnol686y1ik****\\\\\\\\\\\\\\", changing the Total Capacity from \\\\\\\\\\\\\\"1\\\\\\\\\\\\\\" to \\\\\\\\\\\\\\"2\\\\\\\\\\\\\\".\\",\\n \\"ScalingActivityId\\": \\"asa-bp161xudmuxdzofe****\\",\\n \\"StatusMessage\\": \\"\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\" ECS instances are added\\",\\n \\"CreatedCapacity\\": 1,\\n \\"DestroyedCapacity\\": 1,\\n \\"StartedCapacity\\": 1,\\n \\"StoppedCapacity\\": 1,\\n \\"CreatedInstances\\": {\\n \\"CreatedInstance\\": [\\n \\"[ \\\\\\"i-abc1\\\\\\", \\\\\\"i-abc2\\\\\\" ]\\"\\n ]\\n },\\n \\"DestroyedInstances\\": {\\n \\"DestroyedInstance\\": [\\n \\"[ \\\\\\"i-abc1\\\\\\", \\\\\\"i-abc2\\\\\\" ]\\"\\n ]\\n },\\n \\"StartedInstances\\": {\\n \\"StartedInstance\\": [\\n \\"[ \\\\\\"i-abc1\\\\\\", \\\\\\"i-abc2\\\\\\" ]\\"\\n ]\\n },\\n \\"StoppedInstances\\": {\\n \\"StoppedInstance\\": [\\n \\"[ \\\\\\"i-abc1\\\\\\", \\\\\\"i-abc2\\\\\\" ]\\"\\n ]\\n },\\n \\"ErrorCode\\": \\"OperationDenied.NoStock\\",\\n \\"ErrorMessage\\": \\"The specified ECS resource is out of stock in this region. Please try again later.\\",\\n \\"Detail\\": \\"\\\\\\"new ECS instances \\\\\\"i-j6c8ilerw, i-j6c8iler4mx\\\\\\" are created.\\\\\\"\\",\\n \\"TriggerSourceType\\": \\"Api\\",\\n \\"TriggerSourceId\\": \\"2346366580*****\\",\\n \\"LifecycleHookContext\\": {\\n \\"DisableLifecycleHook\\": false,\\n \\"IgnoredLifecycleHookIds\\": {\\n \\"IgnoredLifecycleHookId\\": [\\n \\"ash-bp14zolna43z266bq***\\"\\n ]\\n }\\n },\\n \\"ActivityMetadata\\": \\"{\\\\\\\\\\\\\\"goatscaler.io/managed\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"true\\\\\\\\\\\\\\"}\\",\\n \\"InstanceRefreshTaskId\\": \\"ir-asdf12adsxg*****\\",\\n \\"ErrorMessages\\": {\\n \\"ErrorMessages\\": [\\n {\\n \\"Description\\": \\"Fail to create instances into scaling group.\\",\\n \\"Code\\": \\"OperationDenied.NoStock\\",\\n \\"Message\\": \\"The resource is out of stock in the specified zone. Please try other types, or choose other regions and zones.\\",\\n \\"FailedInstanceIds\\": {\\n \\"FailedInstanceIds\\": [\\n \\"i-8vbedazhjj6a6******\\"\\n ]\\n }\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeScalingActivitiesResponse>\\n <RequestId>CC107349-57B7-4405-B1BF-9BF5AF7F****</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>1</TotalCount>\\n <ScalingActivities>\\n <Progress>100</Progress>\\n <ScalingInstanceNumber>1</ScalingInstanceNumber>\\n <AttachedCapacity>0</AttachedCapacity>\\n <TotalCapacity>2</TotalCapacity>\\n <ScalingGroupId>asg-bp18p2yfxow2dloq****</ScalingGroupId>\\n <AutoCreatedCapacity>2</AutoCreatedCapacity>\\n <EndTime>2020-09-10T09:54Z</EndTime>\\n <StartTime>2020-09-10T09:54Z</StartTime>\\n <Description>Add \\\\\\"1\\\\\\" ECS instance</Description>\\n <StatusCode>Successful</StatusCode>\\n <Cause>A user requests to execute scaling rule \\\\\\"asr-bp12tcnol686y1ik****\\\\\\", changing the Total Capacity from \\\\\\"1\\\\\\" to \\\\\\"2\\\\\\".</Cause>\\n <ScalingActivityId>asa-bp161xudmuxdzofe****</ScalingActivityId>\\n <StatusMessage>\\\\\\"1\\\\\\" ECS instances are added</StatusMessage>\\n <CreatedCapacity>1</CreatedCapacity>\\n <DestroyedCapacity>1</DestroyedCapacity>\\n <StartedCapacity>1</StartedCapacity>\\n <StoppedCapacity>1</StoppedCapacity>\\n <CreatedInstances>[ \\"i-abc1\\", \\"i-abc2\\" ]</CreatedInstances>\\n <DestroyedInstances>[ \\"i-abc1\\", \\"i-abc2\\" ]</DestroyedInstances>\\n <StartedInstances>[ \\"i-abc1\\", \\"i-abc2\\" ]</StartedInstances>\\n <StoppedInstances>[ \\"i-abc1\\", \\"i-abc2\\" ]</StoppedInstances>\\n <ErrorCode>OperationDenied.NoStock</ErrorCode>\\n <ErrorMessage>The specified ECS resource is out of stock in this region. Please try again later.</ErrorMessage>\\n <Detail>\\"new ECS instances \\"i-j6c8ilerw, i-j6c8iler4mx\\" are created.\\"</Detail>\\n <TriggerSourceType>Api</TriggerSourceType>\\n <TriggerSourceId>2346366580*****</TriggerSourceId>\\n <LifecycleHookContext>\\n <DisableLifecycleHook>false</DisableLifecycleHook>\\n <IgnoredLifecycleHookIds>ash-bp14zolna43z266bq***</IgnoredLifecycleHookIds>\\n </LifecycleHookContext>\\n <ActivityMetadata>{\\\\\\"goatscaler.io/managed\\\\\\":\\\\\\"true\\\\\\"}</ActivityMetadata>\\n <InstanceRefreshTaskId>ir-asdf12adsxg*****</InstanceRefreshTaskId>\\n <ErrorMessages>\\n <Description>Fail to create instances into scaling group.</Description>\\n <Code>OperationDenied.NoStock</Code>\\n <Message>The resource is out of stock in the specified zone. Please try other types, or choose other regions and zones.</Message>\\n <FailedInstanceIds>i-8vbedazhjj6a6******</FailedInstanceIds>\\n </ErrorMessages>\\n </ScalingActivities>\\n</DescribeScalingActivitiesResponse>","errorExample":""}]',
+ 'title' => '查询伸缩活动',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 查询时可以指定伸缩组ID来查询该伸缩组下的所有伸缩活动。'."\n"
+ ."\n"
+ .'- 查询时可以通过伸缩活动的状态来过滤查询结果。'."\n"
+ ."\n"
+ .'- 可以查询30日内的伸缩活动。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeScalingActivityDetail' => [
+ 'summary' => '查询一个伸缩活动的详细信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '92681',
+ 'abilityTreeNodes' => [
+ 'FEATUREessACRSW1',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingActivityId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待查询伸缩活动的ID。您可以通过调用[DescribeScalingActivities](~~25961~~)查询伸缩活动ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asa-bp1c9djwrgxjyk31****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'B13527BF-1FBD-4334-A512-20F5E9D3FB4D',
+ ],
+ 'ScalingActivityId' => [
+ 'description' => '伸缩活动的ID。',
+ 'type' => 'string',
+ 'example' => 'asa-bp1c9djwrgxjyk31****',
+ ],
+ 'Detail' => [
+ 'description' => '伸缩活动的详细信息,即活动执行成功或失败。伸缩活动状态为拒绝时不显示。',
+ 'type' => 'string',
+ 'example' => 'new ECS instances \\"i-bp16t2cgmiiymeqv****\\" are created.',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B13527BF-1FBD-4334-A512-20F5E9D3FB4D\\",\\n \\"ScalingActivityId\\": \\"asa-bp1c9djwrgxjyk31****\\",\\n \\"Detail\\": \\"new ECS instances \\\\\\\\\\\\\\"i-bp16t2cgmiiymeqv****\\\\\\\\\\\\\\" are created.\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeScalingActivityDetailResponse>\\n <RequestId>B13527BF-1FBD-4334-A512-20F5E9D3FB4D</RequestId>\\n <ScalingActivityId>asa-bp1c9djwrgxjyk31****</ScalingActivityId>\\n <Detail>new ECS instances \\\\\\"i-bp16t2cgmiiymeqv****\\\\\\" are created.</Detail>\\n</DescribeScalingActivityDetailResponse>","errorExample":""}]',
+ 'title' => '查询一个伸缩活动的详细信息',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' |HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InvalidParameter|The input parameter \\"ScalingActivityId\\" that is mandatory for processing this request is not supplied|没有提供待查询伸缩活动的ID。',
+ ],
+ 'DescribeLimitation' => [
+ 'summary' => '查询资源配额限制。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92676',
+ 'abilityTreeNodes' => [
+ 'FEATUREessZ1KWHS',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'MaxNumberOfScheduledTasks' => [
+ 'description' => '一个账号在一个地域下支持创建定时任务的最大数量。'."\n"
+ .'>限额与弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看配额值,您也可以手动申请提升配额值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '70',
+ ],
+ 'MaxNumberOfLoadBalancers' => [
+ 'description' => '一个伸缩组支持关联传统型负载均衡CLB(原SLB)实例的最大数量。'."\n"
+ .'>限额与弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看配额值,您也可以手动申请提升配额值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ 'MaxNumberOfMaxSize' => [
+ 'description' => '一个伸缩组支持设置的组内最大实例数。'."\n"
+ .'>限额与弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看配额值,您也可以手动申请提升配额值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2000',
+ ],
+ 'MaxNumberOfAlbServerGroup' => [
+ 'description' => '一个伸缩组支持关联应用型负载均衡ALB服务器组的最大数量。'."\n"
+ .'>限额与弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看配额值,您也可以手动申请提升配额值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ 'MaxNumberOfNlbServerGroup' => [
+ 'description' => '一个伸缩组支持关联网络型负载均衡NLB服务器组的最大数量。'."\n"
+ .'>限额与弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看配额值,您也可以手动申请提升配额值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ 'MaxNumberOfDBInstances' => [
+ 'description' => '一个伸缩组支持关联RDS实例的最大数量。'."\n"
+ .'>限额与弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看配额值,您也可以手动申请提升配额值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ 'MaxNumberOfScalingConfigurations' => [
+ 'description' => '一个伸缩组支持创建伸缩配置的最大数量。'."\n"
+ .'>限额与弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看配额值,您也可以手动申请提升配额值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '70',
+ ],
+ 'MaxNumberOfMinSize' => [
+ 'description' => '一个伸缩组支持设置的组内最小实例数。其中,`MaxNumberOfMinSize`的配额值与`MaxNumberOfMaxSize`的配额值保持一致。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2000',
+ ],
+ 'MaxNumberOfLifecycleHooks' => [
+ 'description' => '一个伸缩组支持创建生命周期挂钩的最大数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'MaxNumberOfScalingInstances' => [
+ 'description' => '一个伸缩组单次支持自动扩缩容ECS实例或ECI实例的最大数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '500',
+ ],
+ 'MaxNumberOfScalingGroups' => [
+ 'description' => '一个账号在一个地域下支持创建伸缩组的最大数量。'."\n"
+ .'>限额与弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看配额值,您也可以手动申请提升配额值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'BE9BEB41-E7B8-4C7D-A3CF-2DCB1066****',
+ ],
+ 'MaxNumberOfNotificationConfigurations' => [
+ 'description' => '一个伸缩组支持创建事件通知的最大数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '6',
+ ],
+ 'MaxNumberOfVServerGroups' => [
+ 'description' => '关联传统型负载均衡CLB(原SLB)实例时,一个伸缩组支持指定虚拟服务器组的最大数量。'."\n"
+ .'>限额与弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看配额值,您也可以手动申请提升配额值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'MaxNumberOfScalingRules' => [
+ 'description' => '一个伸缩组支持创建伸缩规则的最大数量。'."\n"
+ .'>限额与弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看配额值,您也可以手动申请提升配额值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '70',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"MaxNumberOfScheduledTasks\\": 70,\\n \\"MaxNumberOfLoadBalancers\\": 30,\\n \\"MaxNumberOfMaxSize\\": 2000,\\n \\"MaxNumberOfAlbServerGroup\\": 30,\\n \\"MaxNumberOfNlbServerGroup\\": 30,\\n \\"MaxNumberOfDBInstances\\": 30,\\n \\"MaxNumberOfScalingConfigurations\\": 70,\\n \\"MaxNumberOfMinSize\\": 2000,\\n \\"MaxNumberOfLifecycleHooks\\": 10,\\n \\"MaxNumberOfScalingInstances\\": 500,\\n \\"MaxNumberOfScalingGroups\\": 200,\\n \\"RequestId\\": \\"BE9BEB41-E7B8-4C7D-A3CF-2DCB1066****\\",\\n \\"MaxNumberOfNotificationConfigurations\\": 6,\\n \\"MaxNumberOfVServerGroups\\": 5,\\n \\"MaxNumberOfScalingRules\\": 70\\n}","errorExample":""},{"type":"xml","example":"<DescribeLimitationResponse>\\n <MaxNumberOfScheduledTasks>70</MaxNumberOfScheduledTasks>\\n <MaxNumberOfLoadBalancers>30</MaxNumberOfLoadBalancers>\\n <MaxNumberOfMaxSize>2000</MaxNumberOfMaxSize>\\n <MaxNumberOfAlbServerGroup>30</MaxNumberOfAlbServerGroup>\\n <MaxNumberOfNlbServerGroup>30</MaxNumberOfNlbServerGroup>\\n <MaxNumberOfDBInstances>30</MaxNumberOfDBInstances>\\n <MaxNumberOfScalingConfigurations>70</MaxNumberOfScalingConfigurations>\\n <MaxNumberOfMinSize>2000</MaxNumberOfMinSize>\\n <MaxNumberOfLifecycleHooks>10</MaxNumberOfLifecycleHooks>\\n <MaxNumberOfScalingInstances>500</MaxNumberOfScalingInstances>\\n <MaxNumberOfScalingGroups>200</MaxNumberOfScalingGroups>\\n <RequestId>BE9BEB41-E7B8-4C7D-A3CF-2DCB1066****</RequestId>\\n <MaxNumberOfNotificationConfigurations>6</MaxNumberOfNotificationConfigurations>\\n <MaxNumberOfVServerGroups>5</MaxNumberOfVServerGroups>\\n <MaxNumberOfScalingRules>70</MaxNumberOfScalingRules>\\n</DescribeLimitationResponse>","errorExample":""}]',
+ 'title' => '查询资源配额限制',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeElasticStrength' => [
+ 'summary' => '伸缩组配置的有效性很大程度决定了扩容过程的成功率。弹性伸缩通过弹性强度描述伸缩配置的有效性,让配置的优良程度量化,帮助用户针对性的优化伸缩配置。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '232309',
+ 'abilityTreeNodes' => [
+ 'FEATUREess7569XW',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属地域的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceTypes',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ECS实例的实例规格的集合。'."\n"
+ .'传入时,覆盖伸缩配置中的实例规格。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ECS实例的实例规格。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.g6.large',
+ ],
+ 'required' => false,
+ 'maxItems' => 50,
+ ],
+ ],
+ [
+ 'name' => 'PriorityStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '>此字段已废弃,请使用SpotStrategy。'."\n"
+ ."\n"
+ .'后付费实例的抢占策略。传入时覆盖伸缩组配置的抢占策略,取值范围:'."\n"
+ ."\n"
+ .'- NoSpot:普通的按量付费实例。'."\n"
+ .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n"
+ .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。'."\n"
+ ."\n"
+ .'默认值:NoSpot。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'NoSpot',
+ ],
+ ],
+ [
+ 'name' => 'SystemDiskCategories',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '多个系统盘类型。 传入时,覆盖伸缩配置中的系统盘类型。取值范围:'."\n"
+ .'- cloud:普通云盘。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。'."\n"
+ ."\n"
+ .'> 当不指定伸缩组ID时,需要传入此参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '系统盘的多磁盘类型。取值范围:'."\n"
+ .'- cloud:普通云盘。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud',
+ ],
+ 'required' => false,
+ 'maxItems' => 50,
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupIds',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '批量查询时的查询伸缩组的ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp14wlu85wrpchm0****',
+ ],
+ 'required' => false,
+ 'maxItems' => 50,
+ ],
+ ],
+ [
+ 'name' => 'SpotStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例的抢占策略。取值范围:'."\n"
+ ."\n"
+ .'- NoSpot:正常按量付费实例。'."\n"
+ .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n"
+ .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格的抢占式实例。'."\n"
+ ."\n"
+ .'默认值:NoSpot。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'NoSpot',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchIds',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '指定多个交换机ID。'."\n"
+ .'> 当不指定伸缩组ID时,需要传入此参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定多个交换机ID。'."\n"
+ .'> 当不指定伸缩组ID时,需要传入此参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-bp1whw2u46cn8zubm****',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像文件ID,自动创建实例时使用的镜像资源。'."\n"
+ .'> 当不指定伸缩组ID时,需要至少指定ImageId、ImageName、ImageFamily中的一个。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'centos6u5_64_20G_aliaegis****.vhd',
+ ],
+ ],
+ [
+ 'name' => 'ImageName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像文件名称,同一个地域内镜像名称唯一。如果设置了ImageId,ImageName将被忽略。'."\n"
+ ."\n\n"
+ .'不支持通过ImageName设置镜像市场镜像。'."\n"
+ .'> 当不指定伸缩组ID时,需要至少指定ImageId、ImageName、ImageFamily中的一个。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ubuntu_18_04_x64_20G_alibase_20231225.vhd',
+ ],
+ ],
+ [
+ 'name' => 'ImageFamily',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像族系名称,通过设置该参数来获取当前镜像族系内最新的可用镜像,用于创建实例。如果已经设置了参数ImageId,则不能设置该参数。'."\n"
+ .'> 当不指定伸缩组ID时,需要至少指定ImageId、ImageName、ImageFamily中的一个。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CentOS7',
+ ],
+ ],
+ [
+ 'name' => 'DataDiskCategories',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '查询指定了多种数据盘类型时的弹性强度,当存在数据盘类型不匹配时,查询结果中会返回具体的不匹配磁盘类型。'."\n"
+ .'> 当不指定伸缩组ID时,可以传入此参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据盘类型。可能值:'."\n"
+ ."\n"
+ .'- cloud:普通云盘'."\n"
+ .'- cloud_efficiency:高效云盘'."\n"
+ .'- cloud_ssd:SSD云盘'."\n"
+ .'- cloud_essd:ESSD云盘'."\n"
+ .'- ephemeral_ssd:本地SSD盘',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_essd',
+ ],
+ 'required' => false,
+ 'maxItems' => 50,
+ ],
+ ],
+ [
+ 'name' => 'Ipv6AddressCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'IPv6地址数。当实例规格不满足IPv6地址数量要求时,会导致弹性强度差。'."\n"
+ .'> 当不指定伸缩组ID时,可以传入此参数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '73469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'TotalStrength' => [
+ 'description' => '伸缩组的弹性强度。每个实例规格+可用区的组合根据供应情况得分为0到1分,其中0分代表弹性强度低,1分代表弹性强度高。所有实例规格+可用区的组合的得分总和为伸缩组的弹性强度。'."\n"
+ .'><warning>该字段已废弃。'."\n"
+ .'></warning>',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '1.5',
+ ],
+ 'ElasticStrength' => [
+ 'description' => '当前伸缩组的弹性强度。可能值:'."\n"
+ ."\n"
+ .'- Strong:弹性强度高。'."\n"
+ .'- Medium:弹性强度中。'."\n"
+ .'- Weak:弹性强度弱。',
+ 'type' => 'string',
+ 'example' => 'Strong',
+ ],
+ 'ResourcePools' => [
+ 'description' => '查询单个伸缩组时的弹性强度。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Strength' => [
+ 'description' => '资源池的弹性强度。',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '0.6',
+ ],
+ 'InstanceType' => [
+ 'description' => '资源池的实例规格。',
+ 'type' => 'string',
+ 'example' => 'ecs.c7t.xlarge',
+ ],
+ 'ZoneId' => [
+ 'description' => '资源池的可用区ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-g',
+ ],
+ 'VSwitchIds' => [
+ 'description' => '资源池的可用区中的交换机。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-2ze0uc933kantv******',
+ ],
+ ],
+ 'Code' => [
+ 'description' => '弹性强度为0时的原因(错误码)。',
+ 'type' => 'string',
+ 'example' => 'InstanceTypesOrDiskTypesNotSupported',
+ ],
+ 'Msg' => [
+ 'description' => '弹性强度为0时的原因(错误描述)。',
+ 'type' => 'string',
+ 'example' => 'The instanceTypes or diskTypes are not supported.',
+ ],
+ 'Status' => [
+ 'description' => '资源池是否可用。可能值:'."\n"
+ ."\n"
+ .'- Available: 可用。'."\n"
+ .'- Unavailable: 不可用。约束不通过、规格未部署、规格无库存等会导致规格不可用。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'InventoryHealth' => [
+ 'description' => '库存健康度。',
+ 'type' => 'object',
+ 'properties' => [
+ 'HealthScore' => [
+ 'description' => '库存健康分。'."\n"
+ ."\n"
+ .'- 5~6分:表示供应确定性很高。'."\n"
+ .'- 1~4分:表示确定性没有保障,建议按需选择预定。'."\n"
+ .'- -3~0分:表示供应健康出现预警,建议更换规格。'."\n"
+ ."\n"
+ .'计算公式:`HealthScore`(库存健康分) = `AdequacyScore`(充足度) + `SupplyScore`(补货能力) - `HotScore`(热度)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'AdequacyScore' => [
+ 'description' => '充足度。'."\n"
+ ."\n"
+ .'可能值:0~3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'SupplyScore' => [
+ 'description' => '补货能力。'."\n"
+ ."\n"
+ .'可能值:0~3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'HotScore' => [
+ 'description' => '热度。'."\n"
+ ."\n"
+ .'可能值:0~3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ElasticStrengthModels' => [
+ 'description' => '批量查询伸缩组时的弹性强度。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingGroupId' => [
+ 'description' => '伸缩组ID。',
+ 'type' => 'string',
+ 'example' => 'asg-wz98mnj7nblv9gc****',
+ ],
+ 'ElasticStrength' => [
+ 'description' => '当前伸缩组的弹性强度。可能值:'."\n"
+ ."\n"
+ .'- Strong:弹性强度高。'."\n"
+ .'- Medium:弹性强度中。'."\n"
+ .'- Weak:弹性强度弱。',
+ 'type' => 'string',
+ 'example' => 'Strong',
+ ],
+ 'TotalStrength' => [
+ 'description' => '当前伸缩组的弹性强度。每个实例规格+可用区的组合根据供应情况得分为0到1分,其中0分代表弹性强度低,1分代表弹性强度高。所有实例规格+可用区的组合的得分总和为伸缩组的弹性强度。'."\n"
+ .'><warning>该字段已废弃。'."\n"
+ .'></warning>',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '5',
+ ],
+ 'ResourcePools' => [
+ 'description' => '每个资源池的弹性强度信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '资源池的实例规格。',
+ 'type' => 'string',
+ 'example' => 'ecs.r7.large',
+ ],
+ 'Strength' => [
+ 'description' => '资源池的弹性强度。'."\n"
+ .'><warning>该字段已废弃。'."\n"
+ .'></warning>',
+ 'type' => 'number',
+ 'format' => 'double',
+ 'example' => '0.6',
+ ],
+ 'ZoneId' => [
+ 'description' => '资源池的可用区ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-g',
+ ],
+ 'VSwitchIds' => [
+ 'description' => '资源池的可用区中的交换机。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-2ze6e8p4aid08lymlsguv',
+ ],
+ ],
+ 'Code' => [
+ 'description' => '弹性强度为0时的原因(错误码)。',
+ 'type' => 'string',
+ 'example' => 'InstanceTypesOrDiskTypesNotSupported',
+ ],
+ 'Msg' => [
+ 'description' => '弹性强度为0时的原因(错误描述)。',
+ 'type' => 'string',
+ 'example' => 'The instanceTypes or diskTypes are not supported.',
+ ],
+ 'Status' => [
+ 'description' => '资源池是否可用。可能值:'."\n"
+ ."\n"
+ .'- Available: 可用。'."\n"
+ .'- Unavailable: 不可用。约束不通过、规格未部署、规格无库存等会导致规格不可用。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'InventoryHealth' => [
+ 'description' => '库存健康度。',
+ 'type' => 'object',
+ 'properties' => [
+ 'HealthScore' => [
+ 'description' => '库存健康分。'."\n"
+ ."\n"
+ .'- 5~6分:表示供应确定性很高。'."\n"
+ .'- 1~4分:表示确定性没有保障,建议按需选择预定。'."\n"
+ .'- -3~0分:表示供应健康出现预警,建议更换规格。'."\n"
+ ."\n"
+ .'计算公式:`HealthScore`(库存健康分)=`AdequacyScore`(充足度)+`SupplyScore`(补货能力)-`HotScore`(热度)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'AdequacyScore' => [
+ 'description' => '充足度。'."\n"
+ ."\n"
+ .'可能值:0~3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'SupplyScore' => [
+ 'description' => '补货能力。'."\n"
+ ."\n"
+ .'可能值:0~3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'HotScore' => [
+ 'description' => '热度。'."\n"
+ ."\n"
+ .'可能值:0~3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"73469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"TotalStrength\\": 1.5,\\n \\"ElasticStrength\\": \\"Strong\\",\\n \\"ResourcePools\\": [\\n {\\n \\"Strength\\": 0.6,\\n \\"InstanceType\\": \\"ecs.c7t.xlarge\\",\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-2ze0uc933kantv******\\"\\n ],\\n \\"Code\\": \\"InstanceTypesOrDiskTypesNotSupported\\",\\n \\"Msg\\": \\"The instanceTypes or diskTypes are not supported.\\",\\n \\"Status\\": \\"Available\\",\\n \\"InventoryHealth\\": {\\n \\"HealthScore\\": 3,\\n \\"AdequacyScore\\": 3,\\n \\"SupplyScore\\": 3,\\n \\"HotScore\\": 3\\n }\\n }\\n ],\\n \\"ElasticStrengthModels\\": [\\n {\\n \\"ScalingGroupId\\": \\"asg-wz98mnj7nblv9gc****\\",\\n \\"ElasticStrength\\": \\"Strong\\",\\n \\"TotalStrength\\": 5,\\n \\"ResourcePools\\": [\\n {\\n \\"InstanceType\\": \\"ecs.r7.large\\",\\n \\"Strength\\": 0.6,\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-2ze6e8p4aid08lymlsguv\\"\\n ],\\n \\"Code\\": \\"InstanceTypesOrDiskTypesNotSupported\\",\\n \\"Msg\\": \\"The instanceTypes or diskTypes are not supported.\\",\\n \\"Status\\": \\"Available\\",\\n \\"InventoryHealth\\": {\\n \\"HealthScore\\": 3,\\n \\"AdequacyScore\\": 3,\\n \\"SupplyScore\\": 2,\\n \\"HotScore\\": 0\\n }\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeElasticStrengthResponse>\\n <RequestId>73469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <TotalStrength>1.5</TotalStrength>\\n <ElasticStrength>Strong</ElasticStrength>\\n <ResourcePools>\\n <Strength>0.6</Strength>\\n <InstanceType>ecs.c7t.xlarge</InstanceType>\\n <ZoneId>cn-hangzhou-g</ZoneId>\\n <VSwitchIds>vsw-2ze0uc933kantv******</VSwitchIds>\\n <Code>InstanceTypesOrDiskTypesNotSupported</Code>\\n <Msg>The instanceTypes or diskTypes are not supported.</Msg>\\n <Status>Available</Status>\\n <InventoryHealth>\\n <HealthScore>3</HealthScore>\\n <AdequacyScore>3</AdequacyScore>\\n <SupplyScore>3</SupplyScore>\\n <HotScore>3</HotScore>\\n </InventoryHealth>\\n </ResourcePools>\\n <ElasticStrengthModels>\\n <ScalingGroupId>asg-wz98mnj7nblv9gc****</ScalingGroupId>\\n <ElasticStrength>Strong</ElasticStrength>\\n <TotalStrength>5</TotalStrength>\\n <ResourcePools>\\n <InstanceType>ecs.r7.large</InstanceType>\\n <Strength>0.6</Strength>\\n <ZoneId>cn-hangzhou-g</ZoneId>\\n <VSwitchIds>vsw-2ze6e8p4aid08lymlsguv</VSwitchIds>\\n <Code>InstanceTypesOrDiskTypesNotSupported</Code>\\n <Msg>The instanceTypes or diskTypes are not supported.</Msg>\\n <Status>Available</Status>\\n <InventoryHealth>\\n <HealthScore>3</HealthScore>\\n <AdequacyScore>3</AdequacyScore>\\n <SupplyScore>2</SupplyScore>\\n <HotScore>0</HotScore>\\n </InventoryHealth>\\n </ResourcePools>\\n </ElasticStrengthModels>\\n</DescribeElasticStrengthResponse>","errorExample":""}]',
+ 'title' => '查询伸缩组的弹性强度',
+ ],
+ 'VerifyAuthentication' => [
+ 'summary' => '检测是否已授权弹性伸缩调操作ECS资源。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '92723',
+ 'abilityTreeNodes' => [
+ 'FEATUREessZ1KWHS',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Uid',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '您主账号的ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '123456781234****',
+ ],
+ ],
+ [
+ 'name' => 'OnlyCheck',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否只检查授权情况。取值范围:'."\n"
+ ."\n"
+ .'- true:只检查授权情况,不创建服务关联角色。'."\n"
+ .'- false:检查授权情况,如果弹性伸缩无权限操作ECS或ECI资源,则自动创建服务关联角色。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 403 => [
+ [
+ 'errorCode' => 'UserNotAuthorizeEss',
+ 'errorMessage' => 'Ess should be authorized in ram to operate user ecs resource.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<VerifyAuthenticationResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</VerifyAuthenticationResponse>","errorExample":""}]',
+ 'title' => '检测是否已授权弹性伸缩操作ECS资源',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ ],
+ 'SuspendProcesses' => [
+ 'summary' => '暂停伸缩组中的指定流程。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92720',
+ 'abilityTreeNodes' => [
+ 'FEATUREess4ZDI6R',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp15oubotmrq11xe****',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'Process',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '需要暂停的活动类型,N的取值范围:1~100。取值范围:'."\n"
+ .'- ScaleIn:缩容流程。'."\n"
+ .'- ScaleOut:扩容流程。'."\n"
+ .'- HealthCheck:健康检查。'."\n"
+ .'- AlarmNotification:报警任务。'."\n"
+ .'- ScheduledAction:定时任务。'."\n"
+ ."\n"
+ .'目前系统支持暂停以上5种活动类型,如果您指定的活动类型超过以上5种,系统会自动去掉重复的活动类型。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '需要暂停的活动类型,N的取值范围:1~100。取值范围:'."\n"
+ ."\n"
+ .'- ScaleIn:缩容流程。'."\n"
+ .'- ScaleOut:扩容流程。'."\n"
+ .'- HealthCheck:健康检查。'."\n"
+ .'- AlarmNotification:报警任务。'."\n"
+ .'- ScheduledAction:定时任务。'."\n"
+ ."\n"
+ .'目前系统支持暂停5种活动类型,如果您指定的活动超过以上5种,系统会自动去掉重复的活动类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ScaleIn',
+ ],
+ 'required' => true,
+ 'example' => 'ScaleIn',
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '3E2033F0-03B4-419D-BCE2-C2339DB5****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"3E2033F0-03B4-419D-BCE2-C2339DB5****\\"\\n}","errorExample":""},{"type":"xml","example":"<SuspendProcessesResponse>\\n <RequestId>3E2033F0-03B4-419D-BCE2-C2339DB5****</RequestId>\\n</SuspendProcessesResponse>","errorExample":""}]',
+ 'title' => '暂停伸缩组中的指定流程',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|账号下不存在指定的伸缩组。|'."\n"
+ .'|400|InvalidParameter|The specified value of parameter "%s" is not valid.|指定的参数非法。',
+ ],
+ 'ResumeProcesses' => [
+ 'summary' => '恢复伸缩组中被暂停的流程。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92715',
+ 'abilityTreeNodes' => [
+ 'FEATUREess4ZDI6R',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp15oubotmrq11xe****',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'Process',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '需要恢复的活动类型,N的取值范围:1~100。取值范围:'."\n"
+ ."\n"
+ .'- `ScaleIn`:缩容流程。'."\n"
+ .'- `ScaleOut`:扩容流程。'."\n"
+ .'- `HealthCheck`:健康检查。'."\n"
+ .'- `AlarmNotification`:报警任务。'."\n"
+ .'- `ScheduledAction`:定时任务。'."\n"
+ ."\n"
+ .'>目前系统支持恢复以上5种活动类型,如果您指定的活动类型超过以上5种,系统会自动去掉重复的活动类型。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '需要恢复的活动类型,N的取值范围:1~100。取值范围:'."\n"
+ ."\n"
+ .'- `ScaleIn`:缩容流程。'."\n"
+ .'- `ScaleOut`:扩容流程。'."\n"
+ .'- `HealthCheck`:健康检查。'."\n"
+ .'- `AlarmNotification`:报警任务。'."\n"
+ .'- `ScheduledAction`:定时任务。'."\n"
+ ."\n"
+ .'>目前系统支持恢复以上5种活动类型,如果您指定的活动类型超过以上5种,系统会自动去掉重复的活动类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ScaleIn',
+ ],
+ 'required' => true,
+ 'example' => 'ScaleIn',
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'E38EB733-D714-4658-8A5F-0688AB68****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"E38EB733-D714-4658-8A5F-0688AB68****\\"\\n}","errorExample":""},{"type":"xml","example":"<ResumeProcessesResponse>\\n <RequestId>E38EB733-D714-4658-8A5F-0688AB68****</RequestId>\\n</ResumeProcessesResponse>","errorExample":""}]',
+ 'title' => '恢复伸缩组中被暂停的流程',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|账号下不存在指定的伸缩组。|'."\n"
+ .'|400|InvalidParameter|The specified value of parameter "%s" is not valid.|指定的参数非法。',
+ ],
+ 'VerifyUser' => [
+ 'summary' => '验证是否已开通弹性伸缩服务。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92724',
+ 'abilityTreeNodes' => [
+ 'FEATUREessZ1KWHS',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要使用弹性伸缩服务的地域ID。'."\n"
+ ."\n"
+ .'例如`cn-hangzhou`、`cn-shanghai`。更多信息,请参见[地域和可用区](~~40654~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"\\"\\n}","errorExample":""},{"type":"xml","example":"<VerifyUserResponse></VerifyUserResponse>","errorExample":""}]',
+ 'title' => '验证是否已开通弹性伸缩服务',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ ],
+ 'CreateScalingConfiguration' => [
+ 'summary' => '创建一个伸缩配置。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92657',
+ 'abilityTreeNodes' => [
+ 'FEATUREessWJGIW5',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩配置所属的伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asg-bp14wlu85wrpchm0****',
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像文件ID,自动创建实例时使用的镜像资源。'."\n"
+ ."\n"
+ .'>该参数与`ImageName`参数作用相同,您可以根据实际情况进行二选一设置,即如果设置了ImageName参数,则ImageId参数将被忽略(非必填项)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'centos6u5_64_20G_aliaegis****.vhd',
+ ],
+ ],
+ [
+ 'name' => 'ImageName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像文件名称,同一个地域内镜像名称唯一。不支持通过该参数设置镜像市场中的镜像。'."\n"
+ .'>该参数与`ImageId`参数作用相同,您可以根据实际情况进行二选一设置,即如果设置了`ImageId`参数,则`ImageName`参数将被忽略(非必填项)。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'image****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例的一种实例规格,更多信息,请参见[实例规格族](~~25378~~)。'."\n"
+ .'> InstanceType、InstanceTypes、InstanceTypeOverrides、Cpu和Memory 这四种方式不能同时指定,但InstanceType可以与InstancePatternInfo同时指定,此时,弹性伸缩会优先使用您指定的实例规格扩容,当指定的实例规格无库存时,再使用符合InstancePatternInfo 配置的实例规格。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.g6.large',
+ ],
+ ],
+ [
+ 'name' => 'Cpu',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'vCPU个数。单位:核。'."\n"
+ ."\n"
+ .'同时指定CPU和Memory可以定义实例规格范围,例如,CPU=2且Memory=16可以定义配置为2 vCPU和16 GiB的所有实例规格。弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。'."\n"
+ ."\n"
+ .'>该区间配置效果仅在成本优化模式下且伸缩配置未设置实例规格时生效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'Memory',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '内存大小。单位:GiB。'."\n"
+ ."\n"
+ .'同时指定CPU和Memory可以定义实例规格范围。例如,CPU=2且Memory=16可以定义配置为2 vCPU和16 GiB的所有实例规格。弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。'."\n"
+ ."\n"
+ .'>该区间配置效果仅在成本优化模式下且伸缩配置未设置实例规格时生效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '16',
+ ],
+ ],
+ [
+ 'name' => 'DeploymentSetId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例所属的部署集的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ds-bp1frxuzdg87zh4pz****',
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例所属的安全组的ID,同一个安全组内的ECS实例可以互相访问。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sg-280ih****',
+ ],
+ ],
+ [
+ 'name' => 'IoOptimized',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否为I/O优化实例。取值范围:'."\n"
+ ."\n"
+ .'- none:非I/O优化实例。'."\n"
+ .'- optimized:I/O优化实例。'."\n"
+ ."\n"
+ .'[已停售的实例规格](~~55263~~)的实例默认值是none,其他实例规格的实例默认值是optimized。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'optimized',
+ ],
+ ],
+ [
+ 'name' => 'InternetChargeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络计费类型。取值范围:'."\n"
+ ."\n"
+ .'- PayByBandwidth:按带宽计费。此时InternetMaxBandwidthOut即为所选的固定带宽值。'."\n"
+ .'- PayByTraffic:按流量计费。此时InternetMaxBandwidthOut只是一个带宽上限,计费以实际产生的网络流量为依据。'."\n"
+ ."\n"
+ .'如果未指定该参数,经典网络下默认值为PayByBandwidth,专有网络VPC下默认值为PayByTraffic。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PayByTraffic',
+ ],
+ ],
+ [
+ 'name' => 'InternetMaxBandwidthIn',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '公网入带宽最大值,单位为 Mbit/s。取值范围:'."\n"
+ ."\n"
+ .'- 当所购公网出带宽小于等于 10 Mbit/s 时:1~10,默认为 10。'."\n"
+ .'- 当所购公网出带宽大于 10 Mbit/s 时:1~`InternetMaxBandwidthOut`的取值,默认为`InternetMaxBandwidthOut`的取值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'InternetMaxBandwidthOut',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '公网出带宽最大值,单位为 Mbit/s。取值范围:0~100。'."\n"
+ ."\n"
+ .'默认值:0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.Category',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘的磁盘种类。取值范围:'."\n"
+ ."\n"
+ .'- cloud:普通云盘。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- ephemeral_ssd:本地SSD盘。'."\n"
+ .'- cloud_essd:ESSD云盘。'."\n"
+ .'- cloud_auto:ESSD AutoPL云盘。'."\n"
+ ."\n"
+ .'该参数不能与`SystemDiskCategories.N`同时指定。当该参数与`SystemDiskCategories.N`都未指定时,该参数有默认值。InstanceType为系列I的实例规格且实例属于非I/O优化实例时,默认值:cloud。否则,默认值:cloud_efficiency。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_ssd',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.Size',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘大小,单位为GiB。取值范围:'."\n"
+ ."\n"
+ .'- 普通云盘:20~500。'."\n"
+ .'- ESSD云盘:'."\n"
+ .' - PL0:1~2048。'."\n"
+ .' - PL1:20~2048。'."\n"
+ .' - PL2:461~2048。'."\n"
+ .' - PL3:1261~2048。'."\n"
+ .'- ESSD AutoPL 云盘:1~2048。'."\n"
+ .'- 其他云盘类型:20~2048。'."\n"
+ ."\n"
+ .'该参数的取值必须大于或者等于 max{1, ImageSize}。'."\n"
+ ."\n"
+ .'默认值:max{40, ImageSize}。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.DiskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘的名称。长度为2~128个英文或中文字符。必须以大小写字母或中文开头,不能以`http://`和`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_ssdSystem',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test system disk.',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.AutoSnapshotPolicyId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘使用的自动快照策略ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sp-bp12m37ccmxvbmi5****',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.PerformanceLevel',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '当系统盘为ESSD云盘时,设置云盘的性能等级。取值范围:'."\n"
+ ."\n"
+ .'- PL0:单盘最高随机读写IOPS 1万。'."\n"
+ .'- PL1:单盘最高随机读写IOPS 5万。'."\n"
+ .'- PL2:单盘最高随机读写IOPS 10万。'."\n"
+ .'- PL3:单盘最高随机读写IOPS 100万。'."\n"
+ ."\n"
+ .'默认值:PL1。'."\n"
+ .'> 关于如何选择ESSD云盘性能等级,请参见[ESSD云盘](~~122389~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PL1',
+ ],
+ ],
+ [
+ 'name' => 'ScalingConfigurationName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩配置的名称,2~64英文或中文字符,以数字、大小写字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。'."\n"
+ ."\n"
+ .'在同一地域下同一伸缩组内伸缩配置名称唯一。如果您没有指定该参数,则默认使用伸缩配置的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalingconfig****',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerWeight',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例作为负载均衡后端服务器时的权重,取值范围:1~100。'."\n"
+ ."\n"
+ .'默认值:50。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ ],
+ [
+ 'name' => 'Tags',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例的标签。标签以键值对方式传入,最多可以使用20组标签。Key和Value的使用要求如下:'."\n"
+ .' '."\n"
+ .'- Key最多支持64个字符,不能以aliyun和acs:开头,不能包含`http://`或者`https://`。一旦使用标签,Key不允许为空字符串。'."\n"
+ .'- Value最多支持128个字符,不能以aliyun和acs:开头,不能包含`http://`或者`https://`。Value可以为空字符串。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"key1":"value1","key2":"value2", ... "key5":"value5"}',
+ ],
+ ],
+ [
+ 'name' => 'UserData',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例的自定义数据,需要以Base64方式编码,编码前的原始数据最多为32 KB。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ZWNobyBoZWxsbyBlY3Mh',
+ ],
+ ],
+ [
+ 'name' => 'KeyPairName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '登录ECS实例时使用的密钥对的名称。'."\n"
+ .' '."\n"
+ .'- 对Windows实例,该参数将被忽略,默认为空。'."\n"
+ .'- 对Linux实例,密码登录方式会被初始化成禁止。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'KeyPairTest',
+ ],
+ ],
+ [
+ 'name' => 'RamRoleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例的RAM角色名称。RAM角色名称由RAM提供和维护,您可调用[ListRoles](~~28713~~)查询可用的RAM角色。创建RAM角色的具体操作,请参见[CreateRole](~~28710~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ramrole****',
+ ],
+ ],
+ [
+ 'name' => 'SecurityEnhancementStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启安全加固。取值范围:'."\n"
+ ."\n"
+ .'- Active:启用安全加固,只对公共镜像生效。'."\n"
+ .'- Deactive:不启用安全加固,对所有镜像类型生效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Active',
+ ],
+ ],
+ [
+ 'name' => 'InstanceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '使用本伸缩配置自动创建的ECS实例的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'instance****',
+ ],
+ ],
+ [
+ 'name' => 'HostName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '云服务器的主机名。半角句号(.)或短划线(-)不能作为首尾字符,不能连续使用半角句号(.)或短划线(-)。另外,不同类型实例的命名要求如下:'."\n"
+ ."\n"
+ .'- Windows实例:主机名长度为2~15,可以包含大小写字母、数字和短划线(-)。不能包含半角句号(.),不能全是数字。'."\n"
+ .'- 其他类型实例(Linux等):主机名长度为2~64,可以包含多个半角句号(.)。两个半角句号(.)之间为一段,每段可以包含大小写字母、数字和短划线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'host****',
+ ],
+ ],
+ [
+ 'name' => 'SpotStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '后付费实例的抢占策略。取值范围:'."\n"
+ .' '."\n"
+ .'- NoSpot:普通的按量付费实例。'."\n"
+ .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n"
+ .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。'."\n"
+ ."\n"
+ .'默认值:NoSpot。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'NoSpot',
+ ],
+ ],
+ [
+ 'name' => 'PasswordInherit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否使用镜像预设的密码。使用该参数时,您需要确保使用的镜像已经设置了密码。取值范围:'."\n"
+ ."\n"
+ .'- true:使用镜像预设密码。'."\n"
+ .'- false:不使用镜像预设密码。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'Password',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例的密码。长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号中的三类字符。特殊符号可以是:'."\n"
+ ."\n"
+ .'```()` ~!@#$%^&*-_+=\\|{}[]:;\'<>,.?/```'."\n"
+ ."\n"
+ .'其中,Windows实例不能以斜线号(/)为密码首字符。'."\n"
+ ."\n"
+ .'> 如果传入Password参数,建议您使用HTTPS协议发送请求,避免密码泄露。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123abc****',
+ ],
+ ],
+ [
+ 'name' => 'ResourceGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例所属资源组的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rg-resource****',
+ ],
+ ],
+ [
+ 'name' => 'HpcClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例所属的HPC集群的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'hpc-clusterid',
+ ],
+ ],
+ [
+ 'name' => 'InstanceDescription',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test instance.',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'Ipv6AddressCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '为弹性网卡指定随机生成的IPv6地址数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'CreditSpecification',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定突发性能实例的运行模式。取值范围:'."\n"
+ ."\n"
+ .'- Standard:标准模式。'."\n"
+ ."\n"
+ .'- Unlimited:无性能约束模式。'."\n"
+ ."\n"
+ .'更多信息,请参见[突发性能实例概述](~~59977~~)下的性能模式章节。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Standard',
+ ],
+ ],
+ [
+ 'name' => 'ImageFamily',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像族系名称,通过设置该参数来获取当前镜像族系内最新的可用镜像,用于创建实例。如果已经设置了参数`ImageId`,则不能设置该参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'hangzhou-daily-update',
+ ],
+ ],
+ [
+ 'name' => 'ZoneId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例所属的可用区ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou-g',
+ ],
+ ],
+ [
+ 'name' => 'DedicatedHostId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否在专有宿主机上创建ECS实例。由于专有宿主机不支持创建抢占式实例,指定DedicatedHostId参数后,会自动忽略请求中的SpotStrategy和SpotPriceLimit设置。'."\n"
+ ."\n"
+ .'您可以调用[DescribeDedicatedHosts](~~134242~~)查询专有宿主机ID列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'dh-bp67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'Affinity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '专有宿主机实例是否与专有宿主机关联。取值范围:'."\n"
+ ."\n"
+ .'- default:实例不与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,若原专有宿主机可用资源不足,则实例被放置在自动部署资源池的其他专有宿主机上。'."\n"
+ ."\n"
+ .'- host:实例与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,仍放置在原专有宿主机上。若原专有宿主机可用资源不足,则实例重启失败。'."\n"
+ ."\n"
+ .'默认值:default。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'default',
+ ],
+ ],
+ [
+ 'name' => 'Tenancy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否在专有宿主机上创建实例。取值范围:'."\n"
+ ."\n"
+ .'- default:创建非专有宿主机实例。'."\n"
+ ."\n"
+ .'- host:创建专有宿主机实例。若您不指定DedicatedHostId,则由阿里云自动选择专有宿主机放置实例。'."\n"
+ ."\n"
+ .'默认值:default。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'default',
+ ],
+ ],
+ [
+ 'name' => 'SchedulerOptions',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '调度选项。',
+ 'type' => 'object',
+ 'required' => false,
+ 'example' => '["testManagedPrivateSpaceId****"]',
+ ],
+ ],
+ [
+ 'name' => 'PrivatePoolOptions.MatchCriteria',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例启动的私有池容量选项。弹性保障服务或容量预定服务在生效后会生成私有池容量,供实例启动时选择。取值范围:'."\n"
+ ."\n"
+ .'- Open:开放模式。将自动匹配开放类型的私有池容量。如果没有符合条件的私有池容量,则使用公共池资源启动。该模式下无需设置PrivatePoolOptions.Id参数。'."\n"
+ ."\n"
+ .'- Target:指定模式。使用指定的私有池容量启动实例,如果该私有池容量不可用,则实例会启动失败。该模式下必须指定私有池ID,即PrivatePoolOptions.Id参数为必填项。'."\n"
+ ."\n"
+ .'- None:不使用模式。实例启动将不使用私有池容量。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Open',
+ ],
+ ],
+ [
+ 'name' => 'PrivatePoolOptions.Id',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '私有池ID。即弹性保障服务ID或容量预定服务ID。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'eap-bp67acfmxazb4****',
+ ],
+ ],
+ [
+ 'name' => 'SpotDuration',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '抢占式实例的保留时长,单位为小时。取值范围:'."\n"
+ .'- 1:创建后阿里云会保证实例运行1小时不会被自动释放;超过1小时后,系统会自动比较出价与市场价格、检查资源库存,来决定实例的保留或回收。'."\n"
+ .'- 0:创建后,阿里云不能保证实例运行1小时,系统会自动比较出价与市场价格、检查资源库存,来决定实例的保留或回收。'."\n"
+ .'>实例被回收前5分钟内,阿里云会通过ECS系统事件向您发送通知。抢占式实例按秒计费,建议您结合具体任务执行耗时来选择合适的保留时长。'."\n"
+ ."\n"
+ .'默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'SpotInterruptionBehavior',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '抢占实例中断模式。目前仅支持Terminate(默认)直接释放实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Terminate',
+ ],
+ ],
+ [
+ 'name' => 'InstanceTypes',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '多种实例规格参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '多种实例规格参数。其中N的取值范围:1~20,即一个伸缩配置内最多可以设置20种实例规格。'."\n"
+ ."\n"
+ .'N代表当前伸缩配置中实例规格的优先级,编号为1的实例规格优先级最高,实例规格优先级随着编号的增大依次降低。当无法根据优先级较高的实例规格创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格来创建实例。'."\n"
+ ."\n"
+ .'>InstanceType、InstanceTypes、InstanceTypeOverrides、Cpu和Memory这四种方式不能同时指定,但InstanceTypes可以与InstancePatternInfo同时指定。此时,弹性伸缩优先使用您指定的实例规格扩容,当指定的实例规格无库存时,再使用符合InstancePatternInfo配置的实例规格。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.g6.large',
+ ],
+ 'required' => false,
+ 'example' => 'ecs.g6.large',
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'InstanceTypeOverride',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例规格相关信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格相关信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '当您需要指定伸缩配置中实例规格的容量时,请同时指定本参数和InstanceTypeOverride.N.WeightedCapacity。'."\n"
+ ."\n"
+ .'本参数用于指定实例规格。您可以指定N个本参数,结合InstanceTypeOverride.N.WeightedCapacity参数,扩展多实例规格支持自定义权重。N的取值范围:1~20。'."\n"
+ ."\n"
+ .'> 指定本参数时,不允许同时指定InstanceTypes.N或InstanceType。'."\n"
+ ."\n"
+ .'InstanceType的取值范围:在售的ECS实例规格,请参见[实例规格族](~~25378~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.c5.xlarge',
+ ],
+ 'WeightedCapacity' => [
+ 'description' => '当您需要指定伸缩配置中实例规格的容量时,先指定InstanceTypeOverride.N.InstanceType后,再指定本参数。两个参数一一对应,N需要保持一致。'."\n"
+ ."\n"
+ .'本参数用于指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。'."\n"
+ ."\n"
+ .'由于每个实例规格的vCPU个数、内存大小等性能指标会有差异,您可以根据自身需求,给不同的实例规格配置不同的权重。'."\n"
+ ."\n"
+ .' 例如:'."\n"
+ ."\n"
+ .'- 当前容量:0。'."\n"
+ .'- 期望容量:6。'."\n"
+ .'- ecs.c5.xlarge规格容量:4。'."\n"
+ ."\n"
+ .'为满足期望容量,伸缩组将为用户扩容2台ecs.c5.xlarge实例。'."\n"
+ ."\n"
+ .'>扩容时伸缩组的容量不得超过最大容量(MaxSize)与实例规格的最大权重之和。'."\n"
+ ."\n"
+ .'WeightedCapacity的取值范围:1~500。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'DataDisk',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '数据盘详细信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据盘详细信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'PerformanceLevel' => [
+ 'description' => '当数据盘为ESSD云盘时,设置云盘的性能等级。N的取值必须和DataDisk.N.Category=cloud_essd中的N保持一致。取值范围:'."\n"
+ ."\n"
+ .'- PL0:单盘最高随机读写IOPS 1万。'."\n"
+ .'- PL1:单盘最高随机读写IOPS 5万。'."\n"
+ .'- PL2:单盘最高随机读写IOPS 10万。'."\n"
+ .'- PL3:单盘最高随机读写IOPS 100万。'."\n"
+ ."\n"
+ .'默认值:PL1。'."\n"
+ .'> 关于如何选择ESSD云盘性能等级,请参见[ESSD云盘](~~122389~~)。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PL1',
+ ],
+ 'AutoSnapshotPolicyId' => [
+ 'description' => '数据盘使用的自动快照策略ID,N的取值范围:1~16。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sp-bp19nq9enxqkomib****',
+ ],
+ 'Encrypted' => [
+ 'description' => '数据盘N是否加密,N的取值范围:1~16。该参数取值范围:'."\n"
+ ."\n"
+ .'- true:加密。'."\n"
+ .'- false:不加密。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'Description' => [
+ 'description' => '数据盘的描述,N的取值范围:1~16。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test data disk.',
+ ],
+ 'SnapshotId' => [
+ 'description' => '创建数据盘时使用的快照,N的取值范围:1~16。指定该参数后,DataDisk.N.Size会被忽略,实际创建的磁盘大小为指定快照的大小。'."\n"
+ ."\n"
+ .'如果该快照创建于2013年7月15日或之前,调用会被拒绝,返回参数中会提示InvalidSnapshot.TooOld。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 's-280s7****',
+ ],
+ 'Categories' => [
+ 'description' => '数据盘N的多磁盘类型。第一个N表示第N块数据盘,取值范围:1~16。第二个N表示第N块数据盘的第N种磁盘类型,取值范围:1~4,即一个伸缩配置内最多可以为数据盘指定4种磁盘类型。N越小,优先级越高。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。取值范围:'."\n"
+ .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。'."\n"
+ ."\n"
+ .'> 指定本参数时,不允许同时指定`DataDisk.N.Category`。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据盘N的多磁盘类型。第一个N表示第N块数据盘,取值范围:1~16。第二个N表示第N块数据盘的第N种磁盘类型,取值范围:1~4,即一个伸缩配置内最多可以为数据盘指定4种磁盘类型。N越小,优先级越高。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。取值范围:'."\n"
+ .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。'."\n"
+ ."\n"
+ .'> 指定本参数时,不允许同时指定`DataDisk.N.Category`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud',
+ ],
+ 'required' => false,
+ 'example' => 'cloud',
+ 'maxItems' => 10,
+ ],
+ 'Size' => [
+ 'description' => '数据盘N的磁盘大小,N的取值范围:1~16,内存单位为GiB。取值范围:'."\n"
+ ."\n"
+ .'- cloud:5~2000。'."\n"
+ .'- cloud_efficiency:20~32768。'."\n"
+ .'- cloud_ssd:20~32768。'."\n"
+ .'- cloud_essd:20~32768。'."\n"
+ .'- ephemeral_ssd:5~800。'."\n"
+ ."\n"
+ .'指定该参数后,磁盘大小必须大于等于快照大小(快照通过SnapshotId指定)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ 'Device' => [
+ 'description' => '数据盘挂载点,N的取值范围:1~16。如果您没有指定该参数,则默认在自动创建ECS实例时由系统分配,从/dev/xvdb开始,到/dev/xvdz结束。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/dev/xvdb',
+ ],
+ 'DiskName' => [
+ 'description' => '数据盘的名称,N的取值范围:1~16。长度为2~128个英文或中文字符。必须以大小写字母或中文开头,不能以`http://`和`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_ssdData',
+ ],
+ 'Category' => [
+ 'description' => '数据盘N的磁盘种类,N的取值范围:1~16。该参数取值范围:'."\n"
+ .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- ephemeral_ssd:本地SSD盘。'."\n"
+ .'- cloud_essd:ESSD云盘。'."\n"
+ .'- cloud_auto:ESSD AutoPL云盘。'."\n"
+ ."\n"
+ .'该参数不能与`DataDisk.N.Categories.N`同时指定。当该参数与`DataDisk.N.Categories.N`都未指定时,该参数默认值:'."\n"
+ ."\n"
+ .'- 对于I/O优化实例,默认值为cloud_efficiency。'."\n"
+ ."\n"
+ .'- 对于非I/O优化实例,默认值为cloud。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_ssd',
+ ],
+ 'DeleteWithInstance' => [
+ 'description' => '指定数据盘是否随实例释放,N的取值范围:1~16。该参数取值范围:'."\n"
+ ."\n"
+ .'- true:释放实例时,该磁盘随实例一起释放。'."\n"
+ .'- false:释放实例时,该磁盘保留不释放。'."\n"
+ ."\n"
+ .'该参数只可对独立云盘设置(DataDisk.N.Category为cloud、cloud_efficiency、cloud_ssd、cloud_essd或者cloud_auto),否则会出现报错。'."\n"
+ ."\n"
+ .'默认值:true。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'KMSKeyId' => [
+ 'description' => '数据盘对应的KMS密钥的ID,N的取值范围:1~16。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****',
+ ],
+ 'ProvisionedIops' => [
+ 'description' => '数据盘预配置的IOPS(Input/Output Operations Per Second)性能指标。'."\n"
+ ."\n"
+ .'> IOPS(Input/Output Operations Per Second)指每秒能处理的I/O个数,表示块存储处理读写(输出/输入)的能力,单位为次/秒。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ 'BurstingEnabled' => [
+ 'description' => '数据盘是否开启Burst(性能突发)。取值范围:'."\n"
+ ."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。'."\n"
+ .'> 当`DataDisk.Category`取值为`cloud_auto`时才支持设置该参数。'."\n"
+ ."\n"
+ .'更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 16,
+ ],
+ ],
+ [
+ 'name' => 'SpotPriceLimit',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '抢占式实例详细信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '抢占式实例详细信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'PriceLimit' => [
+ 'description' => '抢占式实例对应的出价,N的取值范围:1~20。SpotStrategy取值为SpotWithPriceLimit时生效。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.5',
+ ],
+ 'InstanceType' => [
+ 'description' => '抢占式实例的实例规格,N的取值范围:1~20。SpotStrategy取值为SpotWithPriceLimit时生效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.g6.large',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupIds',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '将ECS实例同时加入多个安全组。N的取值范围与实例能够加入安全组上限有关。更多详情,请参见[使用限制](~~25412~~)下的安全组章节。'."\n"
+ ."\n"
+ .'> 不支持同时指定SecurityGroupId和SecurityGroupIds.N。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '将ECS实例同时加入多个安全组。N的取值范围与实例能够加入安全组上限有关。更多信息,请参见[使用限制](~~25412~~)下的安全组章节。'."\n"
+ ."\n"
+ .'> 不支持同时指定SecurityGroupId和SecurityGroupIds.N。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sg-bp18kz60mefs****',
+ ],
+ 'required' => false,
+ 'example' => 'sg-bp18kz60mefs****',
+ 'maxItems' => 16,
+ ],
+ ],
+ [
+ 'name' => 'InstancePatternInfo',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '智能模式下实例规格相关信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '智能模式下实例规格相关信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Cores' => [
+ 'description' => '智能配置模式下,实例规格的vCPU内核数目,用于筛选符合要求的实例规格范围。更多信息,请参见[实例规格族](~~25378~~)。N的取值范围:1~10。'."\n"
+ ."\n"
+ .'请注意以下信息:'."\n"
+ ."\n"
+ .'- InstancePatternInfo.N参数仅适用于伸缩组的网络类型为专有网络。'."\n"
+ ."\n"
+ .'- InstancePatternInfo.N参数必须同时配置InstancePatternInfo.N.Cores和InstancePatternInfo.N.Memory。'."\n"
+ ."\n"
+ .'- 如果您已经通过InstanceType或InstanceTypes.N参数指定了实例规格,弹性伸缩优先使用您指定的实例规格扩容,当指定的实例规格无库存时,再从符合InstancePatternInfo.N参数值的实例规格中优先使用价格最低的实例规格扩容。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'InstanceFamilyLevel' => [
+ 'description' => '智能配置模式下,实例规格族级别,用于筛选符合要求的实例规格范围。取值范围:'."\n"
+ ."\n"
+ .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n"
+ .'- EnterpriseLevel:企业级。性能稳定,资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n"
+ .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的情况。更多信息,请参见[突发性能实例](~~59977~~)。'."\n"
+ ."\n"
+ .'N的取值范围:1~10。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'EnterpriseLevel',
+ ],
+ 'MaxPrice' => [
+ 'description' => '智能配置模式下,按量付费实例或者抢占式实例可接受的每小时最高价格,用于筛选符合要求的实例规格范围。N的取值范围:1~10。'."\n"
+ ."\n"
+ .'> SpotStrategy设置为SpotWithPriceLimit时,该参数必选。其他情况下,该参数可选。'."\n",
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'Memory' => [
+ 'description' => '智能配置模式下,实例规格的内存大小,单位为GiB,用于筛选符合要求的实例规格范围。更多信息,请参见[实例规格族](~~25378~~)。N的取值范围:1~10。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ 'ExcludedInstanceType' => [
+ 'description' => '需要排除的实例规格。通过使用通配符(*)可以排除单个规格或者整个规格族。例如:'."\n"
+ .'- ecs.c6.large:表示排除ecs.c6.large实例规格。'."\n"
+ .'- ecs.c6.*:表示排除整个c6规格族的实例规格。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '需要排除的实例规格。通过使用通配符(*)可以排除单个规格或者整个规格族。例如:'."\n"
+ .'- ecs.c6.large:表示排除ecs.c6.large实例规格。'."\n"
+ .'- ecs.c6.*:表示排除整个c6规格族的实例规格。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.n1.small/ecs.n1.*/*7*',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ 'Architecture' => [
+ 'description' => '实例规格所属的架构类型。取值范围:'."\n"
+ .'- X86:X86计算。'."\n"
+ .'- Heterogeneous:异构计算,例如GPU或FPGA等。'."\n"
+ .'- BareMetal:弹性裸金属服务器。'."\n"
+ .'- Arm:Arm计算。'."\n"
+ ."\n"
+ .'默认值:包含所有架构类型。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格所属的架构类型。取值范围:'."\n"
+ .'- X86:X86计算。'."\n"
+ .'- Heterogeneous:异构计算,例如GPU或FPGA等。'."\n"
+ .'- BareMetal:弹性裸金属服务器。'."\n"
+ .'- Arm:Arm计算。'."\n"
+ ."\n"
+ .'默认值:包含所有架构类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'X86',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ 'BurstablePerformance' => [
+ 'description' => '是否为性能突发实例规格。取值范围:'."\n"
+ .'- Exclude:不包含性能突发实例规格。'."\n"
+ .'- Include:包含性能突发实例规格。'."\n"
+ .'- Required:只包含性能突发实例规格。'."\n"
+ ."\n"
+ .'默认值:Include。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Include',
+ ],
+ 'InstanceTypeFamilies' => [
+ 'description' => '指定查询的实例规格族。N 表示可以设置多个实例规格族,N 的取值范围:1~10。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定的实例规格族。N表示可以设置多个实例规格族,N的取值范围:1~10。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.g6',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 0,
+ ],
+ 'MinimumCpuCoreCount' => [
+ 'description' => '实例规格的最小vCPU内核数目。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'MaximumCpuCoreCount' => [
+ 'description' => '实例规格的最大vCPU内核数目。'."\n"
+ ."\n"
+ .'>`MaximumCpuCoreCount`参数值不能超过`MinimumCpuCoreCount`参数值的4倍。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ 'GpuSpecs' => [
+ 'description' => 'GPU 类型。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'GPU 类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'NVIDIA V100',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 0,
+ ],
+ 'InstanceCategories' => [
+ 'description' => '实例分类。取值范围:'."\n"
+ .'>N表示可以设置多个实例分类,N的取值范围:1~10。'."\n"
+ ."\n"
+ .'- General-purpose:通用型。'."\n"
+ .'- Compute-optimized:计算型。'."\n"
+ .'- Memory-optimized:内存型。'."\n"
+ .'- Big data:大数据型。'."\n"
+ .'- Local SSDs:本地SSD型。'."\n"
+ .'- High Clock Speed:高主频型。'."\n"
+ .'- Enhanced:增强型。'."\n"
+ .'- Shared:共享型。'."\n"
+ .'- Compute-optimized with GPU:GPU计算型。'."\n"
+ .'- Visual Compute-optimized:视觉计算型。'."\n"
+ .'- Heterogeneous Service:异构服务型。'."\n"
+ .'- Compute-optimized with FPGA:FPGA计算型。'."\n"
+ .'- Compute-optimized with NPU:NPU计算型。'."\n"
+ .'- ECS Bare Metal:弹性裸金属服务器。'."\n"
+ .'- High Performance Compute:高性能计算型。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例分类。取值范围:'."\n"
+ .'>N表示可以设置多个实例分类,N的取值范围:1~10。'."\n"
+ ."\n"
+ .'- General-purpose:通用型。'."\n"
+ .'- Compute-optimized:计算型。'."\n"
+ .'- Memory-optimized:内存型。'."\n"
+ .'- Big data:大数据型。'."\n"
+ .'- Local SSDs:本地SSD型。'."\n"
+ .'- High Clock Speed:高主频型。'."\n"
+ .'- Enhanced:增强型。'."\n"
+ .'- Shared:共享型。'."\n"
+ .'- Compute-optimized with GPU:GPU计算型。'."\n"
+ .'- Visual Compute-optimized:视觉计算型。'."\n"
+ .'- Heterogeneous Service:异构服务型。'."\n"
+ .'- Compute-optimized with FPGA:FPGA计算型。'."\n"
+ .'- Compute-optimized with NPU:NPU计算型。'."\n"
+ .'- ECS Bare Metal:弹性裸金属服务器。'."\n"
+ .'- High Performance Compute:高性能计算型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Compute-optimized with GPU',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 0,
+ ],
+ 'CpuArchitectures' => [
+ 'description' => '实例的CPU架构。取值范围:'."\n"
+ .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n"
+ ."\n"
+ .'- X86。'."\n"
+ .'- ARM。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例的CPU架构。取值范围:'."\n"
+ .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n"
+ ."\n"
+ .'- X86。'."\n"
+ .'- ARM。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'X86',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 0,
+ ],
+ 'PhysicalProcessorModels' => [
+ 'description' => '实例的处理器型号。N表示可以设置多个处理器型号,N的取值范围:1~10。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例的处理器型号。N表示可以设置多个处理器型号,N的取值范围:1~10。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Intel Xeon(Ice Lake) Platinum 8369B", "Intel Xeon(Skylake) Platinum 8163", … "Intel Xeon(Cascade Lake) Platinum 8269CY',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 0,
+ ],
+ 'MinimumEniQuantity' => [
+ 'description' => '实例最小支持挂载的弹性网卡上限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'MinimumEniPrivateIpAddressQuantity' => [
+ 'description' => '实例最小单块弹性网卡的IPv4地址上限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'MinimumEniIpv6AddressQuantity' => [
+ 'description' => '实例最小单块弹性网卡的IPv6地址上限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'MinimumInitialCredit' => [
+ 'description' => '实例最小突发性能实例t5、t6的初始vCPU积分值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '12',
+ ],
+ 'MinimumBaselineCredit' => [
+ 'description' => '实例最小突发性能实例t5、t6的基准vCPU计算性能(所有vCPU之和)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '12',
+ ],
+ 'MinimumMemorySize' => [
+ 'description' => '实例最小内存。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ 'MaximumMemorySize' => [
+ 'description' => '实例最大内存。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ 'MinimumGpuAmount' => [
+ 'description' => '实例最小 GPU 数目。取值范围:正整数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'MaximumGpuAmount' => [
+ 'description' => '实例最大 GPU 数目。取值范围:正整数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'SystemDiskCategories',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '系统盘的多磁盘类型。N的取值范围:1~4,即一个伸缩配置内最多可以为系统盘指定4种磁盘类型。N越小,优先级越高。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。取值范围:'."\n"
+ .'- cloud:普通云盘。'."\n"
+ .'- cloud_efficiency:高效云盘'."\n"
+ .'- cloud_ssd:SSD云盘'."\n"
+ .'- cloud_essd:ESSD云盘'."\n"
+ ."\n"
+ .'> 指定本参数时,不允许同时指定`SystemDisk.Category`。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '系统盘的多磁盘类型。N的取值范围:1~4,即一个伸缩配置内最多可以为系统盘指定4种磁盘类型。N越小,优先级越高。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。取值范围:'."\n"
+ .'- cloud:普通云盘。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。'."\n"
+ ."\n"
+ .'> 指定本参数时,不允许同时指定`SystemDisk.Category`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud',
+ ],
+ 'required' => false,
+ 'example' => 'cloud',
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.Encrypted',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否加密系统盘。取值范围:'."\n"
+ ."\n"
+ .'- true:加密。'."\n"
+ .'- false:不加密。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.KMSKeyId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘使用的KMS密钥ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.EncryptAlgorithm',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘采用的加密算法。取值范围:'."\n"
+ ."\n"
+ .'- AES-256。'."\n"
+ .'- SM4-128。'."\n"
+ ."\n"
+ .'默认值:AES-256。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AES-256',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.ProvisionedIops',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘预配置的IOPS(Input/Output Operations Per Second)性能指标。'."\n"
+ ."\n"
+ .'> IOPS(Input/Output Operations Per Second)指每秒能处理的I/O个数,表示块存储处理读写(输出/输入)的能力,单位为次/秒。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.BurstingEnabled',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘是否开启Burst(性能突发)。取值范围:'."\n"
+ ."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。'."\n"
+ .'> 当`SystemDisk.Category`取值为`cloud_auto`时才支持设置该参数。'."\n"
+ ."\n"
+ .'更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ImageOptions.LoginAsNonRoot',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例是否使用`ecs-user`用户登录,更多信息,请参见[管理ECS实例的登录名](~~388447~~)。取值范围:'."\n"
+ ."\n"
+ .'- true:是。'."\n"
+ .'- false:否。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'DeletionProtection',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例释放保护属性。该项仅适用于按量付费实例,指是否支持通过ECS管理控制台或API(DeleteInstance)直接释放实例。取值范围:'."\n"
+ .'- true:开启实例释放保护属性,表示不支持通过ECS管理控制台或API直接释放实例(即防止弹性伸缩中扩容的实例被误删)。'."\n"
+ .'- false:关闭实例释放保护属性,表示支持通过ECS管理控制台或API直接释放实例。'."\n"
+ ."\n"
+ .'默认值:false。'."\n"
+ ."\n"
+ .'>该属性不影响弹性伸缩正常的缩容活动,即弹性伸缩发生缩容活动时,开启实例释放保护的按量付费实例可以被正常释放掉。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'StorageSetId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '存储集ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ss-bp67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'StorageSetPartitionNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '存储集中的最大分区数量。取值为大于等于2的整数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'CustomPriorities',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '**ECS实例规格+虚拟交换机**组合的自定义优先级。'."\n"
+ ."\n"
+ .'>该参数仅在伸缩组的``扩缩容策略``为`优先级策略`时有效。'."\n"
+ ."\n"
+ .'当无法根据优先级较高的**ECS实例规格+虚拟交换机**创建ECS实例时,弹性伸缩服务会自动选择下一优先级的**ECS实例规格+虚拟交换机**组合来创建ECS实例。'."\n"
+ ."\n"
+ .'>如果仅指定了部分**ECS实例规格+虚拟交换机**组合的自定义优先级,则未指定的组合优先级低于指定的组合优先级,且未指定的组合仍会依次按照伸缩组的虚拟交换机顺序、伸缩配置的实例规格顺序确定优先级。例如:伸缩组的虚拟交换机顺序依次为vsw1、vsw2,伸缩配置的实例规格顺序依次为type1、type2,该组合的自定义优先级顺序为`["vsw2+type2", "vsw1+type2"]`,则最终优先级为`vsw2+type2`> `vsw1+type2` > `vsw1+type1` > `vsw2+type1`。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '**ECS实例规格+虚拟交换机**组合的自定义优先级。'."\n"
+ ."\n"
+ .'><notice>该参数仅在伸缩组的`扩缩容策略`为`优先级策略`时有效。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '`CustomPriorities`字段表示**ECS实例规格+虚拟交换机**组合的自定义优先级。`CustomPriorities.N.InstanceType`参数表示自定义优先级中的ECS实例的实例规格。'."\n"
+ ."\n"
+ .'>该参数仅在伸缩组的``扩缩容策略``为`优先级策略`时有效,且该实例规格(InstanceType)必须包含在伸缩配置的实例规格列表中。'."\n"
+ ."\n"
+ .'当无法根据优先级较高的**ECS实例规格+虚拟交换机**创建ECS实例时,弹性伸缩服务会自动选择下一优先级的**ECS实例规格+虚拟交换机**组合来创建ECS实例。'."\n"
+ ."\n"
+ .'>如果仅指定了部分**ECS实例规格+虚拟交换机**组合的自定义优先级,则未指定的组合优先级低于指定的组合优先级,且未指定的组合仍会依次按照伸缩组的虚拟交换机顺序、伸缩配置的实例规格顺序确定优先级。例如:伸缩组的虚拟交换机顺序依次为vsw1、vsw2,伸缩配置的实例规格顺序依次为type1、type2,该组合的自定义优先级顺序为`["vsw2+type2", "vsw1+type2"]`,则最终优先级为`vsw2+type2`> `vsw1+type2` > `vsw1+type1` > `vsw2+type1`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.g6.large',
+ ],
+ 'VswitchId' => [
+ 'description' => '`CustomPriorities.N.VswitchId`参数表示自定义优先级中的虚拟交换机的ID。'."\n"
+ ."\n"
+ .'>该参数仅在伸缩组的``扩缩容策略``为`优先级策略`时有效,且该交换机(Vswitch)必须包含在伸缩组的交换机列表中。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-bp14zolna43z266bq****',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'NetworkInterfaces',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '弹性网卡列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '弹性网卡类型。使用`NetworkInterfaces.N`时必须设置主网卡,但不能同时设置`SecurityGroupId`或`SecurityGroupIds.N`参数。取值范围:'."\n"
+ ."\n"
+ .'- Primary:主网卡。'."\n"
+ ."\n"
+ .'- Secondary:辅助网卡。'."\n"
+ ."\n"
+ .'默认值:Secondary。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Primary',
+ ],
+ 'NetworkInterfaceTrafficMode' => [
+ 'description' => '网卡的通讯模式。取值范围:'."\n"
+ ."\n"
+ .'- Standard:使用TCP通讯模式。'."\n"
+ .'- HighPerformance:开启ERI(Elastic RDMA Interface)接口,使用RDMA通讯模式。'."\n"
+ ."\n"
+ .'默认值:Standard。'."\n"
+ .'>RDMA模式的弹性网卡数量不能超过该实例规格族的限制。更多信息,请参见[实例规格族](~~25378~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HighPerformance',
+ ],
+ 'Ipv6AddressCount' => [
+ 'description' => '为主网卡指定随机生成的IPv6地址数量。您需要注意以下事项:'."\n"
+ ."\n"
+ .'- 如果`NetworkInterfaces.N.InstanceType`取值为`Primary`时,设置该参数才会生效。'."\n"
+ .'- 如果`NetworkInterface.N.InstanceType`取值为`Secondary`或空值,则不能设置该参数。'."\n"
+ .'- 设置该参数后,您不能再设置`Ipv6AddressCount`参数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'SecurityGroupIds' => [
+ 'description' => '弹性网卡所属的一个或多个安全组ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡所属的一个或多个安全组 ID。您需要注意以下事项:'."\n"
+ ."\n"
+ .'- 如果`NetworkInterfaces.N.InstanceType`取值为`Primary`时,则必须设置该参数。此时该参数的作用等同于`SecurityGroupIds.N`,但不能同时再设置`SecurityGroupId`或`SecurityGroupIds.N`参数。'."\n"
+ ."\n"
+ .'- 如果`NetworkInterfaces.N.InstanceType`取值为`Secondary`或空值,则该参数为非必填参数。默认值为ECS实例所属的安全组(即主网卡的安全组)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sg-uf6ij8dwxh****',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ 'SecondaryPrivateIpAddressCount' => [
+ 'description' => '为网卡指定辅助私网 IPv4 地址数量。取值范围:1~49。'."\n"
+ ."\n"
+ .'- 取值不能超过该实例规格对于ip 数量的限制。更多信息,请参见[实例规格族](~~25378~~)。'."\n"
+ .'- NetworkInterface.N.SecondaryPrivateIpAddressCount用于为网卡分配辅助私网IPv4 地址数量(不包含该网卡的主私网 IP),系统将从该网卡所在虚拟交换机(NetworkInterface.N.VSwitchId)的可用网段中随机分配。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'DedicatedHostClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '专有宿主机集群ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'dc-2zedxc67zqzt7lb4****',
+ ],
+ ],
+ [
+ 'name' => 'SecurityOptions',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '安全选项。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ConfidentialComputingMode' => [
+ 'description' => '机密计算模式。可能值:'."\n"
+ .'- Enclave:表示ECS实例使用Enclave构建机密计算环境。更多信息,请参见[使用Enclave构建机密计算环境](~~203433~~)。'."\n"
+ .'- TDX:表示构建TDX机密计算环境。更多信息,请参见[构建TDX机密计算环境](~~479090~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TDX',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'HttpEndpoint',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否启用实例元数据的访问通道。取值范围:'."\n"
+ ."\n"
+ .'- enabled:启用。'."\n"
+ .'- disabled:禁用。'."\n"
+ ."\n"
+ .'默认值:enabled。'."\n"
+ ."\n"
+ .'> 有关实例元数据的信息,请参见[实例元数据概述](~~108460~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'enabled',
+ ],
+ ],
+ [
+ 'name' => 'HttpTokens',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '访问实例元数据时是否强制使用加固模式(IMDSv2)。取值范围:'."\n"
+ ."\n"
+ .'- optional:不强制使用。'."\n"
+ .'- required:强制使用。设置该取值后,普通模式无法访问实例元数据。'."\n"
+ ."\n"
+ .'默认值:optional。'."\n"
+ ."\n"
+ .'> 有关访问实例元数据的模式,请参见[实例元数据访问模式](~~108460~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'optional',
+ ],
+ ],
+ [
+ 'name' => 'ResourcePoolOptions',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '创建实例时使用的资源池策略。当您设置该参数后,需要注意:'."\n"
+ ."\n"
+ .'- 该参数只在创建按量付费实例时生效。'."\n"
+ ."\n"
+ .'- 该参数不能与PrivatePoolOptions.MatchCriteria、PrivatePoolOptions.Id同时设置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Strategy' => [
+ 'description' => '资源池包括弹性保障服务或容量预定服务生效后生成的私有池以及公共池,供实例启动时选择。取值范围:'."\n"
+ ."\n"
+ .'- PrivatePoolFirst:私有池优先。选择此种策略时,当指定了 ResourcePoolOptions.PrivatePoolIds,优先使用指定的私有池。如果未指定私有池或指定的私有池容量不足,将自动匹配开放类型的私有池。如果没有符合条件的私有池,则使用公共池创建实例。'."\n"
+ ."\n"
+ .'- PrivatePoolOnly:仅限私有池。选择此种策略时,必须指定ResourcePoolOptions.PrivatePoolIds。如果指定的私有池容量不足,则实例会启动失败。'."\n"
+ ."\n"
+ .'- None:不使用资源池策略。'."\n"
+ ."\n"
+ .'默认值:None。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PrivatePoolFirst',
+ ],
+ 'PrivatePoolIds' => [
+ 'description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。该参数只能传入 Target 模式私有池 ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。该参数只能传入 Target 模式私有池 ID。N 的取值范围:1~20。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'eap-bp67acfmxazb4****',
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingConfigurationId' => [
+ 'description' => '伸缩配置ID。',
+ 'type' => 'string',
+ 'example' => 'asc-bp1ffogfdauy0nu5****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingConfigurationId\\": \\"asc-bp1ffogfdauy0nu5****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateScalingConfigurationResponse>\\n <ScalingConfigurationId>asc-bp1ffogfdauy0nu5****</ScalingConfigurationId>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</CreateScalingConfigurationResponse>","errorExample":""}]',
+ 'title' => '创建一个伸缩配置',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'伸缩配置用来指定弹性扩张时使用的ECS实例模板,支持以下实例配置方式:'."\n"
+ ."\n"
+ .'- InstancePatternInfo.N:智能配置模式,无需指定具体的实例规格,只需根据业务需求指定实例的vCPU核数、内存大小、规格族级别以及最高价格,系统会自动筛选符合要求的实例规格,并优先选择价格最低的实例规格创建ECS实例。该模式仅适用于伸缩组的网络类型为专有网络,能够有效降低扩容时实例规格库存不足的情况。'."\n"
+ ."\n"
+ .'- InstanceType:指定一种实例规格。'."\n"
+ ."\n"
+ .'- InstanceTypes.N:指定多种实例规格。'."\n"
+ ."\n"
+ .'- InstanceTypeOverride.N:指定多种实例规格,并为不同的实例规格配置权重。'."\n"
+ ."\n"
+ .'- Cpu和Memory:指定CPU和内存定义实例规格的范围,弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。该方式仅适用于伸缩组的扩缩容策略为成本优化策略,且伸缩配置未指定实例规格的场景。'."\n"
+ ."\n"
+ .'- 支持以下任一方式绑定主网卡。但需要注意每次调用接口时只能选用一种方式配置主网卡,两种方式同时使用时将会导致接口调用失败并返回错误信息。'."\n"
+ .' - 通过`SecurityGroupId`、`SecurityGroupIds.N`与`Ipv6AddressCount`等参数直接设置主网卡的相关配置信息。'."\n"
+ .' - 通过`NetworkInterfaces.N`设置主网卡以及辅助网卡的配置信息,使用该参数时必须设置主网卡信息。其中,`NetworkInterfaces.N.InstanceType`取值为`Primary`时,表示设置主网卡;当`NetworkInterfaces.N.InstanceType`取值为`Secondary`或空值时,表示设置辅助网卡。'."\n"
+ ."\n"
+ .'> InstanceType、InstanceTypes.N、InstanceTypeOverride.N、Cpu和Memory这四种方式不能同时指定,但InstanceType或者InstanceTypes.N可以与InstancePatternInfo.N同时指定。与InstancePatternInfo.N同时指定时,弹性伸缩优先使用您指定的实例规格扩容,当指定的实例规格无库存时,再使用符合InstancePatternInfo.N配置的实例规格。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InstanceType.Mismatch|The specified scaling configuration and existing active scaling configuration have different instance type.|指定的伸缩配置的实例规格与当前的伸缩配置的实例规格不匹配。|'."\n"
+ .'|404|InvalidDataDiskSnapshotId.NotFound|Snapshot "XXX" does not exist.|不存在指定的快照。|'."\n"
+ .'|400|InvalidDataDiskSnapshotId.SizeNotSupported|The capacity of snapshot "XXX" exceeds the size limit of the specified disk category.|指定快照的大小超过了磁盘大小的限制。|'."\n"
+ .'|403|InvalidDevice.InUse|Device "XXX" has been occupied.|数据盘挂载点重复。|'."\n"
+ .'|400|InvalidImageId.InstanceTypeMismatch|The specified image does not support the specified instance type.|不允许在指定的实例规格下使用该镜像。|'."\n"
+ .'|404|InvalidImageId.NotFound|The specified image does not exist.|该账号下不存在指定的镜像。|'."\n"
+ .'|400|InvalidKeyPairName.NotFound|The specified KeyPairName does not exist in our records.|指定的KeyPairName不存在。|'."\n"
+ .'|400|InvalidNetworkType.ForRAMRole|RAMRole can\'t be used For classic instance.|经典网络实例不支持RamRoleName参数。|'."\n"
+ .'|400|InvalidParameter|The specified value of parameter KeyPairName is not valid.|Windows系统不支持KeyPairName参数。|'."\n"
+ .'|400|InvalidParameter.Conflict|The value of parameter SystemDisk.Category and parameter DataDisk.N.Category are conflict.|指定的系统盘类型和数据盘类型冲突。|'."\n"
+ .'|400|InvalidRamRole.NotFound|The specified RamRoleName does not exist.|不存在指定的RamRoleName。|'."\n"
+ .'|400|InvalidScalingConfigurationName.Duplicate|The specified value of parameter ScalingConfigurationName is duplicated.|已存在相同伸缩配置名。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|该账号下不存在指定的伸缩组。|'."\n"
+ .'|400|InvalidSecurityGroupId.IncorrectNetworkType|The network type of specified security Group does not support this action.|指定的安全组与伸缩组指定网络类型不一致。|'."\n"
+ .'|404|InvalidSecurityGroupId.NotFound|The specified security group does not exist.|该账号下不存在指定的安全组。|'."\n"
+ .'|400|InvalidSecurityGroupId.VPCMismatch|The specified security group and the specified virtual switch are not in the same VPC.|指定的安全组和虚拟交换机不属于同一个虚拟专有网络。|'."\n"
+ .'|403|InvalidSnapshot.TooOld|This operation is denied because the specified snapshot is created before 2013-07-15.|该快照创建于2013年7月15日或之前,调用被拒绝。|'."\n"
+ .'|403|InvalidSystemDiskCategory.ValueUnauthorized|The system disk category is not authorized.|没有创建临时磁盘系统盘的权限。|'."\n"
+ .'|400|InvalidUserData.Base64FormatInvalid|The specified parameter UserData must be base64 encoded.|UserData不符合Base64编码规范。|'."\n"
+ .'|400|InvalidUserData.SizeExceeded|The specified parameter UserData exceeds the size.|指定的UserData过长。|'."\n"
+ .'|403|QuotaExceeded.EphemeralDiskSize|Ephemeral disk size quota exceeded.|临时磁盘数据盘总容量超过2 TiB(2048 GiB)。|'."\n"
+ .'|400|QuotaExceeded.ScalingConfiguration|Scaling configuration quota exceeded in the specified scaling group.|您目前拥有的伸缩配置个数已经达到上限。|'."\n"
+ .'|400|QuotaExceeded.SecurityGroupInstance|Instance quota exceeded in the specified security group.|指定的安全组中添加的ECS实例个数已经达到上限。'."\n"
+ .'|400|InvalidSecurityGroupId.IncorrectType|The managed security group "XXX" is not supported.|不支持 "XXX" 托管安全组。',
+ ],
+ 'DeleteScalingConfiguration' => [
+ 'summary' => '删除一个伸缩配置。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '92666',
+ 'abilityTreeNodes' => [
+ 'FEATUREessTZHE2G',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingConfigurationId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待删除伸缩配置的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asc-bp1bx8mzur534edp****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。无论调用接口成功与否,我们都会返回请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteScalingConfigurationResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</DeleteScalingConfigurationResponse>","errorExample":""}]',
+ 'title' => '删除一个伸缩配置',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'以下情况不能删除伸缩配置:'."\n"
+ ."\n"
+ .'- 伸缩配置在伸缩组中处于生效状态。'."\n"
+ .'- 伸缩组中仍然存在使用该伸缩配置创建的ECS实例。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingConfigurationId.NotFound|The specified scaling configuration does not exist.|指定的伸缩配置在该用户账号下不存在。|'."\n"
+ .'|400|IncorrectScalingConfigurationLifecycleState|The current lifecycle state of specified scaling configuration does not support this action.|指定的伸缩配置未处于Inactive状态。|'."\n"
+ .'|400|InstanceInUse|You cannot delete a scaling configuration or scaling group while there is an instance associated with it.|指定的伸缩配置还有关联的ECS实例未被删除。',
+ ],
+ 'ModifyScalingConfiguration' => [
+ 'summary' => '修改一个伸缩配置。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92708',
+ 'abilityTreeNodes' => [
+ 'FEATUREessT4M3WE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingConfigurationId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待修改伸缩配置的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asc-bp16har3jpj6fjbx****',
+ ],
+ ],
+ [
+ 'name' => 'IoOptimized',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否为I/O优化实例。取值范围:'."\n"
+ .'- none:非I/O优化实例。'."\n"
+ .'- optimized:I/O优化实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'none',
+ ],
+ ],
+ [
+ 'name' => 'SpotStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '后付费实例的抢占策略。取值范围:'."\n"
+ .' '."\n"
+ .'- NoSpot:普通的按量付费实例。'."\n"
+ .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n"
+ .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'NoSpot',
+ ],
+ ],
+ [
+ 'name' => 'ScalingConfigurationName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩配置的名称,2~64个英文或中文字符,以数字、大小写字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。'."\n"
+ ."\n"
+ .'在同一地域下同一伸缩组内伸缩配置名称唯一。如果您没有指定该参数,则默认使用伸缩配置的ID。 ',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-modify',
+ ],
+ ],
+ [
+ 'name' => 'InstanceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '使用本伸缩配置自动创建的ECS实例的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'inst****',
+ ],
+ ],
+ [
+ 'name' => 'HostName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '云服务器ECS的主机名。半角句号(.)或短划线(-)不能作为首尾字符,不能连续使用半角句号(.)或短划线(-)。另外,不同类型实例的命名要求如下: '."\n"
+ ."\n"
+ .'- Windows实例:主机名长度为2~15个字符,可以包含大小写字母、数字和短划线(-)。不能包含半角句号(.),不能全是数字。 '."\n"
+ .'- 其他类型实例(Linux等):主机名长度为2~64个字符,可以包含多个半角句号(.)。两个半角句号(.)之间为一段,每段可以包含大小写字母、数字和短划线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'hos****',
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像文件ID,自动创建实例时使用的镜像资源。'."\n"
+ ."\n"
+ .'> 如果伸缩配置之前使用的镜像包括系统盘和数据盘,修改此镜像后,原数据盘信息会被清除。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'centos6u5_64_20G_aliaegis_2014****.vhd',
+ ],
+ ],
+ [
+ 'name' => 'ImageName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像文件名称,同一个地域内镜像名称唯一。如果设置了ImageId,ImageName将被忽略。'."\n"
+ ."\n\n"
+ .'不支持通过ImageName设置镜像市场镜像。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'suse11sp3_64_20G_aliaegis_2015****.vhd',
+ ],
+ ],
+ [
+ 'name' => 'Cpu',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'vCPU个数。'."\n"
+ ."\n"
+ .'同时指定CPU和Memory可以定义实例规格范围,例如,CPU=2且Memory=16可以定义配置为2 vCPU和16 GiB的所有实例规格。弹性伸缩会结合I/O优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。'."\n"
+ ."\n"
+ .'>该区间配置效果仅在成本优化模式下且伸缩配置未设置实例规格时生效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'Memory',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '内存大小。'."\n"
+ ."\n"
+ .'同时指定CPU和Memory可以定义实例规格范围,例如,CPU=2且Memory=16可以定义配置为2 vCPU和16 GiB的所有实例规格。弹性伸缩会结合I/O优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。'."\n"
+ ."\n"
+ .'>该区间配置效果仅在成本优化模式下且伸缩配置未设置实例规格时生效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '16',
+ ],
+ ],
+ [
+ 'name' => 'InternetChargeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络计费类型。取值范围:'."\n"
+ ."\n"
+ .'- PayByBandwidth:按带宽计费。此时InternetMaxBandwidthOut即为所选的固定带宽值。 '."\n"
+ .'- PayByTraffic:按流量计费。此时InternetMaxBandwidthOut只是一个带宽上限,计费以实际产生的网络流量为依据。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PayByBandwidth',
+ ],
+ ],
+ [
+ 'name' => 'InternetMaxBandwidthOut',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '公网出带宽最大值,单位为 Mbit/s。取值范围:0~100。'."\n"
+ ."\n"
+ .'默认值:0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.Category',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘的磁盘种类。取值范围:'."\n"
+ ."\n"
+ .'- cloud:普通云盘。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。'."\n"
+ .'- ephemeral_ssd:本地SSD盘。'."\n"
+ .'- cloud_auto:ESSD AutoPL云盘。'."\n"
+ ."\n"
+ .'该参数不能与`SystemDiskCategories.N`同时指定。当该参数与`SystemDiskCategories.N`都未指定时,该参数有默认值。InstanceType为系列I的实例规格且实例属于非I/O优化实例时,默认值:cloud。否则,默认值:cloud_efficiency。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_efficiency',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.Size',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘大小,单位为GiB。取值范围:'."\n"
+ ."\n"
+ .'- 普通云盘:20~500。'."\n"
+ .'- ESSD云盘:'."\n"
+ .' - PL0:1~2048。'."\n"
+ .' - PL1:20~2048。'."\n"
+ .' - PL2:461~2048。'."\n"
+ .' - PL3:1261~2048。'."\n"
+ .'- ESSD AutoPL 云盘:1~2048。'."\n"
+ .'- 其他云盘类型:20~2048。'."\n"
+ ."\n"
+ .'该参数的取值必须大于或者等于 max{1, ImageSize}。'."\n"
+ ."\n"
+ .'默认值:max{40, ImageSize}。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.DiskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘的名称。长度为2~128个英文或中文字符。必须以大小写字母或中文开头,不能以`http://`和`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_ssdSystem',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test system disk.',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.AutoSnapshotPolicyId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘使用的自动快照策略ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sp-bp12m37ccmxvbmi5****',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.PerformanceLevel',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '当系统盘为ESSD云盘时,设置云盘的性能等级。取值范围:'."\n"
+ ."\n"
+ .'- PL0:单盘最高随机读写IOPS 1万。'."\n"
+ .'- PL1:单盘最高随机读写IOPS 5万。'."\n"
+ .'- PL2:单盘最高随机读写IOPS 10万。'."\n"
+ .'- PL3:单盘最高随机读写IOPS 100万。'."\n"
+ ."\n"
+ .'> 关于如何选择ESSD云盘性能等级,请参见[ESSD云盘](~~122389~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PL0',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerWeight',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '后端服务器的权重,取值范围:1~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ ],
+ [
+ 'name' => 'UserData',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例的自定义数据,需要以Base64方式编码,编码前的原始数据最多为32 KB。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ZWNobyBoZWxsbyBlY3Mh',
+ ],
+ ],
+ [
+ 'name' => 'KeyPairName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '登录ECS实例时使用的密钥对的名称。 '."\n"
+ .' '."\n"
+ .'- 对Windows实例,该参数将被忽略,默认为空。 '."\n"
+ .'- 对Linux实例,密码登录方式会被初始化成禁止。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'KeyPair_Name',
+ ],
+ ],
+ [
+ 'name' => 'RamRoleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例的RAM角色名称。RAM角色名称由RAM提供和维护,您可调用[ListRoles](~~28713~~)接口查询可用的RAM角色。创建RAM角色的方法,请参见API [CreateRole](~~28710~~)。 ',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'RamRoleTest',
+ ],
+ ],
+ [
+ 'name' => 'PasswordInherit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否使用镜像预设的密码。使用该参数时,您需要确保使用的镜像已经设置了密码。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'Tags',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例的标签。标签以键值对方式传入,最多可以使用20组标签。Key和Value的使用要求如下: '."\n"
+ .' '."\n"
+ .'- Key最多支持64个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。一旦使用标签,Key不允许为空字符串。 '."\n"
+ .'- Value最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。Value可以为空字符串。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"key1":"value1","key2":"value2", ... "key5":"value5"}',
+ ],
+ ],
+ [
+ 'name' => 'DeploymentSetId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例所属的部署集的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ds-bp13v7bjnj9gis****',
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例所属的安全组的ID,同一个安全组内的ECS实例可以互相访问。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sg-F876F****',
+ ],
+ ],
+ [
+ 'name' => 'Override',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否覆盖。取值范围:'."\n"
+ .'- true:覆盖。'."\n"
+ .'- false:不覆盖。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ResourceGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例所属资源组的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'abcd1234abcd****',
+ ],
+ ],
+ [
+ 'name' => 'HpcClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例所属的HPC集群的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'hpc-clusterid',
+ ],
+ ],
+ [
+ 'name' => 'InstanceDescription',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test instance.',
+ ],
+ ],
+ [
+ 'name' => 'Ipv6AddressCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '为弹性网卡指定随机生成的IPv6地址数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'CreditSpecification',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '修改突发性能实例的运行模式。取值范围:'."\n"
+ ."\n"
+ .'- Standard:标准模式,实例性能请参见[什么是突发性能实例](~~59977~~)下的性能约束模式章节。'."\n"
+ ."\n"
+ .'- Unlimited:无性能约束模式,实例性能请参见[什么是突发性能实例](~~59977~~)下的无性能约束模式章节。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Standard',
+ ],
+ ],
+ [
+ 'name' => 'ImageFamily',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像族系名称,通过设置该参数来获取当前镜像族系内最新的可用镜像,用于创建实例。如果已经设置了参数`ImageId`,则不能设置该参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'hangzhou-daily-update',
+ ],
+ ],
+ [
+ 'name' => 'ZoneId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例所属的可用区ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou-g',
+ ],
+ ],
+ [
+ 'name' => 'DedicatedHostId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否在专有宿主机上创建ECS实例。由于专有宿主机不支持创建抢占式实例,指定DedicatedHostId参数后,会自动忽略请求中的SpotStrategy和SpotPriceLimit设置。'."\n"
+ ."\n"
+ .'您可以调用[DescribeDedicatedHosts](~~134242~~)接口查询专有宿主机ID列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'dh-bp67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'Affinity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '专有宿主机实例是否与专有宿主机关联。取值范围:'."\n"
+ ."\n"
+ .'- default:实例不与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,若原专有宿主机可用资源不足,则实例被放置在自动部署资源池的其他专有宿主机上。'."\n"
+ ."\n"
+ .'- host:实例与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,仍放置在原专有宿主机上。若原专有宿主机可用资源不足,则实例重启失败。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'default',
+ ],
+ ],
+ [
+ 'name' => 'Tenancy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否在专有宿主机上创建实例。取值范围:'."\n"
+ ."\n"
+ .'- default:创建非专有宿主机实例。'."\n"
+ ."\n"
+ .'- host:创建专有宿主机实例。若您不指定DedicatedHostId,则由阿里云自动选择专有宿主机放置实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'default',
+ ],
+ ],
+ [
+ 'name' => 'SchedulerOptions',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '调度选项。',
+ 'type' => 'object',
+ 'required' => false,
+ 'example' => '["testManagedPrivateSpaceId****"]',
+ ],
+ ],
+ [
+ 'name' => 'PrivatePoolOptions.MatchCriteria',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例启动的私有池容量选项。弹性保障服务或容量预定服务在生效后会生成私有池容量,供实例启动时选择。取值范围:'."\n"
+ ."\n"
+ .'- Open:开放模式。将自动匹配开放类型的私有池容量。如果没有符合条件的私有池容量,则使用公共池资源启动。该模式下无需设置PrivatePoolOptions.Id参数。'."\n"
+ ."\n"
+ .'- Target:指定模式。使用指定的私有池容量启动实例,如果该私有池容量不可用,则实例会启动失败。该模式下必须指定私有池ID,即PrivatePoolOptions.Id参数为必填项。'."\n"
+ ."\n"
+ .'- None:不使用模式。实例启动将不使用私有池容量。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Open',
+ ],
+ ],
+ [
+ 'name' => 'PrivatePoolOptions.Id',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '私有池ID。即弹性保障服务ID或容量预定服务ID。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'eap-bp67acfmxazb4****',
+ ],
+ ],
+ [
+ 'name' => 'SpotDuration',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '抢占式实例的保留时长,单位为小时。取值范围:'."\n"
+ ."\n"
+ .'- 1:创建后阿里云会保证实例运行1小时不会被自动释放;超过1小时后,系统会自动比较出价与市场价格、检查资源库存,来决定实例的保留或回收。'."\n"
+ .'- 0:创建后,阿里云不能保证实例运行1小时,系统会自动比较出价与市场价格、检查资源库存,来决定实例的保留或回收。'."\n"
+ ."\n"
+ .'>实例被回收前5分钟内,阿里云会通过ECS系统事件向您发送通知。抢占式实例按秒计费,建议您结合具体任务执行耗时来选择合适的保留时长。'."\n"
+ ."\n"
+ .'默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'SpotInterruptionBehavior',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '抢占实例中断模式。目前仅支持Terminate(默认)直接释放实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Terminate',
+ ],
+ ],
+ [
+ 'name' => 'DataDisk',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '数据盘列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据盘列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'PerformanceLevel' => [
+ 'description' => '当数据盘为ESSD云盘时,设置云盘的性能等级。N的取值必须和DataDisk.N.Category=cloud_essd中的N保持一致。取值范围:'."\n"
+ ."\n"
+ .'- PL0:单盘最高随机读写IOPS 1万。'."\n"
+ .'- PL1:单盘最高随机读写IOPS 5万。'."\n"
+ .'- PL2:单盘最高随机读写IOPS 10万。'."\n"
+ .'- PL3:单盘最高随机读写IOPS 100万。'."\n"
+ ."\n"
+ .'> 关于如何选择ESSD云盘性能等级,请参见[ESSD云盘](~~122389~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PL1',
+ ],
+ 'AutoSnapshotPolicyId' => [
+ 'description' => '数据盘使用的自动快照策略ID,N的取值范围:1~16。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sp-bp19nq9enxqkomib****',
+ ],
+ 'Encrypted' => [
+ 'description' => '数据盘N是否加密,N的取值范围:1~16。该参数取值范围:'."\n"
+ ."\n"
+ .'- true:加密。'."\n"
+ .'- false:不加密。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'Description' => [
+ 'description' => '数据盘的描述,N的取值范围:1~16。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test data disk.',
+ ],
+ 'SnapshotId' => [
+ 'description' => '创建数据盘时使用的快照,N的取值范围:1~16。指定该参数后,DataDisk.N.Size会被忽略,实际创建的磁盘大小为指定快照的大小。'."\n"
+ ."\n"
+ .'如果该快照创建于2013年7月15日或之前,调用会被拒绝,返回参数中会提示InvalidSnapshot.TooOld。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 's-snapshot****',
+ ],
+ 'Categories' => [
+ 'description' => '数据盘N的多磁盘类型。第一个N表示第N块数据盘,取值范围:1~16。第二个N表示第N块数据盘的第N种磁盘类型,取值范围:1~4,即一个伸缩配置内最多可以为数据盘指定4种磁盘类型。N越小,优先级越高。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。取值范围:'."\n"
+ .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。'."\n"
+ ."\n"
+ .'> 指定本参数时,不允许同时指定`DataDisk.N.Category`。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据盘N的多磁盘类型。第一个N表示第N块数据盘,取值范围:1~16。第二个N表示第N块数据盘的第N种磁盘类型,取值范围:1~4,即一个伸缩配置内最多可以为数据盘指定4种磁盘类型。N越小,优先级越高。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。取值范围:'."\n"
+ .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。'."\n"
+ ."\n"
+ .'> 指定本参数时,不允许同时指定`DataDisk.N.Category`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud',
+ ],
+ 'required' => false,
+ 'example' => 'cloud',
+ 'maxItems' => 10,
+ ],
+ 'Size' => [
+ 'description' => '数据盘N的磁盘大小,N的取值范围:1~16,内存单位为GiB。取值范围:'."\n"
+ ."\n"
+ .'- cloud:5~2000。'."\n"
+ .'- cloud_efficiency:20~32768。'."\n"
+ .'- cloud_essd:20~32768。'."\n"
+ .'- ephemeral_ssd:5~800。'."\n"
+ ."\n"
+ .'指定该参数后,磁盘大小必须大于等于快照大小(快照通过SnapshotId指定)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ 'Device' => [
+ 'description' => '数据盘挂载点,N的取值范围:1~16。如果您没有指定该参数,则默认在自动创建ECS实例时由系统分配,从/dev/xvdb开始,到/dev/xvdz结束。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/dev/xvdb',
+ ],
+ 'DiskName' => [
+ 'description' => '数据盘的名称,N的取值范围:1~16。长度为2~128个英文或中文字符。必须以大小写字母或中文开头,不能以`http://`和`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_ssdData',
+ ],
+ 'Category' => [
+ 'description' => '数据盘N的磁盘种类,N的取值范围:1~16。该参数取值范围:'."\n"
+ .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。'."\n"
+ .'- ephemeral_ssd:本地SSD盘。'."\n"
+ .'- cloud_auto:ESSD AutoPL云盘。'."\n"
+ ."\n"
+ .'该参数不能与`DataDisk.N.Categories.N`同时指定。当该参数与`DataDisk.N.Categories.N`都未指定时,该参数的默认值为:'."\n"
+ ."\n"
+ .'- 对于I/O优化实例,默认值为cloud_efficiency。'."\n"
+ ."\n"
+ .'- 对于非I/O优化实例,默认值为cloud。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_ssd',
+ ],
+ 'DeleteWithInstance' => [
+ 'description' => '指定数据盘是否随实例释放,N的取值范围:1~16。该参数取值范围:'."\n"
+ ."\n"
+ .'- true:释放实例时,该磁盘随实例一起释放。'."\n"
+ .'- false:释放实例时,该磁盘保留不释放。'."\n"
+ ."\n"
+ .'该参数只可对独立云盘设置(DataDisk.N.Category为cloud、cloud_efficiency、cloud_ssd或cloud_essd),否则会出现报错。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'KMSKeyId' => [
+ 'description' => '数据盘对应的KMS密钥的ID,N的取值范围:1~16。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****',
+ ],
+ 'ProvisionedIops' => [
+ 'description' => '数据盘预配置的IOPS(Input/Output Operations Per Second)性能指标。'."\n"
+ ."\n"
+ .'> IOPS(Input/Output Operations Per Second)指每秒能处理的I/O个数,表示块存储处理读写(输出/输入)的能力,单位为次。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ 'BurstingEnabled' => [
+ 'description' => '数据盘是否开启Burst(性能突发)。取值范围:'."\n"
+ ."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。 '."\n"
+ .'> 当`DataDisk.Category`取值为`cloud_auto`时才支持设置该参数。'."\n"
+ ."\n"
+ .'<props="china">更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。</props>'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 16,
+ ],
+ ],
+ [
+ 'name' => 'SpotPriceLimit',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '抢占式实例信息的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '抢占式实例信息的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'PriceLimit' => [
+ 'description' => '抢占式实例对应的出价,N的取值范围:1~20。SpotStrategy取值为SpotWithPriceLimit时生效。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.125',
+ ],
+ 'InstanceType' => [
+ 'description' => '抢占式实例的实例规格,N的取值范围:1~20。SpotStrategy取值为SpotWithPriceLimit时生效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.g6.large',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'InstanceTypes',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '多实例规格参数。如果使用了InstanceTypes.N,InstanceType将被忽略,其中N的取值范围:1~20,即一个伸缩配置内最多可以设置20种实例规格。'."\n"
+ ."\n"
+ .'N代表当前伸缩配置中实例规格的优先级,编号为1的实例规格优先级最高,实例规格优先级随着编号的增大依次降低。当无法根据优先级较高的实例规格创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格来创建实例。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '多实例规格参数。如果使用了InstanceTypes.N,InstanceType将被忽略,其中N的取值范围:1~20,即一个伸缩配置内最多可以设置20种实例规格。'."\n"
+ ."\n"
+ .'N代表当前伸缩配置中实例规格的优先级,编号为1的实例规格优先级最高,实例规格优先级随着编号的增大依次降低。当无法根据优先级较高的实例规格创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格来创建实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.g6.large',
+ ],
+ 'required' => false,
+ 'example' => 'ecs.g6.large',
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'InstanceTypeOverride',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例规格相关信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格相关信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '当您需要指定伸缩配置中实例规格的容量时,请同时指定本参数和InstanceTypeOverride.N.WeightedCapacity。'."\n"
+ ."\n"
+ .'本参数用于指定实例规格。您可以指定N个本参数,结合InstanceTypeOverride.N.WeightedCapacity参数,扩展多实例规格支持自定义权重。N的取值范围:1~20。'."\n"
+ .'> 指定本参数时,不允许同时指定instanceTypes。'."\n"
+ ."\n"
+ .'InstanceType的取值范围:在售的ECS实例规格,请参见[实例规格族](~~25378~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.c5.xlarge',
+ ],
+ 'WeightedCapacity' => [
+ 'description' => '当您需要指定伸缩配置中实例规格的容量时,在指定InstanceTypeOverride.N.InstanceType后,再指定本参数。两个参数一一对应,N需要保持一致。'."\n"
+ ."\n"
+ .'本参数用于指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。'."\n"
+ ."\n"
+ .'由于每个实例规格的vCPU个数、内存大小等性能指标会有差异,您可以根据自身需求,给不同的实例规格配置不同的权重。'."\n"
+ ."\n"
+ .' 例如:'."\n"
+ ."\n"
+ .'- 当前容量:0。'."\n"
+ .'- 期望容量:6。'."\n"
+ .'- ecs.c5.xlarge规格容量:4。'."\n"
+ ."\n"
+ .'为满足期望容量,伸缩组将为用户扩容2台ecs.c5.xlarge实例。'."\n"
+ ."\n"
+ .'>扩容时伸缩组的容量不得超过最大容量(MaxSize)与实例规格的最大权重之和。'."\n"
+ ."\n"
+ .'WeightedCapacity的取值范围:1~500。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupIds',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '将ECS实例同时加入多个安全组。N的取值范围与实例能够加入安全组上限有关。更多详情,请参见[使用限制](~~25412~~)下的安全组章节。'."\n"
+ ."\n"
+ .'> 不支持同时指定SecurityGroupId和SecurityGroupIds.N。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '所属安全组ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sg-bp18kz60mefs****',
+ ],
+ 'required' => false,
+ 'example' => 'sg-bp18kz60mefs****',
+ 'maxItems' => 16,
+ ],
+ ],
+ [
+ 'name' => 'InstancePatternInfo',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '智能模式下实例规格相关信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '智能模式下实例规格相关信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Cores' => [
+ 'description' => '智能配置模式下,实例规格的vCPU内核数目,用于筛选符合要求的实例规格范围。更多信息,请参见[实例规格族](~~25378~~)。N的取值范围:1~10。'."\n"
+ ."\n"
+ .'请注意以下信息:'."\n"
+ ."\n"
+ .'- InstancePatternInfo.N参数仅适用于伸缩组的网络类型为专有网络。'."\n"
+ ."\n"
+ .'- InstancePatternInfo.N参数必须同时配置InstancePatternInfo.N.Cores和InstancePatternInfo.N.Memory。'."\n"
+ ."\n"
+ .'- 如果您已经通过InstanceType或InstanceTypes.N参数指定了实例规格,弹性伸缩优先使用您指定的实例规格扩容,当指定的实例规格无库存时,再从符合InstancePatternInfo.N参数值的实例规格中优先使用价格最低的实例规格扩容。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'InstanceFamilyLevel' => [
+ 'description' => '智能配置模式下,实例规格族级别,用于筛选符合要求的实例规格范围。取值范围:'."\n"
+ ."\n"
+ .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n"
+ .'- EnterpriseLevel:企业级。性能稳定,资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n"
+ .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的情况。更多信息,请参见[突发性能实例](~~59977~~)。'."\n"
+ ."\n"
+ .'N的取值范围:1~10。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'EnterpriseLevel',
+ ],
+ 'MaxPrice' => [
+ 'description' => '智能配置模式下,按量付费实例或者抢占式实例可接受的每小时最高价格,用于筛选符合要求的实例规格范围。N的取值范围:1~10。'."\n"
+ ."\n"
+ .'> SpotStrategy设置为SpotWithPriceLimit时,该参数必选。其他情况下,该参数可选。'."\n",
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'Memory' => [
+ 'description' => '智能配置模式下,实例规格的内存大小,单位为GiB,用于筛选符合要求的实例规格范围。更多信息,请参见[实例规格族](~~25378~~)。N的取值范围:1~10。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ 'Architecture' => [
+ 'description' => '实例规格所属的架构类型。取值范围:'."\n"
+ ."\n"
+ .'- X86:X86计算。'."\n"
+ .'- Heterogeneous:异构计算,例如GPU或FPGA等。'."\n"
+ .'- BareMental:弹性裸金属服务器。'."\n"
+ .'- Arm:Arm计算。'."\n"
+ ."\n"
+ .'默认值:包含所有架构类型。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格所属的架构类型。取值范围:'."\n"
+ ."\n"
+ .'- X86:X86计算。'."\n"
+ .'- Heterogeneous:异构计算,例如GPU或FPGA等。'."\n"
+ .'- BareMental:弹性裸金属服务器。'."\n"
+ .'- Arm:Arm计算。'."\n"
+ ."\n"
+ .'默认值:包含所有架构类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'X86',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ 'BurstablePerformance' => [
+ 'description' => '是否包含性能突发实例规格。取值范围:'."\n"
+ ."\n"
+ .'- Exclude:不包含性能突发实例规格。'."\n"
+ .'- Include:包含性能突发实例规格。'."\n"
+ .'- Required:只包含性能突发实例规格。'."\n"
+ ."\n"
+ .'默认值:Include。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Include',
+ ],
+ 'ExcludedInstanceType' => [
+ 'description' => '需要排除的实例规格。通过使用通配符(*)可以排除单个规格或者整个规格族。例如:'."\n"
+ ."\n"
+ .'- ecs.c6.large:表示排除ecs.c6.large实例规格。'."\n"
+ .'- ecs.c6.*:表示排除整个c6规格族的实例规格。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '需要排除的实例规格。通过使用通配符(*)可以排除单个规格或者整个规格族。例如:'."\n"
+ ."\n"
+ .'- ecs.c6.large:表示排除ecs.c6.large实例规格。'."\n"
+ .'- ecs.c6.*:表示排除整个c6规格族的实例规格。'."\n"
+ ."\n"
+ .'>如果需要排除多个实例规格,请使用分隔符(/)隔开单个实例规格。例如`ecs.n1.small/ecs.n1.*/*7*`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.n1.small/ecs.n1.*/*7*',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ 'InstanceTypeFamilies' => [
+ 'description' => '指定的实例规格族。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定的实例规格族。N表示可以设置多个实例规格族,N的取值范围:1~10。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["ecs.g6", "ecs.c6", … "ecs.r6"]',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 0,
+ ],
+ 'MinimumCpuCoreCount' => [
+ 'description' => '实例规格的最小vCPU内核数目。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'MaximumCpuCoreCount' => [
+ 'description' => '实例规格的最大vCPU内核数目。'."\n"
+ ."\n"
+ .'>`MaximumCpuCoreCount`参数值不能超过`MinimumCpuCoreCount`参数值的4倍。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ 'GpuSpecs' => [
+ 'description' => '指定的GPU类型。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定的GPU类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["NVIDIA V100"]',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 0,
+ ],
+ 'InstanceCategories' => [
+ 'description' => '实例规格分类。取值范围:'."\n"
+ ."\n"
+ .'- General-purpose: 通用型。'."\n"
+ .'- Compute-optimized:计算型。'."\n"
+ .'- Memory-optimized:内存型。'."\n"
+ .'- Big data:大数据型。'."\n"
+ .'- Local SSDs :本地 SSD 型。'."\n"
+ .'- High Clock Speed :高主频型。'."\n"
+ .'- Enhanced :增强型。'."\n"
+ .'- Shared:共享型。'."\n"
+ .'- Compute-optimized with GPU :GPU 计算型。'."\n"
+ .'- Visual Compute-optimized :视觉计算型。'."\n"
+ .'- Heterogeneous Service :异构服务型。'."\n"
+ .'- Compute-optimized with FPGA :FPGA 计算型。'."\n"
+ .'- Compute-optimized with NPU :NPU 计算型。'."\n"
+ .'- ECS Bare Metal :弹性裸金属服务器。'."\n"
+ .'- High Performance Compute:高性能计算型。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格分类。'."\n"
+ .'>N表示可以设置多个实例分类,N的取值范围:1~10。'."\n"
+ ."\n"
+ .'- General-purpose:通用型。'."\n"
+ .'- Compute-optimized:计算型。'."\n"
+ .'- Memory-optimized:内存型。'."\n"
+ .'- Big data:大数据型。'."\n"
+ .'- Local SSDs:本地SSD型。'."\n"
+ .'- High Clock Speed:高主频型。'."\n"
+ .'- Enhanced:增强型。'."\n"
+ .'- Shared:共享型。'."\n"
+ .'- Compute-optimized with GPU:GPU计算型。'."\n"
+ .'- Visual Compute-optimized:视觉计算型。'."\n"
+ .'- Heterogeneous Service:异构服务型。'."\n"
+ .'- Compute-optimized with FPGA:FPGA计算型。'."\n"
+ .'- Compute-optimized with NPU:NPU计算型。'."\n"
+ .'- ECS Bare Metal:弹性裸金属服务器。'."\n"
+ .'- High Performance Compute:高性能计算型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Compute-optimized with GPU',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 0,
+ ],
+ 'CpuArchitectures' => [
+ 'description' => '指定实例的CPU架构。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定实例的CPU架构。取值范围:'."\n"
+ .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n"
+ ."\n"
+ .'- X86。'."\n"
+ .'- ARM。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["X86", "ARM"]',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 0,
+ ],
+ 'PhysicalProcessorModels' => [
+ 'description' => '实例的处理器型号。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例的处理器型号。N表示可以设置多个处理器型号,N的取值范围:1~10。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["Intel Xeon(Ice Lake) Platinum 8369B", "Intel Xeon(Skylake) Platinum 8163", … "Intel Xeon(Cascade Lake) Platinum 8269CY"]',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 0,
+ ],
+ 'MinimumEniQuantity' => [
+ 'description' => '实例期望最小支持挂载的弹性网卡上限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'MinimumEniPrivateIpAddressQuantity' => [
+ 'description' => '实例的期望最小单块弹性网卡的IPv4地址上限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'MinimumEniIpv6AddressQuantity' => [
+ 'description' => '实例期望的最小单块弹性网卡的IPv6地址上限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'MinimumInitialCredit' => [
+ 'description' => '实例期望的最小突发性能实例 t5、t6的初始vCPU积分值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '12',
+ ],
+ 'MinimumBaselineCredit' => [
+ 'description' => '实例期望的最小突发性能实例t5、t6的基准vCPU计算性能(所有vCPU之和)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '12',
+ ],
+ 'MinimumMemorySize' => [
+ 'description' => '实例期望的最小内存。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ 'MaximumMemorySize' => [
+ 'description' => '实例期望的最大内存。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ 'MinimumGpuAmount' => [
+ 'description' => '实例期望的最小GPU数目。取值范围:≥1的正整数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'MaximumGpuAmount' => [
+ 'description' => '实例期望的最大GPU数目。取值范围:≥1的正整数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'SystemDiskCategories',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '系统盘的多磁盘类型。N的取值范围:1~4,即一个伸缩配置内最多可以为系统盘指定4种磁盘类型。N越小,优先级越高。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。取值范围:'."\n"
+ .'- cloud:普通云盘。'."\n"
+ .'- cloud_efficiency:高效云盘'."\n"
+ .'- cloud_ssd:SSD云盘'."\n"
+ .'- cloud_essd:ESSD云盘'."\n"
+ ."\n"
+ .'> 指定本参数时,不允许同时指定`SystemDisk.Category`。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '系统盘的多磁盘类型。N的取值范围:1~4,即一个伸缩配置内最多可以为系统盘指定4种磁盘类型。N越小,优先级越高。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。取值范围:'."\n"
+ .'- cloud:普通云盘。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。'."\n"
+ ."\n"
+ .'> 指定本参数时,不允许同时指定`SystemDisk.Category`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud',
+ ],
+ 'required' => false,
+ 'example' => 'cloud',
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'Password',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例的密码。长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号中的三类字符。特殊符号可以是:'."\n"
+ ."\n"
+ .'`()~!@#$%^&*-_+=\\|{}[]:;\'<>,.?/'."\n"
+ ."\n"
+ .'其中,Windows实例不能以斜线号(/)为密码首字符。'."\n"
+ ."\n"
+ .'> 如果传入Password参数,建议您使用HTTPS协议发送请求,避免密码泄露。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123abc****',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.Encrypted',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否加密系统盘。取值范围:'."\n"
+ ."\n"
+ .'- true:加密。'."\n"
+ .'- false:不加密。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.KMSKeyId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘使用的KMS密钥ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.EncryptAlgorithm',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘采用的加密算法。取值范围:'."\n"
+ ."\n"
+ .'- AES-256。'."\n"
+ .'- SM4-128。'."\n"
+ ."\n"
+ .'默认值:AES-256。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AES-256',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.ProvisionedIops',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘预配置的IOPS(Input/Output Operations Per Second)性能指标。'."\n"
+ ."\n"
+ .'> IOPS(Input/Output Operations Per Second)指每秒能处理的I/O个数,表示块存储处理读写(输出/输入)的能力,单位为次。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.BurstingEnabled',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘是否开启Burst(性能突发)。取值范围:'."\n"
+ ."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。 '."\n"
+ .'> 当`SystemDisk.Category`取值为`cloud_auto`时才支持设置该参数。'."\n"
+ ."\n"
+ .'<props="china">更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。</props>'."\n"
+ ."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ImageOptions.LoginAsNonRoot',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例是否使用ecs-user用户登录,更多信息,请参见[管理ECS实例的登录名](~~388447~~)。取值范围:'."\n"
+ ."\n"
+ .'- true:是。'."\n"
+ ."\n"
+ .'- false:否。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'DeletionProtection',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECS实例释放保护属性。该项仅适用于按量付费实例,指是否支持通过ECS管理控制台或API(DeleteInstance)直接释放实例。取值范围:'."\n"
+ .'- true:开启实例释放保护属性,表示不支持通过ECS管理控制台或API直接释放实例(即防止弹性伸缩中扩容的实例被误删)。'."\n"
+ .'- false:关闭实例释放保护属性,表示支持通过ECS管理控制台或API直接释放实例。'."\n"
+ ."\n"
+ .'>该属性不影响弹性伸缩正常的缩容活动,即弹性伸缩发生缩容活动时,开启实例释放保护的按量付费实例可以被正常释放掉。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'StorageSetId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '存储集ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ss-bp67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'StorageSetPartitionNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '存储集中的最大分区数量。取值范围:大于等于2。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'CustomPriorities',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '**ECS实例规格+虚拟交换机**组合的自定义优先级。'."\n"
+ ."\n"
+ .'>该参数仅在伸缩组的``扩缩容策略``为`优先级策略`时有效。'."\n"
+ ."\n"
+ .'当无法根据优先级较高的**ECS实例规格+虚拟交换机**创建ECS实例时,弹性伸缩服务会自动选择下一优先级的**ECS实例规格+虚拟交换机**组合来创建ECS实例。'."\n"
+ ."\n"
+ .'>如果仅指定了部分**ECS实例规格+虚拟交换机**组合的自定义优先级,则未指定的组合优先级低于指定的组合优先级,且未指定的组合仍会依次按照伸缩组的虚拟交换机顺序、伸缩配置的实例规格顺序确定优先级。例如:伸缩组的虚拟交换机顺序依次为vsw1、vsw2,伸缩配置的实例规格顺序依次为type1、type2,该组合的自定义优先级顺序为`["vsw2+type2", "vsw1+type2"]`,则最终优先级为`vsw2+type2`> `vsw1+type2` > `vsw1+type1` > `vsw2+type1`。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '**ECS实例规格+虚拟交换机**组合的自定义优先级。'."\n"
+ ."\n"
+ .'><notice>该参数仅在伸缩组的``扩缩容策略``为`优先级策略`时有效。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '`CustomPriorities`字段表示**ECS实例规格+虚拟交换机**组合的自定义优先级,`CustomPriorities.N.InstanceType`参数表示自定义优先级中的ECS实例的实例规格。'."\n"
+ ."\n"
+ .'>该参数仅在伸缩组的``扩缩容策略``为`优先级策略`时有效,且该实例规格(InstanceType)必须包含在伸缩配置的实例规格列表中。'."\n"
+ ."\n"
+ .'当无法根据优先级较高的**ECS实例规格+虚拟交换机**创建ECS实例时,弹性伸缩服务会自动选择下一优先级的**ECS实例规格+虚拟交换机**组合来创建ECS实例。'."\n"
+ ."\n"
+ .'>如果仅指定了部分**ECS实例规格+虚拟交换机**组合的自定义优先级,则未指定的组合优先级低于指定的组合优先级,且未指定的组合仍会依次按照伸缩组的虚拟交换机顺序、伸缩配置的实例规格顺序确定优先级。例如:伸缩组的虚拟交换机顺序依次为vsw1、vsw2,伸缩配置的实例规格顺序依次为type1、type2,该组合的自定义优先级顺序为`["vsw2+type2", "vsw1+type2"]`,则最终优先级为`vsw2+type2`> `vsw1+type2` > `vsw1+type1` > `vsw2+type1`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.g6.large',
+ ],
+ 'VswitchId' => [
+ 'description' => '`CustomPriorities.N.VswitchId`参数表示自定义优先级中的虚拟交换机的ID。'."\n"
+ ."\n"
+ .'>该参数仅在伸缩组的``扩缩容策略``为`优先级策略`时有效,且该交换机(Vswitch)必须包含在伸缩组的交换机列表中。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-bp14zolna43z266bq****',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'NetworkInterfaces',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '弹性网卡列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '弹性网卡类型。使用此参数时表示必须使用`NetworkInterfaces.N`设置主网卡,但不能同时设置`SecurityGroupId`或`SecurityGroupIds.N`参数。取值范围:'."\n"
+ ."\n"
+ .'- Primary:主网卡。'."\n"
+ ."\n"
+ .'- Secondary:辅助网卡。'."\n"
+ ."\n"
+ .'默认值:Secondary。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Primary',
+ ],
+ 'NetworkInterfaceTrafficMode' => [
+ 'description' => '网卡的通讯模式。取值范围:'."\n"
+ ."\n"
+ .'- Standard:使用TCP通讯模式。'."\n"
+ .'- HighPerformance:开启ERI(Elastic RDMA Interface)接口,使用RDMA通讯模式。'."\n"
+ ."\n"
+ .'默认值:Standard。'."\n"
+ .'>RDMA模式的弹性网卡数量不能超过该实例规格族的限制。更多信息,请参见[实例规格族](~~25378~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HighPerformance',
+ ],
+ 'Ipv6AddressCount' => [
+ 'description' => '为主网卡指定随机生成的IPv6地址数量。 您需要注意以下事项:'."\n"
+ ."\n"
+ .'- 如果`NetworkInterfaces.N.InstanceType`取值为`Primary`时,设置该参数才会生效。'."\n"
+ .'- 如果`NetworkInterfaces.N.InstanceType`取值为`Secondary`或空值,则不能设置该参数。'."\n"
+ .'- 设置该参数后,您不能再设置`Ipv6AddressCount`参数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'SecurityGroupIds' => [
+ 'description' => '弹性网卡所属的一个或多个安全组ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡所属的一个或多个安全组ID。 您需要注意以下事项:'."\n"
+ ."\n"
+ .'- 如果`NetworkInterfaces.N.InstanceType`取值为`Primary`时,则必须设置该参数。此时该参数的作用等同于`SecurityGroupIds.N`,但需要注意不能同时再设置`SecurityGroupId`或`SecurityGroupIds.N`参数。'."\n"
+ ."\n"
+ .'- 如果`NetworkInterfaces.N.InstanceType`取值为`Secondary`或空值,则该参数为非必填参数。默认值为ECS实例所属的安全组(即主网卡的安全组)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sg-2ze55shrh****',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ 'SecondaryPrivateIpAddressCount' => [
+ 'description' => '为网卡指定辅助私网 IPv4 地址数量。取值范围:1~49。'."\n"
+ ."\n"
+ .'- 取值不能超过该实例规格对于ip 数量的限制。更多信息,请参见[实例规格族](~~25378~~)。'."\n"
+ .'- NetworkInterface.N.SecondaryPrivateIpAddressCount用于为网卡分配辅助私网IPv4 地址数量(不包含该网卡的主私网 IP),系统将从该网卡所在虚拟交换机(NetworkInterface.N.VSwitchId)的可用网段中随机分配。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'DedicatedHostClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '专有宿主机集群ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'dc-2zedxc67zqzt7lb4****',
+ ],
+ ],
+ [
+ 'name' => 'SecurityOptions',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '安全选项。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ConfidentialComputingMode' => [
+ 'description' => '机密计算模式。可能值:'."\n"
+ .'- Enclave:表示ECS实例使用Enclave构建机密计算环境。更多信息,请参见[使用Enclave构建机密计算环境](~~203433~~)。'."\n"
+ .'- TDX:表示构建TDX机密计算环境。更多信息,请参见[构建TDX机密计算环境](~~479090~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TDX',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'HttpEndpoint',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否启用实例元数据的访问通道。取值范围:'."\n"
+ ."\n"
+ .'- enabled:启用。'."\n"
+ .'- disabled:禁用。'."\n"
+ ."\n"
+ .'默认值:enabled。'."\n"
+ ."\n"
+ .'> 有关实例元数据的信息,请参见[实例元数据概述](~~108460~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'enabled',
+ ],
+ ],
+ [
+ 'name' => 'HttpTokens',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '访问实例元数据时是否强制使用加固模式(IMDSv2)。取值范围:'."\n"
+ ."\n"
+ .'- optional:不强制使用。'."\n"
+ .'- required:强制使用。设置该取值后,普通模式无法访问实例元数据。'."\n"
+ ."\n"
+ .'默认值:optional。'."\n"
+ ."\n"
+ .'> 有关访问实例元数据的模式,请参见[实例元数据访问模式](~~108460~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'optional',
+ ],
+ ],
+ [
+ 'name' => 'InternetMaxBandwidthIn',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '公网入带宽最大值,单位为 Mbit/s。取值范围:'."\n"
+ ."\n"
+ .'- 当所购公网出带宽小于等于 10 Mbit/s 时:1~10,默认为 10。'."\n"
+ .'- 当所购公网出带宽大于 10 Mbit/s 时:1~`InternetMaxBandwidthOut`的取值,默认为`InternetMaxBandwidthOut`的取值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'ResourcePoolOptions',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '创建实例时使用的资源池策略。当您设置该参数后,需要注意:'."\n"
+ ."\n"
+ .'- 该参数只在创建按量付费实例时生效。'."\n"
+ ."\n"
+ .'- 该参数不能与PrivatePoolOptions.MatchCriteria、PrivatePoolOptions.Id同时设置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Strategy' => [
+ 'description' => '资源池包括弹性保障服务或容量预定服务生效后生成的私有池以及公共池,供实例启动时选择。取值范围:'."\n"
+ ."\n"
+ .'- PrivatePoolFirst:私有池优先。选择此种策略时,当指定了 ResourcePoolOptions.PrivatePoolIds,优先使用指定的私有池。如果未指定私有池或指定的私有池容量不足,将自动匹配开放类型的私有池。如果没有符合条件的私有池,则使用公共池创建实例。'."\n"
+ ."\n"
+ .'- PrivatePoolOnly:仅限私有池。选择此种策略时,必须指定ResourcePoolOptions.PrivatePoolIds。如果指定的私有池容量不足,则实例会启动失败。'."\n"
+ ."\n"
+ .'- None:不使用资源池策略。'."\n"
+ ."\n"
+ .'默认值:None。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PrivatePoolFirst',
+ ],
+ 'PrivatePoolIds' => [
+ 'description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。该参数只能传入 Target 模式私有池 ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。该参数只能传入 Target 模式私有池 ID。N 的取值范围:1~20。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'eap-bp67acfmxazb4****',
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyScalingConfigurationResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</ModifyScalingConfigurationResponse>","errorExample":""}]',
+ 'title' => '修改一个伸缩配置',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 如果修改伸缩配置的名称,请注意同一伸缩组下不能存在名称相同的伸缩配置。'."\n"
+ .'- 支持以下任一方式绑定主网卡,但需要注意每次调用接口时只能选择一种方式配置主网卡,如果同时使用两种方式会导致接口调用失败并返回错误信息。'."\n"
+ .' - 通过`SecurityGroupId`、`SecurityGroupIds.N`与`Ipv6AddressCount`等参数直接设置主网卡的相关配置信息。'."\n"
+ .' - 通过`NetworkInterfaces.N`设置主网卡以及辅助网卡的配置信息,且使用该参数必须设置主网卡信息。其中,`NetworkInterfaces.N.InstanceType`取值为`Primary`时,表示设置主网卡;当`NetworkInterfaces.N.InstanceType`取值为`Secondary`或空值时,表示设置辅助网卡。'."\n"
+ ."\n"
+ .' >修改伸缩配置时,选择以上一种方式修改网卡配置时,会清空另一种方式设置的网卡配置。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|未授权操作当前Action。|'."\n"
+ .'|404|InvalidDataDiskSnapshotId.NotFound|Snapshot "XXX" does not exist.|不存在指定的快照。|'."\n"
+ .'|400|InvalidDataDiskSnapshotId.SizeNotSupported|The capacity of snapshot "XXX" exceeds the size limit of the specified disk category.|指定快照的大小超过了磁盘大小的限制。|'."\n"
+ .'|404|InvalidImageId.NotFound|The specified image does not exist.|指定的镜像不存在。|'."\n"
+ .'|400|InvalidKeyPairName.NotFound|The specified KeyPairName does not exist in our records.|指定的KeyPairName不存在。|'."\n"
+ .'|400|InvalidNetworkType.ForRAMRole|RAMRole can’t be used For classic instance.|经典网络实例不支持RamRoleName参数。|'."\n"
+ .'|400|InvalidParamter|The specified value of parameter is not valid.|指定的参数值无效。|'."\n"
+ .'|400|InvalidScalingConfigurationName.Duplicate|The specified value of parameter is duplicated.|伸缩配置名已存在。|'."\n"
+ .'|400|InvalidSecurityGroupId.IncorrectNetworkType|The network type of specified Security Group does not support this action.|指定的安全组与伸缩组指定网络类型不一致。|'."\n"
+ .'|400|InvalidSecurityGroupId.VPCMismatch|The specified security group and the specified virtual switch are not in the same VPC.|指定的安全组和虚拟交换机不属于同一个虚拟专有网络。|'."\n"
+ .'|400|InvalidTags.KeyValue|The specified tags key/value cannot be empty.|必须指定Tags参数。|'."\n"
+ .'|400|InvalidTags.ListSize|The specified tags list size cannot be more than "20".|Tags列表长度超过限制长度。|'."\n"
+ .'|400|InvalidUserData.Base64FormatInvalid|The specified parameter UserData must be base64 encoded.|UserData不符合Base64编码规范。|'."\n"
+ .'|400|InvalidUserData.SizeExceeded|The specified parameter UserData exceeds the size.|指定的UserData过长。'."\n"
+ .'|400|InvalidSecurityGroupId.IncorrectType|The managed security group "XXX" is not supported.|不支持 "XXX" 托管安全组。',
+ ],
+ 'DescribeScalingConfigurations' => [
+ 'summary' => '查询伸缩配置的信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92682',
+ 'abilityTreeNodes' => [
+ 'FEATUREessVYTHU5',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩配置所属伸缩组的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩配置列表的页码,起始值:1。'."\n"
+ ."\n"
+ .'默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值:50。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'example' => '50',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID,您可以查询该伸缩组下所有的伸缩配置。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp17pelvl720x3v7****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingConfigurationId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '待查询伸缩配置的ID。'."\n"
+ ."\n"
+ .'查询结果包括生效和未生效的伸缩配置,并通过返回参数`LifecycleState`进行标识。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '待查询伸缩配置的ID。'."\n"
+ ."\n"
+ .'查询结果包括生效和未生效的伸缩配置,并通过返回参数`LifecycleState`进行标识。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asc-bp17pelvl720x5ub****',
+ ],
+ 'required' => false,
+ 'example' => 'asc-bp17pelvl720x5ub****',
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'ScalingConfigurationName',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '待查询伸缩配置的名称。'."\n"
+ ."\n"
+ .'查询结果会忽略失效的伸缩配置名称,并且不报错。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '待查询伸缩配置的名称。'."\n"
+ ."\n"
+ .'查询结果会忽略失效的伸缩配置名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalingcon****',
+ ],
+ 'required' => false,
+ 'example' => 'scalingcon****',
+ 'maxItems' => 10,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'TotalCount' => [
+ 'description' => '伸缩配置的总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ScalingConfigurations' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ScalingConfiguration' => [
+ 'description' => '伸缩配置信息的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩配置信息的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DeploymentSetId' => [
+ 'description' => 'ECS实例所属的部署集的ID。',
+ 'type' => 'string',
+ 'example' => 'ds-bp1frxuzdg87zh4p****',
+ ],
+ 'CreationTime' => [
+ 'description' => '伸缩配置的创建时间。',
+ 'type' => 'string',
+ 'example' => '2014-08-14T10:58Z',
+ ],
+ 'ScalingConfigurationName' => [
+ 'description' => '伸缩配置的名称。',
+ 'type' => 'string',
+ 'example' => 'scalingconfigura****',
+ ],
+ 'SystemDiskDescription' => [
+ 'description' => '系统盘的描述。',
+ 'type' => 'string',
+ 'example' => 'Test system disk.',
+ ],
+ 'KeyPairName' => [
+ 'description' => '登录ECS实例时使用的密钥对的名称。',
+ 'type' => 'string',
+ 'example' => 'keypair****',
+ ],
+ 'SecurityGroupId' => [
+ 'description' => 'ECS实例所属的安全组的ID,同一个安全组内的ECS实例可以互相访问。',
+ 'type' => 'string',
+ 'example' => 'sg-bp18kz60mefs****',
+ ],
+ 'PrivatePoolOptions.Id' => [
+ 'description' => '私有池ID。即弹性保障服务ID或容量预定服务ID。',
+ 'type' => 'string',
+ 'example' => 'eap-bp67acfmxazb4****',
+ ],
+ 'SystemDiskAutoSnapshotPolicyId' => [
+ 'description' => '系统盘使用的自动快照策略ID。',
+ 'type' => 'string',
+ 'example' => 'sp-bp12m37ccmxvbmi5****',
+ ],
+ 'SpotStrategy' => [
+ 'description' => '后付费实例的抢占策略。可能值:'."\n"
+ .' '."\n"
+ .'- NoSpot:普通的按量付费实例。'."\n"
+ .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n"
+ .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。',
+ 'type' => 'string',
+ 'example' => 'NoSpot',
+ ],
+ 'ScalingGroupId' => [
+ 'description' => '伸缩配置所属伸缩组的ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp17pelvl720x3v7****',
+ ],
+ 'Affinity' => [
+ 'description' => '专有宿主机实例是否与专有宿主机关联。可能值:'."\n"
+ ."\n"
+ .'- default:实例不与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,若原专有宿主机可用资源不足,则实例被放置在自动部署资源池的其他专有宿主机上。'."\n"
+ ."\n"
+ .'- host:实例与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,仍放置在原专有宿主机上。若原专有宿主机可用资源不足,则实例重启失败。',
+ 'type' => 'string',
+ 'example' => 'default',
+ ],
+ 'Tenancy' => [
+ 'description' => '是否在专有宿主机上创建实例。可能值:'."\n"
+ ."\n"
+ .'- default:创建非专有宿主机实例。'."\n"
+ ."\n"
+ .'- host:创建专有宿主机实例。若您不指定`DedicatedHostId`,则由阿里云自动选择专有宿主机放置实例。',
+ 'type' => 'string',
+ 'example' => 'default',
+ ],
+ 'SystemDiskSize' => [
+ 'description' => '系统盘的磁盘大小。单位为GiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'Ipv6AddressCount' => [
+ 'description' => '为弹性网卡指定随机生成的IPv6地址数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'SpotDuration' => [
+ 'description' => '抢占式实例的保留时长,单位为小时。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'LifecycleState' => [
+ 'description' => '伸缩配置在伸缩组中的状态。可能值:'."\n"
+ ."\n"
+ .'- Active:生效状态。伸缩组会使用处于生效状态的伸缩配置自动创建ECS实例。'."\n"
+ .'- Inacitve:未生效状态。处于未生效状态的伸缩配置存在于伸缩组中,但伸缩组不会使用此类伸缩配置自动创建ECS实例。',
+ 'type' => 'string',
+ 'example' => 'Active',
+ ],
+ 'InstanceName' => [
+ 'description' => 'ECS实例的名称。',
+ 'type' => 'string',
+ 'example' => 'instance****',
+ ],
+ 'SecurityEnhancementStrategy' => [
+ 'description' => '是否开启安全加固。可能值:'."\n"
+ ."\n"
+ .'- Active:启用安全加固,只对公共镜像生效。'."\n"
+ .'- Deactive:不启用安全加固,对所有镜像类型生效。',
+ 'type' => 'string',
+ 'example' => 'Active',
+ ],
+ 'UserData' => [
+ 'description' => 'ECS实例的自定义数据,以Base64方式编码。',
+ 'type' => 'string',
+ 'example' => 'echo hello ecs!',
+ ],
+ 'PrivatePoolOptions.MatchCriteria' => [
+ 'description' => '实例启动的私有池容量选项。弹性保障服务或容量预定服务在生效后会生成私有池容量,供实例启动时选择。可能值:'."\n"
+ ."\n"
+ .'- Open:开放模式。将自动匹配开放类型的私有池容量。如果没有符合条件的私有池容量,则使用公共池资源启动。'."\n"
+ ."\n"
+ .'- Target:指定模式。使用指定的私有池容量启动实例,如果该私有池容量不可用,则实例会启动失败。'."\n"
+ ."\n"
+ .'- None:不使用模式。实例启动将不使用私有池容量。',
+ 'type' => 'string',
+ 'example' => 'Open',
+ ],
+ 'DedicatedHostId' => [
+ 'description' => '是否在专有宿主机上创建ECS实例。由于专有宿主机不支持创建抢占式实例,指定`DedicatedHostId`参数后,会自动忽略请求中的`SpotStrategy`和`SpotPriceLimit`设置。'."\n"
+ ."\n"
+ .'您可以通过[DescribeDedicatedHosts](~~134242~~)查询专有宿主机ID列表。',
+ 'type' => 'string',
+ 'example' => 'dh-bp67acfmxazb4p****',
+ ],
+ 'InstanceGeneration' => [
+ 'description' => 'ECS实例的系列。',
+ 'type' => 'string',
+ 'example' => 'ecs-3',
+ ],
+ 'HpcClusterId' => [
+ 'description' => 'ECS实例所属的HPC集群的ID。',
+ 'type' => 'string',
+ 'example' => 'hpc-clus****',
+ ],
+ 'PasswordInherit' => [
+ 'description' => '是否使用镜像预设的密码。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Memory' => [
+ 'description' => '内存大小,单位为GiB。'."\n"
+ ."\n"
+ .'同时指定CPU和Memory可以定义实例规格范围。例如,CPU=2且Memory=16可以定义配置为2 vCPU和16 GiB的所有实例规格。弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。'."\n"
+ ."\n"
+ .'>该区间配置效果仅在成本优化模式下且伸缩配置未设置实例规格时生效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '16',
+ ],
+ 'ImageId' => [
+ 'description' => '镜像文件ID,自动创建实例时使用的镜像资源。',
+ 'type' => 'string',
+ 'example' => 'centos6u5_64_20G_aliaegis_2014****.vhd',
+ ],
+ 'ImageFamily' => [
+ 'description' => '镜像族系名称,通过设置该参数来获取当前镜像族系内最新的可用镜像,用于创建实例。如果已经设置了参数`ImageId`,则不能设置该参数。',
+ 'type' => 'string',
+ 'example' => 'hangzhou-daily-update',
+ ],
+ 'ImageOwnerAlias' => [
+ 'description' => '镜像来源。可能值:'."\n"
+ .'- system:阿里云提供的公共镜像。'."\n"
+ .'- self:您创建的自定义镜像。'."\n"
+ .'- others:其他阿里云用户提供的共享镜像或社区镜像。'."\n"
+ .'- marketplace:云市场镜像提供的镜像。',
+ 'type' => 'string',
+ 'example' => 'system',
+ ],
+ 'LoadBalancerWeight' => [
+ 'description' => 'ECS实例作为后端服务器时的权重。可能值:1~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'SystemDiskCategory' => [
+ 'description' => '系统盘的磁盘种类。可能值:'."\n"
+ ."\n"
+ .'- cloud:普通云盘。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- ephemeral_ssd:本地SSD盘。'."\n"
+ .'- cloud_essd:ESSD云盘。'."\n"
+ .'- cloud_auto:ESSD AutoPL云盘。',
+ 'type' => 'string',
+ 'example' => 'cloud',
+ ],
+ 'HostName' => [
+ 'description' => '云服务器的主机名。',
+ 'type' => 'string',
+ 'example' => 'LocalHost',
+ ],
+ 'SystemDiskName' => [
+ 'description' => '系统盘的名称。',
+ 'type' => 'string',
+ 'example' => 'cloud_ssd_Test',
+ ],
+ 'InternetMaxBandwidthOut' => [
+ 'description' => '公网出带宽最大值,单位为 Mbit/s。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'InternetMaxBandwidthIn' => [
+ 'description' => '公网入带宽最大值,单位为 Mbit/s。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'InstanceType' => [
+ 'description' => 'ECS实例的实例规格。',
+ 'type' => 'string',
+ 'example' => 'ecs.g6.large',
+ ],
+ 'InstanceDescription' => [
+ 'description' => 'ECS实例的描述。',
+ 'type' => 'string',
+ 'example' => 'FinanceDept',
+ ],
+ 'IoOptimized' => [
+ 'description' => '是否为I/O优化实例。可能值:'."\n"
+ ."\n"
+ .'- none:非I/O优化。'."\n"
+ .'- optimized:I/O优化。',
+ 'type' => 'string',
+ 'example' => 'none',
+ ],
+ 'RamRoleName' => [
+ 'description' => 'ECS实例的RAM角色名称。RAM角色名称由RAM提供和维护,您可调用[ListRoles](~~28713~~)查询可用的RAM角色。创建RAM角色的方法请参见[CreateRole](~~28710~~)。',
+ 'type' => 'string',
+ 'example' => 'ramrole****',
+ ],
+ 'SystemDiskPerformanceLevel' => [
+ 'description' => '当系统盘为ESSD云盘时,ESSD云盘的性能等级。',
+ 'type' => 'string',
+ 'example' => 'PL1',
+ ],
+ 'Cpu' => [
+ 'description' => 'vCPU个数。'."\n"
+ ."\n"
+ .'同时指定CPU和Memory可以定义实例规格范围,例如,CPU=2且Memory=16可以定义配置为2 vCPU和16 GiB的所有实例规格。弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。'."\n"
+ ."\n"
+ .'> 该区间配置效果仅在成本优化模式下且伸缩配置未设置实例规格时生效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'ResourceGroupId' => [
+ 'description' => 'ECS实例所属资源组的ID。',
+ 'type' => 'string',
+ 'example' => 'rg-aekzn2ou7xo****',
+ ],
+ 'ZoneId' => [
+ 'description' => '实例所属的可用区ID,您可以调用[DescribeZones](~~25610~~)获取可用区列表。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-g',
+ ],
+ 'InternetChargeType' => [
+ 'description' => '网络计费类型。可能值:'."\n"
+ ."\n"
+ .'- PayByBandwidth:按带宽计费。此时InternetMaxBandwidthOut即为所选的固定带宽值。'."\n"
+ .'- PayByTraffic:按流量计费。此时InternetMaxBandwidthOut只是一个带宽上限,计费以实际产生的网络流量为依据。',
+ 'type' => 'string',
+ 'example' => 'PayByTraffic',
+ ],
+ 'ImageName' => [
+ 'description' => '镜像文件名称。',
+ 'type' => 'string',
+ 'example' => 'centos6u5_64_20G_aliaegis_20140703.vhd',
+ ],
+ 'ScalingConfigurationId' => [
+ 'description' => '伸缩配置的ID。',
+ 'type' => 'string',
+ 'example' => 'asc-bp1ezrfgoyn5kijl****',
+ ],
+ 'CreditSpecification' => [
+ 'description' => '突发性能实例的运行模式。可能值:'."\n"
+ .'- Standard:标准模式,实例性能请参见[什么是突发性能实例](~~59977~~)下的性能约束模式章节。'."\n"
+ .'- Unlimited:无性能约束模式,实例性能请参见[什么是突发性能实例](~~59977~~)下的无性能约束模式章节。',
+ 'type' => 'string',
+ 'example' => 'Standard',
+ ],
+ 'SpotInterruptionBehavior' => [
+ 'description' => '抢占实例中断模式。',
+ 'type' => 'string',
+ 'example' => 'Terminate',
+ ],
+ 'DataDisks' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'DataDisk' => [
+ 'description' => '数据盘信息的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据盘信息的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'PerformanceLevel' => [
+ 'description' => '当数据盘为ESSD云盘时,ESSD云盘的性能等级。',
+ 'type' => 'string',
+ 'example' => 'PL1',
+ ],
+ 'Description' => [
+ 'description' => '数据盘的描述。',
+ 'type' => 'string',
+ 'example' => 'FinanceDept',
+ ],
+ 'SnapshotId' => [
+ 'description' => '创建数据盘使用的快照ID。',
+ 'type' => 'string',
+ 'example' => 's-23f2i****',
+ ],
+ 'Device' => [
+ 'description' => '数据盘的挂载点。',
+ 'type' => 'string',
+ 'example' => '/dev/xvdb',
+ ],
+ 'Size' => [
+ 'description' => '数据盘的磁盘大小,内存单位为GiB。可能值:'."\n"
+ ."\n"
+ .'- cloud:5~2000。'."\n"
+ .'- cloud_efficiency:20~32768。'."\n"
+ .'- cloud_ssd:20~32768。'."\n"
+ .'- cloud_essd:20~32768。'."\n"
+ .'- ephemeral_ssd:5~800。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'DiskName' => [
+ 'description' => '数据盘的名称。',
+ 'type' => 'string',
+ 'example' => 'cloud_ssdData',
+ ],
+ 'AutoSnapshotPolicyId' => [
+ 'description' => '数据盘使用的自动快照策略ID。',
+ 'type' => 'string',
+ 'example' => 'sp-bp19nq9enxqkomib****',
+ ],
+ 'Category' => [
+ 'description' => '数据盘的磁盘种类。可能值:'."\n"
+ .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- ephemeral_ssd:本地SSD盘。'."\n"
+ .'- cloud_essd:ESSD云盘。'."\n"
+ .'- cloud_auto:ESSD AutoPL云盘。',
+ 'type' => 'string',
+ 'example' => 'cloud',
+ ],
+ 'KMSKeyId' => [
+ 'description' => '数据盘对应的KMS密钥的ID。',
+ 'type' => 'string',
+ 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****',
+ ],
+ 'DeleteWithInstance' => [
+ 'description' => '数据盘是否随实例释放。可能值:'."\n"
+ ."\n"
+ .'- true:释放实例时,该磁盘随实例一起释放。'."\n"
+ .'- false:释放实例时,该磁盘保留不释放。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Encrypted' => [
+ 'description' => '数据盘是否加密。可能值:'."\n"
+ ."\n"
+ .'- true:加密。'."\n"
+ .'- false:不加密。',
+ 'type' => 'string',
+ 'example' => 'false',
+ ],
+ 'Categories' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Category' => [
+ 'description' => '数据盘的多磁盘类型。第一个磁盘类型优先级最高,其他磁盘类型的优先级依次递减。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。可能值:'."\n"
+ .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据盘的多磁盘类型。第一个磁盘类型优先级最高,其他磁盘类型的优先级依次递减。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。可能值:'."\n"
+ .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。',
+ 'type' => 'string',
+ 'example' => 'cloud_essd',
+ ],
+ ],
+ ],
+ ],
+ 'ProvisionedIops' => [
+ 'description' => '数据盘预配置的IOPS(Input/Output Operations Per Second)性能指标。'."\n"
+ ."\n"
+ .'> IOPS(Input/Output Operations Per Second)指每秒能处理的I/O个数,表示块存储处理读写(输出/输入)的能力,单位为次。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '100',
+ ],
+ 'BurstingEnabled' => [
+ 'description' => '数据盘是否开启Burst(性能突发)。可能值:'."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。'."\n"
+ ."\n"
+ .'> 当`DataDisk.Category`取值为`cloud_auto`时才显示该参数。'."\n"
+ ."\n"
+ .'<props="china">更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。</props>'."\n",
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Tags' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Tag' => [
+ 'description' => '标签信息的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签信息的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '实例的标签键。N的取值范围:1~20。'."\n"
+ ."\n"
+ .'如果传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。',
+ 'type' => 'string',
+ 'example' => 'binary',
+ ],
+ 'Value' => [
+ 'description' => '实例的标签值。N的取值范围:1~20。'."\n"
+ ."\n"
+ .'如果传入该值,则允许为空字符串。最多支持128个字符,不能以`acs:`开头,不能包含`http://`或者`https://`。',
+ 'type' => 'string',
+ 'example' => 'alterTable',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'SpotPriceLimit' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SpotPriceModel' => [
+ 'description' => '抢占式实例信息的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '抢占式实例信息的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '抢占式实例的实例规格。',
+ 'type' => 'string',
+ 'example' => 'ecs.g6.large',
+ ],
+ 'PriceLimit' => [
+ 'description' => '抢占式实例对应的出价。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '0.125',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'InstancePatternInfos' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstancePatternInfo' => [
+ 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。',
+ 'type' => 'object',
+ 'properties' => [
+ 'MaxPrice' => [
+ 'description' => '按量付费实例或者抢占式实例可接受的每小时最高价格。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '2',
+ ],
+ 'Cores' => [
+ 'description' => '实例规格的vCPU内核数目。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'Memory' => [
+ 'description' => '实例规格的内存大小,单位为GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '4',
+ ],
+ 'InstanceFamilyLevel' => [
+ 'description' => '实例规格族级别。'."\n"
+ ."\n"
+ .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n"
+ .'- EnterpriseLevel:企业级。性能稳定,资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n"
+ .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的情况。更多信息,请参见[突发性能实例](~~59977~~)。',
+ 'type' => 'string',
+ 'example' => 'EnterpriseLevel',
+ ],
+ 'Architectures' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Architecture' => [
+ 'description' => '实例规格所属的架构类型。可能值:'."\n"
+ ."\n"
+ .'- X86:X86计算。'."\n"
+ .'- Heterogeneous:异构计算,例如GPU或FPGA等。'."\n"
+ .'- BareMental:弹性裸金属服务器。'."\n"
+ .'- Arm:Arm计算。'."\n"
+ ."\n"
+ .'默认值:包含所有架构类型。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格所属的架构类型。可能值:'."\n"
+ ."\n"
+ .'- X86:X86计算。'."\n"
+ .'- Heterogeneous:异构计算,例如GPU或FPGA等。'."\n"
+ .'- BareMental:弹性裸金属服务器。'."\n"
+ .'- Arm:Arm计算。'."\n"
+ ."\n"
+ .'默认值:包含所有架构类型。',
+ 'type' => 'string',
+ 'example' => 'X86',
+ ],
+ ],
+ ],
+ ],
+ 'BurstablePerformance' => [
+ 'description' => '是否为性能突发实例规格。可能值:'."\n"
+ ."\n"
+ .'- Exclude:不包含性能突发实例规格。'."\n"
+ .'- Include:包含性能突发实例规格。'."\n"
+ .'- Required:只包含性能突发实例规格。'."\n"
+ ."\n"
+ .'默认值:Include。',
+ 'type' => 'string',
+ 'example' => 'Include',
+ ],
+ 'ExcludedInstanceTypes' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ExcludedInstanceType' => [
+ 'description' => '需要排除的实例规格。通过使用通配符(*)可以排除单个规格或者整个规格族。例如:'."\n"
+ ."\n"
+ .'- ecs.c6.large:表示排除ecs.c6.large实例规格。'."\n"
+ .'- ecs.c6.*:表示排除整个c6规格族的实例规格。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '需要排除的实例规格。通过使用通配符(*)可以排除单个规格或者整个规格族。例如:'."\n"
+ ."\n"
+ .'- ecs.c6.large:表示排除ecs.c6.large实例规格。'."\n"
+ .'- ecs.c6.*:表示排除整个c6规格族的实例规格。',
+ 'type' => 'string',
+ 'example' => 'ecs.n1.small/ecs.n1.*/*7*',
+ ],
+ ],
+ ],
+ ],
+ 'InstanceTypeFamilies' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceTypeFamily' => [
+ 'description' => '指定查询的实例规格族。N 表示可以设置多个实例规格族,N 的取值范围:1~10。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定查询的实例规格族。N 表示可以设置多个实例规格族,N 的取值范围:1~10。',
+ 'type' => 'string',
+ 'example' => 'ecs.g6',
+ ],
+ ],
+ ],
+ ],
+ 'MinimumCpuCoreCount' => [
+ 'description' => '实例规格的最小vCPU内核数目。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'MaximumCpuCoreCount' => [
+ 'description' => '实例规格的最大vCPU内核数目。'."\n"
+ .'>`MaximumCpuCoreCount`参数值不能超过`MinimumCpuCoreCount`参数值的4倍。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ 'GpuSpecs' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'GpuSpec' => [
+ 'description' => 'GPU类型。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'GPU类型。',
+ 'type' => 'string',
+ 'example' => 'NVIDIA V100',
+ ],
+ ],
+ ],
+ ],
+ 'InstanceCategories' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceCategory' => [
+ 'description' => '实例规格分类。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例分类。取值范围:'."\n"
+ .'>N表示可以设置多个实例分类,N的取值范围:1~10。'."\n"
+ ."\n"
+ .'- General-purpose:通用型。'."\n"
+ .'- Compute-optimized:计算型。'."\n"
+ .'- Memory-optimized:内存型。'."\n"
+ .'- Big data:大数据型。'."\n"
+ .'- Local SSDs:本地SSD型。'."\n"
+ .'- High Clock Speed:高主频型。'."\n"
+ .'- Enhanced:增强型。'."\n"
+ .'- Shared:共享型。'."\n"
+ .'- Compute-optimized with GPU:GPU计算型。'."\n"
+ .'- Visual Compute-optimized:视觉计算型。'."\n"
+ .'- Heterogeneous Service:异构服务型。'."\n"
+ .'- Compute-optimized with FPGA:FPGA计算型。'."\n"
+ .'- Compute-optimized with NPU:NPU计算型。'."\n"
+ .'- ECS Bare Metal:弹性裸金属服务器。'."\n"
+ .'- High Performance Compute:高性能计算型。',
+ 'type' => 'string',
+ 'example' => 'Compute-optimized with GPU',
+ ],
+ ],
+ ],
+ ],
+ 'CpuArchitectures' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'CpuArchitecture' => [
+ 'description' => '实例规格的CPU架构。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格的CPU架构。取值范围:'."\n"
+ .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n"
+ ."\n"
+ .'- X86。'."\n"
+ .'- ARM。',
+ 'type' => 'string',
+ 'example' => 'X86',
+ ],
+ ],
+ ],
+ ],
+ 'PhysicalProcessorModels' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'PhysicalProcessorModel' => [
+ 'description' => '实例的处理器型号。N表示可以设置多个处理器型号,N的取值范围:1~10。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例的处理器型号。N表示可以设置多个处理器型号,N的取值范围:1~10。',
+ 'type' => 'string',
+ 'example' => 'Intel Xeon(Ice Lake) Platinum 8369B", "Intel Xeon(Skylake) Platinum 8163", … "Intel Xeon(Cascade Lake) Platinum 8269CY',
+ ],
+ ],
+ ],
+ ],
+ 'MinimumEniQuantity' => [
+ 'description' => '实例最小支持挂载的弹性网卡上限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'MinimumEniPrivateIpAddressQuantity' => [
+ 'description' => '实例的期望最小单块弹性网卡的IPv4地址上限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'MinimumEniIpv6AddressQuantity' => [
+ 'description' => '实例最小单块弹性网卡的IPv6地址上限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'MinimumInitialCredit' => [
+ 'description' => '实例最小突发性能实例t5、t6的初始vCPU积分值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '12',
+ ],
+ 'MinimumBaselineCredit' => [
+ 'description' => '实例最小突发性能实例t5、t6的基准vCPU计算性能(所有vCPU之和)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '12',
+ ],
+ 'MinimumMemorySize' => [
+ 'description' => '实例最小内存。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '4',
+ ],
+ 'MaximumMemorySize' => [
+ 'description' => '实例最大内存。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '4',
+ ],
+ 'MinimumGpuAmount' => [
+ 'description' => '实例最小GPU数目。取值范围:正整数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'MaximumGpuAmount' => [
+ 'description' => '实例最大GPU数目。取值范围:正整数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'SystemDiskCategories' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SystemDiskCategory' => [
+ 'description' => '系统盘的多磁盘类型。第一个磁盘类型优先级最高,其他磁盘类型的优先级依次递减。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。可能值:'."\n"
+ .'- cloud:普通云盘。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '系统盘的多磁盘类型。第一个磁盘类型优先级最高,其他磁盘类型的优先级依次递减。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。可能值:'."\n"
+ .'- cloud:普通云盘。'."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:SSD云盘。'."\n"
+ .'- cloud_essd:ESSD云盘。',
+ 'type' => 'string',
+ 'example' => 'cloud',
+ ],
+ ],
+ ],
+ ],
+ 'WeightedCapacities' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'WeightedCapacity' => [
+ 'description' => '对应指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '对应指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。',
+ 'type' => 'string',
+ 'example' => '4',
+ ],
+ ],
+ ],
+ ],
+ 'InstanceTypes' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => 'ECS实例的实例规格的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ECS实例的实例规格的集合。',
+ 'type' => 'string',
+ 'example' => 'ecs.g6.large',
+ ],
+ ],
+ ],
+ ],
+ 'SecurityGroupIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SecurityGroupId' => [
+ 'description' => 'ECS实例所属的多个安全组的ID,同一个安全组内的ECS实例可以互相访问。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ECS实例所属的多个安全组的ID,同一个安全组内的ECS实例可以互相访问。',
+ 'type' => 'string',
+ 'example' => 'sg-bp18kz60mefs****',
+ ],
+ ],
+ ],
+ ],
+ 'SchedulerOptions' => [
+ 'description' => '调度选项。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ManagedPrivateSpaceId' => [
+ 'description' => '智能全托管资源池。',
+ 'type' => 'string',
+ 'example' => 'testManagedPrivateSpaceId',
+ ],
+ ],
+ ],
+ 'SystemDisk.Encrypted' => [
+ 'description' => '是否加密系统盘。可能值:'."\n"
+ .'- true:加密。'."\n"
+ .'- false:不加密。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'SystemDisk.KMSKeyId' => [
+ 'description' => '系统盘使用的KMS密钥ID。',
+ 'type' => 'string',
+ 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****',
+ ],
+ 'SystemDisk.EncryptAlgorithm' => [
+ 'description' => '系统盘采用的加密算法。可能值:'."\n"
+ .'- AES-256。'."\n"
+ .'- SM4-128。',
+ 'type' => 'string',
+ 'example' => 'AES-256',
+ ],
+ 'SystemDisk.ProvisionedIops' => [
+ 'description' => '系统盘预配置的IOPS(Input/Output Operations Per Second)性能指标。'."\n"
+ ."\n"
+ .'> IOPS(Input/Output Operations Per Second)指每秒能处理的I/O个数,表示块存储处理读写(输出/输入)的能力,单位为次。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '100',
+ ],
+ 'SystemDisk.BurstingEnabled' => [
+ 'description' => '系统盘是否开启Burst(性能突发)。可能值:'."\n"
+ ."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。'."\n"
+ ."\n"
+ .'> 当SystemDisk.Category取值为cloud_auto时才支持设置该参数。'."\n"
+ ."\n"
+ .'<props="china">更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。</props>'."\n",
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'ImageOptions.LoginAsNonRoot' => [
+ 'description' => 'ECS实例是否使用ecs-user用户登录。可能值:'."\n"
+ ."\n"
+ .'- true:是。'."\n"
+ .'- false:否。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'DeletionProtection' => [
+ 'description' => 'ECS实例释放保护属性。该项仅适用于按量付费实例,指是否支持通过ECS管理控制台或API(DeleteInstance)直接释放实例。可能值:'."\n"
+ ."\n"
+ .'- true:开启实例释放保护属性,表示不支持通过ECS管理控制台或API直接释放实例(即防止弹性伸缩中扩容的实例被误删)。'."\n"
+ ."\n"
+ .'- false:关闭实例释放保护属性,表示支持通过ECS管理控制台或API直接释放实例。'."\n"
+ ."\n"
+ .'>该属性不影响弹性伸缩正常的缩容活动,即弹性伸缩发生缩容活动时,开启实例释放保护的按量付费实例可以被正常释放掉。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'StorageSetId' => [
+ 'description' => '存储集ID。',
+ 'type' => 'string',
+ 'example' => 'ss-bp67acfmxazb4p****',
+ ],
+ 'StorageSetPartitionNumber' => [
+ 'description' => '存储集中的最大分区数量。取值为大于等于2的整数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'CustomPriorities' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'CustomPriority' => [
+ 'description' => '**ECS实例规格+虚拟交换机**组合的自定义优先级。'."\n"
+ ."\n"
+ .'>该参数仅在伸缩组的``扩缩容策略``为`优先级策略`时有效。'."\n"
+ ."\n"
+ .'当无法根据优先级较高的**ECS实例规格+虚拟交换机**创建ECS实例时,弹性伸缩服务会自动选择下一优先级的**ECS实例规格+虚拟交换机**组合来创建ECS实例。'."\n"
+ ."\n"
+ .'>如果仅指定了部分**ECS实例规格+虚拟交换机**组合的自定义优先级,则未指定的组合优先级低于指定的组合优先级,且未指定的组合仍会依次按照伸缩组的虚拟交换机顺序、伸缩配置的实例规格顺序确定优先级。例如:伸缩组的虚拟交换机顺序依次为vsw1、vsw2,伸缩配置的实例规格顺序依次为type1、type2,该组合的自定义优先级顺序为`["vsw2+type2", "vsw1+type2"]`,则最终优先级为`vsw2+type2`> `vsw1+type2` > `vsw1+type1` > `vsw2+type1`。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '**ECS实例规格+虚拟交换机**组合的自定义优先级。'."\n"
+ ."\n"
+ .'><notice>该参数仅在伸缩组的``扩缩容策略``为`优先级策略`时有效。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => 'ECS实例的实例规格。'."\n"
+ .'>该实例规格必须包含在伸缩配置的实例规格列表中。',
+ 'type' => 'string',
+ 'example' => 'ecs.g6.large',
+ ],
+ 'VswitchId' => [
+ 'description' => '虚拟交换机的ID。'."\n"
+ .'>该交换机必须包含在伸缩组的交换机列表中。',
+ 'type' => 'string',
+ 'example' => 'vsw-bp14zolna43z266bq****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'NetworkInterfaces' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NetworkInterface' => [
+ 'description' => '弹性网卡列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '弹性网卡类型。可能值:'."\n"
+ ."\n"
+ .'- Primary:主网卡。'."\n"
+ ."\n"
+ .'- Secondary:辅助弹性网卡。',
+ 'type' => 'string',
+ 'example' => 'Primary',
+ ],
+ 'NetworkInterfaceTrafficMode' => [
+ 'description' => '弹性网卡的通讯模式。可能值:'."\n"
+ ."\n"
+ .'- Standard:使用TCP通讯模式。'."\n"
+ .'- HighPerformance:开启ERI(Elastic RDMA Interface)接口,使用RDMA通讯模式。',
+ 'type' => 'string',
+ 'example' => 'HighPerformance',
+ ],
+ 'Ipv6AddressCount' => [
+ 'description' => '为主网卡指定随机生成的IPv6地址数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'SecurityGroupIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SecurityGroupId' => [
+ 'description' => '弹性网卡所属的一个或多个安全组ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡所属的一个或多个安全组ID。',
+ 'type' => 'string',
+ 'example' => 'sg-2vc3e1v7h****',
+ ],
+ ],
+ ],
+ ],
+ 'SecondaryPrivateIpAddressCount' => [
+ 'description' => '为网卡指定辅助私网 IPv4 地址数量。可能值:1~49。'."\n"
+ ."\n"
+ .'- 取值不能超过该实例规格对于ip 数量的限制。更多信息,请参见[实例规格族](~~25378~~)。'."\n"
+ .'- NetworkInterface.N.SecondaryPrivateIpAddressCount用于为网卡分配辅助私网IPv4 地址数量(不包含该网卡的主私网 IP),系统将从该网卡所在虚拟交换机(NetworkInterface.N.VSwitchId)的可用网段中随机分配。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'DedicatedHostClusterId' => [
+ 'description' => '专有宿主机集群ID。',
+ 'type' => 'string',
+ 'example' => 'dc-2zedxc67zqzt7lb4****',
+ ],
+ 'PasswordSetted' => [
+ 'description' => '是否设置实例密码。可能值:'."\n"
+ ."\n"
+ .'- true:设置实例密码'."\n"
+ .'- false:不设置实例密码'."\n",
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'SecurityOptions' => [
+ 'description' => '安全选项。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ConfidentialComputingMode' => [
+ 'description' => '机密计算模式。可能值:'."\n"
+ .'- Enclave:表示ECS实例使用Enclave构建机密计算环境。更多信息,请参见[使用Enclave构建机密计算环境](~~203433~~)。'."\n"
+ .'- TDX:表示构建TDX机密计算环境。更多信息,请参见[构建TDX机密计算环境](~~479090~~)。',
+ 'type' => 'string',
+ 'example' => 'TDX',
+ ],
+ ],
+ ],
+ 'HttpEndpoint' => [
+ 'description' => '是否启用实例元数据的访问通道。可能值:'."\n"
+ ."\n"
+ .'- enabled:启用。'."\n"
+ .'- disabled:禁用。',
+ 'type' => 'string',
+ 'example' => 'enabled',
+ ],
+ 'HttpTokens' => [
+ 'description' => '访问实例元数据时是否强制使用加固模式(IMDSv2)。可能值:'."\n"
+ ."\n"
+ .'- optional:不强制使用。'."\n"
+ .'- required:强制使用。设置该取值后,普通模式无法访问实例元数据。',
+ 'type' => 'string',
+ 'example' => 'optional',
+ ],
+ 'ResourcePoolOptions' => [
+ 'description' => '创建实例时使用的资源池策略。'."\n"
+ ."\n"
+ .'- 该参数只在创建按量付费实例时生效。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Strategy' => [
+ 'description' => '资源池包括弹性保障服务或容量预定服务生效后生成的私有池以及公共池,供实例启动时选择。可能值:'."\n"
+ ."\n"
+ .'- PrivatePoolFirst:私有池优先。选择此种策略时,当指定了 ResourcePoolOptions.PrivatePoolIds,优先使用指定的私有池。如果未指定私有池或指定的私有池容量不足,将自动匹配开放类型的私有池。如果没有符合条件的私有池,则使用公共池创建实例。'."\n"
+ ."\n"
+ .'- PrivatePoolOnly:仅限私有池。选择此种策略时,必须指定ResourcePoolOptions.PrivatePoolIds。如果指定的私有池容量不足,则实例会启动失败。'."\n"
+ ."\n"
+ .'- None:不使用资源池策略。'."\n"
+ ."\n"
+ .'默认值:None。',
+ 'type' => 'string',
+ 'example' => 'PrivatePoolFirst',
+ ],
+ 'PrivatePoolIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'PrivatePoolId' => [
+ 'description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。',
+ 'type' => 'string',
+ 'example' => 'eap-bp67acfmxazb4****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 1,\\n \\"ScalingConfigurations\\": {\\n \\"ScalingConfiguration\\": [\\n {\\n \\"DeploymentSetId\\": \\"ds-bp1frxuzdg87zh4p****\\",\\n \\"CreationTime\\": \\"2014-08-14T10:58Z\\",\\n \\"ScalingConfigurationName\\": \\"scalingconfigura****\\",\\n \\"SystemDiskDescription\\": \\"Test system disk.\\",\\n \\"KeyPairName\\": \\"keypair****\\",\\n \\"SecurityGroupId\\": \\"sg-bp18kz60mefs****\\",\\n \\"PrivatePoolOptions.Id\\": \\"eap-bp67acfmxazb4****\\",\\n \\"SystemDiskAutoSnapshotPolicyId\\": \\"sp-bp12m37ccmxvbmi5****\\",\\n \\"SpotStrategy\\": \\"NoSpot\\",\\n \\"ScalingGroupId\\": \\"asg-bp17pelvl720x3v7****\\",\\n \\"Affinity\\": \\"default\\",\\n \\"Tenancy\\": \\"default\\",\\n \\"SystemDiskSize\\": 100,\\n \\"Ipv6AddressCount\\": 1,\\n \\"SpotDuration\\": 1,\\n \\"LifecycleState\\": \\"Active\\",\\n \\"InstanceName\\": \\"instance****\\",\\n \\"SecurityEnhancementStrategy\\": \\"Active\\",\\n \\"UserData\\": \\"echo hello ecs!\\",\\n \\"PrivatePoolOptions.MatchCriteria\\": \\"Open\\",\\n \\"DedicatedHostId\\": \\"dh-bp67acfmxazb4p****\\",\\n \\"InstanceGeneration\\": \\"ecs-3\\",\\n \\"HpcClusterId\\": \\"hpc-clus****\\",\\n \\"PasswordInherit\\": true,\\n \\"Memory\\": 16,\\n \\"ImageId\\": \\"centos6u5_64_20G_aliaegis_2014****.vhd\\",\\n \\"ImageFamily\\": \\"hangzhou-daily-update\\",\\n \\"ImageOwnerAlias\\": \\"system\\",\\n \\"LoadBalancerWeight\\": 1,\\n \\"SystemDiskCategory\\": \\"cloud\\",\\n \\"HostName\\": \\"LocalHost\\",\\n \\"SystemDiskName\\": \\"cloud_ssd_Test\\",\\n \\"InternetMaxBandwidthOut\\": 10,\\n \\"InternetMaxBandwidthIn\\": 10,\\n \\"InstanceType\\": \\"ecs.g6.large\\",\\n \\"InstanceDescription\\": \\"FinanceDept\\",\\n \\"IoOptimized\\": \\"none\\",\\n \\"RamRoleName\\": \\"ramrole****\\",\\n \\"SystemDiskPerformanceLevel\\": \\"PL1\\",\\n \\"Cpu\\": 2,\\n \\"ResourceGroupId\\": \\"rg-aekzn2ou7xo****\\",\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"InternetChargeType\\": \\"PayByTraffic\\",\\n \\"ImageName\\": \\"centos6u5_64_20G_aliaegis_20140703.vhd\\",\\n \\"ScalingConfigurationId\\": \\"asc-bp1ezrfgoyn5kijl****\\",\\n \\"CreditSpecification\\": \\"Standard\\",\\n \\"SpotInterruptionBehavior\\": \\"Terminate\\",\\n \\"DataDisks\\": {\\n \\"DataDisk\\": [\\n {\\n \\"PerformanceLevel\\": \\"PL1\\",\\n \\"Description\\": \\"FinanceDept\\",\\n \\"SnapshotId\\": \\"s-23f2i****\\",\\n \\"Device\\": \\"/dev/xvdb\\",\\n \\"Size\\": 200,\\n \\"DiskName\\": \\"cloud_ssdData\\",\\n \\"AutoSnapshotPolicyId\\": \\"sp-bp19nq9enxqkomib****\\",\\n \\"Category\\": \\"cloud\\",\\n \\"KMSKeyId\\": \\"0e478b7a-4262-4802-b8cb-00d3fb40****\\",\\n \\"DeleteWithInstance\\": true,\\n \\"Encrypted\\": \\"false\\",\\n \\"Categories\\": {\\n \\"Category\\": [\\n \\"cloud_essd\\"\\n ]\\n },\\n \\"ProvisionedIops\\": 100,\\n \\"BurstingEnabled\\": false\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"binary\\",\\n \\"Value\\": \\"alterTable\\"\\n }\\n ]\\n },\\n \\"SpotPriceLimit\\": {\\n \\"SpotPriceModel\\": [\\n {\\n \\"InstanceType\\": \\"ecs.g6.large\\",\\n \\"PriceLimit\\": 0.125\\n }\\n ]\\n },\\n \\"InstancePatternInfos\\": {\\n \\"InstancePatternInfo\\": [\\n {\\n \\"MaxPrice\\": 2,\\n \\"Cores\\": 2,\\n \\"Memory\\": 4,\\n \\"InstanceFamilyLevel\\": \\"EnterpriseLevel\\",\\n \\"Architectures\\": {\\n \\"Architecture\\": [\\n \\"X86\\"\\n ]\\n },\\n \\"BurstablePerformance\\": \\"Include\\",\\n \\"ExcludedInstanceTypes\\": {\\n \\"ExcludedInstanceType\\": [\\n \\"ecs.n1.small/ecs.n1.*/*7*\\"\\n ]\\n },\\n \\"InstanceTypeFamilies\\": {\\n \\"InstanceTypeFamily\\": [\\n \\"ecs.g6\\"\\n ]\\n },\\n \\"MinimumCpuCoreCount\\": 2,\\n \\"MaximumCpuCoreCount\\": 4,\\n \\"GpuSpecs\\": {\\n \\"GpuSpec\\": [\\n \\"NVIDIA V100\\"\\n ]\\n },\\n \\"InstanceCategories\\": {\\n \\"InstanceCategory\\": [\\n \\"Compute-optimized with GPU\\"\\n ]\\n },\\n \\"CpuArchitectures\\": {\\n \\"CpuArchitecture\\": [\\n \\"X86\\"\\n ]\\n },\\n \\"PhysicalProcessorModels\\": {\\n \\"PhysicalProcessorModel\\": [\\n \\"Intel Xeon(Ice Lake) Platinum 8369B\\\\\\", \\\\\\"Intel Xeon(Skylake) Platinum 8163\\\\\\", … \\\\\\"Intel Xeon(Cascade Lake) Platinum 8269CY\\"\\n ]\\n },\\n \\"MinimumEniQuantity\\": 2,\\n \\"MinimumEniPrivateIpAddressQuantity\\": 2,\\n \\"MinimumEniIpv6AddressQuantity\\": 1,\\n \\"MinimumInitialCredit\\": 12,\\n \\"MinimumBaselineCredit\\": 12,\\n \\"MinimumMemorySize\\": 4,\\n \\"MaximumMemorySize\\": 4,\\n \\"MinimumGpuAmount\\": 2,\\n \\"MaximumGpuAmount\\": 2\\n }\\n ]\\n },\\n \\"SystemDiskCategories\\": {\\n \\"SystemDiskCategory\\": [\\n \\"cloud\\"\\n ]\\n },\\n \\"WeightedCapacities\\": {\\n \\"WeightedCapacity\\": [\\n \\"4\\"\\n ]\\n },\\n \\"InstanceTypes\\": {\\n \\"InstanceType\\": [\\n \\"ecs.g6.large\\"\\n ]\\n },\\n \\"SecurityGroupIds\\": {\\n \\"SecurityGroupId\\": [\\n \\"sg-bp18kz60mefs****\\"\\n ]\\n },\\n \\"SchedulerOptions\\": {\\n \\"ManagedPrivateSpaceId\\": \\"testManagedPrivateSpaceId\\"\\n },\\n \\"SystemDisk.Encrypted\\": false,\\n \\"SystemDisk.KMSKeyId\\": \\"0e478b7a-4262-4802-b8cb-00d3fb40****\\",\\n \\"SystemDisk.EncryptAlgorithm\\": \\"AES-256\\",\\n \\"SystemDisk.ProvisionedIops\\": 100,\\n \\"SystemDisk.BurstingEnabled\\": false,\\n \\"ImageOptions.LoginAsNonRoot\\": false,\\n \\"DeletionProtection\\": false,\\n \\"StorageSetId\\": \\"ss-bp67acfmxazb4p****\\",\\n \\"StorageSetPartitionNumber\\": 2,\\n \\"CustomPriorities\\": {\\n \\"CustomPriority\\": [\\n {\\n \\"InstanceType\\": \\"ecs.g6.large\\",\\n \\"VswitchId\\": \\"vsw-bp14zolna43z266bq****\\"\\n }\\n ]\\n },\\n \\"NetworkInterfaces\\": {\\n \\"NetworkInterface\\": [\\n {\\n \\"InstanceType\\": \\"Primary\\",\\n \\"NetworkInterfaceTrafficMode\\": \\"HighPerformance\\",\\n \\"Ipv6AddressCount\\": 1,\\n \\"SecurityGroupIds\\": {\\n \\"SecurityGroupId\\": [\\n \\"sg-2vc3e1v7h****\\"\\n ]\\n },\\n \\"SecondaryPrivateIpAddressCount\\": 2\\n }\\n ]\\n },\\n \\"DedicatedHostClusterId\\": \\"dc-2zedxc67zqzt7lb4****\\",\\n \\"PasswordSetted\\": false,\\n \\"SecurityOptions\\": {\\n \\"ConfidentialComputingMode\\": \\"TDX\\"\\n },\\n \\"HttpEndpoint\\": \\"enabled\\",\\n \\"HttpTokens\\": \\"optional\\",\\n \\"ResourcePoolOptions\\": {\\n \\"Strategy\\": \\"PrivatePoolFirst\\",\\n \\"PrivatePoolIds\\": {\\n \\"PrivatePoolId\\": [\\n \\"eap-bp67acfmxazb4****\\"\\n ]\\n }\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeScalingConfigurationsResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>50</PageSize>\\n <TotalCount>1</TotalCount>\\n <ScalingConfigurations>\\n <DeploymentSetId>ds-bp1frxuzdg87zh4p****</DeploymentSetId>\\n <CreationTime>2014-08-14T10:58Z</CreationTime>\\n <ScalingConfigurationName>scalingconfigura****</ScalingConfigurationName>\\n <SystemDiskDescription>Test system disk.</SystemDiskDescription>\\n <KeyPairName>keypair****</KeyPairName>\\n <SecurityGroupId>sg-bp18kz60mefs****</SecurityGroupId>\\n <PrivatePoolOptions.Id>eap-bp67acfmxazb4****</PrivatePoolOptions.Id>\\n <SystemDiskAutoSnapshotPolicyId>sp-bp12m37ccmxvbmi5****</SystemDiskAutoSnapshotPolicyId>\\n <SpotStrategy>NoSpot</SpotStrategy>\\n <ScalingGroupId>asg-bp17pelvl720x3v7****</ScalingGroupId>\\n <Affinity>default</Affinity>\\n <Tenancy>default</Tenancy>\\n <SystemDiskSize>100</SystemDiskSize>\\n <Ipv6AddressCount>1</Ipv6AddressCount>\\n <SpotDuration>1</SpotDuration>\\n <LifecycleState>Active</LifecycleState>\\n <InstanceName>instance****</InstanceName>\\n <SecurityEnhancementStrategy>Active</SecurityEnhancementStrategy>\\n <UserData>echo hello ecs!</UserData>\\n <PrivatePoolOptions.MatchCriteria>Open</PrivatePoolOptions.MatchCriteria>\\n <DedicatedHostId>dh-bp67acfmxazb4p****</DedicatedHostId>\\n <InstanceGeneration>ecs-3</InstanceGeneration>\\n <HpcClusterId>hpc-clus****</HpcClusterId>\\n <PasswordInherit>true</PasswordInherit>\\n <Memory>16</Memory>\\n <ImageId>centos6u5_64_20G_aliaegis_2014****.vhd</ImageId>\\n <ImageFamily>hangzhou-daily-update</ImageFamily>\\n <ImageOwnerAlias>system</ImageOwnerAlias>\\n <LoadBalancerWeight>1</LoadBalancerWeight>\\n <SystemDiskCategory>cloud</SystemDiskCategory>\\n <HostName>LocalHost</HostName>\\n <SystemDiskName>cloud_ssd_Test</SystemDiskName>\\n <InternetMaxBandwidthOut>0</InternetMaxBandwidthOut>\\n <InternetMaxBandwidthIn>200</InternetMaxBandwidthIn>\\n <InstanceType>ecs.g6.large</InstanceType>\\n <InstanceDescription>FinanceDept</InstanceDescription>\\n <IoOptimized>none</IoOptimized>\\n <RamRoleName>ramrole****</RamRoleName>\\n <SystemDiskPerformanceLevel>PL1</SystemDiskPerformanceLevel>\\n <Cpu>2</Cpu>\\n <ResourceGroupId>rg-aekzn2ou7xo****</ResourceGroupId>\\n <ZoneId>cn-hangzhou-g</ZoneId>\\n <InternetChargeType>PayByTraffic</InternetChargeType>\\n <ImageName>centos6u5_64_20G_aliaegis_20140703.vhd</ImageName>\\n <ScalingConfigurationId>asc-bp1ezrfgoyn5kijl****</ScalingConfigurationId>\\n <CreditSpecification>Standard</CreditSpecification>\\n <SpotInterruptionBehavior>Terminate</SpotInterruptionBehavior>\\n <DataDisks>\\n <PerformanceLevel>PL1</PerformanceLevel>\\n <Description>FinanceDept</Description>\\n <SnapshotId>s-23f2i****</SnapshotId>\\n <Device>/dev/xvdb</Device>\\n <Size>200</Size>\\n <DiskName>cloud_ssdData</DiskName>\\n <AutoSnapshotPolicyId>sp-bp19nq9enxqkomib****</AutoSnapshotPolicyId>\\n <Category>cloud</Category>\\n <KMSKeyId>0e478b7a-4262-4802-b8cb-00d3fb40****</KMSKeyId>\\n <DeleteWithInstance>true</DeleteWithInstance>\\n <Encrypted>false</Encrypted>\\n <Categories>cloud_essd</Categories>\\n <ProvisionedIops>100</ProvisionedIops>\\n <BurstingEnabled>false</BurstingEnabled>\\n </DataDisks>\\n <Tags>\\n <Key>binary</Key>\\n <Value>alterTable</Value>\\n </Tags>\\n <SpotPriceLimit>\\n <InstanceType>ecs.g6.large</InstanceType>\\n <PriceLimit>0.125</PriceLimit>\\n </SpotPriceLimit>\\n <InstancePatternInfos>\\n <MaxPrice>2</MaxPrice>\\n <Cores>2</Cores>\\n <Memory>4</Memory>\\n <InstanceFamilyLevel>EnterpriseLevel</InstanceFamilyLevel>\\n <Architectures>X86</Architectures>\\n <BurstablePerformance>Include</BurstablePerformance>\\n <ExcludedInstanceTypes>ecs.n1.small/ecs.n1.*/*7*</ExcludedInstanceTypes>\\n <InstanceTypeFamilies>[\\"ecs.g6\\", \\"ecs.c6\\", … \\"ecs.r6\\"]</InstanceTypeFamilies>\\n <MinimumCpuCoreCount>2</MinimumCpuCoreCount>\\n <MaximumCpuCoreCount>4</MaximumCpuCoreCount>\\n <GpuSpecs>[\\"NVIDIA V100\\"]</GpuSpecs>\\n <InstanceCategories>[\\"Compute-optimized with GPU\\"]</InstanceCategories>\\n <CpuArchitectures>[\\"X86\\", \\"ARM\\"]</CpuArchitectures>\\n <PhysicalProcessorModels>[\\"Intel Xeon(Ice Lake) Platinum 8369B\\", \\"Intel Xeon(Skylake) Platinum 8163\\", … \\"Intel Xeon(Cascade Lake) Platinum 8269CY\\"]</PhysicalProcessorModels>\\n <MinimumEniQuantity>2</MinimumEniQuantity>\\n <MinimumEniPrivateIpAddressQuantity>2</MinimumEniPrivateIpAddressQuantity>\\n <MinimumEniIpv6AddressQuantity>1</MinimumEniIpv6AddressQuantity>\\n <MinimumInitialCredit>12</MinimumInitialCredit>\\n <MinimumBaselineCredit>12</MinimumBaselineCredit>\\n <MinimumMemorySize>4</MinimumMemorySize>\\n <MaximumMemorySize>4</MaximumMemorySize>\\n <MinimumGpuAmount>2</MinimumGpuAmount>\\n <MaximumGpuAmount>2</MaximumGpuAmount>\\n </InstancePatternInfos>\\n <SystemDiskCategories>cloud</SystemDiskCategories>\\n <WeightedCapacities>4</WeightedCapacities>\\n <InstanceTypes>ecs.g6.large</InstanceTypes>\\n <SecurityGroupIds>sg-bp18kz60mefs****</SecurityGroupIds>\\n <SchedulerOptions>\\n <ManagedPrivateSpaceId>testManagedPrivateSpaceId</ManagedPrivateSpaceId>\\n </SchedulerOptions>\\n <SystemDisk.Encrypted>false</SystemDisk.Encrypted>\\n <SystemDisk.KMSKeyId>0e478b7a-4262-4802-b8cb-00d3fb40****</SystemDisk.KMSKeyId>\\n <SystemDisk.EncryptAlgorithm>AES-256</SystemDisk.EncryptAlgorithm>\\n <SystemDisk.ProvisionedIops>100</SystemDisk.ProvisionedIops>\\n <SystemDisk.BurstingEnabled>false</SystemDisk.BurstingEnabled>\\n <ImageOptions.LoginAsNonRoot>false</ImageOptions.LoginAsNonRoot>\\n <DeletionProtection>false</DeletionProtection>\\n <StorageSetId>ss-bp67acfmxazb4p****</StorageSetId>\\n <StorageSetPartitionNumber>2</StorageSetPartitionNumber>\\n <CustomPriorities>\\n <InstanceType>ecs.g6.large</InstanceType>\\n <VswitchId>vsw-bp14zolna43z266bq****</VswitchId>\\n </CustomPriorities>\\n <NetworkInterfaces>\\n <InstanceType>Primary</InstanceType>\\n <NetworkInterfaceTrafficMode>HighPerformance</NetworkInterfaceTrafficMode>\\n <Ipv6AddressCount>1</Ipv6AddressCount>\\n <SecurityGroupIds>sg-2vc3e1v7h****</SecurityGroupIds>\\n </NetworkInterfaces>\\n <DedicatedHostClusterId>dc-2zedxc67zqzt7lb4****</DedicatedHostClusterId>\\n </ScalingConfigurations>\\n</DescribeScalingConfigurationsResponse>","errorExample":""}]',
+ 'title' => '查询伸缩配置的信息',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeactivateScalingConfiguration' => [
+ 'summary' => '使指定伸缩配置进入失效状态。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92661',
+ 'abilityTreeNodes' => [
+ 'FEATUREessT4M3WE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingConfigurationId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩配置的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asc-bp1ahp2ud7qkzt2a****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'D09C9E64-7D19-4E1C-8CD6-123D34A4****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"D09C9E64-7D19-4E1C-8CD6-123D34A4****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeactivateScalingConfigurationResponse>\\r\\n <RequestId>D09C9E64-7D19-4E1C-8CD6-123D34A4****</RequestId>\\r\\n</DeactivateScalingConfigurationResponse>","errorExample":""}]',
+ 'title' => '使指定伸缩配置进入失效状态',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|IncorrectScalingGroupStatus|The current status of the specified scaling group does not support this action.|伸缩配置所属伸缩组必须处于停用状态。',
+ ],
+ 'CreateScalingRule' => [
+ 'summary' => '创建一条伸缩规则。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '92659',
+ 'abilityTreeNodes' => [
+ 'FEATUREessRTZKQT',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则所属伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1ffogfdauy0jw0****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingRuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则的名称.。由2~64个字符组成,以数字、大小字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。'."\n"
+ ."\n"
+ .'同一用户账号同一地域同一伸缩组内伸缩规则唯一。'."\n"
+ ."\n"
+ .'>如果没有指定该参数,默认值为ScalingRuleId的值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalingrule****',
+ ],
+ ],
+ [
+ 'name' => 'Cooldown',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则的冷却时间,仅适用于简单规则。取值范围:0~86400,单位:秒。'."\n"
+ ."\n"
+ .'默认值:空。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'MinAdjustmentMagnitude',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则最小调整实例数。仅当伸缩规则类型为`SimpleScalingRule`或`StepScalingRule`,且`AdjustmentType`为`PercentChangeInCapacity`时生效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'AdjustmentType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则的调整方式,适用于简单规则和步进规则,且此时该项必选。取值范围:'."\n"
+ ."\n"
+ .'- QuantityChangeInCapacity:增加或减少指定数量的ECS实例。'."\n"
+ .'- PercentChangeInCapacity:增加或减少指定比例的ECS实例。'."\n"
+ .'- TotalCapacity:将当前伸缩组的ECS实例数量调整到指定数量。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'QuantityChangeInCapacity',
+ ],
+ ],
+ [
+ 'name' => 'AdjustmentValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则的调整值,适用于简单规则和步进规则,且此时该项必选。任何情况下,单次调整的ECS实例台数都不能超过1000。不同调整方式对应的取值范围:'."\n"
+ .'- QuantityChangeInCapacity:-1000~1000。'."\n"
+ .'- PercentChangeInCapacity:-100~10000。'."\n"
+ .'- TotalCapacity:0~2000。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'ScalingRuleType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则类型。取值范围:'."\n"
+ ."\n"
+ .'- SimpleScalingRule:简单规则。根据调整方式(AdjustmentType)和调整值(AdjustmentValue)调整ECS或ECI实例数量。'."\n"
+ .'- TargetTrackingScalingRule:目标追踪规则。根据预定义监控(MetricName)项动态计算需要扩缩容的ECS或ECI实例数量,尽量将预定义监控项的指标值维持在目标值(TargetValue)附近。'."\n"
+ .'- StepScalingRule:步进规则,根据阈值和指标值提供分步扩展方式。'."\n"
+ .'- PredictiveScalingRule:预测规则,基于机器学习能力分析伸缩组的历史监控数据预测未来监控指标值,并支持自动创建定时任务设置伸缩组边界。'."\n"
+ ."\n"
+ .'默认值:SimpleScalingRule。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SimpleScalingRule',
+ 'default' => 'SimpleScalingRule',
+ ],
+ ],
+ [
+ 'name' => 'EstimatedInstanceWarmup',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例预热时间,适用于目标追踪规则和步进规则。处于预热状态的ECS实例将正常的加入伸缩组,但是期间将不会向云监控上报监控数据。'."\n"
+ .'> 动态计算需要扩缩容的ECS实例数量时,处于预热状态的实例不计入现有实例数量。'."\n"
+ .' '."\n"
+ .'取值范围:0~86400,单位:秒。'."\n"
+ ."\n"
+ .'默认值:300。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '300',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '预定义监控项,适用于目标追踪规则和预测规则,且此时该项必选。'."\n"
+ ."\n\n"
+ .'目标追踪规则取值范围: '."\n"
+ .'- CpuUtilizationAgent:(Agent)CPU使用率(推荐)。'."\n"
+ .'- MemoryUtilization:(Agent)内存(推荐)。'."\n"
+ .'- CpuUtilization:(ECS)平均CPU使用率。'."\n"
+ .'- IntranetTx:(ECS)内网出流量的平均值。'."\n"
+ .'- IntranetRx:(ECS)内网入流量的平均值。'."\n"
+ .'- VpcInternetTx:(ECS)公网出流量的平均值。'."\n"
+ .'- VpcInternetRx:(ECS)公网入流量的平均值。'."\n"
+ .'- LoadBalancerRealServerAverageQps:(ALB)服务器组单机QPS。'."\n"
+ ."\n"
+ .'预测规则取值范围: '."\n"
+ .'- CpuUtilization:(ECS)平均CPU使用率。'."\n"
+ .'- IntranetRx:(ECS)内网入流量平均值。'."\n"
+ .'- IntranetTx :(ECS)内网出流量平均值。'."\n"
+ ."\n"
+ .'更多信息,请参见[系统监控报警任务](~~74854~~)。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CpuUtilization',
+ ],
+ ],
+ [
+ 'name' => 'TargetValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '目标值,适用于目标追踪规则和预测规则,且此时该项必选。TargetValue最多保留小数点后三位,且必须大于0。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.125',
+ ],
+ ],
+ [
+ 'name' => 'DisableScaleIn',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否禁用缩容,仅适用于目标追踪规则。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ScaleInEvaluationCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的缩容报警任务触发报警时,所需连续满足阈值条件的次数。'."\n"
+ ."\n"
+ .'默认值:15。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '15',
+ ],
+ ],
+ [
+ 'name' => 'ScaleOutEvaluationCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的扩容报警任务触发报警时,所需连续满足阈值条件的次数。'."\n"
+ ."\n"
+ .'默认值:3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'PredictiveScalingMode',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '预测规则的模式,取值范围:'."\n"
+ ."\n"
+ .'- PredictAndScale:产生预测结果并创建预测任务。'."\n"
+ .'- PredictOnly:产生预测结果,但不会创建预测任务。'."\n"
+ ."\n"
+ .'默认值:PredictAndScale。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PredictAndScale',
+ ],
+ ],
+ [
+ 'name' => 'PredictiveValueBehavior',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '预测规则最大值处理方式,取值范围:'."\n"
+ ."\n"
+ .'- MaxOverridePredictiveValue:初始最大值会覆盖预测值。预测值大于初始最大值时,预测任务的最大值采用初始最大值。'."\n"
+ .'- PredictiveValueOverrideMax:预测值会覆盖初始最大值。预测值大于初始最大值时,预测任务的最大值采用预测值。'."\n"
+ .'- PredictiveValueOverrideMaxWithBuffer:预测值会附加一定比例。预测值会按照PredictiveValueBuffer比例增加,当增加后的值大于初始最大值时,会采用增加后的值。'."\n"
+ ."\n"
+ .'默认值:MaxOverridePredictiveValue。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'MaxOverridePredictiveValue',
+ ],
+ ],
+ [
+ 'name' => 'PredictiveValueBuffer',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '`PredictiveValueBehavior`为`PredictiveValueOverrideMaxWithBuffer`时生效,预测值会按照该比例增加,当增加后的值大于初始最大值时,会采用增加后的值。取值范围:0~100。'."\n"
+ ."\n"
+ .'默认值:0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ ],
+ [
+ 'name' => 'PredictiveTaskBufferTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '预测规则自动创建的预测任务默认均在整点执行,您可以设置预启动时间提前执行预测任务,预先准备资源。取值范围:0~60,单位:分钟。'."\n"
+ ."\n"
+ .'默认值:0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ ],
+ [
+ 'name' => 'InitialMaxSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组实例数上限,和PredictiveValueBehavior结合使用。'."\n"
+ ."\n"
+ .'默认值为伸缩组最大实例数(MaxSize的值)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'StepAdjustment',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '分步步骤对应的实例扩展信息组成的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '分步步骤对应的实例扩展信息组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricIntervalUpperBound' => [
+ 'description' => '分步步骤的上边界,仅适用于步进规则,取值范围:-9.999999E18~9.999999E18。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '5.0',
+ ],
+ 'ScalingAdjustment' => [
+ 'description' => '分步步骤对应的实例扩展数量,仅适用于步进规则。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'MetricIntervalLowerBound' => [
+ 'description' => '分步步骤的下边界,仅适用于步进规则,取值范围:-9.999999E18~9.999999E18。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '1.0',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'AlarmDimension',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '监控项关联的维度信息,适用于目标追踪规则,当监控项需额外维度信息时设置,例如`LoadBalancerRealServerAverageQps`监控项需指定`rulePool`维度信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '监控项关联的维度信息,适用于目标追踪规则,当监控项需额外维度信息时设置,例如`LoadBalancerRealServerAverageQps`监控项需指定`rulePool`维度信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DimensionKey' => [
+ 'description' => '监控项关联的维度信息键。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rulePool',
+ ],
+ 'DimensionValue' => [
+ 'description' => '监控项关联的维度信息值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sgp-l1cbirz451yxu2****',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'MetricType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监控项类型。取值范围:'."\n"
+ ."\n"
+ .'- system:使用云监控系统指标。'."\n"
+ .'- custom:使用上报到云监控的自定义指标。'."\n"
+ .'- hybrid:使用企业云监控的指标。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'system',
+ ],
+ ],
+ [
+ 'name' => 'HybridMonitorNamespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '企业云监控指标仓库ID。'."\n"
+ ."\n"
+ .'管理指标仓库,请参见[管理指标仓库](~~217606~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'aliyun-test',
+ ],
+ ],
+ [
+ 'name' => 'HybridMetrics',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '企业云监控指标设置。如何设置,请参见[使用公式运算自定义目标追踪规则](~~2852162~~)。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => '公制运算表达式中指标的引用ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'a',
+ ],
+ 'Expression' => [
+ 'description' => '多个企业云监控指标的公制运算表达式,表达式的计算结果将用于触发扩缩容。'."\n"
+ ."\n"
+ .'运算表达式需满足逆波兰表达式(RPN)规范,并且操作符只支持`+ - * /`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '(a+b)/2',
+ ],
+ 'MetricName' => [
+ 'description' => '企业云监控指标仓库中的指标名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AliyunSmq_NumberOfMessagesVisible',
+ ],
+ 'Statistic' => [
+ 'description' => '指标的统计方式。取值范围:'."\n"
+ .'- Average:指定区间内所有点的平均值。'."\n"
+ .'- Minimum:指定区间内所有点的最小值。'."\n"
+ .'- Maximum:指定区间内所有点的最大值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'Dimensions' => [
+ 'description' => '指标纬度。用于指定指标监控的资源。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'DimensionKey' => [
+ 'description' => '指标维度key。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'queue',
+ ],
+ 'DimensionValue' => [
+ 'description' => '指标维度value。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testQueue',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'AlarmOptions',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '告警属性定义。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Period' => [
+ 'description' => '目标追踪规则中统计监控项数据的周期,单位:秒。取值范围:'."\n"
+ ."\n"
+ .'- 15。'."\n"
+ .'- 60。'."\n"
+ .'- 120。'."\n"
+ .'- 300。'."\n"
+ .'- 900。'."\n"
+ ."\n"
+ .'> 默认值:60。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingRuleAri' => [
+ 'description' => '伸缩规则的唯一标识符。',
+ 'type' => 'string',
+ 'example' => 'ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'ScalingRuleId' => [
+ 'description' => '伸缩规则的ID,由系统生成,全局唯一。',
+ 'type' => 'string',
+ 'example' => 'asr-bp1dvirgwkoowxk7****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingRuleAri\\": \\"ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingRuleId\\": \\"asr-bp1dvirgwkoowxk7****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateScalingRuleResponse>\\n <ScalingRuleAri>ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****</ScalingRuleAri>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <ScalingRuleId>asr-bp1dvirgwkoowxk7****</ScalingRuleId>\\n</CreateScalingRuleResponse>","errorExample":""}]',
+ 'title' => 'CreateScalingRule',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'请注意以下参数相关说明:'."\n"
+ ."\n"
+ .'- 当AdjustmentType是TotalCapacity时,表示将当前伸缩组的ECS或ECI实例数量调整到指定数量,对应的AdjustmentValue值必须大于等于0。'."\n"
+ .'- 当AdjustmentType是QuantityChangeInCapacity或PercentChangeInCapacity,对应的AdjustmentValue值为正数表示增加实例、为负数表示减少实例。'."\n"
+ .'- 当AdjustmentType是PercentChangeInCapacity,弹性伸缩服务以伸缩组当前实例数(Total Capacity)xAdjusmentValue/100,并使用四舍五入原则来确认增加或减少的ECS实例或ECI实例个数。'."\n"
+ .'- 当伸缩规则指定了冷却时间(Cooldown),则执行该伸缩规则的伸缩活动完成后,会以伸缩规则中指定的冷却时间对伸缩组进行冷却处理,如果伸缩规则未指定冷却时间,则以伸缩组指定的冷却时间(DefaultCooldown)为准。'."\n"
+ .'- 一个伸缩组内可以创建的伸缩规则数量有限,具体说明请参见[使用限制](~~25863~~)。'."\n"
+ .'- 返回的伸缩规则唯一标识符(ScalingRuleAri)可以供以下接口使用:'."\n"
+ .' - 在执行伸缩规则(ExecuteScalingRule)的ScalingRuleAri参数中指定,您可以手动执行该伸缩规则。'."\n"
+ .' - 在创建定时任务(CreateScheduledTask)的ScheduledAction参数中指定,用户可以定时执行该伸缩规则。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组在该用户账号下不存在。|'."\n"
+ .'|400|InvalidScalingRuleName.Duplicate|The specified value of parameter <parameter name> is duplicated.|伸缩规则名字已存在。|'."\n"
+ .'|400|QuotaExceeded.ScalingRule|Scaling rule quota exceeded in the specified scaling group.|用户的伸缩规则使用个数达到上限。|'."\n"
+ .'|400|TargetTrackingScalingRule.UnsupportedMetric|Specific metric is not supported for target tracking scaling rule.|目标追踪规则不支持当前监控指标。|'."\n"
+ .'|400|TargetTrackingScalingRule.DumplicateMetric|Only one TargetTrackingScaling rule for a given metric specification is allowed.|一个伸缩组中,同一监控指标只能存在一条目标追踪规则。|'."\n"
+ .'|400|InvalidMinAdjustmentMagnitudeMismatchAdjustmentType|MinAdjustmentMagnitude is not supported by the specified adjustment type.|MinAdjustmentMagnitude不支持当前伸缩规则调整类型。|'."\n"
+ .'|400|InvalidStepAdjustments.MultipleNullUpperBound|At most one StepAdjustment may have an unspecified upper bound.|最多只能有一个分步步骤不指定分步上界。|'."\n"
+ .'|400|InvalidStepAdjustments.MultipleNullLowerBound|At most one StepAdjustment may have an unspecified lower bound.|最多只能有一个分步步骤不指定分步下界。|'."\n"
+ .'|400|InvalidStepAdjustments.NoNullLowerBound|There must be a StepAdjustment with an unspecified lower bound when one StepAdjustment has a negative lower bound.|当存在一个分步下界为负数时,则必须有一个未指定分步下界的分步步骤。|'."\n"
+ .'|400|InvalidStepAdjustments.NoNullUpperBound|There must be a StepAdjustment with an unspecified upper bound when one StepAdjustment has a positive upper bound.|当存在一个正数的分步上界时,则必有一个未指定分步上界的分步步骤。|'."\n"
+ .'|400|InvalidStepAdjustments.Gap|StepAdjustment intervals can not have gaps between them.|分步步骤之间不能有间隔。|'."\n"
+ .'|400|InvalidStepAdjustments.Overlap|StepAdjustment intervals can not overlap.|分步步骤之间不能重叠。|'."\n"
+ .'|400|InvalidStepAdjustments.LowerGtUpper|LowerBound must be less than the UpperBound for StepAdjustment :%s.|同一分步步骤中,分步下界必须小于分步上界。|'."\n"
+ .'|400|InvalidStepAdjustments.BothNull|Both lower and upper bounds of a StepAdjustment can not be left unspecified.|同一分步步骤中,分步上界和分步下界不能同时不指定。|'."\n"
+ .'|400|InvalidStepAdjustments.MaxNum|Your scaling rule can have at most %s StepAdjustments.|同一伸缩组中分步步骤数量超过阈值。|'."\n"
+ .'|400|StepBeyondPermitRange|Specific parameter "%s" beyond permit range.|分步步骤的上界或下界超过了可选范围。',
+ ],
+ 'DeleteScalingRule' => [
+ 'summary' => '删除一条伸缩规则。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '92668',
+ 'abilityTreeNodes' => [
+ 'FEATUREessRTZKQT',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingRuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待删除伸缩规则的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asr-bp163l21e07uhnyt****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteScalingRuleResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</DeleteScalingRuleResponse>","errorExample":""}]',
+ 'title' => '删除一条伸缩规则',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingRuleId.NotFound|The specified scaling rule does not exist.|指定的伸缩规则在该用户账号下不存在。',
+ ],
+ 'ModifyScalingRule' => [
+ 'summary' => '修改一条伸缩规则。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92710',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFLAJQ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingRuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待修改伸缩规则的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asr-bp1dvirgwkoowxk7****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingRuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则的名称,由2~64个字符组成,以数字、大小字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。'."\n"
+ ."\n"
+ .'>同一用户账号同一地域同一伸缩组内伸缩规则唯一。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalingrule****',
+ ],
+ ],
+ [
+ 'name' => 'Cooldown',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则的冷却时间,仅适用于简单规则。'."\n"
+ ."\n"
+ .'取值范围:0~86400,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'MinAdjustmentMagnitude',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则最小调整实例数,仅当伸缩规则类型为`SimpleScalingRule`或`StepScalingRule`,且`AdjustmentType`为`PercentChangeInCapacity`时生效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'AdjustmentType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则的调整方式,适用于简单规则和步进规则,且此时该项必选。取值范围:'."\n"
+ ."\n"
+ .'- QuantityChangeInCapacity:增加或减少指定数量的ECS实例。'."\n"
+ .'- PercentChangeInCapacity:增加或减少指定比例的ECS实例。'."\n"
+ .'- TotalCapacity: 将当前伸缩组的ECS实例数量调整到指定数量。'."\n"
+ .' ',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'QuantityChangeInCapacity',
+ ],
+ ],
+ [
+ 'name' => 'AdjustmentValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则的调整值,适用于简单规则和步进规则,且此时该项必选。任何情况下,单次调整的ECS实例台数都不能超过1000。不同调整方式对应的取值范围:'."\n"
+ .'- QuantityChangeInCapacity:-1000~1000。'."\n"
+ .'- PercentChangeInCapacity:-100~10000。'."\n"
+ .'- TotalCapacity:0~2000。'."\n"
+ .' ',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'EstimatedInstanceWarmup',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例预热时间,适用于目标追踪规则和步进规则。处于预热状态的ECS实例将正常的加入伸缩组,但是期间将不会向云监控上报监控数据。'."\n"
+ .'> 动态计算需要扩缩容的ECS实例数量时,处于预热状态的实例不计入现有实例数量。'."\n"
+ ."\n"
+ .'取值范围:0~86400,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '预定义监控项,适用于目标追踪规则和预测规则,且此时该项必选。'."\n"
+ ."\n"
+ .'目标追踪规则取值范围: '."\n"
+ .'- CpuUtilizationAgent:(Agent)CPU使用率(推荐)。'."\n"
+ .'- MemoryUtilization:(Agent)内存(推荐)。'."\n"
+ .'- CpuUtilization:(ECS)平均CPU使用率。'."\n"
+ .'- IntranetTx:(ECS)内网出流量的平均值。'."\n"
+ .'- IntranetRx:(ECS)内网入流量的平均值。'."\n"
+ .'- VpcInternetTx:(ECS)公网出流量的平均值。'."\n"
+ .'- VpcInternetRx:(ECS)公网入流量的平均值。'."\n"
+ .'- LoadBalancerRealServerAverageQps:(ALB)服务器组单机QPS。'."\n"
+ ."\n"
+ .'预测规则取值范围: '."\n"
+ .'- CpuUtilization:(ECS)平均CPU使用率。'."\n"
+ .'- IntranetRx:(ECS)内网入流量平均值。'."\n"
+ .'- IntranetTx :(ECS)内网出流量平均值。'."\n"
+ ."\n"
+ .'更多信息,请参见[系统监控报警任务](~~74854~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CpuUtilization',
+ ],
+ ],
+ [
+ 'name' => 'TargetValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '目标值,适用于目标追踪规则和预测规则。TargetValue最多保留小数点后三位,且必须大于0。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.125',
+ ],
+ ],
+ [
+ 'name' => 'DisableScaleIn',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否禁用缩容,仅适用于目标追踪规则。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'ScaleInEvaluationCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的缩容报警任务触发报警时,所需连续满足阈值条件的次数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '15',
+ ],
+ ],
+ [
+ 'name' => 'ScaleOutEvaluationCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的扩容报警任务触发报警时,所需连续满足阈值条件的次数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'PredictiveScalingMode',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '预测规则的模式。取值范围:'."\n"
+ ."\n"
+ .'- PredictAndScale:产生预测结果并创建预测任务。'."\n"
+ .'- PredictOnly:产生预测结果,但不会创建预测任务。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PredictAndScale',
+ ],
+ ],
+ [
+ 'name' => 'PredictiveValueBehavior',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '预测规则最大值处理方式。取值范围:'."\n"
+ ."\n"
+ .'- MaxOverridePredictiveValue:初始最大值会覆盖预测值。预测值大于初始最大值时,预测任务的最大值采用初始最大值。'."\n"
+ .'- PredictiveValueOverrideMax:预测值会覆盖初始最大值。预测值大于初始最大值时,预测任务的最大值采用预测值。'."\n"
+ .'- PredictiveValueOverrideMaxWithBuffer:预测值会附加一定比例。预测值会按照PredictiveValueBuffer比例增加,当增加后的值大于初始最大值时,会采用增加后的值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'MaxOverridePredictiveValue',
+ ],
+ ],
+ [
+ 'name' => 'PredictiveValueBuffer',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '`PredictiveValueBehavior`为`PredictiveValueOverrideMaxWithBuffer`时生效,预测值会按照该比例增加,当增加后的值大于初始最大值时,会采用增加后的值。取值范围:0~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ ],
+ [
+ 'name' => 'PredictiveTaskBufferTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '预测规则自动创建的预测任务默认均在整点执行,您可以设置预启动时间提前执行预测任务,预先准备资源。取值范围:0~60。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ ],
+ [
+ 'name' => 'InitialMaxSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组实例数上限,和PredictiveValueBehavior结合使用。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'StepAdjustment',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '分步步骤对应的实例扩展信息组成的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '分步步骤对应的实例扩展信息组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricIntervalUpperBound' => [
+ 'description' => '分步步骤的上边界,仅适用于步进规则。取值范围:-9.999999E18~9.999999E18。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '5.0',
+ ],
+ 'ScalingAdjustment' => [
+ 'description' => '分步步骤对应的实例扩展数量,仅适用于步进规则。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'MetricIntervalLowerBound' => [
+ 'description' => '分步步骤的下边界,仅适用于步进规则。取值范围:-9.999999E18~9.999999E18。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '1.0',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'AlarmDimension',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '监控项关联的维度信息,适用于目标追踪规则,当监控项需额外维度信息时设置,例如`LoadBalancerRealServerAverageQps`监控项需指定`rulePool`维度信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '监控项关联的维度信息,适用于目标追踪规则,当监控项需额外维度信息时设置,例如`LoadBalancerRealServerAverageQps`监控项需指定`rulePool`维度信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DimensionKey' => [
+ 'description' => '监控项关联的维度信息键。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rulePool',
+ ],
+ 'DimensionValue' => [
+ 'description' => '监控项关联的维度信息值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sgp-l1cbirz451yxu2****',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'MetricType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监控项类型。取值范围:'."\n"
+ ."\n"
+ .'- system:使用云监控系统指标。'."\n"
+ .'- custom:使用上报到云监控的自定义指标。'."\n"
+ .'- hybrid:使用企业云监控的指标。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'system',
+ ],
+ ],
+ [
+ 'name' => 'HybridMonitorNamespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '企业云监控指标仓库ID。'."\n"
+ ."\n"
+ .'管理指标仓库,请参见[管理指标仓库](~~217606~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'aliyun-test',
+ ],
+ ],
+ [
+ 'name' => 'HybridMetrics',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '企业云监控指标设置。如何设置,请参见[使用公式运算自定义目标追踪规则](~~2852162~~)。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => '公制运算表达式中指标的引用ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'a',
+ ],
+ 'Expression' => [
+ 'description' => '多个企业云监控指标的公制运算表达式,表达式的计算结果将用于触发扩缩容。'."\n"
+ ."\n"
+ .'运算表达式需满足逆波兰表达式(RPN)规范,并且操作符只支持`+ - * /`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '(a+b)/2',
+ ],
+ 'MetricName' => [
+ 'description' => '企业云监控指标仓库中的指标名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AliyunSmq_NumberOfMessagesVisible',
+ ],
+ 'Statistic' => [
+ 'description' => '指标的统计方式。取值范围:'."\n"
+ .'- Average:指定区间内所有点的平均值。'."\n"
+ .'- Minimum:指定区间内所有点的最小值。'."\n"
+ .'- Maximum:指定区间内所有点的最大值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'Dimensions' => [
+ 'description' => '指标纬度。用于指定指标监控的资源。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'DimensionKey' => [
+ 'description' => '指标维度key。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'queue',
+ ],
+ 'DimensionValue' => [
+ 'description' => '指标维度value。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testQueue',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'AlarmOptions',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '告警属性定义。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Period' => [
+ 'description' => '目标追踪规则中统计监控项数据的周期,单位:秒。取值范围:'."\n"
+ ."\n"
+ .'- 15。'."\n"
+ .'- 60。'."\n"
+ .'- 120。'."\n"
+ .'- 300。'."\n"
+ .'- 900。'."\n"
+ ."\n"
+ .'> 默认值:60。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyScalingRuleResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</ModifyScalingRuleResponse>","errorExample":""}]',
+ 'title' => '修改一条伸缩规则',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingRuleId.NotFound|The specified scaling rule does not exist.|指定的伸缩组规则在该用户账号下不存在。|'."\n"
+ .'|400|InvalidScalingRuleName.Duplicate|The specified value of parameter <parameter name> is duplicated.|伸缩规则名字已存在。|'."\n"
+ .'|400|QuotaExceeded.ScalingRule|Scaling rule quota exceeded in the specified scaling group.|用户的伸缩规则使用个数达到上限。|'."\n"
+ .'|400|TargetTrackingScalingRule.UnsupportedMetric|Specific metric is not supported for target tracking scaling rule.|目标追踪规则不支持当前监控指标。|'."\n"
+ .'|400|TargetTrackingScalingRule.DumplicateMetric|Only one TargetTrackingScaling rule for a given metric specification is allowed.|一个伸缩组中,同一监控指标只能存在一条目标追踪规则。|'."\n"
+ .'|400|InvalidMinAdjustmentMagnitudeMismatchAdjustmentType|MinAdjustmentMagnitude is not supported by the specified adjustment type.|MinAdjustmentMagnitude不支持当前伸缩规则调整类型。|'."\n"
+ .'|400|InvalidStepAdjustments.MultipleNullUpperBound|At most one StepAdjustment may have an unspecified upper bound.|最多只能有一个分步步骤不指定分步上界。|'."\n"
+ .'|400|InvalidStepAdjustments.MultipleNullLowerBound|At most one StepAdjustment may have an unspecified lower bound.|最多只能有一个分步步骤不指定分步下界。|'."\n"
+ .'|400|InvalidStepAdjustments.NoNullLowerBound|There must be a StepAdjustment with an unspecified lower bound when one StepAdjustment has a negative lower bound.|当存在一个分步下界为负数时,则必须有一个未指定分步下界的分步步骤。|'."\n"
+ .'|400|InvalidStepAdjustments.NoNullUpperBound|There must be a StepAdjustment with an unspecified upper bound when one StepAdjustment has a positive upper bound.|当存在一个正数的分步上界时,则必有一个未指定分步上界的分步步骤。|'."\n"
+ .'|400|InvalidStepAdjustments.Gap|StepAdjustment intervals can not have gaps between them.|分步步骤之间不能有间隔。|'."\n"
+ .'|400|InvalidStepAdjustments.Overlap|StepAdjustment intervals can not overlap.|分步步骤之间不能重叠。|'."\n"
+ .'|400|InvalidStepAdjustments.LowerGtUpper|LowerBound must be less than the UpperBound for StepAdjustment :%s.|同一分步步骤中,分步下界必须小于分步上界。|'."\n"
+ .'|400|InvalidStepAdjustments.BothNull|Both lower and upper bounds of a StepAdjustment can not be left unspecified.|同一分步步骤中,分步上界和分步下界不能同时不指定。|'."\n"
+ .'|400|InvalidStepAdjustments.MaxNum|Your scaling rule can have at most %s StepAdjustments.|同一伸缩组中分步步骤数量超过阈值。|'."\n"
+ .'|400|StepBeyondPermitRange|Specific parameter "%s" beyond permit range.|分步步骤的上界或下界超过了可选范围。',
+ ],
+ 'DescribeScalingRules' => [
+ 'summary' => '查询伸缩组下的伸缩规则,并列出伸缩规则的信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '92685',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFLAJQ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则所属伸缩组的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则列表的页码,起始值:1。'."\n"
+ ."\n"
+ .'默认值:1',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值:50。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'example' => '50',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp1ffogfdauy0jw0****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingRuleType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则的类型。取值范围:'."\n"
+ ."\n"
+ .'- SimpleScalingRule:简单规则。根据调整方式(AdjustmentType)和调整值(AdjustmentValue)调整ECS实例数量。'."\n"
+ .'- TargetTrackingScalingRule:目标追踪规则。根据预定义监控(MetricName)项动态计算需要扩缩容的ECS实例数量,尽量将预定义监控项的指标值维持在目标值(TargetValue)附近。'."\n"
+ .'- StepScalingRule:步进规则,根据阈值和指标值提供分步扩展方式。'."\n"
+ .'- PredictiveScalingRule:预测规则,基于机器学习能力分析伸缩组的历史监控数据预测未来监控指标值,并支持自动创建定时任务设置伸缩组边界。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SimpleScalingRule',
+ ],
+ ],
+ [
+ 'name' => 'ShowAlarmRules',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否返回伸缩规则关联的云监控报警任务。取值范围:'."\n"
+ ."\n"
+ .'- true:返回伸缩规则关联的云监控报警任务。'."\n"
+ .'- false:不返回伸缩规则关联的云监控报警任务。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ScalingRuleId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ScalingRuleId.N为待查询伸缩规则的ID,N的取值范围:1~10。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ScalingRuleId.N为待查询伸缩规则的ID,N的取值范围:1~10。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asr-bp1dvirgwkoowxk7****',
+ ],
+ 'required' => false,
+ 'example' => 'asr-bp1dvirgwkoowxk7****',
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'ScalingRuleName',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ScalingRuleName.N为待查询伸缩规则的名称,N的取值范围:1~10。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ScalingRuleName.N为待查询伸缩规则的名称,N的取值范围:1~10。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalingrule****',
+ ],
+ 'required' => false,
+ 'example' => 'scalingrule****',
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'ScalingRuleAri',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ScalingRuleAri.N为待查询伸缩规则的唯一标识符,N的取值范围:1~10。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ScalingRuleAri.N为待查询伸缩规则的唯一标识符,N的取值范围:1~10。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****',
+ ],
+ 'required' => false,
+ 'example' => 'ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****',
+ 'maxItems' => 10,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'TotalCount' => [
+ 'description' => '伸缩规则总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ScalingRules' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ScalingRule' => [
+ 'description' => '伸缩规则信息组成的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩规则信息组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => '预定义监控项,适用于目标追踪规则和预测规则。'."\n"
+ ."\n"
+ .'目标追踪伸缩规则的可能值: '."\n"
+ .'- CpuUtilization:平均CPU使用率。'."\n"
+ .'- ClassicInternetRx:经典网络公网入流量平均值。'."\n"
+ .'- ClassicInternetTx:经典网络公网出流量平均值。'."\n"
+ .'- VpcInternetRx:VPC网络公网入流量平均值。'."\n"
+ .'- VpcInternetTx:VPC网络公网出流量平均值。'."\n"
+ .'- IntranetRx:内网入流量平均值。'."\n"
+ .'- IntranetTx:内网出流量平均值。'."\n"
+ .'预测规则的可能值: '."\n"
+ .'- CpuUtilization:平均CPU使用率。'."\n"
+ .'- IntranetRx:内网入流量平均值。'."\n"
+ .'- IntranetTx:内网出流量平均值。',
+ 'type' => 'string',
+ 'example' => 'CpuUtilization',
+ ],
+ 'AdjustmentType' => [
+ 'description' => '伸缩规则的调整方式。可能值:'."\n"
+ ."\n"
+ .'- QuantityChangeInCapacity:增加或减少指定数量的ECS实例。'."\n"
+ .'- PercentChangeInCapacity:增加或减少指定比例的ECS实例。'."\n"
+ .'- TotalCapacity:将当前伸缩组的ECS实例数量调整到指定数量。',
+ 'type' => 'string',
+ 'example' => 'QuantityChangeInCapacity',
+ ],
+ 'InitialMaxSize' => [
+ 'description' => '伸缩组实例数的上限,和PredictiveValueBehavior结合使用。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'EstimatedInstanceWarmup' => [
+ 'description' => '新创建的实例做一系列准备措施,即预热所需要的时间,在预热时间内,已启动的实例将不影响伸缩组的监控指标。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '300',
+ ],
+ 'ScaleOutEvaluationCount' => [
+ 'description' => '创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的扩容报警任务触发报警时,所需连续满足阈值条件的次数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'PredictiveScalingMode' => [
+ 'description' => '预测规则的模式。可能值:'."\n"
+ ."\n"
+ .'- PredictAndScale:产生预测结果并创建预测任务。'."\n"
+ .'- PredictOnly:产生预测结果,但不会创建预测任务。',
+ 'type' => 'string',
+ 'example' => 'PredictAndScale',
+ ],
+ 'MinAdjustmentMagnitude' => [
+ 'description' => '伸缩规则最小调整实例数,仅当伸缩规则类型为`SimpleScalingRule`或`StepScalingRule`,且`AdjustmentType`为`PercentChangeInCapacity`时生效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ScalingRuleAri' => [
+ 'description' => '伸缩规则的唯一标识符。',
+ 'type' => 'string',
+ 'example' => 'ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****',
+ ],
+ 'PredictiveTaskBufferTime' => [
+ 'description' => '预测规则自动创建的预测任务默认均在整点执行,您可以设置预启动时间提前执行预测任务,预先准备资源。可能值:0~60,单位:分钟。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ 'MinSize' => [
+ 'description' => '伸缩组最小实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ScalingGroupId' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp1ffogfdauy0jw0****',
+ ],
+ 'PredictiveValueBehavior' => [
+ 'description' => '预测规则最大值处理方式。可能值:'."\n"
+ ."\n"
+ .'- MaxOverridePredictiveValue:初始最大值会覆盖预测值。预测值大于初始最大值时,预测任务的最大值采用初始最大值。'."\n"
+ .'- PredictiveValueOverrideMax:预测值会覆盖初始最大值。预测值大于初始最大值时,预测任务的最大值采用预测值。'."\n"
+ .'- PredictiveValueOverrideMaxWithBuffer:预测值会附加一定比例。预测值会按照PredictiveValueBuffer比例增加,当增加后的值大于初始最大值时,会采用增加后的值。',
+ 'type' => 'string',
+ 'example' => 'MaxOverridePredictiveValue',
+ ],
+ 'TargetValue' => [
+ 'description' => '目标值。当伸缩规则为目标追踪规则或预测规则时,该伸缩规则将通过添加或删除实例来将指标维持在目标值附近。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '0.125',
+ ],
+ 'Cooldown' => [
+ 'description' => '伸缩规则的冷却时间,仅适用于简单规则。可能值:0~86400,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'MaxSize' => [
+ 'description' => '伸缩组最大实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'PredictiveValueBuffer' => [
+ 'description' => 'PredictiveValueBehavior为PredictiveValueOverrideMaxWithBuffer时生效,预测值会按照该比例增加,当增加后的值大于初始最大值时,会采用增加后的值。可能值:0~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'ScalingRuleType' => [
+ 'description' => '伸缩规则类型。可能值:'."\n"
+ ."\n"
+ .'- SimpleScalingRule:简单规则。根据调整方式(AdjustmentType)和调整值(AdjustmentValue)调整ECS实例数量。'."\n"
+ .'- TargetTrackingScalingRule:目标追踪规则。根据预定义监控(MetricName)项动态计算需要扩缩容的ECS实例数量,尽量将预定义监控项的指标值维持在目标值(TargetValue)附近。'."\n"
+ .'- StepScalingRule:步进规则,根据阈值和指标值提供分步扩展方式。'."\n"
+ .'- PredictiveScalingRule:预测规则,基于机器学习能力分析伸缩组的历史监控数据预测未来监控指标值,并支持自动创建定时任务设置伸缩组边界。',
+ 'type' => 'string',
+ 'example' => 'SimpleScalingRule',
+ ],
+ 'AdjustmentValue' => [
+ 'description' => '伸缩规则的调整值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ScaleInEvaluationCount' => [
+ 'description' => '创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的缩容报警任务触发报警时,所需连续满足阈值条件的次数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '15',
+ ],
+ 'DisableScaleIn' => [
+ 'description' => '是否禁用缩容,仅适用于目标追踪规则。可能值:'."\n"
+ ."\n"
+ .'- true:禁用缩容。'."\n"
+ .'- false:允许缩容。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'ScalingRuleName' => [
+ 'description' => '伸缩规则的名称。',
+ 'type' => 'string',
+ 'example' => 'scalingrule****',
+ ],
+ 'ScalingRuleId' => [
+ 'description' => '伸缩规则的ID。',
+ 'type' => 'string',
+ 'example' => 'asr-bp1dvirgwkoowxk7****',
+ ],
+ 'Alarms' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Alarm' => [
+ 'description' => '伸缩规则关联的云监控报警任务。仅在ShowAlarmRules参数为true时返回伸缩规则关联的云监控报警任务,否则返回空列表。 ',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩规则关联的云监控报警任务。仅在ShowAlarmRules参数为true时返回伸缩规则关联的云监控报警任务,否则返回空列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AlarmTaskId' => [
+ 'description' => '伸缩规则关联的报警任务的ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp18p2yfxow2dloq****_1f9458d1-70e1-4bee-8c7f-7a47695b****',
+ ],
+ 'ComparisonOperator' => [
+ 'description' => '伸缩规则关联的报警任务使用的监控项统计值与阈值的比较符,用于指定监控项统计值与阈值在什么关系下满足条件。可能值:'."\n"
+ ."\n"
+ .'- 监控项统计值大于等于阈值。取值:>=。'."\n"
+ .'- 监控项统计值小于等于阈值。取值:<=。'."\n"
+ .'- 监控项统计值大于阈值。取值:>。'."\n"
+ .'- 监控项统计值小于阈值。取值:<。',
+ 'type' => 'string',
+ 'example' => '>=',
+ ],
+ 'MetricName' => [
+ 'description' => '伸缩规则关联的报警任务监控项名称。',
+ 'type' => 'string',
+ 'example' => 'CpuUtilization',
+ ],
+ 'EvaluationCount' => [
+ 'description' => '伸缩规则关联的报警任务到达报警状态需要连续满足阈值表达式的次数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'AlarmTaskName' => [
+ 'description' => '伸缩规则关联的报警任务的名称。',
+ 'type' => 'string',
+ 'example' => 'alarmtask****',
+ ],
+ 'MetricType' => [
+ 'description' => '伸缩规则关联的报警任务的类型。可能值:'."\n"
+ ."\n"
+ .'- system:系统监控报警任务。'."\n"
+ .'- custom:自定义监控报警任务。',
+ 'type' => 'string',
+ 'example' => 'system',
+ ],
+ 'Threshold' => [
+ 'description' => '伸缩规则关联的报警任务的报警阈值。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '50',
+ ],
+ 'Statistics' => [
+ 'description' => '伸缩规则关联的报警任务的统计方式。可能值:'."\n"
+ ."\n"
+ .'- Average:统计平均值。'."\n"
+ .'- Maximum:统计最大值。'."\n"
+ .'- Minimum:统计最小值。',
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ 'Dimensions' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Dimension' => [
+ 'description' => '伸缩规则关联的报警任务的维度信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩规则关联的报警任务的维度信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DimensionKey' => [
+ 'description' => '监控项关联的报警任务的维度信息键。可能值:'."\n"
+ ."\n"
+ .'- scaling_group:伸缩组ID。'."\n"
+ .'- userId:用户账号ID。',
+ 'type' => 'string',
+ 'example' => 'scaling_group',
+ ],
+ 'DimensionValue' => [
+ 'description' => '监控项关联的报警任务的维度信息值。',
+ 'type' => 'string',
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Period' => [
+ 'description' => '目标追踪规则中统计监控项数据的周期。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'StepAdjustments' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'StepAdjustment' => [
+ 'description' => '步进规则的分步步骤。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '步进规则的分步步骤。',
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricIntervalUpperBound' => [
+ 'description' => '分步步骤的上边界,可能值:-9.999999E18~9.999999E18。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '5.0',
+ ],
+ 'ScalingAdjustment' => [
+ 'description' => '分步步骤对应的实例扩展数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'MetricIntervalLowerBound' => [
+ 'description' => '分步步骤的下边界,可能值:-9.999999E18~9.999999E18。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '1.0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'AlarmDimensions' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'AlarmDimension' => [
+ 'description' => '监控项关联的维度信息,适用于目标追踪规则,当监控项需额外维度信息时设置,例如`LoadBalancerRealServerAverageQps`监控项需指定`rulePool`维度信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '监控项关联的维度信息,适用于目标追踪规则,当监控项需额外维度信息时设置,例如`LoadBalancerRealServerAverageQps`监控项需指定`rulePool`维度信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DimensionKey' => [
+ 'description' => '监控项关联的维度信息键。',
+ 'type' => 'string',
+ 'example' => 'rulePool',
+ ],
+ 'DimensionValue' => [
+ 'description' => '监控项关联的维度信息值。',
+ 'type' => 'string',
+ 'example' => 'sgp-l1cbirz451yxu2****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'MetricType' => [
+ 'description' => '监控项类型。可能值:'."\n"
+ ."\n"
+ .'- system:使用云监控系统指标。'."\n"
+ .'- custom:使用上报到云监控的自定义指标。'."\n"
+ .'- hybrid:使用企业云监控的指标。',
+ 'type' => 'string',
+ 'example' => 'system',
+ ],
+ 'HybridMonitorNamespace' => [
+ 'description' => '企业云监控指标仓库ID。'."\n"
+ ."\n"
+ .'管理指标仓库,请参见[管理指标仓库](~~217606~~)。',
+ 'type' => 'string',
+ 'example' => 'aliyun-test',
+ ],
+ 'HybridMetrics' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'HybridMetric' => [
+ 'description' => '企业云监控指标设置。如何设置,请参见[使用公式运算自定义目标追踪规则](~~2852162~~)。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => '公制运算表达式中指标的引用ID。',
+ 'type' => 'string',
+ 'example' => 'a',
+ ],
+ 'Expression' => [
+ 'description' => '多个企业云监控指标的公制运算表达式,表达式的计算结果将用于触发扩缩容。'."\n"
+ ."\n"
+ .'运算表达式需满足逆波兰表达式(RPN)规范,并且操作符只支持`+ - * /`。',
+ 'type' => 'string',
+ 'example' => '(a+b)/2',
+ ],
+ 'MetricName' => [
+ 'description' => '企业云监控指标仓库中的指标名称。',
+ 'type' => 'string',
+ 'example' => 'AliyunSmq_NumberOfMessagesVisible',
+ ],
+ 'Statistic' => [
+ 'description' => '指标的统计方式。可能值:'."\n"
+ .'- Average:指定区间内所有点的平均值。'."\n"
+ .'- Minimum:指定区间内所有点的最小值。'."\n"
+ .'- Maximum:指定区间内所有点的最大值。',
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ 'Dimensions' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Dimension' => [
+ 'description' => '指标纬度。用于指定指标监控的资源。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'DimensionKey' => [
+ 'description' => '指标维度key。',
+ 'type' => 'string',
+ 'example' => 'queue',
+ ],
+ 'DimensionValue' => [
+ 'description' => '指标维度value。',
+ 'type' => 'string',
+ 'example' => 'testQueue',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 1,\\n \\"ScalingRules\\": {\\n \\"ScalingRule\\": [\\n {\\n \\"MetricName\\": \\"CpuUtilization\\",\\n \\"AdjustmentType\\": \\"QuantityChangeInCapacity\\",\\n \\"InitialMaxSize\\": 100,\\n \\"EstimatedInstanceWarmup\\": 300,\\n \\"ScaleOutEvaluationCount\\": 3,\\n \\"PredictiveScalingMode\\": \\"PredictAndScale\\",\\n \\"MinAdjustmentMagnitude\\": 1,\\n \\"ScalingRuleAri\\": \\"ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****\\",\\n \\"PredictiveTaskBufferTime\\": 30,\\n \\"MinSize\\": 1,\\n \\"ScalingGroupId\\": \\"asg-bp1ffogfdauy0jw0****\\",\\n \\"PredictiveValueBehavior\\": \\"MaxOverridePredictiveValue\\",\\n \\"TargetValue\\": 0.125,\\n \\"Cooldown\\": 20,\\n \\"MaxSize\\": 2,\\n \\"PredictiveValueBuffer\\": 50,\\n \\"ScalingRuleType\\": \\"SimpleScalingRule\\",\\n \\"AdjustmentValue\\": 1,\\n \\"ScaleInEvaluationCount\\": 15,\\n \\"DisableScaleIn\\": true,\\n \\"ScalingRuleName\\": \\"scalingrule****\\",\\n \\"ScalingRuleId\\": \\"asr-bp1dvirgwkoowxk7****\\",\\n \\"Alarms\\": {\\n \\"Alarm\\": [\\n {\\n \\"AlarmTaskId\\": \\"asg-bp18p2yfxow2dloq****_1f9458d1-70e1-4bee-8c7f-7a47695b****\\",\\n \\"ComparisonOperator\\": \\">=\\",\\n \\"MetricName\\": \\"CpuUtilization\\",\\n \\"EvaluationCount\\": 3,\\n \\"AlarmTaskName\\": \\"alarmtask****\\",\\n \\"MetricType\\": \\"system\\",\\n \\"Threshold\\": 50,\\n \\"Statistics\\": \\"Average\\",\\n \\"Dimensions\\": {\\n \\"Dimension\\": [\\n {\\n \\"DimensionKey\\": \\"scaling_group\\",\\n \\"DimensionValue\\": \\"asg-bp18p2yfxow2dloq****\\"\\n }\\n ]\\n },\\n \\"Period\\": 60\\n }\\n ]\\n },\\n \\"StepAdjustments\\": {\\n \\"StepAdjustment\\": [\\n {\\n \\"MetricIntervalUpperBound\\": 5,\\n \\"ScalingAdjustment\\": 1,\\n \\"MetricIntervalLowerBound\\": 1\\n }\\n ]\\n },\\n \\"AlarmDimensions\\": {\\n \\"AlarmDimension\\": [\\n {\\n \\"DimensionKey\\": \\"rulePool\\",\\n \\"DimensionValue\\": \\"sgp-l1cbirz451yxu2****\\"\\n }\\n ]\\n },\\n \\"MetricType\\": \\"system\\",\\n \\"HybridMonitorNamespace\\": \\"aliyun-test\\",\\n \\"HybridMetrics\\": {\\n \\"HybridMetric\\": [\\n {\\n \\"Id\\": \\"a\\",\\n \\"Expression\\": \\"(a+b)/2\\",\\n \\"MetricName\\": \\"AliyunSmq_NumberOfMessagesVisible\\",\\n \\"Statistic\\": \\"Average\\",\\n \\"Dimensions\\": {\\n \\"Dimension\\": [\\n {\\n \\"DimensionKey\\": \\"queue\\",\\n \\"DimensionValue\\": \\"testQueue\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeScalingRulesResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>50</PageSize>\\n <TotalCount>1</TotalCount>\\n <ScalingRules>\\n <MetricName>CpuUtilization</MetricName>\\n <AdjustmentType>QuantityChangeInCapacity</AdjustmentType>\\n <InitialMaxSize>100</InitialMaxSize>\\n <EstimatedInstanceWarmup>300</EstimatedInstanceWarmup>\\n <ScaleOutEvaluationCount>3</ScaleOutEvaluationCount>\\n <PredictiveScalingMode>PredictAndScale</PredictiveScalingMode>\\n <MinAdjustmentMagnitude>1</MinAdjustmentMagnitude>\\n <ScalingRuleAri>ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****</ScalingRuleAri>\\n <PredictiveTaskBufferTime>30</PredictiveTaskBufferTime>\\n <MinSize>1</MinSize>\\n <ScalingGroupId>asg-bp1ffogfdauy0jw0****</ScalingGroupId>\\n <PredictiveValueBehavior>MaxOverridePredictiveValue</PredictiveValueBehavior>\\n <TargetValue>0.125</TargetValue>\\n <Cooldown>20</Cooldown>\\n <MaxSize>2</MaxSize>\\n <PredictiveValueBuffer>50</PredictiveValueBuffer>\\n <ScalingRuleType>SimpleScalingRule</ScalingRuleType>\\n <AdjustmentValue>1</AdjustmentValue>\\n <ScaleInEvaluationCount>15</ScaleInEvaluationCount>\\n <DisableScaleIn>true</DisableScaleIn>\\n <ScalingRuleName>scalingrule****</ScalingRuleName>\\n <ScalingRuleId>asr-bp1dvirgwkoowxk7****</ScalingRuleId>\\n <Alarms>\\n <AlarmTaskId>asg-bp18p2yfxow2dloq****_1f9458d1-70e1-4bee-8c7f-7a47695b****</AlarmTaskId>\\n <ComparisonOperator>&gt;=</ComparisonOperator>\\n <MetricName>CpuUtilization</MetricName>\\n <EvaluationCount>3</EvaluationCount>\\n <AlarmTaskName>alarmtask****</AlarmTaskName>\\n <MetricType>system</MetricType>\\n <Threshold>50</Threshold>\\n <Statistics>Average</Statistics>\\n <Dimensions>\\n <DimensionKey>scaling_group</DimensionKey>\\n <DimensionValue>asg-bp18p2yfxow2dloq****</DimensionValue>\\n </Dimensions>\\n </Alarms>\\n <StepAdjustments>\\n <MetricIntervalUpperBound>5</MetricIntervalUpperBound>\\n <ScalingAdjustment>1</ScalingAdjustment>\\n <MetricIntervalLowerBound>1</MetricIntervalLowerBound>\\n </StepAdjustments>\\n <AlarmDimensions>\\n <DimensionKey>rulePool</DimensionKey>\\n <DimensionValue>sgp-l1cbirz451yxu2****</DimensionValue>\\n </AlarmDimensions>\\n </ScalingRules>\\n</DescribeScalingRulesResponse>","errorExample":""}]',
+ 'title' => '查询伸缩规则',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'AttachInstances' => [
+ 'summary' => '为伸缩组手动添加ECS实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92649',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFHJ1B',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'Entrusted',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '将已经存在的实例手动添加到伸缩组时,是否将该实例的生命周期托管给伸缩组。取值范围:'."\n"
+ ."\n"
+ .'- true:托管。该实例的生命周期由弹性伸缩管理,与伸缩组自动创建的实例一致。实例被移出伸缩组(不包括通过调用`DetachInstances`参数移出的实例)时会自动释放。'."\n"
+ .'- false:不托管。该实例在被移出伸缩组时不会被释放。'."\n"
+ ."\n"
+ .'> 包年包月实例、托管实例和伸缩组中节省停机实例均不支持设置该参数项。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'InstanceId.N为待添加ECS实例、ECI实例、托管实例或者伸缩组中处于节省停机状态实例的ID。N的取值范围:1~20。'."\n"
+ ."\n"
+ .'举例如下所示:'."\n"
+ ."\n"
+ .'- 待添加的ECS实例ID为`i-28wt4****`。'."\n"
+ .'- 待添加的ECI实例ID为`eci-bp17gw49eu09yiwm****`。'."\n"
+ .'- 待添加的托管实例ID为`mi-2cx*****`。'."\n"
+ .'- 待重新启动的伸缩组中节省停机状态实例ID为`i-2cd2f****`。'."\n"
+ ."\n"
+ .'>一次调用请求中仅支持处理一种类型的实例。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'InstanceId.N为待添加ECS实例、ECI实例、托管实例或者伸缩组中处于节省停机状态实例的ID。N的取值范围:1~20。'."\n"
+ ."\n"
+ .'举例如下所示:'."\n"
+ ."\n"
+ .'- 待添加的ECS实例ID为`i-28wt4****`。'."\n"
+ .'- 待添加的ECI实例ID为`eci-bp17gw49eu09yiwm****`。'."\n"
+ .'- 待添加的托管实例ID为`mi-2cx*****`。'."\n"
+ .'- 待重新启动的伸缩组中节省停机状态实例ID为`i-2cd2f****`。'."\n"
+ ."\n"
+ .'>一次调用请求中仅支持处理一种类型的实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-28wt4****',
+ ],
+ 'required' => false,
+ 'example' => 'i-28wt4****',
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerWeight',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ECS实例或ECI实例作为负载均衡后端服务器时的权重。'."\n"
+ .'> 托管实例和伸缩组中节省停机实例均不支持设置该参数项。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'LoadBalancerWeight.N为ECS实例或ECI实例作为负载均衡实例后端服务器时的权重,N的取值范围:1~20,该参数的取值范围:1~100。'."\n"
+ ."\n"
+ .'>托管实例和伸缩组中节省停机实例均不支持设置该参数项。'."\n"
+ ."\n"
+ .'默认值:50。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ 'required' => false,
+ 'example' => '50',
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'LifecycleHook',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组添加实例时,是否触发扩容生命周期挂钩。取值范围:'."\n"
+ .'- true:触发。'."\n"
+ .'- false:不触发。'."\n"
+ ."\n"
+ .'>托管实例和伸缩组中节省停机实例均不支持设置该参数项。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'IgnoreInvalidInstance',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '向伸缩组添加一批实例时,是否忽略其中无效的实例。取值范围:'."\n"
+ ."\n"
+ .'- true:从伸缩组中添加一批实例时,会忽略其中无效的实例。如果存在无效的实例,并且有效的实例被成功添加时,伸缩活动执行状态也会显示为警告状态,可以从伸缩活动详情查看无效的实例。'."\n"
+ ."\n"
+ .'- false:从伸缩组中添加一批实例时,不会忽略无效的实例。如果一批实例中存在无效的实例,请求会报错。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingActivityId' => [
+ 'description' => '伸缩活动的ID。',
+ 'type' => 'string',
+ 'example' => 'asa-bp1crxor24s28xf1****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp1crxor24s28xf1****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<AttachInstancesResponse>\\n <ScalingActivityId>asa-bp1crxor24s28xf1****</ScalingActivityId>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</AttachInstancesResponse>","errorExample":""}]',
+ 'title' => '为伸缩组手动添加ECS实例',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 调用该接口前,请确保满足以下条件:'."\n"
+ .' - 伸缩组处于Active状态。'."\n"
+ .' - 伸缩组内没有执行中的伸缩活动。'."\n"
+ ."\n"
+ .'- 加入伸缩组的ECS实例或ECI实例的限制条件包括:'."\n"
+ .' - 必须与伸缩组在同一个地域。'."\n"
+ .' - 必须处于Running状态。'."\n"
+ .' - 不能已加入到其他伸缩组中。'."\n"
+ .' - 付费方式为包年包月、按量付费或抢占式实例。'."\n"
+ .' - 如果伸缩组指定VswitchID,则不支持Classic类型的ECS实例或ECI实例加入伸缩组,也不支持其他VPC的ECS实例或ECI实例加入伸缩组。'."\n"
+ .' - 如果伸缩组没有指定VswitchID,则不支持VPC类型的ECS实例或ECI实例加入伸缩组。'."\n"
+ ."\n"
+ .'- 加入伸缩组的托管实例的限制条件包括:'."\n"
+ .' - 必须与伸缩组在同一个地域。'."\n"
+ .' - 只能将未加入伸缩组的托管实例加入到ECS类型伸缩组中。'."\n"
+ .' - 托管实例不支持配置生命周期挂钩、关联到负载均衡和健康检查功能。'."\n"
+ .' - 托管实例加入ECS类型伸缩组后,该伸缩组不会管理托管实例的生命周期。'."\n"
+ .' - 托管实例仅支持手动添加到伸缩组或手动从伸缩组移出,移出后托管实例并不会被释放。'."\n"
+ ."\n"
+ .'- 使用该接口需注意以下事项:'."\n"
+ .' - 当伸缩组没有伸缩活动正在执行时,该接口可以绕过冷却时间(Cooldown)直接执行。'."\n"
+ .' - 调用该接口返回成功,只是表示弹性伸缩服务接受了该接口调用的请求,伸缩活动可以执行,但不代表伸缩活动能够执行成功。您需要通过返回的ScalingActivityId查看该伸缩活动的执行状态。'."\n"
+ .' - 如果该接口指定的实例数加上当前伸缩组的实例数(Total Capacity)大于最大值(MaxSize),则接口调用失败。'."\n"
+ .' - 通过该接口手动添加的ECS实例、ECI实例或托管实例不与伸缩组生效的伸缩配置进行关联。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组在该账号下不存在。|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|您并未向弹性伸缩完整授权OpenAPI接口。|'."\n"
+ .'|400|IncorrectScalingGroupStatus|The current status of the specified scaling group does not support this action.|指定的伸缩组未处于Active状态。|'."\n"
+ .'|404|InvalidInstanceId.NotFound|Instance "XXX" does not exist.|指定的ECS实例或ECI实例在该账号下不存在。|'."\n"
+ .'|400|InvalidInstanceId. RegionMismatch|Instance "XXX" and the specified scaling group are not in the same Region.|指定的ECS实例或ECI实例与伸缩组所属的地域不匹配。|'."\n"
+ .'|400|InvalidInstanceId.InstanceTypeMismatch|Instance "XXX" and existing Active scaling configurations have different instance types.|指定的ECS实例或ECI实例与伸缩配置的实例规格不匹配。|'."\n"
+ .'|400|IncorrectInstanceStatus|The current status of instance "XXX" does not support this action.|指定的ECS实例或ECI实例未处于Running状态。|'."\n"
+ .'|400|InvalidInstanceId. NetworkTypeMismatch|The network type of instance "XXX" does not support this action.|ECS实例或ECI实例的网络类型与伸缩组的网络类型不匹配。|'."\n"
+ .'|400|InvalidInstanceId.VPCMismatch|Instance "XXX" and the specified scaling group are not in the same VPC.|指定的伸缩组与添加的ECS实例或ECI实例不在同一个VPC当中。|'."\n"
+ .'|400|InvalidInstanceId.InUse|Instance "XXX" is already attached to another scaling group.|指定的ECS实例或ECI实例已加入其它伸缩组。|'."\n"
+ .'|400|ScalingActivityInProgress|You cannot delete a scaling group or launch a new scaling activity while there is a scaling activity in progress for the specified scaling group.|指定的伸缩组有伸缩活动正在进行。|'."\n"
+ .'|400|IncorrectLoadBalancerStatus|The current status of the specified load balancer does not support this action.|指定的伸缩组的负载均衡实例未处于Active状态。|'."\n"
+ .'|400|IncorrectLoadBalancerHealthCheck|The current health check type of specified load balancer does not support this action.|指定的伸缩组关联的负载均衡实例未开启健康检查。|'."\n"
+ .'|400|InvalidLoadBalancerId.IncorrectInstanceNetworkType|The network type of the instance in specified load balancer does not support this action.|指定的负载均衡实例含有的ECS实例或ECI实例的网络类型与伸缩组的网络类型不匹配。|'."\n"
+ .'|400|InvalidLoadBalancerId.VPCMismatch|The specified virtual switch and the instance in specified load balancer are not in the same VPC.|指定的伸缩组的负载均衡实例含有的ECS实例或ECI实例与VSwitchId不在同一个VPC当中。|'."\n"
+ .'|400|IncorrectDBInstanceStatus|The current status of DB instance "XXX" does not support this action.|指定的伸缩组的RDS实例未处于Running状态。|'."\n"
+ .'|400|QuotaExceeded.DBInstanceSecurityIP|Security IP quota exceeded in DB instance "XXX".|指定的伸缩组的RDS实例访问白名单的IP个数达到上限。|'."\n"
+ .'|400|QuotaExceeded.SecurityGroupInstance|Instance quota exceeded in the specified security group.|指定的安全组已添加的ECS实例或ECI实例个数达到上限。|'."\n"
+ .'|400|IncorrectCapacity.MaxSize|To attach the instances, the total capacity will be greater than the MaxSize.|加入的ECS实例数或ECI实例数使得Total Capacity超过MaxSize。',
+ ],
+ 'DetachInstances' => [
+ 'summary' => '从一个伸缩组移出一台或多台ECS实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92690',
+ 'abilityTreeNodes' => [
+ 'FEATUREessDFX5TO',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1igpak5ft1flyp****',
+ ],
+ ],
+ [
+ 'name' => 'DecreaseDesiredCapacity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否修改期望实例数。取值范围:'."\n"
+ ."\n"
+ .'- true:ECS实例、ECI实例或托管实例移出伸缩组后,期望实例数也减少相应数量。'."\n"
+ .'- false:ECS实例、ECI实例或托管移出伸缩组后,期望实例数不会变化。'."\n"
+ ."\n"
+ .'默认值:true。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'IgnoreInvalidInstance',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '从伸缩组移出一批实例时,是否忽略其中无效实例。取值范围:'."\n"
+ ."\n"
+ .'- true:从伸缩组中移出一批实例时会忽略其中的无效实例。'."\n"
+ ."\n"
+ .' 如果一批实例中存在无效实例(例如实例状态为`加入中`),并且有效的实例被成功移出时,则伸缩活动执行状态显示为`警告`状态,您可以从伸缩活动详情查看无效的实例。'."\n"
+ .'- false:从伸缩组中移出一批实例时不会忽略无效实例。'."\n"
+ ."\n"
+ .' 如果一批实例中存在无效实例(例如实例状态为`加入中`),则返回结果会报错。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'DetachOption',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定是否停止使用ECS实例或ECI实例作为负载均衡实例的后端服务器(即将ECS实例或ECI实例移出负载均衡实例的默认服务器组和虚拟服务器组),以及是否将ECS实例或ECI实例移出RDS实例的访问白名单。'."\n"
+ ."\n"
+ .'both:将ECS实例或ECI实例移出负载均衡实例的默认服务器组和虚拟服务器组,并将ECS实例或ECI实例移出RDS实例的访问白名单。'."\n"
+ ."\n"
+ .'> 伸缩组移出托管实例时不支持设置该参数项。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'both',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '待移出ECS实例、ECI实例或托管实例的ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '待移出ECS实例、ECI实例或托管实例的ID。N的取值范围:1~20。'."\n"
+ ."\n"
+ .'举例如下所示:'."\n"
+ ."\n"
+ .'- 待移出的ECS实例ID为`i-bp109k5j3dum1ce6****`。'."\n"
+ .'- 待移出的ECI实例ID为`eci-bp17gw49eu09yiwm****`。'."\n"
+ .'- 待移出的托管实例ID为`mi-d23fsd******`。'."\n"
+ .'>一次调用请求只支持移出一种类型实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-bp109k5j3dum1ce6****',
+ ],
+ 'required' => true,
+ 'example' => 'i-bp109k5j3dum1ce6****',
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'LifecycleHook',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组移出ECS实例或ECI实例时,是否触发缩容生命周期挂钩。取值范围:'."\n"
+ .'- true:触发。'."\n"
+ .'- false:不触发。'."\n"
+ .'>伸缩组移出托管实例时不支持设置该参数项。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingActivityId' => [
+ 'description' => '伸缩活动的ID。',
+ 'type' => 'string',
+ 'example' => 'asa-bp1gbswjhjrw8tko****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp1gbswjhjrw8tko****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<DetachInstancesResponse>\\n <ScalingActivityId>asa-bp1gbswjhjrw8tko****</ScalingActivityId>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</DetachInstancesResponse>","errorExample":""}]',
+ 'title' => '从一个伸缩组移出一台或多台ECS实例',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 调用该接口前,请确保满足以下条件:'."\n"
+ .' - 目标伸缩组必须处于启用(Enable)状态。'."\n"
+ .' - 目标伸缩组没有正在进行的伸缩活动。'."\n"
+ ."\n"
+ .' > 目标伸缩组没有正在进行的伸缩活动时,该接口可以绕过冷却时间(Cooldown)直接触发伸缩活动。'."\n"
+ ."\n"
+ .'- 使用该接口需注意以下事项:'."\n"
+ .' - 移出ECS实例、ECI实例或托管实例之后,该实例可以独立于伸缩组而单独存在,您可以调用[AttachInstances](~~25954~~)接口将ECS实例、ECI实例或托管实例再次添加到其他伸缩组。'."\n"
+ .' - 调用该接口移出一台ECS实例、ECI实例或托管实例并不会停止或释放该实例。'."\n"
+ .' - 接口成功调用后,仅表示弹性伸缩服务接受了该接口调用的请求。可以正常触发伸缩活动,但不能保证伸缩活动执行成功,您需要通过返回的ScalingActivityId查看伸缩活动的状态。'."\n"
+ .' - 目标伸缩组的ECS实例、ECI实例或托管实例数量减去当前移出的ECS实例、ECI实例或托管实例数量不能小于伸缩组最小实例数(MinSize),否则会报错。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|IncorrectScalingGroupStatus|The current status of the specified scaling group does not support this action.|目标伸缩组必须处于启用(Enable)状态。|'."\n"
+ .'|400|ScalingActivityInProgress|You cannot delete a scaling group or launch a new scaling activity while there is a scaling activity in progress for the specified scaling group.|目标伸缩组不能有正在进行的伸缩活动。|'."\n"
+ .'|400|IncorrectLoadBalancerStatus|The current status of the specified load balancer does not support this action.|目标伸缩组内的负载均衡实例必须处于运行中(Active)状态。|'."\n"
+ .'|400|IncorrectDBInstanceStatus|The current status of DB instance "XXX" does not support this action.|目标伸缩组内的RDS实例必须处于运行中(Running)状态。|'."\n"
+ .'|400|IncorrectCapacity.MinSize|To remove the instances, the total capacity will be lesser than the MinSize.|目标伸缩组的ECS实例或ECI实例数量减去当前移出的ECS实例或ECI实例数量不能小于伸缩组最少实例数(MinSize)。|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|您暂未被授权使用DetachInstances接口。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组不存在。|'."\n"
+ .'|404|InvalidInstanceId.NotFound|Instance "XXX" does not exist.|指定的ECS实例或ECI实例不存在。'."\n",
+ ],
+ 'ExecuteScalingRule' => [
+ 'summary' => '执行一条伸缩规则。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92698',
+ 'abilityTreeNodes' => [
+ 'FEATUREessKCZYL8',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingRuleAri',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则唯一标识符。'."\n"
+ .'>调用API执行伸缩规则时,只支持执行简单规则和步进规则,且执行步进规则时必须同时指定`BreachThreshold`和`MetricValue`参数。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'由客户端生成该参数值,要保证在不同请求间唯一,最大不超过64个ASCII字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-426655440000',
+ ],
+ ],
+ [
+ 'name' => 'BreachThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '执行步进伸缩规则时指定的当前阈值,取值范围:-9.999999E18~9.999999E18。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '1.0',
+ ],
+ ],
+ [
+ 'name' => 'MetricValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '执行步进伸缩规则时指定的当前指标值,取值范围:-9.999999E18~9.999999E18。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '1.0',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩规则所属地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingActivityId' => [
+ 'description' => '伸缩活动的id。',
+ 'type' => 'string',
+ 'example' => 'asa-bp13o672yeautiil****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp13o672yeautiil****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<ExecuteScalingRuleResponse>\\n <ScalingActivityId>asa-bp13o672yeautiil****</ScalingActivityId>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</ExecuteScalingRuleResponse>","errorExample":""}]',
+ 'title' => '执行一条伸缩规则',
+ 'description' => '# 接口说明'."\n"
+ .'调用该接口需注意以下几点:'."\n"
+ .'- 调用该接口前,请确保满足以下条件:'."\n"
+ ."\n"
+ .' - 伸缩组处于`Active`状态。'."\n"
+ .' - 伸缩组没有执行中的伸缩活动。'."\n"
+ ."\n"
+ .'- 当伸缩组没有执行中的伸缩活动时,该接口可以绕过冷却时间(Cooldown)直接执行伸缩活动。'."\n"
+ ."\n"
+ .'- 如果伸缩规则需要增加的ECS实例数加上当前伸缩组的实例数(Total Capacity)大于最大实例数(MaxSize),则按Total Capacity=MaxSize执行伸缩活动。'."\n"
+ ."\n"
+ .'- 如果当前伸缩组的实例数(Total Capacity)减去伸缩规则需要减少的ECS实例数小于最小实例数(MinSize),则按Total Capacity=MinSize执行伸缩活动。'."\n"
+ ."\n"
+ .'调用该接口返回成功,只是表示弹性伸缩服务接受了该接口的调用请求,可以执行伸缩活动,但不代表伸缩活动能够执行成功。您需要通过返回的`ScalingActivityId`查看该伸缩活动的执行状态。'."\n"
+ .'>单次调整的ECS实例台数存在限制,请参见[CreateScalingRule](~~25948~~)中的AdjustmentValue参数说明。',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingRuleAri.NotFound|The specified scaling rule Ari does not exist.|指定的伸缩规则在该账号下不存在。|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|您并未向弹性伸缩完整授权OpenAPI接口。|'."\n"
+ .'|400|IncorrectScalingGroupStatus|The current status of the specified scaling group does not support this action.|指定伸缩规则所属的伸缩组未处于Active状态。|'."\n"
+ .'|400|ScalingActivityInProgress|You cannot delete a scaling group or launch a new scaling activity while there is a scaling activity in progress for the specified scaling group.|指定伸缩规则所属的伸缩组有伸缩活动正在进行。|'."\n"
+ .'|400|InsufficientBalance|Your account does not have enough balance.|账号余额不足。|'."\n"
+ .'|400|QuotaExceed.Instance|Living instance quota exceeded.|ECS实例个数达到上限。|'."\n"
+ .'|400|IncorrectLoadBalancerStatus|The current status of the specified load balancer does not support this action.|指定伸缩规则所属的伸缩组的负载均衡实例未处于active状态。|'."\n"
+ .'|400|IncorrectLoadBalancerHealthCheck|The current health check type of specified load balancer does not support this action.|指定伸缩规则所属的伸缩组的负载均衡实例未开启健康检查。|'."\n"
+ .'|400|InvalidLoadBalancerId.IncorrectInstanceNetworkType|The network type of the instance in specified load balancer does not support this action.|指定的负载均衡实例含有的ECS实例的网络类型与伸缩组的网络类型不匹配。|'."\n"
+ .'|400|InvalidLoadBalancerId.VPCMismatch|The specified virtual switch and the instance in specified load balancer are not in the same VPC.|指定的伸缩组的负载均衡实例含有的ECS实例与VSwitchId不在同一个VPC当中。|'."\n"
+ .'|400|IncorrectDBInstanceStatus|The current status of DB instance "XXX" does not support this action.|指定伸缩规则所属的伸缩组的RDS实例未处于running状态。|'."\n"
+ .'|400|QuotaExceeded.DBInstanceSecurityIP|Security IP quota exceeded in DB instance "XXX".|指定伸缩规则所属的伸缩组的RDS实例访问白名单的IP个数达到上限。|'."\n"
+ .'|400|QuotaExceeded.SecurityGroupInstance|Instance quota exceeded in the specified security group.|指定的安全组已添加的ECS实例个数达到上限。|'."\n"
+ .'|400|IncorrectCapacity.NoChange|To execute the specified scaling rule, the total capacity will not change.|伸缩规则未造成伸缩组实例数的变化。|'."\n"
+ .'|400|QuotaExceeded.ScalingInstance|Scaling instance quota exceeded.|弹性伸缩的ECS实例使用个数达到上限。|'."\n"
+ .'|400|QuotaExceeded.AfterpayInstance|Living afterpay instance quota exceeded.|按量付费ECS实例的使用个数达到上限。|'."\n"
+ .'|400|ResourceNotAvailable.ECS|The specified region or zone does not offer the specified disk or instance category.|指定的区域无法创建指定的ECS实例类型或磁盘类型。|'."\n"
+ .'|400|ScalingRule.InvalidScalingRuleType|Specific scaling rule type: %s can not be executed.|无法执行当前类型的伸缩规则。|'."\n"
+ .'|400|InvalidStepAdjustments.NoStepFound|No adjustment step found for a metric value of: %s.|未找到符合条件的分步执行步骤。|'."\n"
+ .'|400|MissingParameter.MetricValue|Metric value must be specified for StepScalingRule.|执行分步伸缩规则必须指定指标值。|'."\n"
+ .'|400|MissingParameter.BreachThreshold|Breach threshold must be specified for StepScalingRule.|执行分步伸缩规则必须指定阈值。|'."\n"
+ .'|400|MetricValueBeyondPermitRange|Specific parameter "%s" beyond permit range.|指标值超过了可选范围。|'."\n"
+ .'|400|BreachThresholdBeyondPermitRange|Specific parameter "%s" beyond permit range.|阈值超过了可选范围。',
+ ],
+ 'RemoveInstances' => [
+ 'summary' => '从一个伸缩组删除一台或多台ECS实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92714',
+ 'abilityTreeNodes' => [
+ 'FEATUREessDFX5TO',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'RemovePolicy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定被删除ECS实例的动作。取值范围:'."\n"
+ ."\n"
+ .'- recycle:ECS实例触发了节省停机效果。'."\n"
+ ."\n"
+ .' >仅在`ScalingPolicy`为`recycle`时生效。'."\n"
+ ."\n"
+ .'- release:ECS实例被释放。'."\n"
+ ."\n"
+ .' CreateScalingGroup的`ScalingPolicy`参数指定伸缩组的回收模式,但实例被删除时的具体动作,由RemoveInstances的`RemovePolicy`参数决定。例如:'."\n"
+ ."\n"
+ .' - `ScalingPolicy`为`recycle`,且`RemovePolicy`为`recycle`,ECS实例触发了节省停机效果。'."\n"
+ .' - `ScalingPolicy`为`recycle`,且`RemovePolicy`为`release`,ECS实例被释放。'."\n"
+ .' - `ScalingPolicy`为`release`,且`RemovePolicy`为`recycle`,ECS实例被释放。'."\n"
+ .' - `ScalingPolicy`为`release`,且`RemovePolicy`为`release`,ECS实例被释放。'."\n"
+ ."\n"
+ .'默认值:release。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'release',
+ ],
+ ],
+ [
+ 'name' => 'DecreaseDesiredCapacity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否修改期望实例数。取值范围:'."\n"
+ ."\n"
+ .'- true:从伸缩组删除ECS实例后,期望实例数也减少相应台数。'."\n"
+ .'- false:从伸缩组删除ECS实例后,期望实例数不会变化。'."\n"
+ ."\n"
+ .'默认值:true。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'IgnoreInvalidInstance',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '从伸缩组删除一批实例时,是否忽略其中无效的实例。取值范围:'."\n"
+ ."\n"
+ .'- true:从伸缩组中删除一批实例时会忽略无效实例。'."\n"
+ .' '."\n"
+ .' 如果一批实例中存在无效实例(例如实例状态为`加入中`),并且有效的实例被成功删除时,伸缩活动执行状态显示为`警告`状态,您可以从伸缩活动详情查看无效的实例。'."\n"
+ .'- false:从伸缩组中删除一批实例时不会忽略无效实例。'."\n"
+ ."\n"
+ .' 如果一批实例中存在无效的实例,则返回结果会报错。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '待删除ECS实例的ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '待删除ECS实例的ID。N的取值范围:1~20。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-28wt4****',
+ ],
+ 'required' => true,
+ 'example' => 'i-28wt4****',
+ 'maxItems' => 1000,
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'StopInstanceTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '缩容流程中等待ECS实例停机成功的超时时间,单位为秒。'."\n"
+ .'取值范围:30~240。'."\n"
+ ."\n"
+ .'> - 该参数值默认从伸缩组继承,您也可以在调用RemoveInstances时重新设置。'."\n"
+ .'- 该参数仅在 RemovePolicy = release 模式下的缩容流程里生效。 '."\n"
+ .'- 如果设置了该参数,系统会最长等待StopInstanceTimeout时间将实例停机成功,超时后无论实例是否成功停机都会继续缩容。 '."\n"
+ .'- 如果没有设置该参数,系统会长时间等待实例停机成功,只有实例停机成功后才继续缩容,停机失败时,缩容流程会回滚,缩容失败。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'LifecycleHookContext',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '生命周期挂钩上下文信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DisableLifecycleHook' => [
+ 'description' => '伸缩活动禁用所有生命周期挂钩。取值范围:'."\n"
+ ."\n"
+ .'- true:禁用。'."\n"
+ .'- false:不禁用。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'IgnoredLifecycleHookIds' => [
+ 'description' => '伸缩活动禁用的生命周期挂钩 ID 列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩活动禁用的生命周期挂钩 ID 列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ash-bp14zolna43z266bq***',
+ ],
+ 'required' => false,
+ ],
+ 'LifecycleHookResult' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingActivityId' => [
+ 'description' => '伸缩活动的ID。',
+ 'type' => 'string',
+ 'example' => 'asa-bp175o6f6ego3r2j****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'IgnoredInstances' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'IgnoredInstance' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceId' => [
+ 'type' => 'string',
+ ],
+ 'Code' => [
+ 'type' => 'string',
+ ],
+ 'Message' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp175o6f6ego3r2j****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"IgnoredInstances\\": {\\n \\"IgnoredInstance\\": [\\n {\\n \\"InstanceId\\": \\"\\",\\n \\"Code\\": \\"\\",\\n \\"Message\\": \\"\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<RemoveInstancesResponse>\\n <ScalingActivityId>asa-bp175o6f6ego3r2j****</ScalingActivityId>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</RemoveInstancesResponse>","errorExample":""}]',
+ 'title' => '从一个伸缩组删除一台或多台ECS实例',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 调用本接口前请确保满足以下条件:'."\n"
+ ."\n"
+ .' - 伸缩组处于启用(Active)状态。'."\n"
+ ."\n"
+ .' - 伸缩组中没有正在执行的伸缩活动。'."\n"
+ ."\n"
+ .'当伸缩组没有执行中的伸缩活动时,该接口可以绕过冷却时间(DefaultCooldown)直接执行。'."\n"
+ ."\n"
+ .'- 如果一台ECS实例由弹性伸缩自动创建,或者您手动添加但已托管给伸缩组,从伸缩组删除该ECS实例时,ECS实例触发了节省停机效果或者被释放。'."\n"
+ ."\n"
+ .'- 如果一台ECS实例由您手动添加且未托管给伸缩组,从伸缩组删除该ECS实例时,ECS实例不会被停止或者释放。'."\n"
+ ."\n"
+ .'- 如果当前伸缩组的实例数(TotalCapacity)减去该接口指定的实例数小于伸缩组内最小实例数(MinSize),则调用失败。'."\n"
+ ."\n"
+ .'调用该接口返回成功,只是表示弹性伸缩服务接受了该接口调用的请求,伸缩活动可以执行,但不代表伸缩活动能够执行成功。您需要通过返回的`ScalingActivityId`查看该伸缩活动的执行状态。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组在该用户账号下不存在。|'."\n"
+ .'|404|InvalidInstanceId.NotFound|Instance "XXX" does not exist.|指定的ECS实例在伸缩组下不存在。|'."\n"
+ .'|400|InvalidParameter|The specified group does not support the specified RemovePolicy.|当前伸缩组不支持停机回收策略。|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|您未向弹性伸缩授予完整的OpenAPI接口权限。|'."\n"
+ .'|400|IncorrectScalingGroupStatus|The current status of the specified scaling group does not support this action.|指定的伸缩组未处于Active状态。|'."\n"
+ .'|400|ScalingActivityInProgress|You cannot delete a scaling group or launch a new scaling activity while there is a scaling activity in progress for the specified scaling group.|指定的伸缩组有进行中的伸缩活动。|'."\n"
+ .'|400|IncorrectLoadBalancerStatus|The current status of the specified load balancer does not support this action.|指定伸缩规则所属的伸缩组的负载均衡实例未处于Active状态。|'."\n"
+ .'|400|IncorrectDBInstanceStatus|The current status of DB instance "XXX" does not support this action.|指定伸缩规则所属的伸缩组的RDS实例未处于Running状态。|'."\n"
+ .'|400|IncorrectCapacity.MinSize|To remove the instances, the total capacity will be lesser than the MinSize.|删除ECS实例使得TotalCapacity小于MinSize。',
+ ],
+ 'CreateScheduledTask' => [
+ 'summary' => '创建一个定时任务。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '92660',
+ 'abilityTreeNodes' => [
+ 'FEATUREess30IPAO',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务所属地域的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'ScheduledTaskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务的名称。长度为2~64个英文或中文字符,以数字、大小字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。同一账号同一地域内唯一。 '."\n"
+ ."\n"
+ .'默认值为`ScheduledTaskId`的值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scheduled****',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务的描述信息,长度为2~200个英文或中文字符。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test scheduled task.',
+ ],
+ ],
+ [
+ 'name' => 'ScheduledAction',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务触发时需要执行的伸缩规则,填写伸缩规则的唯一标识符。'."\n"
+ ."\n"
+ .'指定该参数后,定时任务的伸缩方式为选择已有伸缩规则。'."\n"
+ ."\n"
+ .'> 不支持同时设置`ScheduledAction`和`ScalingGroupId`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ari:acs:ess:cn-hangzhou:140692647****:scalingrule/asr-bp12tcnol686y1ik****',
+ ],
+ ],
+ [
+ 'name' => 'RecurrenceEndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '重复执行定时任务的结束时间。'."\n"
+ ."\n"
+ .'按照ISO8601标准表示,并需要使用UTC时间。格式:`YYYY-MM-DDThh:mmZ`。不能填写自创建当天起365日后的时间。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2014-08-17T16:55Z',
+ ],
+ ],
+ [
+ 'name' => 'LaunchTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务触发的时间点。'."\n"
+ ."\n"
+ .'按照ISO8601标准表示,并需要使用UTC时间。格式:`YYYY-MM-DDThh:mmZ`。不能填写自创建当天起90日后的时间。 '."\n"
+ ."\n"
+ .'- 如果指定了`RecurrenceType`,则此属性指定的时间点,默认为循环执行的时间点。'."\n"
+ ."\n"
+ .'- 如果未指定`RecurrenceType`,则按指定的日期和时间执行一次。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => '2014-08-17T16:52Z',
+ ],
+ ],
+ [
+ 'name' => 'RecurrenceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '重复执行定时任务的类型,取值范围: '."\n"
+ .'- Daily:每多少天重复执行一次定时任务。 '."\n"
+ .'- Weekly:每周指定几天重复执行一次定时任务。 '."\n"
+ .'- Monthly:每月内指定几天重复执行一次定时任务。 '."\n"
+ .'- Cron:按照指定的Cron表达式执行定时任务。 '."\n"
+ ."\n"
+ .'您需要同时指定`RecurrenceType`和`RecurrenceValue`。 ',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Daily',
+ ],
+ ],
+ [
+ 'name' => 'RecurrenceValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '重复执行定时任务的数值。 '."\n"
+ ."\n"
+ .'- `RecurrenceType`取值为`Daily`时,只能填一个值,取值范围:1~31。 '."\n"
+ .'- `RecurrenceType`取值为`Weekly`时,可以填入多个值,填多个值时使用半角逗号(,)分隔。例如,周日、周一、周二、周三、周四、周五、周六的值依次为:`0,1,2,3,4,5,6`。 '."\n"
+ .'- `RecurrenceType`取值为`Monthly`时,格式为`A-B`。A、B的取值范围为1~31,并且B必须大于等于A。 '."\n"
+ .'- `RecurrenceType`取值为`Cron`时,表示UTC时间,支持分、时、日、月、星期的五个域表达式,支持通配符半角逗号(,)、半角问号(?)、短划线(-)、星号(*)、井号(#)、正斜线(/)、L和W。 '."\n"
+ ."\n"
+ .'您需要同时指定`RecurrenceType`和`RecurrenceValue`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'TaskEnabled',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否启动定时任务。 '."\n"
+ .'- true:启动任务。'."\n"
+ .'- false:停止任务。'."\n"
+ ."\n"
+ .'默认值:true。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'LaunchExpirationTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务触发操作失败后,在此时间内重试。单位为秒,取值范围:0~1800。'."\n"
+ ."\n"
+ .'默认值:600。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '86400',
+ 'minimum' => '0',
+ 'example' => '600',
+ 'default' => '600',
+ ],
+ ],
+ [
+ 'name' => 'MinValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的最小数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'MaxValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的最大数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'DesiredCapacity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的期望实例数。'."\n"
+ ."\n"
+ .'> 伸缩组必须支持设置期望实例数,即在创建该伸缩组时指定了`DesiredCapacity`。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务触发时需要修改实例数量的伸缩组,填写伸缩组ID。'."\n"
+ ."\n"
+ .'指定该参数后,定时任务的伸缩方式为设置伸缩组内实例数量,您需要为`MinValue`、`MaxValue`和`DesiredCapacity`中至少一个参数指定数量。'."\n"
+ ."\n"
+ .'> 不支持同时设置`ScheduledAction`和`ScalingGroupId`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScheduledTaskId' => [
+ 'description' => '定时任务的ID,由系统生成,全局唯一。',
+ 'type' => 'string',
+ 'example' => 'edRtShc57WGXdt8TlPbr****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScheduledTaskId\\": \\"edRtShc57WGXdt8TlPbr****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateScheduledTaskResponse>\\n <ScheduledTaskId>edRtShc57WGXdt8TlPbr****</ScheduledTaskId>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</CreateScheduledTaskResponse>","errorExample":""}]',
+ 'title' => '创建一个定时任务',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 由于伸缩组正在发生伸缩活动或者伸缩组停用等原因,导致定时任务触发执行伸缩规则失败后,在`LaunchExpirationTime`内,定时任务会自动重试触发,否则放弃本次定时任务的触发。'."\n"
+ .'- 如果多个定时任务在相近的时间内触发执行同一个伸缩组的伸缩规则,则触发的伸缩活动详情如下:'."\n"
+ .' - **已设置期望实例数的伸缩组**:多个定时任务触发的伸缩活动属于并行伸缩活动。例如,相近时间内,执行多个定时任务后,伸缩组可同时触发多个并行伸缩活动。'."\n"
+ .' - **未设置期望实例数的伸缩组**:最早触发的定时任务会先执行伸缩活动。由于同一个伸缩组同一时刻内只能有一个伸缩活动,排在后面的定时任务会在`LaunchExpirationTime`内自动重试定时触发。如果上一个伸缩活动完成之后,排在后面的定时任务还在`LaunchExpirationTime`内重试,则执行该定时任务的伸缩规则并触发相应的伸缩活动。'."\n"
+ .'- 定时任务支持以下两种伸缩方式:'."\n"
+ .' - 通过`ScheduledAction`参数设置需要执行的伸缩规则。'."\n"
+ .' - 通过`ScalingGroupId`参数设置伸缩组内实例数量。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidRegionId.NotFound|The specified region does not exist.|指定的地域不存在。|'."\n"
+ .'|400|InvalidScheduledTaskName.Duplicate|The specified value of parameter ScheduledTaskName is duplicated.|定时任务名已存在。|'."\n"
+ .'|400|QuotaExceeded.ScheduledTask|Scheduled task quota exceeded.|定时任务使用个数达到上限。|'."\n"
+ .'|400|ScheduledAction.RegionMismatch|The specified scheduled task and the specified scheduled action are not in the same Region.|指定的ScheduledAction与定时任务所在的地域不匹配。',
+ ],
+ 'DeleteScheduledTask' => [
+ 'summary' => '删除一个定时任务。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '92669',
+ 'abilityTreeNodes' => [
+ 'FEATUREess30IPAO',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScheduledTaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务的ID。由系统生成,全局唯一。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'edRtShc57WGXdt8TlPbr****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteScheduledTaskResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</DeleteScheduledTaskResponse>","errorExample":""}]',
+ 'title' => '删除一个定时任务',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScheduledTaskId.NotFound|The specified scheduled task does not exist.|指定的定时任务在该用户账号下不存在。',
+ ],
+ 'ModifyScheduledTask' => [
+ 'summary' => '修改一个定时任务的信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92711',
+ 'abilityTreeNodes' => [
+ 'FEATUREessAWW1X1',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScheduledTaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'edRtShc57WGXdt8TlPbr****',
+ ],
+ ],
+ [
+ 'name' => 'ScheduledTaskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务的名称。2-64个字符,以大小写字母、数字或中文开头,可包含(.)、下划线(_)或中划线(-)。同一账号同一地域内唯一。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scheduled****',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务的描述信息。2-200个字符。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test scheduled task.',
+ ],
+ ],
+ [
+ 'name' => 'ScheduledAction',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '如果伸缩方式为选择已有伸缩规则时,才会出现该配置项,请您选择已创建的伸缩规则,填写伸缩规则的唯一标识符,可在伸缩规则详情页查看。'."\n"
+ ."\n"
+ .'> 不支持同时设置`ScheduledAction`和`ScalingGroupId`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ari:acs:ess:cn-hangzhou:14069264****:scalingrule/asr-bp12tcnol686y1ik****',
+ ],
+ ],
+ [
+ 'name' => 'RecurrenceEndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '重复执行定时任务的结束时间。按照ISO8601标准表示,并需要使用UTC时间。格式为:YYYY-MM-DDThh:mmZ。不能填写自修改当天起365日后的时间。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2014-08-20T16:55Z',
+ ],
+ ],
+ [
+ 'name' => 'LaunchTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务执行的时间点。按照ISO8601标准表示,并需要使用UTC时间。格式为:YYYY-MM-DDThh:mmZ。不能填写自修改当天起90日后的时间。'."\n"
+ ."\n"
+ .'- 如果指定了`RecurrenceType`,则此属性指定的时间点,默认为循环执行的时间点。'."\n"
+ ."\n"
+ .'- 如果未指定`RecurrenceType`,则按指定的日期和时间执行一次。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2014-08-18T10:52Z',
+ ],
+ ],
+ [
+ 'name' => 'RecurrenceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务重复执行的周期类型,支持按日、周、月等周期性执行。取值范围:'."\n"
+ .' '."\n"
+ .'- Daily:每多少天重复执行一次定时任务。'."\n"
+ .'- Weekly:每周指定几天重复执行一次定时任务。'."\n"
+ .'- Monthly:每月内指定几天重复执行一次定时任务。'."\n"
+ .'- Cron:按照指定的Cron表达式执行定时任务。'."\n"
+ ."\n"
+ .'修改后,`RecurrenceType`和`RecurrenceValue`需要同时有效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Daily',
+ ],
+ ],
+ [
+ 'name' => 'RecurrenceValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务重复执行的周期类型对应数值。'."\n"
+ ."\n"
+ .'- `RecurrenceType`取值为`Daily`时,只能填一个值,取值范围:1~31。'."\n"
+ .'- `RecurrenceType`取值为`Weekly`时,可以填入多个值,填多个值时使用半角逗号(,)分隔。例如,周日、周一、周二、周三、周四、周五、周六的值依次为:`0,1,2,3,4,5,6`。'."\n"
+ .'- `RecurrenceType`取值为`Monthly`时,格式为`A-B`。A、B的取值范围为1~31,并且B必须大于等于A。'."\n"
+ .'- `RecurrenceType`取值为`Cron`时,表示UTC时间,支持分、时、日、月、星期的五个域表达式,支持通配符半角逗号(,)、半角问号(?)、短划线(-)、星号(*)、井号(#)、正斜线(/)、L和W。'."\n"
+ ."\n"
+ .'修改后,`RecurrenceType`和`RecurrenceValue`需要同时有效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'TaskEnabled',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否启动定时任务。取值范围:'."\n"
+ ."\n"
+ .'- true:启动定时任务。'."\n"
+ .'- false:停止定时任务。'."\n"
+ ."\n"
+ .'默认值:true。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'LaunchExpirationTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务触发操作失败后,弹性伸缩将在重试过期时间内继续尝试执行定时任务。单位为秒,取值范围:0~1800。'."\n"
+ ."\n"
+ .'默认值:600。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '86400',
+ 'minimum' => '0',
+ 'example' => '600',
+ ],
+ ],
+ [
+ 'name' => 'MinValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的最小数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'MaxValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的最大数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'DesiredCapacity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的期望实例数。'."\n"
+ ."\n"
+ .'> 伸缩组必须支持设置期望实例数,即在创建该伸缩组时指定了`DesiredCapacity`。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '如果伸缩方式为设置伸缩组内实例数量,才会出现该配置项,请您填写定时任务触发时需要修改实例数量的伸缩组ID。指定`ScalingGroupId`后,您需要为`MinValue`、`MaxValue`和`DesiredCapacity`中至少一个参数指定数量。'."\n"
+ ."\n"
+ .'> 不支持同时设置`ScheduledAction`和`ScalingGroupId`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Throttling',
+ 'errorMessage' => 'Request was denied due to request throttling.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyScheduledTaskResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</ModifyScheduledTaskResponse>","errorExample":""}]',
+ 'title' => '修改一个定时任务的信息',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'定时任务支持两种伸缩方式:'."\n"
+ .'- 通过`ScheduledAction`参数设置需要执行的伸缩规则。'."\n"
+ .'- 通过`ScalingGroupId`参数设置伸缩组内实例数量。'."\n"
+ ."\n"
+ .'> 不支持同时设置`ScheduledAction`和`ScalingGroupId`。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScheduledTaskId.NotFound|The specified scheduled task does not exist.|指定的定时任务在该用户账号下不存在。|'."\n"
+ .'|400|InvalidScheduledTaskName.Duplicate|The specified value of parameter `ScheduledTaskName` is duplicated.|定时任务名已存在。|'."\n"
+ .'|400|ScheduledAction.RegionMismatch|The specified scheduled task and the specified scheduled action are not in the same Region.|指定的ScheduledAction与定时任务所在的地域不匹配。',
+ ],
+ 'DescribeScheduledTasks' => [
+ 'summary' => '查询定时任务的信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '92686',
+ 'abilityTreeNodes' => [
+ 'FEATUREessAWW1X1',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务所属伸缩组的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务列表的页码,起始值:1。'."\n"
+ ."\n"
+ .'默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值:50。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'example' => '50',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '执行定时任务的伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp1bo5tca4m56nap****',
+ ],
+ ],
+ [
+ 'name' => 'ScheduledAction',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '仅当定时任务指定了伸缩规则时,定时任务触发时使用的伸缩规则。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '仅当定时任务指定了伸缩规则时,定时任务触发时使用的伸缩规则。N的取值范围:0~20。'."\n"
+ ."\n"
+ .'取值为伸缩规则的唯一标识符(ScalingRuleAri)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp1id5rhu8edp7kd****',
+ ],
+ 'required' => false,
+ 'example' => 'ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp1id5rhu8edp7kd****',
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'ScheduledTaskId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '待查询定时任务的ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '待查询定时任务的ID,N的取值范围:1~20。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'edRtShc57WGXdt8TlPbr****',
+ ],
+ 'required' => false,
+ 'example' => 'edRtShc57WGXdt8TlPbr****',
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'ScheduledTaskName',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '待查询定时任务的名称。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '待查询定时任务的名称,N的取值范围:1~20。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scheduled****',
+ ],
+ 'required' => false,
+ 'example' => 'scheduled****',
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'TaskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '任务名称,支持根据关键字模糊搜索。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scheduled****',
+ ],
+ ],
+ [
+ 'name' => 'RecurrenceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '重复执行定时任务的类型,取值范围:'."\n"
+ ."\n"
+ .'- Daily:每多少天重复执行一次定时任务。'."\n"
+ .'- Weekly:每周指定几天重复执行一次定时任务。'."\n"
+ .'- Monthly:每月内指定几天重复执行一次定时任务。'."\n"
+ .'- Cron:按照指定的Cron表达式执行定时任务。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Weekly',
+ ],
+ ],
+ [
+ 'name' => 'RecurrenceValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '重复执行定时任务的数值。'."\n"
+ ."\n"
+ .'仅支持当RecurrenceType为Weekly时指定此字段,可以填入多个值,填多个值时使用半角逗号(,)分隔。例如,周日、周一、周二、周三、周四、周五、周六的值依次为:0,1,2,3,4,5,6。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1,2,3',
+ ],
+ ],
+ [
+ 'name' => 'TaskEnabled',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '定时任务是否已启动。'."\n"
+ ."\n"
+ .'- true:任务已启动。'."\n"
+ .'- false:任务已停止。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'TotalCount' => [
+ 'description' => '定时任务总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ScheduledTasks' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ScheduledTask' => [
+ 'description' => '定时任务信息组成的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '定时任务信息组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'TaskEnabled' => [
+ 'description' => '是否启动定时任务。 '."\n"
+ .'- true:启动任务。'."\n"
+ .'- false:停止任务 。'."\n"
+ ."\n"
+ .'默认值:true。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'RecurrenceValue' => [
+ 'description' => '重复触发定时任务的数值。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'RecurrenceType' => [
+ 'description' => '重复触发定时任务的类型。',
+ 'type' => 'string',
+ 'example' => 'Daily',
+ ],
+ 'MaxValue' => [
+ 'description' => '定时任务的`伸缩方式`选择`伸缩组内实例数量设置`时,指定伸缩组内实例的最大数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'ScheduledTaskName' => [
+ 'description' => '定时任务的名称。',
+ 'type' => 'string',
+ 'example' => 'scheduled****',
+ ],
+ 'RecurrenceEndTime' => [
+ 'description' => '重复触发定时任务的结束时间。',
+ 'type' => 'string',
+ 'example' => '2014-08-20T16:55Z',
+ ],
+ 'DesiredCapacity' => [
+ 'description' => '定时任务的`伸缩方式`选择`伸缩组内实例数量设置`时,指定伸缩组内实例的期望实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'ScheduledTaskId' => [
+ 'description' => '定时任务的ID。',
+ 'type' => 'string',
+ 'example' => 'edRtShc57WGXdt8TlPbr****',
+ ],
+ 'MinValue' => [
+ 'description' => '定时任务的`伸缩方式`选择`伸缩组内实例数量设置`时,指定伸缩组内实例的最小数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'ScalingGroupId' => [
+ 'description' => '执行定时任务的伸缩组的ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp1bo5tca4m56nap****',
+ ],
+ 'LaunchExpirationTime' => [
+ 'description' => '定时任务触发操作失败后,在此时间内重试。单位为秒,取值范围:0~21600。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '600',
+ ],
+ 'Description' => [
+ 'description' => '定时任务的描述信息。',
+ 'type' => 'string',
+ 'example' => 'Test scheduled task.',
+ ],
+ 'ScheduledAction' => [
+ 'description' => '执行定时任务时使用的伸缩规则。仅当定时任务指定了伸缩规则时,返回该参数。',
+ 'type' => 'string',
+ 'example' => 'ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp1id5rhu8edp7kd****',
+ ],
+ 'LaunchTime' => [
+ 'description' => '定时任务触发的时间点。',
+ 'type' => 'string',
+ 'example' => '2014-08-18T10:52Z',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 1,\\n \\"ScheduledTasks\\": {\\n \\"ScheduledTask\\": [\\n {\\n \\"TaskEnabled\\": true,\\n \\"RecurrenceValue\\": \\"1\\",\\n \\"RecurrenceType\\": \\"Daily\\",\\n \\"MaxValue\\": 10,\\n \\"ScheduledTaskName\\": \\"scheduled****\\",\\n \\"RecurrenceEndTime\\": \\"2014-08-20T16:55Z\\",\\n \\"DesiredCapacity\\": 10,\\n \\"ScheduledTaskId\\": \\"edRtShc57WGXdt8TlPbr****\\",\\n \\"MinValue\\": 0,\\n \\"ScalingGroupId\\": \\"asg-bp1bo5tca4m56nap****\\",\\n \\"LaunchExpirationTime\\": 600,\\n \\"Description\\": \\"Test scheduled task.\\",\\n \\"ScheduledAction\\": \\"ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp1id5rhu8edp7kd****\\",\\n \\"LaunchTime\\": \\"2014-08-18T10:52Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeScheduledTasksResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>50</PageSize>\\n <TotalCount>1</TotalCount>\\n <ScheduledTasks>\\n <TaskEnabled>true</TaskEnabled>\\n <RecurrenceValue>1</RecurrenceValue>\\n <RecurrenceType>Daily</RecurrenceType>\\n <MaxValue>10</MaxValue>\\n <ScheduledTaskName>scheduled****</ScheduledTaskName>\\n <RecurrenceEndTime>2014-08-20T16:55Z</RecurrenceEndTime>\\n <DesiredCapacity>10</DesiredCapacity>\\n <ScheduledTaskId>edRtShc57WGXdt8TlPbr****</ScheduledTaskId>\\n <MinValue>0</MinValue>\\n <ScalingGroupId>asg-bp1bo5tca4m56nap****</ScalingGroupId>\\n <LaunchExpirationTime>600</LaunchExpirationTime>\\n <Description>Test scheduled task.</Description>\\n <ScheduledAction>ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp1id5rhu8edp7kd****</ScheduledAction>\\n <LaunchTime>2014-08-18T10:52Z</LaunchTime>\\n </ScheduledTasks>\\n</DescribeScheduledTasksResponse>","errorExample":""}]',
+ 'title' => '查询定时任务的信息',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'您可以通过定时任务的ID、定时任务的名称、定时任务执行的伸缩规则等查询定时任务。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateLifecycleHook' => [
+ 'summary' => '为伸缩组创建一个或多个生命周期挂钩。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '92655',
+ 'abilityTreeNodes' => [
+ 'FEATUREessZQ2TYX',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '目标伸缩组的ID。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1eyv4qn8ssgv43****',
+ ],
+ ],
+ [
+ 'name' => 'LifecycleHookName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩的名称。不能与当前伸缩组其他生命周期挂钩重名,长度为2~64个英文或中文字符,以数字、大小写字母或中文开头,可包含数字、下划线(_)、短划线(-)和半角句号(.)。'."\n"
+ ."\n"
+ .'默认值为LifecycleHookId的值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lifecyclehook****',
+ ],
+ ],
+ [
+ 'name' => 'LifecycleTransition',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩适用的伸缩活动类型。取值范围:'."\n"
+ ."\n"
+ .'- SCALE_OUT:伸缩组弹性扩张活动。'."\n"
+ .'- SCALE_IN:伸缩组弹性收缩活动。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'SCALE_OUT',
+ ],
+ ],
+ [
+ 'name' => 'DefaultResult',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '等待状态结束后的下一步动作。取值范围:'."\n"
+ ."\n"
+ .'- CONTINUE:继续响应弹性扩张活动或者继续响应弹性收缩活动。'."\n"
+ .'- ABANDON:直接释放弹性扩张活动创建出来的ECS实例或者直接将弹性收缩活动中的ECS实例从伸缩组移除。'."\n"
+ .'- ROLLBACK:针对弹性收缩活动,会拒绝释放ECS实例,进行回滚;针对弹性扩张活动,会直接释放创建出来的ECS实例,效果同`ABANDON`一样。'."\n"
+ ."\n"
+ .'当伸缩组发生弹性收缩活动(SCALE_IN)并触发多个生命周期挂钩时,如果一个生命周期挂钩的`DefaultResult`取值为`ABANDON`或`ROLLBACK`,且该挂钩等待状态结束时,会提前将其他生命周期挂钩对应的等待状态提前结束。其他情况下,下一步动作均以最后一个结束等待状态的下一步动作为准。'."\n"
+ ."\n"
+ .'默认值:CONTINUE。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CONTINUE',
+ ],
+ ],
+ [
+ 'name' => 'HeartbeatTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩为伸缩组活动设置的等待时间,等待状态超时后会执行下一步动作。取值范围:30~21600,单位:秒。'."\n"
+ ."\n"
+ .'创建了生命周期挂钩后,您可以调用[RecordLifecycleActionHeartbeat](~~73846~~)延长ECS实例的等待时间,也可以调用[CompleteLifecycleAction](~~73847~~)提前结束伸缩活动的等待状态。'."\n"
+ ."\n"
+ .'默认值:600。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '600',
+ ],
+ ],
+ [
+ 'name' => 'NotificationMetadata',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩暂停伸缩活动时推送给`NotificationArn`(通知对象)的通知信息,便于管理和标记不同类别的通知信息。必须同时指定`NotificationArn`。参数长度不能超过4096个字符。'."\n"
+ ."\n"
+ .'如果`NotificationArn`指定为OOS模板,包括公共模板或者自定义模板,则`NotificationMetadata`必须指定为JSON字符串,且与OOS模板的参数相符。'."\n"
+ ."\n"
+ .'例如,`{"dbInstanceId": "dds-bp17661e0135****", "modifyMode": "Append"}`,`dbInstanceId`和`modifyMode`为OOS模板中已定义的参数。OOS模板的部分参数有默认值,`NotificationMetadata`必须指定无默认值的参数,指定有默认值的参数时会覆盖原默认值,但以下参数请保持默认值,用于在伸缩活动运行时获取相关信息:'."\n"
+ ."\n"
+ .'- regionId:伸缩活动执行的地域,默认为${regionId}。'."\n"
+ ."\n"
+ .'- instanceIds:伸缩活动关联的实例列表,默认为${instanceIds}。'."\n"
+ ."\n"
+ .'- lifecycleHookId:生命周期挂钩ID,默认为${lifecycleHookId}。'."\n"
+ ."\n"
+ .'- lifecycleActionToken:伸缩活动的等待状态标识符,用于提前结束当前的挂起活动,默认为${lifecycleActionToken}。'."\n"
+ ."\n"
+ .'- scalingGroupId:伸缩活动所属的伸缩组ID,默认为${scalingGroupId}。'."\n"
+ ."\n"
+ .'- lifecycleActionResult:生命周期挂钩等待状态结束后的下一步动作,用于在OOS模板执行失败时提前结束当前的挂起活动,当`DefaultResult`为`ROLLBACK`时,参数值默认为`ROLLBACK`,其余情况默认为`ABANDON`。'."\n"
+ .'>- 您可以根据需要设置`lifecycleActionResult`的值来覆盖当前默认值,取值范围为ABANDON、CONTINUE、ROLLBACK、${lifecycleActionResult}。其中,`${lifecycleActionResult}`表示lifecycleActionResult的值和DefaultResult保持一致。'."\n"
+ .'- 您可以在[OOS控制台](https://oos.console.aliyun.com/)获取对应模板的参数的详细信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test lifecycle hook.',
+ ],
+ ],
+ [
+ 'name' => 'NotificationArn',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩通知对象标识符,不设置本参数表示不发送通知,设置本参数时支持以下通知方式:'."\n"
+ ."\n"
+ .'- MNS队列,参数取值格式:`acs:mns:{region-id}:{account-id}:queue/{queuename}`。'."\n"
+ .'- MNS主题,参数取值格式:`acs:mns:{region-id}:{account-id}:topic/{topicname}`。'."\n"
+ .'- OOS模板,参数取值格式:`acs:oos:{region-id}:{account-id}:template/{templatename}`。'."\n"
+ .'- 事件总线 ,参数取值格式:`acs:eventbridge:{region-id}:{account-id}:eventbus/default`。'."\n"
+ ."\n"
+ .'参数格式中的变量含义如下:'."\n"
+ ."\n"
+ .'- region-id:伸缩组所在的地域的ID。'."\n"
+ .'- account-id:阿里云账号ID,不支持RAM用户的账号ID。'."\n"
+ .'- queuename:MNS队列的名称。'."\n"
+ .'- topicname:MNS主题的名称。'."\n"
+ .'- templatename:OOS模板的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs:mns:cn-beijing:161456884340****:queue/modifyLifecycleHo****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'LifecycleHookId' => [
+ 'description' => '生命周期挂钩的ID。',
+ 'type' => 'string',
+ 'example' => 'ash-bp1at9ufhmcf9cmy****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"LifecycleHookId\\": \\"ash-bp1at9ufhmcf9cmy****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateLifecycleHookResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <LifecycleHookId>ash-bp1at9ufhmcf9cmy****</LifecycleHookId>\\n</CreateLifecycleHookResponse>","errorExample":""}]',
+ 'title' => '为伸缩组创建一个或多个生命周期挂钩',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 一个伸缩组最多可以创建6个生命周期挂钩。创建了生命周期挂钩的伸缩组,在发生伸缩活动时,生命周期挂钩会暂停伸缩活动一段时间,具体等待时长可以通过HeartbeatTimeout参数指定。您可以在等待期间进行初始化ECS实例配置、获取ECS实例数据等操作。'."\n"
+ ."\n"
+ .'- 弹性扩张活动时,ECS实例添加至RDS实例白名单后进入等待状态,等待状态结束后再加入SLB实例后端服务器组。弹性收缩活动时,ECS实例从SLB实例后端服务器组移出后进入等待状态,等待状态结束后再从RDS实例白名单移出。'."\n"
+ ."\n"
+ .'- 生命周期挂钩可以配置通知方式,支持MNS主题、MNS队列和OOS模板。如果配置OOS模板,您需要为OOS服务创建RAM角色。具体操作,请参见[为OOS服务设置RAM权限](~~120810~~)。'."\n"
+ ."\n"
+ .'> 如果伸缩组有存量的ECS实例,且配置的OOS模板用于加入或移出除RDS外的其他云数据库白名单,则您必须手动将存量的ECS实例加入云数据库的白名单。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InvalidParamter|The specified value of parameter is not valid.|参数值不合法。|'."\n"
+ .'|400|InvalidNotificationArn|The specified parameter notificationArn is invalid.|指定的NotificationArn不合法。|'."\n"
+ .'|400|UnsupportedNotificationType.CurrentRegion|The notificationType is not supported in the special region which scalingGroup belongs to.|当前地域不支持该通知方式。|'."\n"
+ .'|400|QueueNotExist|The specified queue does not exist.|指定的MNS队列不存在。|'."\n"
+ .'|400|TopicNotExist|The specified topic does not exist.|指定的MNS主题不存在。|'."\n"
+ .'|400|InvalidLifecycleHookName.Duplicate|The specified value of parameter lifecycleHookName is duplicated.|生命周期挂钩已存在。|'."\n"
+ .'|400|QuotaExceeded.LifecycleHook|Lifecycle hook quota exceeded in the specified scaling group.|一个伸缩组最多可以创建6个生命周期挂钩。',
+ ],
+ 'DeleteLifecycleHook' => [
+ 'summary' => '删除一个生命周期挂钩。 。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '92664',
+ 'abilityTreeNodes' => [
+ 'FEATUREessZQ2TYX',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LifecycleHookId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ash-bp14g3ee6bt3sc98****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'LifecycleHookName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lifecyclehook****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteLifecycleHookResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</DeleteLifecycleHookResponse>","errorExample":""}]',
+ 'title' => '删除一个生命周期挂钩',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'如果生命周期挂钩已触发伸缩活动等待状态,删除生命周期挂钩时,对应的等待状态会被提前结束。您可以通过以下两种方式删除生命周期挂钩:'."\n"
+ ."\n"
+ .'- 指定生命周期挂钩ID(`LifecycleHookId`),此时将忽略`ScalingGroupId`和`LifecycleHookName`参数。'."\n"
+ ."\n"
+ .'- 同时指定伸缩组ID(`ScalingGroupId`)与生命周期挂钩名称(`LifecycleHookName`)。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InvalidParamter|The specified value of parameter is invalid.|参数值不合法。|'."\n"
+ .'|400|InvalidLifecycleHookId.NotExist|The specified lifecycleHookId does not exist.|生命周期挂钩ID不存在。|'."\n"
+ .'|400|InvalidLifecycleHookName.NotExist|The specified lifecycleHookName you provided does not exist.|生命周期挂钩名称不存在。',
+ ],
+ 'ModifyLifecycleHook' => [
+ 'summary' => '修改一个生命周期挂钩的信息。 。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92706',
+ 'abilityTreeNodes' => [
+ 'FEATUREessKFTMD6',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LifecycleHookId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待修改生命周期挂钩的ID,用于指定生命周期挂钩。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ash-bp1fxuqyi98w0aib****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID,用于指定生命周期挂钩。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'LifecycleHookName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待修改生命周期挂钩的名称,用于指定生命周期挂钩。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test_SCAL****',
+ ],
+ ],
+ [
+ 'name' => 'DefaultResult',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '等待状态结束后的下一步动作。取值范围: '."\n"
+ ."\n"
+ .'- CONTINUE:继续响应弹性扩张活动或者继续响应弹性收缩活动。'."\n"
+ .'- ABANDON:直接释放弹性扩张活动创建出来的ECS实例或者直接将弹性收缩活动中的ECS实例从伸缩组移除。'."\n"
+ .'- ROLLBACK:针对弹性收缩活动,会拒绝释放ECS实例,进行回滚;针对弹性扩张活动,会直接释放创建出来的ECS实例,效果同ABANDON一样。'."\n"
+ ."\n"
+ .'当伸缩组发生弹性收缩活动(SCALE_IN)并触发多个生命周期挂钩时,如果一个生命周期挂钩的`DefaultResult`取值为`ABANDON`或`ROLLBACK`,且该挂钩等待状态结束时,会提前将其他生命周期挂钩对应的等待状态提前结束。其他情况下,下一步动作均以最后一个结束等待状态的下一步动作为准。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CONTINUE',
+ ],
+ ],
+ [
+ 'name' => 'HeartbeatTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩为伸缩组活动设置的等待时间,等待状态超时后会执行下一步动作。取值范围:30~21600,单位:秒。'."\n"
+ ."\n"
+ .'您可以调用[RecordLifecycleActionHeartbeat](~~73846~~)延长ECS实例的等待时间,也可以调用[CompleteLifecycleAction](~~73847~~)提前结束伸缩活动的等待状态。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '600',
+ ],
+ ],
+ [
+ 'name' => 'LifecycleTransition',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩适用的伸缩活动类型,取值范围:'."\n"
+ .'- SCALE_OUT:伸缩组弹性扩张活动。'."\n"
+ .'- SCALE_IN:伸缩组弹性收缩活动。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SCALE_IN',
+ ],
+ ],
+ [
+ 'name' => 'NotificationMetadata',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩活动的等待状态的固定字符串信息。参数长度不能超过4096个字符。'."\n"
+ ."\n"
+ .'弹性伸缩每次推送消息到通知对象时,会同时发送您预先指定的`NotificationMetadata`参数值,便于管理和标记不同类别的通知信息。当您同时指定了`NotificationArn`参数时,`NotificationMetadata`参数方可生效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test',
+ ],
+ ],
+ [
+ 'name' => 'NotificationArn',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩通知对象标识符。设置本参数时支持以下通知方式:'."\n"
+ .'- MNS队列,参数取值格式:`acs:mns:{region-id}:{account-id}:queue/{queuename}`。'."\n"
+ .'- MNS主题,参数取值格式:`acs:mns:{region-id}:{account-id}:topic/{topicname}`。'."\n"
+ .'- OOS模板,参数取值格式:`acs:oos:{region-id}:{account-id}:template/{templatename}`。'."\n"
+ .'- 事件总线 ,参数取值格式:`acs:eventbridge:{region-id}:{account-id}:eventbus/default`。'."\n"
+ ."\n"
+ .'参数格式中的变量含义如下:'."\n"
+ .'- region-id:伸缩组所在的地域的ID。'."\n"
+ .'- account-id:阿里云账号ID。'."\n"
+ .'- queuename:MNS队列的名称。'."\n"
+ .'- topicname:MNS主题的名称。'."\n"
+ .'- templatename:OOS模板的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs:mns:cn-beijing:161456884340****:queue/modifyLifecycleHo****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing',
+ ],
+ ],
+ [
+ 'name' => 'LifecycleHookStatus',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '修改当前生命周期挂钩的状态。取值范围:'."\n"
+ .'- Active:表示启动生命周期挂钩。'."\n"
+ .'- InActive:表示暂停生命周期挂钩。'."\n"
+ ."\n"
+ .'如果不设置该参数,则当前生命周期挂钩状态保持为原有状态。'."\n"
+ .'>生命周期挂钩创建成功后,系统默认为启动状态。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Active',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyLifecycleHookResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</ModifyLifecycleHookResponse>","errorExample":""}]',
+ 'title' => '修改一个生命周期挂钩的信息',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'您可以通过以下两种方式指定待修改的生命周期挂钩:'."\n"
+ ."\n"
+ .'- 只指定生命周期挂钩ID(`LifecycleHookId`),此时将忽略伸缩组ID(`ScalingGroupId`)和生命周期挂钩名称(`LifecycleHookName`)参数。'."\n"
+ ."\n"
+ .'- 同时指定伸缩组ID(`ScalingGroupId`)与生命周期挂钩名称(`LifecycleHookName`),因为在一个伸缩组内同一个生命周期挂钩名称是唯一的。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InvalidParamter|The specified value of parameter is not valid.|参数值不合法。|'."\n"
+ .'|400|InvalidLifecycleHookId.NotExist|The specified lifecycleHookId not exist.|指定的LifecycleHookId不存在。|'."\n"
+ .'|400|InvalidLifecycleHookName.NotExist|The specified lifecycleHookName you provided not exist.|指定的LifecycleHookName不存在。|'."\n"
+ .'|400|InvalidNotificationArn|The specified parameter NotificationArn is invalid.|指定的NotificationArn不存在。|'."\n"
+ .'|400|UnsupportedNotificationType.CurrentRegion|The NotificationType is not supported in the special region which scalingGroup belongs to.|当前地域不支持该通知方式。|'."\n"
+ .'|400|LifecycleHook|The specified queue does not exist.|指定的MNS队列不存在。|'."\n"
+ .'|400|TopicNotExist|The specified topic does not exist.|指定的MNS主题不存在。',
+ ],
+ 'DescribeLifecycleActions' => [
+ 'summary' => '根据伸缩活动ID和状态查询 Lifecycle Token。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '92674',
+ 'abilityTreeNodes' => [
+ 'FEATUREess54US0Q',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingActivityId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩活动的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asa-bp17mug9t0pegagw****',
+ ],
+ ],
+ [
+ 'name' => 'LifecycleActionStatus',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期操作的状态。取值范围:'."\n"
+ ."\n"
+ .'- Pending:挂起中。表示ECS实例仍处于挂起中状态。'."\n"
+ .'- Timeout:已超时。表示已到达生命周期挂钩的超时时间,自动结束ECS实例的挂起中状态。'."\n"
+ .'- Completed:已处理。表示您手动提前结束了ECS实例的挂起中状态。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Pending',
+ ],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询凭证,用于指定开始查询的位置。'."\n"
+ ."\n"
+ .'例如上次查询10条生命周期操作后,本次从第11条生命周期操作开始查询。取值为上次调用本接口返回的NextToken参数值,如果不填写取值则表示从头开始查询。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AAAAAcSz4VTb1Nq****',
+ ],
+ ],
+ [
+ 'name' => 'MaxResults',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '设置单页查询的最大条目数。取值范围:1~50。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'NextToken' => [
+ 'description' => '本次调用返回的查询凭证。',
+ 'type' => 'string',
+ 'example' => 'AAAAAcSz4VTb1Nq****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '42A742EB-FCF3-459E-9C62-E107048C17E3',
+ ],
+ 'TotalCount' => [
+ 'description' => '本次查询到的生命周期操作的总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'MaxResults' => [
+ 'description' => '单页查询的最大条目数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'LifecycleActions' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'LifecycleAction' => [
+ 'description' => '各个生命周期挂钩对应的生命周期操作列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '各个生命周期挂钩对应的生命周期操作。',
+ 'type' => 'object',
+ 'properties' => [
+ 'LifecycleHookId' => [
+ 'description' => '生命周期挂钩的ID。',
+ 'type' => 'string',
+ 'example' => 'ash-bp18uoft0deax0f7****',
+ ],
+ 'LifecycleActionToken' => [
+ 'description' => '生命周期操作的标识符。',
+ 'type' => 'string',
+ 'example' => '9C2E9DA7-F794-449A-ACF6-CEE24444****',
+ ],
+ 'LifecycleActionStatus' => [
+ 'description' => '生命周期操作的状态。',
+ 'type' => 'string',
+ 'example' => 'Pending',
+ ],
+ 'LifecycleActionResult' => [
+ 'description' => '该生命周期挂钩触发的生命周期操作结束后的下一步动作。取值范围:'."\n"
+ ."\n"
+ .'- CONTINUE:继续响应弹性扩张活动,将ECS实例添加至伸缩组;继续响应弹性收缩活动,将ECS实例从伸缩组移除。'."\n"
+ .'- ABANDON:终止弹性扩张活动,直接释放创建出来的ECS实例;继续响应弹性收缩活动,将ECS实例从伸缩组移除。',
+ 'type' => 'string',
+ 'example' => 'CONTINUE',
+ ],
+ 'InstanceIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceId' => [
+ 'description' => '该生命周期挂钩挂起的ECS实例的ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '该生命周期挂钩挂起的ECS实例的ID。',
+ 'type' => 'string',
+ 'example' => '["i-bp11m3fzlqrgk5vh****","i-bp11m3fzlqrgk5vh****"]',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"AAAAAcSz4VTb1Nq****\\",\\n \\"RequestId\\": \\"42A742EB-FCF3-459E-9C62-E107048C17E3\\",\\n \\"TotalCount\\": 3,\\n \\"MaxResults\\": 3,\\n \\"LifecycleActions\\": {\\n \\"LifecycleAction\\": [\\n {\\n \\"LifecycleHookId\\": \\"ash-bp18uoft0deax0f7****\\",\\n \\"LifecycleActionToken\\": \\"9C2E9DA7-F794-449A-ACF6-CEE24444****\\",\\n \\"LifecycleActionStatus\\": \\"Pending\\",\\n \\"LifecycleActionResult\\": \\"CONTINUE\\",\\n \\"InstanceIds\\": {\\n \\"InstanceId\\": [\\n \\"[\\\\\\"i-bp11m3fzlqrgk5vh****\\\\\\",\\\\\\"i-bp11m3fzlqrgk5vh****\\\\\\"]\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeLifecycleActionsResponse>\\n <NextToken>AAAAAcSz4VTb1Nq****</NextToken>\\n <RequestId>42A742EB-FCF3-459E-9C62-E107048C17E3</RequestId>\\n <TotalCount>3</TotalCount>\\n <MaxResults>3</MaxResults>\\n <LifecycleActions>\\n <LifecycleHookId>ash-bp18uoft0deax0f7****</LifecycleHookId>\\n <LifecycleActionToken>9C2E9DA7-F794-449A-ACF6-CEE24444F7BB</LifecycleActionToken>\\n <LifecycleActionStatus>Pending</LifecycleActionStatus>\\n <LifecycleActionResult>CONTINUE</LifecycleActionResult>\\n <InstanceIds>[\\"i-bp11m3fzlqrgk5vh****\\",\\"i-bp11m3fzlqrgk5vh****\\"]</InstanceIds>\\n </LifecycleActions>\\n</DescribeLifecycleActionsResponse>","errorExample":""}]',
+ 'title' => '查询 Lifecycle Token',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'如果伸缩组发生了和生命周期挂钩适用类型一致的伸缩活动,每个生命周期挂钩都会触发一次生命周期操作,生命周期操作有三种状态:'."\n"
+ ."\n"
+ .'- Pending:挂起中。表示ECS实例仍处于挂起中状态。'."\n"
+ .'- Timeout:已超时。表示已超过生命周期挂钩的超时时间,自动结束了ECS实例的挂起中状态。'."\n"
+ .'- Completed:已处理。表示您手动提前结束了ECS实例的挂起中状态。'."\n"
+ ."\n"
+ .'如果在创建生命周期挂钩时没有设置后续动作,例如在结束挂起后触发执行指定的OOS模板。您可以调用本接口获取当前伸缩活动对应生命周期操作的标识符,以便自行定制后续动作。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InvalidParameter|The specified value of parameter "ScalingActivityId" is not valid.|指定的参数(ScalingActivityId)无效。|'."\n"
+ .'|400|InvalidParameter|The specified value of parameter "MaxResults" is not valid.|指定的参数(MaxResults)无效。|'."\n"
+ .'|400|InvalidParameter|The specified value of parameter "LifecycleActionStatus" is not valid.|指定的参数(LifecycleActionStatus)无效。',
+ ],
+ 'DescribeLifecycleHooks' => [
+ 'summary' => '查询生命周期挂钩。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '92675',
+ 'abilityTreeNodes' => [
+ 'FEATUREess54US0Q',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp1igpak5ft1flyp****',
+ ],
+ ],
+ [
+ 'name' => 'LifecycleHookName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lifecyclehook****',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例状态列表的页码,起始值:1。'."\n"
+ ."\n"
+ .'默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值:50。'."\n"
+ ."\n"
+ .'默认值:50。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ ],
+ [
+ 'name' => 'LifecycleHookId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '生命周期挂钩的ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '生命周期挂钩的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ash-bp1at9ufhmcf9cmy****',
+ ],
+ 'required' => false,
+ 'example' => 'ash-bp19d1032y9kij96****',
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属地域的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'PageNumber' => [
+ 'description' => '查询起始页数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '查询每页返回行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'TotalCount' => [
+ 'description' => '生命周期挂钩总个数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'LifecycleHooks' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'LifecycleHook' => [
+ 'description' => '生命周期挂钩信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '生命周期挂钩信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DefaultResult' => [
+ 'description' => '实例挂起等待状态结束后的下一步动作。',
+ 'type' => 'string',
+ 'example' => 'CONTINUE',
+ ],
+ 'LifecycleHookId' => [
+ 'description' => '生命周期挂钩ID。',
+ 'type' => 'string',
+ 'example' => 'ash-bp19d1032y9kij96****',
+ ],
+ 'LifecycleHookName' => [
+ 'description' => '生命周期挂钩名称。',
+ 'type' => 'string',
+ 'example' => 'lifecyclehook****',
+ ],
+ 'LifecycleTransition' => [
+ 'description' => '生命周期挂钩对应的伸缩活动类型。',
+ 'type' => 'string',
+ 'example' => 'SCALE_OUT',
+ ],
+ 'NotificationMetadata' => [
+ 'description' => '伸缩活动的等待状态的固定字符串信息。',
+ 'type' => 'string',
+ 'example' => 'Test Lifecycle Hook.',
+ ],
+ 'NotificationArn' => [
+ 'description' => '生命周期挂钩通知对象标识符,参数格式如下:'."\n"
+ .'- 未设置通知:`acs:ess:{region-id}:{account-id}:null/null`。'."\n"
+ .'- MNS队列:`acs:mns:{region-id}:{account-id}:queue/{queuename}`。'."\n"
+ .'- MNS主题:`acs:mns:{region-id}:{account-id}:topic/{topicname}`。'."\n"
+ .'- OOS模板:`acs:oos:{region-id}:{account-id}:template/{templatename}`。'."\n"
+ .'- 事件总线 ,参数取值格式:`acs:eventbridge:{region-id}:{account-id}:eventbus/default`。'."\n"
+ ."\n"
+ .'参数格式中的变量含义如下:'."\n"
+ .'- region-id:伸缩组所在的地域的ID。'."\n"
+ .'- account-id:阿里云账号ID。'."\n"
+ .'- queuename:MNS队列的名称。'."\n"
+ .'- topicname:MNS主题的名称。'."\n"
+ .'- templatename:OOS模板的名称。',
+ 'type' => 'string',
+ 'example' => 'acs:ess:cn-beijing:161456884340****:null/null',
+ ],
+ 'HeartbeatTimeout' => [
+ 'description' => '生命周期挂钩为伸缩活动设置的等待时间,等待超时后会执行下一步动作。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ ],
+ 'ScalingGroupId' => [
+ 'description' => '伸缩组ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp1igpak5ft1flyp****',
+ ],
+ 'LifecycleHookStatus' => [
+ 'description' => '生命周期挂钩的状态,可选值:'."\n"
+ .'- Active:启动状态。'."\n"
+ .'- InActive:暂停状态。',
+ 'type' => 'string',
+ 'example' => 'Active',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 1,\\n \\"LifecycleHooks\\": {\\n \\"LifecycleHook\\": [\\n {\\n \\"DefaultResult\\": \\"CONTINUE\\",\\n \\"LifecycleHookId\\": \\"ash-bp19d1032y9kij96****\\",\\n \\"LifecycleHookName\\": \\"lifecyclehook****\\",\\n \\"LifecycleTransition\\": \\"SCALE_OUT\\",\\n \\"NotificationMetadata\\": \\"Test Lifecycle Hook.\\",\\n \\"NotificationArn\\": \\"acs:ess:cn-beijing:161456884340****:null/null\\",\\n \\"HeartbeatTimeout\\": 60,\\n \\"ScalingGroupId\\": \\"asg-bp1igpak5ft1flyp****\\",\\n \\"LifecycleHookStatus\\": \\"Active\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeLifecycleHooksResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>50</PageSize>\\n <TotalCount>1</TotalCount>\\n <LifecycleHooks>\\n <DefaultResult>CONTINUE</DefaultResult>\\n <LifecycleHookId>ash-bp19d1032y9kij96****</LifecycleHookId>\\n <LifecycleHookName>lifecyclehook****</LifecycleHookName>\\n <LifecycleTransition>SCALE_OUT</LifecycleTransition>\\n <NotificationMetadata>Test Lifecycle Hook.</NotificationMetadata>\\n <NotificationArn>acs:ess:cn-beijing:161456884340****:null/null</NotificationArn>\\n <HeartbeatTimeout>60</HeartbeatTimeout>\\n <ScalingGroupId>asg-bp1igpak5ft1flyp****</ScalingGroupId>\\n <LifecycleHookStatus>Active</LifecycleHookStatus>\\n </LifecycleHooks>\\n</DescribeLifecycleHooksResponse>","errorExample":""}]',
+ 'title' => 'DescribeLifecycleHooks',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'您可以通过以下三种方式查询生命周期挂钩:'."\n"
+ ."\n"
+ .'- 指定一个生命周期挂钩ID列表(LifecycleHookId.N),此时将忽略伸缩组ID(ScalingGroupId)和生命周期挂钩名称(LifecycleHookName)参数。'."\n"
+ ."\n"
+ .'- 指定伸缩组ID(ScalingGroupId)。'."\n"
+ ."\n"
+ .'- 同时指定伸缩组ID(ScalingGroupId)和生命周期挂钩名称(LifecycleHookName)。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InvalidParamter|The specified value of parameter is not valid.|指定的参数值不合法。',
+ ],
+ 'RecordLifecycleActionHeartbeat' => [
+ 'summary' => '延长一个生命周期挂钩触发后被挂起的ECS实例的等待时间。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92713',
+ 'abilityTreeNodes' => [
+ 'FEATUREessKFTMD6',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'lifecycleHookId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ash-bp1fxuqyi98w0aib****',
+ ],
+ ],
+ [
+ 'name' => 'lifecycleActionToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩活动的等待状态标识符,您可以在实例被挂起的状态下,从生命周期挂钩指定的MNS队列中,接收消息对应的详情页中获取。'."\n"
+ ."\n"
+ .'也可以调用[DescribeLifecycleActions](~~202473~~)获取。'."\n"
+ ."\n"
+ .'还可以从生命周期挂钩指定的MNS主题中获取该值。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'F324B880-900E-4968-85DD-81691113****',
+ ],
+ ],
+ [
+ 'name' => 'heartbeatTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩为伸缩组活动设置的等待时间,等待状态超时后会执行默认执行策略。取值范围:30~21600,单位:秒。'."\n"
+ ."\n"
+ .'创建了生命周期挂钩后,您可以调用本接口延长ECS实例的等待时间,也可以调用[CompleteLifecycleAction](~~73847~~)提前结束伸缩活动的等待状态。'."\n"
+ ."\n"
+ .'默认值:600。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '600',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<RecordLifecycleActionHeartbeatResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</RecordLifecycleActionHeartbeatResponse>","errorExample":""}]',
+ 'title' => '延长生命周期挂钩触发后被挂起等待时间',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'只能在ECS实例被挂起的状态下调用该接口来延长等待时间。'."\n"
+ ."\n"
+ .'ECS实例的等待时间不能超过6小时,每次等待状态最多能被延时20次。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InvalidParamter|The specified value of parameter is not valid.|指定的参数值不合法。|'."\n"
+ .'|400|LifecycleHookIdAndLifecycleActionToken.Invalid|The specified lifecycleActionToken and LifecycleHookId you provided does not match any in process lifecycle action.|根据指定的lifecycleActionToken无法匹配LifecycleHookId。|'."\n"
+ .'|400|LifecycleAction.TimeExceeded|The specified parameter heartbeatTime exceed lifecycleAction max suspend time.|等待时间最长不能超过6小时。|'."\n"
+ .'|400|LifecycleAction.RecordTimesExceeded|The specified lifecycleAction exceed lifecycleAction max record times.|每次等待状态最多能被延时20次。',
+ ],
+ 'CompleteLifecycleAction' => [
+ 'summary' => '提前结束伸缩活动的等待状态。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92652',
+ 'abilityTreeNodes' => [
+ 'FEATUREessKFTMD6',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LifecycleHookId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ash-bp14g3ee6bt3sc98****',
+ ],
+ ],
+ [
+ 'name' => 'LifecycleActionToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩活动的等待状态标识符,您可以从生命周期挂钩指定的MNS队列或MNS主题中获取该值。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'aaaa-bbbbb-cccc-ddddd',
+ ],
+ ],
+ [
+ 'name' => 'LifecycleActionResult',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生命周期挂钩等待状态结束后的下一步动作。取值范围:'."\n"
+ ."\n"
+ .'- CONTINUE:继续响应弹性扩张活动,将ECS实例添加至伸缩组;继续响应弹性收缩活动,将ECS实例从伸缩组移除。'."\n"
+ .'- ABANDON:终止弹性扩张活动,直接释放创建出来的ECS实例;继续响应弹性收缩活动,将ECS实例从伸缩组移除。'."\n"
+ .'- ROLLBACK:针对弹性收缩活动,会拒绝释放ECS实例,进行回滚;针对弹性扩张活动,效果同ABANDON一样。'."\n"
+ ."\n"
+ .'如您不指定该参数,生命周期挂钩等待状态结束后的下一步动作则仍然保持为生命周期挂钩设置的`DefaultResult`值。'."\n"
+ ."\n"
+ .'伸缩组中存在多个生命周期挂钩时同步触发,最终的下一步动作如下:'."\n"
+ ."\n"
+ .'- 对于弹性收缩活动,在`ABANDON`或`ROLLBACK`类型生命周期挂钩触发的等待状态结束时,将会提前结束后续生命周期挂钩的等待状态。'."\n"
+ .'- 在挂起弹性收缩活动的`CONTINUE`类型生命周期挂钩时,或者对于弹性扩张活动,后续生命周期挂钩会继续挂起伸缩活动,直到最后一个生命周期挂钩触发的等待状态结束。最终的下一步动作以最后一个结束等待状态的生命周期挂钩类型为准。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CONTINUE',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<CompleteLifecycleActionResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</CompleteLifecycleActionResponse>","errorExample":""}]',
+ 'title' => '提前结束伸缩活动的等待状态',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'允许设置结束等待状态后的下一步动作是继续响应伸缩活动(CONTINUE),还是弃用此次伸缩活动(ABANDON)或者进行回滚操作(ROLLBACK)。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InvalidParamter|The specified value of parameter is invalid.|指定的参数值不合法。|'."\n"
+ .'|400|LifecycleHookIdAndLifecycleActionToken.Invalid|The specified lifecycleActionToken and lifecycleHookId you provided does not match any in process lifecycle action.|根据指定的LifecycleActionToken无法匹配LifecycleHookId。',
+ ],
+ 'CreateNotificationConfiguration' => [
+ 'summary' => '创建弹性伸缩事件及资源变化通知。 。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92656',
+ 'abilityTreeNodes' => [
+ 'FEATUREess6E26FJ',
+ 'FEATUREessFY8KDA',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1igpak5ft1flyp****',
+ ],
+ ],
+ [
+ 'name' => 'NotificationArn',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '通知对象标识符,设置本参数时支持以下通知方式:'."\n"
+ ."\n"
+ .'- 云监控,参数取值格式:`acs:ess:{region-id}:{account-id}:cloudmonitor`。'."\n"
+ .'- MNS队列,参数取值格式:`acs:mns:{region-id}:{account-id}:queue/{queuename}`。'."\n"
+ .'- MNS主题,参数取值格式:`acs:mns:{region-id}:{account-id}:topic/{topicname}`。'."\n"
+ ."\n"
+ .'参数格式中的变量含义如下:'."\n"
+ .'- `region-id`:伸缩组所在的地域的ID。'."\n"
+ .'- `account-id`:阿里云账号ID。'."\n"
+ .'- `queuename`:MNS队列的名称。'."\n"
+ .'- `topicname`:MNS主题的名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'acs:mns:cn-beijing:161456884340****:queue/modifyLifecycleHo****',
+ ],
+ ],
+ [
+ 'name' => 'NotificationType',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '一类或者多类弹性伸缩事件及资源变化通知。N的取值范围:1~8,多个取值使用重复列表的形式。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '一类或者多类弹性伸缩事件及资源变化通知。N的取值范围:1~8,多个取值使用重复列表的形式。'."\n"
+ ."\n"
+ .'您可以调用接口[DescribeNotificationTypes](~~71117~~)查询参数取值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AUTOSCALING:SCALE_OUT_SUCCESS',
+ ],
+ 'required' => true,
+ 'example' => 'AUTOSCALING:SCALE_OUT_SUCCESS',
+ 'maxItems' => 12,
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing',
+ ],
+ ],
+ [
+ 'name' => 'TimeZone',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '消息通知的时区。'."\n"
+ .'时区相对于协调世界时的偏移量: 如 UTC+8(东八区)、UTC-7(西七区)等。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'UTC+8',
+ ],
+ ],
+ [
+ 'name' => 'MessageEncoding',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '消息通知内容的编码方式。取值范围:'."\n"
+ ."\n"
+ .'- PlainText:不编码,采用明文传输。'."\n"
+ .'- Base64:Base64 编码。'."\n"
+ ."\n"
+ .'默认值:Base64。'."\n"
+ ."\n"
+ .'> 仅支持MNS通知对象设置该参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PlainText',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateNotificationConfigurationResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</CreateNotificationConfigurationResponse>","errorExample":""}]',
+ 'title' => '创建弹性伸缩事件及资源变化通知',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 您可以设置由云监控系统事件、消息服务MNS队列或消息服务MNS主题接收消息通知。当伸缩组发生指定类型的伸缩事件或者资源变化时,弹性伸缩会通知云监控或消息服务。'."\n"
+ ."\n"
+ .'- 同一个伸缩组内的不同事件通知不可重复使用同一个接收端。'."\n"
+ ."\n"
+ .' 例如,不同的事件通知不能同时使用同一个云监控、同一个MNS主题或者同一个MNS队列。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InvalidNotificationArn|The specified parameter notificationArn is invalid.|指定的NotificationArn不合法。|'."\n"
+ .'|400|InvalidNotificationTypes|The specified notification type is invalid.|指定的NotificationType.N不合法。|'."\n"
+ .'|400|NotificationConfigurationExist|The specified notification configuration already exist for the scalingGroup.|指定的事件通知已经存在于当前伸缩组中。|'."\n"
+ .'|400|NotificationConfigurationQuotaExceed.ForScalingGroup|NotificationConfiguration num exceed for the specified scalingGroup.|当前伸缩组配置的通知功能超出允许的上限值。|'."\n"
+ .'|400|QueueNotExist|The specified queue queuename does not exist.|指定的MNS队列不存在。|'."\n"
+ .'|400|TopicNotExist|The specified topic topicname does not exist.|指定的MNS主题不存在。|'."\n"
+ .'|400|UnsupportedNotificationType.CurrentRegion|The NotificationType is not supported in the special region which scaling group belongs to.|当前地域不支持该通知方式。|'."\n"
+ .'|400|InvalidParameter.TimeZone|The specified parameter TimeZone is not valid.|指定的参数TimeZone不合法。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组不存在。',
+ ],
+ 'DeleteNotificationConfiguration' => [
+ 'summary' => '删除一条弹性伸缩事件及资源变化通知。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '92665',
+ 'abilityTreeNodes' => [
+ 'FEATUREessJ2FJEV',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'NotificationArn',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '通知对象标识符,各通知方式的参数格式如下:'."\n"
+ ."\n"
+ .'- 云监控,参数取值格式:`acs:ess:{region-id}:{account-id}:cloudmonitor`。'."\n"
+ .'- MNS队列,参数取值格式:`acs:mns:{region-id}:{account-id}:queue/{queuename}`。'."\n"
+ .'- MNS主题,参数取值格式:`acs:mns:{region-id}:{account-id}:topic/{topicname}`。'."\n"
+ ."\n"
+ .'参数格式中的变量含义如下:'."\n"
+ ."\n"
+ .'- region-id:伸缩组所属的地域ID。'."\n"
+ .'- account-id:阿里云账号ID。'."\n"
+ .'- queuename:MNS队列的名称。'."\n"
+ .'- topicname:MNS主题的名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'acs:ess:cn-beijing:161456884340****:cloudmonitor',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteNotificationConfigurationResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</DeleteNotificationConfigurationResponse>","errorExample":""}]',
+ 'title' => '删除一条弹性伸缩事件及资源变化通知',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|NotificationConfigurationNotExist|The specified notification configuration not exist for the scaling group.|当前伸缩组不存在指定的伸缩事件及资源变化通知。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组不存在。',
+ ],
+ 'ModifyNotificationConfiguration' => [
+ 'summary' => '修改一条弹性伸缩事件及资源变化通知。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92707',
+ 'abilityTreeNodes' => [
+ 'FEATUREess6E26FJ',
+ 'FEATUREessFY8KDA',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1igpak5ft1flyp****',
+ ],
+ ],
+ [
+ 'name' => 'NotificationArn',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '通知对象标识符,设置本参数时支持以下通知方式:'."\n"
+ ."\n"
+ .'- 云监控,参数取值格式:`acs:ess:{region-id}:{account-id}:cloudmonitor`。'."\n"
+ .'- MNS队列,参数取值格式:`acs:mns:{region-id}:{account-id}:queue/{queuename}`。'."\n"
+ .'- MNS主题,参数取值格式:`acs:mns:{region-id}:{account-id}:topic/{topicname}`。'."\n"
+ ."\n"
+ .'参数格式中的变量含义如下:'."\n"
+ .'- region-id:伸缩组所在的地域的ID。'."\n"
+ .'- account-id:阿里云账号ID。'."\n"
+ .'- queuename:MNS队列的名称。'."\n"
+ .'- topicname:MNS主题的名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'acs:ess:cn-beijing:161456884340****:cloudmonitor',
+ ],
+ ],
+ [
+ 'name' => 'NotificationType',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '一类或者多类弹性伸缩事件及资源变化通知,N的取值范围:1~8。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '一类或者多类弹性伸缩事件及资源变化通知,N的取值范围:1~8。'."\n"
+ ."\n"
+ .'- AUTOSCALING:SCALE_OUT_SUCCESS:扩容伸缩活动成功。'."\n"
+ .'- AUTOSCALING:SCALE_IN_SUCCESS:缩容伸缩活动成功。'."\n"
+ .'- AUTOSCALING:SCALE_OUT_ERROR:扩容伸缩活动失败。'."\n"
+ .'- AUTOSCALING:SCALE_IN_ERROR:缩容伸缩活动失败。'."\n"
+ .'- AUTOSCALING:SCALE_REJECT:伸缩活动拒绝执行。'."\n"
+ .'- AUTOSCALING:SCALE_OUT_START:扩容伸缩活动开始。'."\n"
+ .'- AUTOSCALING:SCALE_IN_START:缩容伸缩活动开始。'."\n"
+ .'- AUTOSCALING:SCHEDULE_TASK_EXPIRING:定时任务到期提醒。'."\n"
+ .'- SCALING_GROUP_DIAGNOSE:伸缩组诊断。'."\n"
+ .'- AUTOSCALING:SCALE_OUT_WARN:弹性扩容活动部分成功。'."\n"
+ .'- AUTOSCALG:SCALE_IN_WARN:弹性收缩活动部分成功。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AUTOSCALING:SCALE_OUT_SUCCESS',
+ ],
+ 'required' => true,
+ 'example' => 'AUTOSCALING:SCALE_OUT_SUCCESS',
+ 'maxItems' => 12,
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing',
+ ],
+ ],
+ [
+ 'name' => 'TimeZone',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '消息通知的时区。'."\n"
+ .'时区相对于协调世界时的偏移量: 如 UTC+8(东八区)、UTC-7(西七区)等。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'UTC+8',
+ ],
+ ],
+ [
+ 'name' => 'MessageEncoding',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '消息通知内容的编码方式。取值范围:'."\n"
+ ."\n"
+ .'- PlainText:不编码,采用明文传输。'."\n"
+ .'- Base64:Base64 编码。'."\n"
+ ."\n"
+ .'默认值:Base64。'."\n"
+ ."\n"
+ .'> 仅支持MNS通知对象设置该参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PlainText',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyNotificationConfigurationResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</ModifyNotificationConfigurationResponse>","errorExample":""}]',
+ 'title' => '修改一条弹性伸缩事件及资源变化通知',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InvalidNotificationTypes|The specified NotificationType is invalid.|指定的NotificationType.N不合法。|'."\n"
+ .'|400|NotificationConfigurationNotExist|The specified notification configuration not exist for the scaling group.|当前伸缩组不存在指定的弹性伸缩事件及资源变化通知类型。|'."\n"
+ .'|400|InvalidParameter.TimeZone| The specified parameter TimeZone is not valid.|指定的参数TimeZone不合法。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组不存在。',
+ ],
+ 'DescribeNotificationConfigurations' => [
+ 'summary' => '查询您创建的弹性伸缩事件及资源变化通知。 。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92677',
+ 'abilityTreeNodes' => [
+ 'FEATUREess6E26FJ',
+ 'FEATUREessFY8KDA',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1igpak5ft1flyp****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'NotificationConfigurationModels' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NotificationConfigurationModel' => [
+ 'description' => '弹性伸缩事件及资源变化通知的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'NotificationArn' => [
+ 'description' => '通知对象标识符,参数格式如下:'."\n"
+ ."\n"
+ .'- 云监控:acs:ess:{region-id}:{account-id}:cloudmonitor。'."\n"
+ .'- MNS队列:acs:mns:{region-id}:{account-id}:queue/{queuename}。'."\n"
+ .'- MNS主题:acs:mns:{region-id}:{account-id}:topic/{topicname}。'."\n"
+ ."\n"
+ .'参数格式中的变量含义如下:'."\n"
+ .'- region-id:伸缩组所在的地域的ID。'."\n"
+ .'- account-id:阿里云账号ID。'."\n"
+ .'- queuename:MNS队列的名称。'."\n"
+ .'- topicname:MNS主题的名称。',
+ 'type' => 'string',
+ 'example' => 'acs:mns:cn-beijing:161456884340****:topic/modifyLifecycleHo****',
+ ],
+ 'ScalingGroupId' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp1igpak5ft1flyp****',
+ ],
+ 'NotificationTypes' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NotificationType' => [
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性伸缩事件及资源变化通知类型列表。',
+ 'type' => 'string',
+ 'example' => 'AUTOSCALING:SCALE_IN_SUCCESS',
+ ],
+ ],
+ ],
+ ],
+ 'TimeZone' => [
+ 'description' => '消息通知的时区。'."\n"
+ .'时区相对于协调世界时的偏移量: 如 UTC+8(东八区)、UTC-7(西七区)等。',
+ 'type' => 'string',
+ 'example' => 'UTC+8',
+ ],
+ 'MessageEncoding' => [
+ 'description' => '消息通知内容的编码方式。可能值:'."\n"
+ ."\n"
+ .'- PlainText:不编码,采用明文传输。'."\n"
+ .'- Base64:Base64 编码。',
+ 'type' => 'string',
+ 'example' => 'PlainText',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"NotificationConfigurationModels\\": {\\n \\"NotificationConfigurationModel\\": [\\n {\\n \\"NotificationArn\\": \\"acs:mns:cn-beijing:161456884340****:topic/modifyLifecycleHo****\\",\\n \\"ScalingGroupId\\": \\"asg-bp1igpak5ft1flyp****\\",\\n \\"NotificationTypes\\": {\\n \\"NotificationType\\": [\\n \\"AUTOSCALING:SCALE_IN_SUCCESS\\"\\n ]\\n },\\n \\"TimeZone\\": \\"UTC+8\\",\\n \\"MessageEncoding\\": \\"PlainText\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeNotificationConfigurationsResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <NotificationConfigurationModels>\\n <NotificationArn>acs:mns:cn-beijing:161456884340****:topic/modifyLifecycleHo****</NotificationArn>\\n <ScalingGroupId>asg-bp1igpak5ft1flyp****</ScalingGroupId>\\n <NotificationTypes>AUTOSCALING:SCALE_IN_SUCCESS</NotificationTypes>\\n </NotificationConfigurationModels>\\n</DescribeNotificationConfigurationsResponse>","errorExample":""}]',
+ 'title' => '查询弹性伸缩事件及资源变化通知',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组不存在。',
+ ],
+ 'DescribeNotificationTypes' => [
+ 'summary' => '查询弹性伸缩事件及资源变化通知的类型。 。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92678',
+ 'abilityTreeNodes' => [
+ 'FEATUREessFY8KDA',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'NotificationTypes' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NotificationType' => [
+ 'description' => '弹性伸缩事件及资源变化通知类型的列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性伸缩事件及资源变化通知类型的列表。'."\n"
+ .'- AUTOSCALING:SCALE_OUT_SUCCESS:扩容伸缩活动成功。'."\n"
+ .'- AUTOSCALING:SCALE_IN_SUCCESS:缩容伸缩活动成功。'."\n"
+ .'- AUTOSCALING:SCALE_OUT_ERROR:扩容伸缩活动失败。'."\n"
+ .'- AUTOSCALING:SCALE_IN_ERROR:缩容伸缩活动失败。'."\n"
+ .'- AUTOSCALING:SCALE_REJECT:伸缩活动拒绝执行。'."\n"
+ .'- AUTOSCALING:SCALE_OUT_START:扩容伸缩活动开始。'."\n"
+ .'- AUTOSCALING:SCALE_IN_START:缩容伸缩活动开始。'."\n"
+ .'- AUTOSCALING:SCHEDULE_TASK_EXPIRING:定时任务到期提醒。'."\n"
+ .'- SCALING_GROUP_DIAGNOSE:伸缩组诊断。'."\n"
+ .'- AUTOSCALING:SCALE_OUT_WARN:弹性扩容活动部分成功。'."\n"
+ .'- AUTOSCALG:SCALE_IN_WARN:弹性收缩活动部分成功。',
+ 'type' => 'string',
+ 'example' => 'AUTOSCALING:SCALE_OUT_SUCCESS',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"NotificationTypes\\": {\\n \\"NotificationType\\": [\\n \\"AUTOSCALING:SCALE_OUT_SUCCESS\\"\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeNotificationTypesResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <NotificationTypes>AUTOSCALING:SCALE_OUT_SUCCESS</NotificationTypes>\\n</DescribeNotificationTypesResponse>","errorExample":""}]',
+ 'title' => '查询弹性伸缩事件及资源变化通知的类型',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'SetInstancesProtection' => [
+ 'summary' => '开始保护或者停止保护伸缩组内的一台或者多台ECS实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92719',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFHJ1B',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'ProtectedFromScaleIn',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组自动缩容时是否保护ECS实例,使该实例不被终止或移出伸缩组。取值范围: '."\n"
+ ."\n"
+ .'- true:保护ECS实例。'."\n"
+ .'- false:不保护ECS实例。'."\n"
+ .' ',
+ 'type' => 'boolean',
+ 'required' => true,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ECS实例的ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ECS实例的ID。N的取值范围:1~20。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-28wt4****',
+ ],
+ 'required' => true,
+ 'example' => 'i-28wt4****',
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<SetInstancesProtectionResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</SetInstancesProtectionResponse>","errorExample":""}]',
+ 'title' => '开始或停止保护伸缩组内ECS实例',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'ECS实例开启保护状态后:'."\n"
+ ."\n"
+ .'- 实例保持此状态,直至您停止保护状态。'."\n"
+ ."\n"
+ .'- 即使伸缩组内实例数量的变化和监控任务触发自动缩容的伸缩活动,也不会移除处于保护状态的ECS实例。您需要自行移出ECS实例后才能释放ECS实例。具体操作,请参见[移出ECS实例](~~25955~~)。'."\n"
+ ."\n"
+ .'- ECS实例被停止或者重启时,不会更新ECS实例的健康检查状态。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述'."\n"
+ .'|-----|-----|-----|'."\n"
+ .'|400|IncorrectScalingGroupStatus|The current status of the specified scaling group does not support this action.|您需要启用伸缩组。|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|您还未被授权使用SetInstancesProtection接口。|'."\n"
+ .'|404|InvalidInstanceId.NotFound|Instance “XXX” does not exist.|指定的ECS实例不存在。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组不存在。',
+ ],
+ 'SetInstanceHealth' => [
+ 'summary' => '设置伸缩组内ECS实例的健康状态。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92718',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFHJ1B',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组内实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-bp1ap6bro51a7fsa****',
+ ],
+ ],
+ [
+ 'name' => 'HealthStatus',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '设置实例的健康状态,取值范围:'."\n"
+ ."\n"
+ .'- Healthy:设置为健康状态。'."\n"
+ .'- Unhealthy:设置为不健康状态。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Healthy',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'B755AE57-6093-43E4-938E-DEA422A9****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B755AE57-6093-43E4-938E-DEA422A9****\\"\\n}","errorExample":""},{"type":"xml","example":"<SetInstanceHealthResponse>\\n <RequestId>B755AE57-6093-43E4-938E-DEA422A9****</RequestId>\\n</SetInstanceHealthResponse>","errorExample":""}]',
+ 'title' => '设置伸缩组内ECS实例的健康状态',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'伸缩组会检测并移出处于不健康状态的ECS实例或ECI实例,如果您需要保留指定的ECS实例或ECI实例,请将ECS实例或ECI实例转入备用或者保护状态,更多说明请参见[EnterStandby](~~69678~~)和[SetInstancesProtection](~~71517~~)。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InvalidInstanceId.NotFound|Instance "%s" does not exist.|伸缩组内不存在指定的实例。|'."\n"
+ .'|400|InvalidParameter|The specified value of parameter "%s" is not valid.|指定的参数非法。',
+ ],
+ 'EnterStandby' => [
+ 'summary' => '将伸缩组内的ECS实例设置为备用状态。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92697',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFHJ1B',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1fo0dbtsbmqa9h****',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求之间该参数值唯一。'."\n"
+ ."\n"
+ .'只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ECS实例或ECI实例的ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ECS实例或ECI实例的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-28wt4****',
+ ],
+ 'required' => true,
+ 'example' => 'i-28wt4****',
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'Async',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否采用异步任务方式执行。取值范围:'."\n"
+ .'- true:异步任务执行方式。'."\n"
+ .'- false:同步执行方式。'."\n"
+ ."\n"
+ .'默认值: false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'ScalingActivityId' => [
+ 'title' => '异步调用伸缩活动ID',
+ 'description' => '调用伸缩活动ID。',
+ 'type' => 'string',
+ 'example' => 'asa-2zeb04oym05qaceq****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingActivityId\\": \\"asa-2zeb04oym05qaceq****\\"\\n}","errorExample":""},{"type":"xml","example":"<EnterStandbyResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <ScalingActivityId>asa-2zeb04oym05qaceq****</ScalingActivityId>\\n</EnterStandbyResponse>","errorExample":""}]',
+ 'title' => '将伸缩组内的ECS实例设置为备用状态',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 如果伸缩组关联了负载均衡实例,会把负载均衡中对应的实例权重设置为0。'."\n"
+ ."\n"
+ .'- 当实例处于备用状态时,如果您需要移出伸缩组并释放实例,则可以正常手动将该实例移出伸缩组并释放。'."\n"
+ ."\n"
+ .'- 对于伸缩组数量变化或监控任务触发的自动缩容的伸缩活动,不会移出处于备用状态的实例。'."\n"
+ ."\n"
+ .'- 当实例处于备用状态时,实例如果处于非健康状态(例如停止中、重启中等),实例的健康检查状态不会被更新,并且不会触发移出不健康实例的伸缩活动,只有实例退出备用状态后才会重新更新健康检查状态。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|RAM用户无权限调用该接口,请联系主账号授权后重试。|'."\n"
+ .'|404|InvalidInstanceId.NotFound|Instance "XXX" does not exist.|指定的ECS实例或ECI实例不存在。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组不存在。',
+ ],
+ 'ExitStandby' => [
+ 'summary' => '使伸缩组内处于备用状态的ECS实例进入运行状态。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92699',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFHJ1B',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1fo0dbtsbmqa9h****',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ECS实例的ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ECS实例的ID。取值可以由多个实例ID组成一个JSON数组,最多支持20个ID,ID之间用半角逗号(,)隔开。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-28wt4****',
+ ],
+ 'required' => true,
+ 'example' => 'i-28wt4****',
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'Async',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否采用异步任务方式执行。取值范围:'."\n"
+ ."\n"
+ .'- true:异步任务执行。'."\n"
+ .'- false:同步任务执行。'."\n"
+ ."\n"
+ .'默认值: false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'ScalingActivityId' => [
+ 'title' => '异步调用伸缩活动ID',
+ 'description' => '伸缩活动ID。',
+ 'type' => 'string',
+ 'example' => 'asa-2zeb04oym05qaceq****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingActivityId\\": \\"asa-2zeb04oym05qaceq****\\"\\n}","errorExample":""},{"type":"xml","example":"<ExitStandbyResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <ScalingActivityId>asa-2zeb04oym05qaceq****</ScalingActivityId>\\n</ExitStandbyResponse>","errorExample":""}]',
+ 'title' => '使备用状态实例进入运行状态',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'伸缩组中的实例移出备用状态后,您需要注意以下事项:'."\n"
+ ."\n"
+ .'- ECS实例或ECI实例会转为运行状态(即恢复服务状态)。'."\n"
+ ."\n"
+ .'- 如果ECS实例或ECI实例所在伸缩组关联了负载均衡实例,则该ECS实例或ECI实例再次加入负载均衡实例时,权重默认为50。'."\n"
+ ."\n"
+ .'- 如果ECS实例或ECI实例被停止或者重启时,则该ECS实例或ECI实例会重新更新健康检查状态。'."\n"
+ ."\n"
+ .'- 当伸缩组发生收缩的伸缩活动时,弹性伸缩可以从伸缩组移出该ECS实例或ECI实例。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|RAM用户无权限调用该接口,请联系主账号授权后重试。|'."\n"
+ .'|404|InvalidInstanceId.NotFound|A required authorization for the specified action is not supplied.|指定的ECS实例或ECI实例不存在。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组在该用户账号下不存在。',
+ ],
+ 'RebalanceInstances' => [
+ 'summary' => '重新平衡多可用区伸缩组内ECS实例的分布。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92712',
+ 'abilityTreeNodes' => [
+ 'FEATUREessPV8ZVU',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingActivityId' => [
+ 'description' => '伸缩活动的ID。',
+ 'type' => 'string',
+ 'example' => 'asa-kjgffgdfadah****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingActivityId\\": \\"asa-kjgffgdfadah****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<RebalanceInstancesResponse>\\n <ScalingActivityId>asa-kjgffgdfadah****</ScalingActivityId>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</RebalanceInstancesResponse>","errorExample":""}]',
+ 'title' => '重新平衡ECS实例分布',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'再平衡分布会通过新建ECS实例替换已有ECS实例补偿平衡可用区,终止已有ECS实例前会先启动新ECS实例,再平衡分布不会影响您的应用程序性能或可用性。'."\n"
+ ."\n"
+ .'- 只支持设置了`MultiAZPolicy`为`BALANCE`的多可用区伸缩组,用于平衡多可用区间ECS实例的分布。'."\n"
+ ."\n"
+ .'- 只有伸缩组内实例分布严重不平衡时可以执行再平衡操作,才需要执行一次再平衡分布操作,且一次再平衡分布活动最多可以替换20台ECS实例。'."\n"
+ ."\n"
+ .'- 再平衡分布活动期间,如果组内实例数量接近或达到指定的最大ECS实例台数(MaxSize),但需要继续平衡ECS实例分布,弹性伸缩允许ECS实例数量暂时超出MaxSize的10%。该超出状态会持续一段时间,直至完成平衡ECS实例分布,通常为1分钟至6分钟。'."\n"
+ ."\n"
+ .' >如果伸缩组的最大实例数的10%不是整数,则小数部分取整允许超出1台。例如,伸缩组最大实例数为15,取10%为1.5台,则暂时允许超出2台。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|IncorrectScalingGroupStatus|The current status of the specified scaling group does not support this action.|您需要启用伸缩组。|'."\n"
+ .'|400|OperationDenied|This operation is denied because the specified scaling group does not support this action.|指定伸缩组的扩缩容策略`MultiAZPolicy`不是`BALANCE`,或者ECS实例分布不存在严重不平衡的情况。|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|您还未被授权使用RebalanceInstances接口。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|指定的伸缩组在该用户账号下不存在。',
+ ],
+ 'DescribeRegions' => [
+ 'summary' => '查询可以使用弹性伸缩服务的地域。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92679',
+ 'abilityTreeNodes' => [
+ 'FEATUREessZ1KWHS',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AcceptLanguage',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '根据所选语言筛选返回结果,更多信息,请参见[RFC7231](https://tools.ietf.org/html/rfc7231)。取值范围:'."\n"
+ ."\n"
+ .'- zh-CN:根据汉语筛选。'."\n"
+ .'- en-US:根据英语筛选。'."\n"
+ .'- ja:根据日语筛选。'."\n"
+ ."\n"
+ .'默认值:zh-CN。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'zh-CN',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '73469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'Regions' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Region' => [
+ 'description' => '地域信息的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '地域信息的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ClassicUnavailable' => [
+ 'description' => '当前地域是否支持经典网络类型的伸缩组。取值范围:'."\n"
+ ."\n"
+ .'- true:不支持。'."\n"
+ .'- false:支持。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'RegionEndpoint' => [
+ 'description' => '地域对应的接入地址(Endpoint)。',
+ 'type' => 'string',
+ 'example' => 'ess.aliyuncs.com',
+ ],
+ 'LocalName' => [
+ 'description' => '地域名称。',
+ 'type' => 'string',
+ 'example' => '华北2 (北京)',
+ ],
+ 'VpcUnavailable' => [
+ 'description' => '当前地域是否支持VPC网络类型的伸缩组。取值范围:'."\n"
+ ."\n"
+ .'- true:不支持。'."\n"
+ .'- false:支持。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'RegionId' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"73469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"Regions\\": {\\n \\"Region\\": [\\n {\\n \\"ClassicUnavailable\\": false,\\n \\"RegionEndpoint\\": \\"ess.aliyuncs.com\\",\\n \\"LocalName\\": \\"华北2 (北京)\\",\\n \\"VpcUnavailable\\": false,\\n \\"RegionId\\": \\"cn-beijing\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeRegionsResponse>\\n <RequestId>73469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <Regions>\\n <ClassicUnavailable>false</ClassicUnavailable>\\n <RegionEndpoint>ess.aliyuncs.com</RegionEndpoint>\\n <LocalName>华北2 (北京)</LocalName>\\n <VpcUnavailable>false</VpcUnavailable>\\n <RegionId>cn-beijing</RegionId>\\n </Regions>\\n</DescribeRegionsResponse>","errorExample":""}]',
+ 'title' => '查询可以使用弹性伸缩服务的地域',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidAcceptLanguage.NotFound|Only Chinese (zh-CN), English (en-US), and Japanese (ja) are allowed.|不支持指定的语言。',
+ ],
+ 'ListTagResources' => [
+ 'summary' => '查询一个或多个弹性伸缩资源已经绑定的标签列表。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '92701',
+ 'abilityTreeNodes' => [
+ 'FEATUREess7569XW',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ResourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源类型,目前仅支持伸缩组。取值:scalinggroup。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'scalinggroup',
+ ],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '下一个查询开始的Token。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'caeba0bbb2be03f84eb48b699f0a4883',
+ ],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '资源ID。N的取值范围:1~50。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源ID,N的取值范围:1~50。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp17xb4x1vr29lgt****',
+ ],
+ 'required' => false,
+ 'example' => 'asg-bp17xb4x1vr29lgt****',
+ 'maxItems' => 51,
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '标签列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '精确查找弹性伸缩资源时使用的标签键。标签键长度的取值范围:1~128,N的取值范围:1~20。'."\n"
+ ."\n"
+ .'`Tag.N`用于精确查找绑定了指定标签的弹性伸缩资源,由一个键值对组成。'."\n"
+ ."\n"
+ .'- 仅指定`Tag.N.Key`时,则返回关联该标签键的所有资源。'."\n"
+ ."\n"
+ .'- 仅指定`Tag.N.Value`时,则出现`MissingParameter.TagKey`的报错提示。'."\n"
+ ."\n"
+ .'- 同时指定多个标签键值对时,仅同时满足所有标签键值对的弹性伸缩资源会被查找到。'."\n"
+ .' '."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TestKey',
+ ],
+ 'Value' => [
+ 'description' => '精确查找弹性伸缩资源时使用的标签值。可以为空字符串。最多支持128个字符,N的取值范围:1~20。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TestValue',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'NextToken' => [
+ 'description' => '下一个查询开始的Token。',
+ 'type' => 'string',
+ 'example' => 'caeba0bbb2be03f84eb48b699f0a4883',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'DE65F6B7-7566-4802-9007-96F2494A****',
+ ],
+ 'TagResources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'TagResource' => [
+ 'description' => '由资源及其标签组成的集合,包含了资源ID、资源类型和标签键值等信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '由资源及其标签组成的集合,包含了资源ID、资源类型和标签键值等信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'TagValue' => [
+ 'description' => '资源的标签值。',
+ 'type' => 'string',
+ 'example' => 'TestValue',
+ ],
+ 'ResourceType' => [
+ 'description' => '资源类型。',
+ 'type' => 'string',
+ 'example' => 'ALIYUN::ESS::SCALINGGROUP',
+ ],
+ 'ResourceId' => [
+ 'description' => '资源ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp17xb4x1vr29lgt****',
+ ],
+ 'TagKey' => [
+ 'description' => '资源的标签键。',
+ 'type' => 'string',
+ 'example' => 'TestKey',
+ ],
+ 'Propagate' => [
+ 'description' => '标识该标签是否为可传播标签。可能值:'."\n"
+ .'- true:伸缩组上的标签只会传播到即将扩容的实例上,不会传播到已经在伸缩组中运行的实例上。'."\n"
+ .'- false:伸缩组上的标签不会传播到实例上。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"RequestId\\": \\"DE65F6B7-7566-4802-9007-96F2494A****\\",\\n \\"TagResources\\": {\\n \\"TagResource\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"ResourceType\\": \\"ALIYUN::ESS::SCALINGGROUP\\",\\n \\"ResourceId\\": \\"asg-bp17xb4x1vr29lgt****\\",\\n \\"TagKey\\": \\"TestKey\\",\\n \\"Propagate\\": false\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListTagResourcesResponse>\\n <NextToken>caeba0bbb2be03f84eb48b699f0a4883</NextToken>\\n <RequestId>DE65F6B7-7566-4802-9007-96F2494A****</RequestId>\\n <TagResources>\\n <TagValue>TestValue</TagValue>\\n <ResourceType>ALIYUN::ESS::SCALINGGROUP</ResourceType>\\n <ResourceId>asg-bp17xb4x1vr29lgt****</ResourceId>\\n <TagKey>TestKey</TagKey>\\n <Propagate>false</Propagate>\\n </TagResources>\\n</ListTagResourcesResponse>","errorExample":""}]',
+ 'title' => 'ListTagResources',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 请求参数中至少指定一个参数:`ResourceId.N`或者`Tag.N`(即`Tag.N.Key`与`Tag.N.Value`),用以确定查询对象。'."\n"
+ ."\n"
+ .'- 如果同时指定参数`Tag.N`和`ResourceId.N`时,返回结果中仅包含同时满足这两个条件的弹性伸缩资源。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ListTagKeys' => [
+ 'summary' => '查询弹性伸缩资源标签键的列表。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92700',
+ 'abilityTreeNodes' => [
+ 'FEATUREess7569XW',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性伸缩资源所属地域的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ResourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性伸缩资源类型。取值:`scalinggroup`,表示标签绑定的对象是伸缩组。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'scalinggroup',
+ ],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '下一个查询开始的Token。如果参数值为空表示没有下一个。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'caeba0bbb2be03f84eb48b699f0a****',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数。最大值:50。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'NextToken' => [
+ 'description' => '下一个查询开始的Token,该参数值为空表示没有下一个。',
+ 'type' => 'string',
+ 'example' => 'caeba0bbb2be03f84eb48b699f0a****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'DC09A6AA-2713-4E10-A2E9-E6C5C43A****',
+ ],
+ 'PageSize' => [
+ 'description' => '查询时设置的每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'Keys' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Key' => [
+ 'description' => '标签键信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签键信息。',
+ 'type' => 'string',
+ 'example' => 'ESS',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"RequestId\\": \\"DC09A6AA-2713-4E10-A2E9-E6C5C43A****\\",\\n \\"PageSize\\": 10,\\n \\"Keys\\": {\\n \\"Key\\": [\\n \\"ESS\\"\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListTagKeysResponse>\\n <NextToken>caeba0bbb2be03f84eb48b699f0a****</NextToken>\\n <RequestId>DC09A6AA-2713-4E10-A2E9-E6C5C43A8842</RequestId>\\n <PageSize>10</PageSize>\\n <Keys>ESS</Keys>\\n</ListTagKeysResponse>","errorExample":""}]',
+ 'title' => '查询弹性伸缩资源标签键的列表',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InvalidResourceType.NotFound|The ResourceType provided does not exist in our records.|资源类型参数非法。',
+ ],
+ 'ListTagValues' => [
+ 'summary' => '查询弹性伸缩资源标签键对应的标签值。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92702',
+ 'abilityTreeNodes' => [
+ 'FEATUREess7569XW',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性伸缩资源所属地域的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ResourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性伸缩资源类型。取值:scalinggroup,表示标签绑定的对象是伸缩组。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'scalinggroup',
+ ],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '下一个查询开始的Token,NextToken为空表示没有下一个。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'caeba0bbb2be03f84eb48b699f0a****',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数。最大值:50。'."\n"
+ ."\n"
+ .'默认值:10',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'Key',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '标签键。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ESS',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'NextToken' => [
+ 'description' => '下一个查询开始的Token,NextToken为空表示没有下一个。',
+ 'type' => 'string',
+ 'example' => 'caeba0bbb2be03f84eb48b699f0a****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'AB444F46-1CFF-4B06-B8F0-B45D3158****',
+ ],
+ 'PageSize' => [
+ 'description' => '输入时设置的每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'Values' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Value' => [
+ 'description' => '标签键信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签值信息。',
+ 'type' => 'string',
+ 'example' => 'Doc',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"RequestId\\": \\"AB444F46-1CFF-4B06-B8F0-B45D3158****\\",\\n \\"PageSize\\": 10,\\n \\"Values\\": {\\n \\"Value\\": [\\n \\"Doc\\"\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListTagValuesResponse>\\n <NextToken>caeba0bbb2be03f84eb48b699f0a****</NextToken>\\n <RequestId>AB444F46-1CFF-4B06-B8F0-B45D3158****</RequestId>\\n <PageSize>10</PageSize>\\n <Values>Doc</Values>\\n</ListTagValuesResponse>","errorExample":""}]',
+ 'title' => '查询弹性伸缩资源标签键对应的标签值',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' |HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InvalidResourceType.NotFound|The ResourceType provided does not exist in our records.|资源类型参数非法。|'."\n"
+ .'|400|InvalidTagKey.Malformed|The specified tag key \\"%s\\" is not valid.|指定的标签键不存在。',
+ ],
+ 'TagResources' => [
+ 'summary' => '为指定的弹性伸缩资源列表统一创建并绑定标签。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92721',
+ 'abilityTreeNodes' => [
+ 'FEATUREessXN6KX4',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ResourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源类型定义,目前仅支持伸缩组。取值:scalinggroup。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'scalinggroup',
+ ],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '资源ID。N的取值范围为1~50。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源ID。N的取值范围:1~50。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-2zej7nf7hea77k5a****',
+ ],
+ 'required' => true,
+ 'example' => 'asg-bp17xb4x1vr29lgt****',
+ 'maxItems' => 51,
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '资源的标签信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源的标签信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '资源的标签键。N的取值范围:1~20。'."\n"
+ ."\n"
+ .'一旦输入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TestKey',
+ ],
+ 'Value' => [
+ 'description' => '资源的标签值。N的取值范围:1~20。'."\n"
+ ."\n"
+ .'输入该值时,可以为空字符串。最多支持128个字符,不能包含`http://`或者`https://`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TestValue',
+ ],
+ 'Propagate' => [
+ 'description' => '标识该标签是否为可传播标签,取值范围:'."\n"
+ ."\n"
+ .'- true:伸缩组上的标签只会传播到即将新创建的实例上,不会传播到已经在伸缩组中运行的实例上。'."\n"
+ .'- false:伸缩组上的标签不会传播到实例上。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 21,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '74C4E313-8570-479F-8791-DC25360D****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"74C4E313-8570-479F-8791-DC25360D****\\"\\n}","errorExample":""},{"type":"xml","example":"<TagResourcesResponse>\\n <RequestId>74C4E313-8570-479F-8791-DC25360D****</RequestId>\\n</TagResourcesResponse>","errorExample":""}]',
+ 'title' => 'TagResources',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 伸缩组最多支持绑定20个标签。'."\n"
+ .' >绑定标签前,阿里云会校验资源已有标签数量。超过限制值时返回报错信息。'."\n"
+ ."\n"
+ .'- 如果`Tag.N.Propagate`参数设置为`true`时,伸缩组设置的标签只会同步传播到伸缩组中即将新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n"
+ ."\n"
+ .'- 如果伸缩配置设置了标签,且将伸缩组设置的标签进行传播,则即将新创建的实例标签预期如下:'."\n"
+ .' - 包含伸缩配置与伸缩组设置传播的所有标签。'."\n"
+ .' - 如果伸缩配置设置的标签与伸缩组传播的标签具有相同的标签键,则伸缩组传播的标签会被伸缩配置设置的标签覆盖。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'UntagResources' => [
+ 'summary' => '解绑后,如果该标签没有绑定其他任何资源,会被自动删除。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92722',
+ 'abilityTreeNodes' => [
+ 'FEATUREessXN6KX4',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ResourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源类型,目前仅支持伸缩组。取值:scalinggroup。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'scalinggroup',
+ ],
+ ],
+ [
+ 'name' => 'All',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否解绑资源上全部的标签。当请求参数中未设置`TagKey.N`时,该参数才有效。取值范围:'."\n"
+ ."\n"
+ .'- true:解绑资源上的全部标签。'."\n"
+ .'- false:不解绑资源上的全部标签。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '资源ID。N的取值范围:1~50。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源ID。N的取值范围:1~50。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp17xb4x1vr29lgt****',
+ ],
+ 'required' => true,
+ 'example' => 'asg-bp17xb4x1vr29lgt****',
+ 'maxItems' => 51,
+ ],
+ ],
+ [
+ 'name' => 'TagKey',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '资源的标签键。N的取值范围:1~20。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源的标签键。N的取值范围:1~20。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TestKey',
+ ],
+ 'required' => false,
+ 'example' => 'TestKey',
+ 'maxItems' => 21,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '3AEBB1B9-5B13-4311-951F-C3C7FA2B****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"3AEBB1B9-5B13-4311-951F-C3C7FA2B****\\"\\n}","errorExample":""},{"type":"xml","example":"<UntagResourcesResponse>\\n <RequestId>3AEBB1B9-5B13-4311-951F-C3C7FA2B****</RequestId>\\n</UntagResourcesResponse>","errorExample":""}]',
+ 'title' => '为指定的弹性伸缩资源列表统一解绑标签',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateAlarm' => [
+ 'summary' => '创建一个报警任务。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '92653',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFLAJQ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TestAlarmTask',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务的描述。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test alarm task.',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务关联的伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监控项名称。取值范围与报警任务的监控类型有关:'."\n"
+ ."\n"
+ .'- 当报警任务为自定义监控类型(即MetricType=custom)时,取值范围是您自有的监控项范围。'."\n"
+ ."\n"
+ .'- 当报警任务为系统监控类型(即MetricType=system)时,取值范围如下: '."\n"
+ .' - CpuUtilization:(ECS)CPU使用率(%)。'."\n"
+ ."\n"
+ .' - ConcurrentConnections:(ECS)ECS同时连接数(个)。'."\n"
+ ."\n"
+ .' - IntranetTx:(ECS)内网出流量(Kb/min)。'."\n"
+ ."\n"
+ .' - IntranetRx:(ECS)内网入流量(Kb/min)。'."\n"
+ ."\n"
+ .' - VpcInternetTx:(ECS)外网出流量(Kb/min)。'."\n"
+ ."\n"
+ .' - VpcInternetRx:(ECS)外网入流量(Kb/min)。'."\n"
+ ."\n"
+ .' - SystemDiskReadBps:(ECS)系统盘读BPS(Byte/s)。'."\n"
+ ."\n"
+ .' - SystemDiskWriteBps:(ECS)系统盘写BPS(Byte/s)。'."\n"
+ ."\n"
+ .' - SystemDiskReadOps:(ECS)系统盘读IOPS(次/s)。'."\n"
+ ."\n"
+ .' - SystemDiskWriteOps:(ECS)系统盘写IOPS(次/s)。'."\n"
+ ."\n"
+ .' - CpuUtilizationAgent:(Agent)CPU使用率(%)。'."\n"
+ ."\n"
+ .' - GpuUtilizationAgent:(Agent)GPU使用率(%)。'."\n"
+ ."\n"
+ .' - GpuMemoryFreeUtilizationAgent:(Agent)GPU内存空闲率(%)。'."\n"
+ ."\n"
+ .' - GpuMemoryUtilizationAgent:(Agent)GPU内存使用率(%)。'."\n"
+ ."\n"
+ .' - MemoryUtilization:(Agent)内存(%)。'."\n"
+ ."\n"
+ .' - LoadAverage:(Agent)系统平均负载。'."\n"
+ ."\n"
+ .' - TcpConnection:(Agent)TCP总连接数(个)。'."\n"
+ .' '."\n"
+ .' - TcpConnection:(Agent)TCP已建立连接数(个)。'."\n"
+ ."\n"
+ .' - PackagesNetOut:(Agent)内网网卡发包数(个/s)。'."\n"
+ ."\n"
+ .' - PackagesNetIn:(Agent)内网网卡收包数(个/s)。'."\n"
+ .' '."\n"
+ .' - PackagesNetOut:(Agent)外网网卡发包数(个/s)。'."\n"
+ ."\n"
+ .' - PackagesNetIn:(Agent)外网网卡收包数(个/s)。'."\n"
+ ."\n"
+ .' - EciPodCpuUtilization:CPU使用率(%)。'."\n"
+ ."\n"
+ .' - EciPodMemoryUtilization:内存(%)。'."\n"
+ ."\n"
+ .' - LoadBalancerRealServerAverageQps:(ALB)服务器组单机QPS(次/s)。'."\n"
+ ."\n"
+ .'更多信息,请参见[系统监控报警任务](~~74854~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CpuUtilization',
+ ],
+ ],
+ [
+ 'name' => 'MetricType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监控项类型。取值范围:'."\n"
+ .'- system:使用云监控系统指标。'."\n"
+ .'- custom:使用上报到云监控的自定义指标。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'system',
+ 'default' => 'system',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '统计监控项数据的周期,单位:秒。取值范围:'."\n"
+ ."\n"
+ .'- 15。'."\n"
+ .'- 60。'."\n"
+ .'- 120。'."\n"
+ .'- 300。'."\n"
+ .'- 900。'."\n"
+ ."\n"
+ .'> 仅ECS类型的伸缩组支持设置15秒的统计周期。'."\n"
+ ."\n"
+ .'默认值:300。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '300',
+ 'default' => '300',
+ ],
+ ],
+ [
+ 'name' => 'Statistics',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '统计监控项数据的方法。取值范围:'."\n"
+ ."\n"
+ .'- Average:平均值。'."\n"
+ .'- Minimum:最小值。'."\n"
+ .'- Maximum:最大值。'."\n"
+ ."\n"
+ .'默认值:Average。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ 'default' => 'Average',
+ ],
+ ],
+ [
+ 'name' => 'Threshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监控指标的阈值,满足阈值表达式达到指定次数即触发执行伸缩规则。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '80.0',
+ ],
+ ],
+ [
+ 'name' => 'ComparisonOperator',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监控项统计值与阈值的比较符,用于指定监控项统计值与阈值在什么关系下满足条件。取值范围:'."\n"
+ ."\n"
+ .'- 监控项统计值大于等于阈值。取值:>=。'."\n"
+ .'- 监控项统计值小于等于阈值。取值:<=。'."\n"
+ .'- 监控项统计值大于阈值。取值:>。'."\n"
+ .'- 监控项统计值小于阈值。取值:<。'."\n"
+ ."\n"
+ .'默认值:>=。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '>=',
+ 'default' => '>=',
+ ],
+ ],
+ [
+ 'name' => 'EvaluationCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '触发执行伸缩规则需要满足阈值表达式的次数,例如,CPU使用率平均值3次的统计结果均大于等于80%。'."\n"
+ ."\n"
+ .'默认值:3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ 'default' => '3',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '自定义监控项所属云监控应用分组的ID,仅在监控项类型为custom时需要指定该参数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '4055401',
+ ],
+ ],
+ [
+ 'name' => 'Effective',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定报警任务的生效时间段,默认所有时间都生效。'."\n"
+ ."\n"
+ .'该参数遵循Cron表达式,默认格式为`X X X X X ?`,含义如下:'."\n"
+ .'- X:一个域的占位符,依次表示秒、分钟、小时、日期和月。X可以是确定的取值,也可以是具有逻辑意义的特殊字符。X的取值范围,请参见[Cron表达式](~~25907~~)。'."\n"
+ ."\n"
+ .'- ?:表示不指定值。'."\n"
+ ."\n"
+ .'> 该参数指定值**默认为UTC+8时区**,支持在Cron表达式之前添加时区信息`TZ=+yy`来指定时区,其中y表示时区的数值。例如,`TZ=+00 * * 1-2 * * ?`表示报警任务在UTC+0时区每天01:00~02:59之间生效。'."\n"
+ ."\n"
+ .'取值示例及含义如下:'."\n"
+ ."\n"
+ .'- `* * * * * ? `:所有时间都生效。'."\n"
+ ."\n"
+ .'- `* * 17-18 * * ? `:在UTC+8时区每天17:00~18:59之间生效。'."\n"
+ ."\n"
+ .'- `TZ=+00 * * 1-2 * * ?`:在UTC+0时区每天01:00~02:59之间生效。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TZ=+00 * * 1-2 * * ?',
+ ],
+ ],
+ [
+ 'name' => 'AlarmAction',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '报警任务关联伸缩规则的唯一标识符。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '报警任务关联伸缩规则的唯一标识符。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ari:acs:ess:cn-hangzhou:1406926****:scalingrule/asr-bp163l21e07uhn****',
+ ],
+ 'required' => false,
+ 'example' => 'ari:acs:ess:cn-hangzhou:1406926****:scalingrule/asr-bp163l21e07uhn****',
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'Dimension',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '监控项关联的维度列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '监控项关联的维度列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DimensionKey' => [
+ 'description' => '监控项关联的维度信息键。取值范围与报警任务的监控类型有关:'."\n"
+ ."\n"
+ .'- 当报警任务为自定义监控类型(即MetricType=custom)时,不限制取值范围,由您自行指定。'."\n"
+ ."\n\n"
+ .'- 当报警任务为系统监控类型(即MetricType=system)时,取值范围如下:'."\n"
+ ."\n"
+ .' - user_id:您的账号ID。'."\n"
+ .' - scaling_group:被监控的伸缩组。'."\n"
+ .' - device:网卡设备的类型。'."\n"
+ .' - state:TCP连接的状态。'."\n"
+ .' - rulePool: ALB qps监控指标指定服务器组。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'device',
+ ],
+ 'DimensionValue' => [
+ 'description' => '监控项关联的维度信息值,取值范围由Dimension.N.DimensionKey决定:'."\n"
+ ."\n"
+ .'- 当Dimension.N.DimensionKey的取值是自定义的,即报警任务是自定义监控类型(即MetricType=custom)时,该参数不限制取值范围,由您自行指定。'."\n"
+ ."\n"
+ .'- 当Dimension.N.DimensionKey的取值是系统指定的取值范围中的,即报警任务为系统监控类型(即MetricType=system)时,该参数取值范围如下:'."\n"
+ ."\n"
+ .' - user_id:由系统自动填充。'."\n"
+ ."\n"
+ .' - scaling_group:由系统自动填充。'."\n"
+ ."\n"
+ .' - device:'."\n"
+ ."\n"
+ .' - eth0:对于经典网络实例,eth0表示内网网卡。对于VPC实例,只存在eth0一张网卡。'."\n"
+ .' - eth1:对于经典网络实例,eth1代表外网网卡。'."\n"
+ ."\n"
+ .' - state:'."\n"
+ ."\n"
+ .' - TCP_TOTAL:表示总的TCP连接数。'."\n"
+ .' - ESTABLISHED:表示已建立的TCP连接数。'."\n"
+ .' - rulePool:ALB服务器组id,示例:sgp-xxxxx。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'eth0',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'Expression',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '多指标报警规则相关信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '多指标报警规则相关信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => '多指标报警规则的监控指标名称。取值范围与报警任务的监控类型有关:'."\n"
+ .'- 当报警任务为自定义监控类型(即MetricType=custom)时,取值范围是您自有的监控项范围。'."\n"
+ .'- 当报警任务为系统监控类型(即MetricType=system)时,取值范围如下所示:'."\n"
+ ."\n"
+ .' - CpuUtilization:(ECS)CPU使用率(%)。'."\n"
+ ."\n"
+ .' - ConcurrentConnections:(ECS)ECS同时连接数(个)。'."\n"
+ ."\n"
+ .' - IntranetTx:(ECS)内网出流量(Kb/min)。'."\n"
+ ."\n"
+ .' - IntranetRx:(ECS)内网入流量(Kb/min)。'."\n"
+ ."\n"
+ .' - VpcInternetTx:(ECS)外网出流量(Kb/min)。'."\n"
+ ."\n"
+ .' - VpcInternetRx:(ECS)外网入流量(Kb/min)。'."\n"
+ ."\n"
+ .' - SystemDiskReadBps:(ECS)系统盘读BPS(Byte/s)。'."\n"
+ ."\n"
+ .' - SystemDiskWriteBps:(ECS)系统盘写BPS(Byte/s)。'."\n"
+ ."\n"
+ .' - SystemDiskReadOps:(ECS)系统盘读IOPS(次/s)。'."\n"
+ ."\n"
+ .' - SystemDiskWriteOps:(ECS)系统盘写IOPS(次/s)。'."\n"
+ ."\n"
+ .' - CpuUtilizationAgent:(Agent)CPU使用率(%)。'."\n"
+ ."\n"
+ .' - GpuUtilizationAgent:(Agent)GPU使用率(%)。'."\n"
+ ."\n"
+ .' - GpuMemoryFreeUtilizationAgent:(Agent)GPU内存空闲率(%)。'."\n"
+ ."\n"
+ .' - GpuMemoryUtilizationAgent:(Agent)GPU内存使用率(%)。'."\n"
+ ."\n"
+ .' - MemoryUtilization:(Agent)内存(%)。'."\n"
+ ."\n"
+ .' - LoadAverage:(Agent)系统平均负载。'."\n"
+ ."\n"
+ .' - TcpConnection:(Agent)TCP总连接数(个)。'."\n"
+ .' '."\n"
+ .' - TcpConnection:(Agent)TCP已建立连接数(个)。'."\n"
+ ."\n"
+ .' - PackagesNetOut:(Agent)内网网卡发包数(个/s)。'."\n"
+ ."\n"
+ .' - PackagesNetIn:(Agent)内网网卡收包数(个/s)。'."\n"
+ ."\n"
+ .' - PackagesNetOut:(Agent)外网网卡发包数(个/s)。'."\n"
+ ."\n"
+ .' - PackagesNetIn:(Agent)外网网卡收包数(个/s)。'."\n"
+ .' '."\n"
+ .' - EciPodCpuUtilization:CPU使用率(%)。'."\n"
+ ."\n"
+ .' - EciPodMemoryUtilization:内存(%)。'."\n"
+ ."\n"
+ .' - LoadBalancerRealServerAverageQps:(ALB)服务器组单机QPS(次/s)。'."\n"
+ ."\n"
+ .'更多信息,请参见[系统监控报警任务](~~74854~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CpuUtilization',
+ ],
+ 'ComparisonOperator' => [
+ 'description' => '多指标报警规则的监控项统计值与阈值的比较符,用于指定监控项统计值与阈值在什么关系下满足条件。取值范围:'."\n"
+ ."\n"
+ .'- 监控项统计值大于等于阈值。取值:>=。'."\n"
+ .'- 监控项统计值小于等于阈值。取值:<=。'."\n"
+ .'- 监控项统计值大于阈值。取值:>。'."\n"
+ .'- 监控项统计值小于阈值。取值:<。'."\n"
+ ."\n"
+ .'默认值:>=。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '>=',
+ ],
+ 'Period' => [
+ 'description' => '多指标报警规则中统计监控项数据的周期,单位:秒。取值范围:'."\n"
+ ."\n"
+ .'- 15。'."\n"
+ .'- 60。'."\n"
+ .'- 120。'."\n"
+ .'- 300。'."\n"
+ .'- 900。'."\n"
+ ."\n"
+ .'> 仅ECS类型的伸缩组支持设置15秒的统计周期。'."\n"
+ .'默认值:300。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '900',
+ ],
+ 'Statistics' => [
+ 'description' => '多指标报警规则中统计监控项数据的方法。取值范围:'."\n"
+ ."\n"
+ .'- Average:平均值。'."\n"
+ .'- Minimum:最小值。'."\n"
+ .'- Maximum:最大值。'."\n"
+ ."\n"
+ .'默认值:Average。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'Threshold' => [
+ 'description' => '多指标报警规则中监控指标的阈值,满足阈值表达式达到指定次数即触发执行伸缩规则。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '40.0',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'ExpressionsLogicOperator',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '多指标报警条件之间的关系。取值范围:'."\n"
+ ."\n"
+ .'- `&&`:当所有监控指标都符合报警条件时,才能触发报警。即当多指标报警规则下的表达式均为`true`时,才能触发报警。'."\n"
+ .'- `||`:如果其中一个指标符合报警条件,即可触发报警。'."\n"
+ ."\n"
+ .'默认值: `&&`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '&&',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'AlarmTaskId' => [
+ 'description' => '报警任务ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"AlarmTaskId\\": \\"asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateAlarmResponse>\\n <AlarmTaskId>asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****</AlarmTaskId>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</CreateAlarmResponse>","errorExample":""}]',
+ 'title' => '创建一个报警任务',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 如果您创建自定义监控类型的报警任务(MetricType=custom),您需要先将自定义监控项指标上报到云监控。具体操作,请参见[自定义监控报警任务](~~74861~~)。'."\n"
+ ."\n"
+ .'- 创建报警任务时,您需要指定监控项(MetricName),并配合维度信息(Dimension.N.DimensionKey和Dimension.N.DimensionValue),来确定伸缩组中该监控项数据的聚合范围。例如,指定user\\_id和scaling\\_group来确定聚合该用户、该伸缩组下所有ECS实例或ECI实例的监控项数据。'."\n"
+ .' - 自定义监控报警任务(MetricType=custom)的监控项取决于您自有的监控指标。 '."\n"
+ .' - 系统监控报警任务(MetricType=system)支持的监控项的更多信息,请参见[系统监控报警任务](~~74854~~)。'."\n"
+ ."\n"
+ .'> 维度信息中,user_id和scaling_group由系统自动填充,device、state需要您手动指定。更多信息,请参见参数`Dimension.N.DimensionKey`和`Dimension.N.DimensionValue`。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidParameter|The specified value of parameter "%s" is not valid.|指定参数“%s”不合法。',
+ ],
+ 'DeleteAlarm' => [
+ 'summary' => '删除一个报警任务。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '92662',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFLAJQ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'AlarmTaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'AlarmTaskId' => [
+ 'description' => '报警任务ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '6EF9BFEE-FE07-4627-B8FB-14326FB9****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"AlarmTaskId\\": \\"asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****\\",\\n \\"RequestId\\": \\"6EF9BFEE-FE07-4627-B8FB-14326FB9****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteAlarmResponse>\\n <AlarmTaskId>asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****</AlarmTaskId>\\n <RequestId>6EF9BFEE-FE07-4627-B8FB-14326FB9****</RequestId>\\n</DeleteAlarmResponse>","errorExample":""}]',
+ 'title' => '删除一个报警任务',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DisableAlarm' => [
+ 'summary' => '停用一个报警任务。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92693',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFLAJQ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'AlarmTaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '086EFCD4-C76F-4DC6-9EE9-0D9B711E****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"086EFCD4-C76F-4DC6-9EE9-0D9B711E****\\"\\n}","errorExample":""},{"type":"xml","example":"<DisableAlarmResponse>\\n <RequestId>086EFCD4-C76F-4DC6-9EE9-0D9B711E****</RequestId>\\n</DisableAlarmResponse>","errorExample":""}]',
+ 'title' => '停用一个报警任务',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'停用报警任务前,报警任务必须处于正常、报警或数据不足状态。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'EnableAlarm' => [
+ 'summary' => '启用一个报警任务。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92695',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFLAJQ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'AlarmTaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '688B18B8-FB1E-42EB-A1ED-7F55B090****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"688B18B8-FB1E-42EB-A1ED-7F55B090****\\"\\n}","errorExample":""},{"type":"xml","example":"<EnableAlarmResponse>\\n <RequestId>688B18B8-FB1E-42EB-A1ED-7F55B090****</RequestId>\\n</EnableAlarmResponse>","errorExample":""}]',
+ 'title' => '启用一个报警任务',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ModifyAlarm' => [
+ 'summary' => '修改一个报警任务。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92703',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFLAJQ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务所属地域的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'AlarmTaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'alarmtask****',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务的描述。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test alarm task.',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监控项名称。取值范围与报警任务的监控类型有关: '."\n"
+ .'- 当报警任务为自定义监控类型(即MetricType=custom)时,取值范围是您自有的监控项范围。'."\n"
+ ."\n"
+ .'- 当报警任务为系统监控类型(即MetricType=system)时,取值范围如下:'."\n"
+ ."\n"
+ .' - CpuUtilization:(ECS)CPU使用率(%)。'."\n"
+ ."\n"
+ .' - IntranetTx:(ECS)内网出流量(Kb/min)。'."\n"
+ ."\n"
+ .' - IntranetRx:(ECS)内网入流量(Kb/min)。'."\n"
+ ."\n"
+ .' - VpcInternetTx:(ECS)外网出流量(Kb/min)。'."\n"
+ ."\n"
+ .' - VpcInternetRx:(ECS)外网入流量(Kb/min)。'."\n"
+ ."\n"
+ .' - SystemDiskReadBps:(ECS)系统盘读BPS(Byte/s)。'."\n"
+ ."\n"
+ .' - SystemDiskWriteBps:(ECS)系统盘写BPS(Byte/s)。'."\n"
+ ."\n"
+ .' - SystemDiskReadOps:(ECS)系统盘读IOPS(次/s)。'."\n"
+ ."\n"
+ .' - SystemDiskWriteOps:(ECS)系统盘写IOPS(次/s)。'."\n"
+ ."\n"
+ .' - CpuUtilizationAgent:(Agent)CPU使用率(%)。'."\n"
+ ."\n"
+ .' - GpuUtilizationAgent:(Agent)GPU使用率(%)。'."\n"
+ ."\n"
+ .' - GpuMemoryFreeUtilizationAgent:(Agent)GPU内存空闲率(%)。'."\n"
+ ."\n"
+ .' - GpuMemoryUtilizationAgent:(Agent)GPU内存使用率(%)。'."\n"
+ ."\n"
+ .' - MemoryUtilization:(Agent)内存(%)。'."\n"
+ ."\n"
+ .' - LoadAverage:(Agent)系统平均负载。'."\n"
+ ."\n"
+ .' - TcpConnection:(Agent)TCP总连接数(个)。'."\n"
+ ."\n"
+ .' - TcpConnection:(Agent)TCP已建立连接数(个)。'."\n"
+ ."\n"
+ .' - PackagesNetOut:(Agent)网卡发包数(个/s)。'."\n"
+ ."\n"
+ .' - PackagesNetIn:(Agent)网卡收包数(个/s)。'."\n"
+ ."\n"
+ .' - PackagesNetOut:(Agent)外网网卡发包数(个/s)。'."\n"
+ ."\n"
+ .' - PackagesNetIn:(Agent)外网网卡收包数(个/s)。'."\n"
+ ."\n"
+ .' - EciPodCpuUtilization:CPU使用率(%)。'."\n"
+ ."\n"
+ .' - EciPodMemoryUtilization:内存(%)。'."\n"
+ ."\n"
+ .' - LoadBalancerRealServerAverageQps:(ALB)服务器组单机QPS(次/s)。'."\n"
+ ."\n"
+ .'更多信息,请参见[系统监控报警任务](~~74854~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'MemoryUtilization',
+ ],
+ ],
+ [
+ 'name' => 'MetricType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监控项类型。取值范围:'."\n"
+ .'- system:使用云监控系统指标。'."\n"
+ .'- custom:使用上报到云监控的自定义指标。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'system',
+ 'default' => 'system',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '统计监控项数据的周期,单位:秒。取值范围:'."\n"
+ ."\n"
+ .'- 15。'."\n"
+ .'- 60。'."\n"
+ .'- 120。'."\n"
+ .'- 300。'."\n"
+ .'- 900。'."\n"
+ .'> 仅ECS类型的伸缩组支持设置15秒的统计周期。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '300',
+ ],
+ ],
+ [
+ 'name' => 'Statistics',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '统计监控项数据的方法。取值范围:'."\n"
+ ."\n"
+ .'- Average:平均值。'."\n"
+ .'- Minimum:最小值。'."\n"
+ .'- Maximum:最大值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ ],
+ [
+ 'name' => 'Threshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监控指标的阈值,满足阈值表达式达到指定次数即触发执行伸缩规则。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'ComparisonOperator',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监控项统计值与阈值的比较符,用于指定监控项统计值与阈值在什么关系下满足条件。取值范围:'."\n"
+ ."\n"
+ .'- 监控项统计值大于等于阈值。取值:`>=`。'."\n"
+ .'- 监控项统计值小于等于阈值。取值:`<=`。'."\n"
+ .'- 监控项统计值大于阈值。取值:`>`。'."\n"
+ .'- 监控项统计值小于阈值。取值:`<`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '>=',
+ ],
+ ],
+ [
+ 'name' => 'EvaluationCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '触发执行伸缩规则需要满足阈值表达式的次数。'."\n"
+ ."\n"
+ .'例如,CPU使用率平均值3次的统计结果均大于等于80%。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '自定义监控项所属云监控应用分组的ID,仅在监控项类型为custom时需要指定该参数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '4055401',
+ ],
+ ],
+ [
+ 'name' => 'Effective',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定报警任务的生效时间段。'."\n"
+ ."\n"
+ .'该参数遵循Cron表达式,默认格式为`X X X X X ?`,含义如下:'."\n"
+ .'- X:一个域的占位符,依次表示秒、分钟、小时、日期和月。X可以是确定的取值,也可以是具有逻辑意义的特殊字符。X的取值范围,请参见[Cron表达式](~~25907~~)。'."\n"
+ ."\n"
+ .'- ?:表示不指定值。'."\n"
+ ."\n"
+ .'> 该参数指定值**默认为UTC+8时区**,支持在Cron表达式之前添加时区信息`TZ=+yy`来指定时区,其中y表示时区的数值。例如,`TZ=+00 * * 1-2 * * ?`表示报警任务在UTC+0时区每天01:00~02:59之间生效。'."\n"
+ ."\n"
+ .'取值示例及含义如下:'."\n"
+ ."\n"
+ .'- `* * * * * ? `:所有时间都生效。'."\n"
+ ."\n"
+ .'- `* * 17-18 * * ? `:在UTC+8时区每天17:00~18:59之间生效。'."\n"
+ ."\n"
+ .'- `TZ=+00 * * 1-2 * * ?`:在UTC+0时区每天01:00~02:59之间生效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TZ=+00 * * 1-2 * * ?',
+ ],
+ ],
+ [
+ 'name' => 'AlarmAction',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '报警任务关联伸缩规则的唯一标识符。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '报警任务关联伸缩规则的唯一标识符。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ari:acs:ess:cn-hangzhou:140692647****:scalingrule/asr-bp163l21e07uhn****',
+ ],
+ 'required' => false,
+ 'example' => 'ari:acs:ess:cn-hangzhou:140692647****:scalingrule/asr-bp163l21e07uhn****',
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'Dimension',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '监控项关联的维度信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '监控项关联的维度信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DimensionKey' => [
+ 'description' => '监控项关联的维度信息键。取值范围与报警任务的监控类型有关:'."\n"
+ ."\n"
+ .'- 当报警任务为自定义监控类型(即MetricType=custom)时,不限制取值范围,由您自行指定。'."\n"
+ ."\n\n"
+ .'- 当报警任务为系统监控类型(即MetricType=system)时,取值范围如下:'."\n"
+ ."\n"
+ .' - user_id:您的账号ID。'."\n"
+ .' - scaling_group:被监控的伸缩组。'."\n"
+ .' - device:网卡设备的类型。'."\n"
+ .' - state:TCP连接的状态。'."\n"
+ .' - rulePool:ALB qps监控指标指定服务器组。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'device',
+ ],
+ 'DimensionValue' => [
+ 'description' => '监控项关联的维度信息值,取值范围由Dimension.N.DimensionKey决定:'."\n"
+ ."\n"
+ .'- 当Dimension.N.DimensionKey的取值是自定义的,即报警任务是自定义监控类型(即MetricType=custom)时,该参数不限制取值范围,由您自行指定。'."\n"
+ ."\n"
+ .'- 当Dimension.N.DimensionKey的取值是系统指定的取值范围中的,即报警任务为系统监控类型(即MetricType=system)时,该参数取值范围如下:'."\n"
+ ."\n"
+ .' - user_id:由系统自动填充。'."\n"
+ ."\n"
+ .' - scaling_group:由系统自动填充。'."\n"
+ ."\n"
+ .' - device:'."\n"
+ .' - eth0:对于经典网络实例,eth0表示内网网卡。对于VPC实例,只存在eth0一张网卡。'."\n"
+ .' - eth1:对于经典网络实例,eth1代表外网网卡。'."\n"
+ ."\n"
+ .' - state:'."\n"
+ .' - TCP_TOTAL:表示总的TCP连接数。'."\n"
+ .' - ESTABLISHED:表示已建立的TCP连接数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'eth0',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'Expression',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '多指标报警规则相关信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '多指标报警规则相关信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => '多指标报警规则的监控指标名称。取值范围与报警任务的监控类型有关:'."\n"
+ ."\n"
+ .'- 当报警任务为自定义监控类型(即MetricType=custom)时,取值范围是您自有的监控项范围。'."\n"
+ .'- 当报警任务为系统监控类型(即MetricType=system)时,取值范围如下所示: '."\n"
+ ."\n"
+ .' - CpuUtilization:(ECS)CPU使用率(%)。'."\n"
+ ."\n"
+ .' - IntranetTx:(ECS)内网出流量(Kb/min)。'."\n"
+ ."\n"
+ .' - IntranetRx:(ECS)内网入流量(Kb/min)。'."\n"
+ ."\n"
+ .' - VpcInternetTx:(ECS)外网出流量(Kb/min)。'."\n"
+ ."\n"
+ .' - VpcInternetRx:(ECS)外网入流量(Kb/min)。'."\n"
+ ."\n"
+ .' - SystemDiskReadBps:(ECS)系统盘读BPS(Byte/s)。'."\n"
+ ."\n"
+ .' - SystemDiskWriteBps:(ECS)系统盘写BPS(Byte/s)。'."\n"
+ ."\n"
+ .' - SystemDiskReadOps:(ECS)系统盘读IOPS(次/s)。'."\n"
+ ."\n"
+ .' - SystemDiskWriteOps:(ECS)系统盘写IOPS(次/s)。'."\n"
+ ."\n"
+ .' - CpuUtilizationAgent:(Agent)CPU使用率(%)。'."\n"
+ ."\n"
+ .' - GpuUtilizationAgent:(Agent)GPU使用率(%)。'."\n"
+ ."\n"
+ .' - GpuMemoryFreeUtilizationAgent:(Agent)GPU内存空闲率(%)。'."\n"
+ ."\n"
+ .' - GpuMemoryUtilizationAgent:(Agent)GPU内存使用率(%)。'."\n"
+ ."\n"
+ .' - MemoryUtilization:(Agent)内存(%)。'."\n"
+ ."\n"
+ .' - LoadAverage:(Agent)系统平均负载。'."\n"
+ ."\n"
+ .' - TcpConnection:(Agent)TCP总连接数(个)。'."\n"
+ ."\n"
+ .' - TcpConnection:(Agent)TCP已建立连接数(个)。'."\n"
+ ."\n"
+ .' - PackagesNetOut:(Agent)网卡发包数(个/s)。'."\n"
+ ."\n"
+ .' - PackagesNetIn:(Agent)网卡收包数(个/s)。'."\n"
+ ."\n"
+ .' - PackagesNetOut:(Agent)外网网卡发包数(个/s)。'."\n"
+ ."\n"
+ .' - PackagesNetIn:(Agent)外网网卡收包数(个/s)。'."\n"
+ ."\n"
+ .' - EciPodCpuUtilization:CPU使用率(%)。'."\n"
+ ."\n"
+ .' - EciPodMemoryUtilization:内存(%)。'."\n"
+ ."\n"
+ .' - LoadBalancerRealServerAverageQps:(ALB)服务器组单机QPS(次/s)。'."\n"
+ ."\n"
+ .'更多信息,请参见[系统监控报警任务](~~74854~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CpuUtilization',
+ ],
+ 'ComparisonOperator' => [
+ 'description' => '多指标报警规则的监控项统计值与阈值的比较符,用于指定监控项统计值与阈值在什么关系下满足条件。取值范围:'."\n"
+ ."\n"
+ .'- 监控项统计值大于等于阈值。取值:`>=`。'."\n"
+ .'- 监控项统计值小于等于阈值。取值:`<=`。'."\n"
+ .'- 监控项统计值大于阈值。取值:`>`。'."\n"
+ .'- 监控项统计值小于阈值。取值:`<`。'."\n"
+ ."\n"
+ .'默认值:`>=`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '>=',
+ ],
+ 'Period' => [
+ 'description' => '多指标报警规则中统计监控项数据的周期,单位:秒。取值范围:'."\n"
+ ."\n"
+ .'- 15。'."\n"
+ .'- 60。'."\n"
+ .'- 120。'."\n"
+ .'- 300。'."\n"
+ .'- 900。'."\n"
+ .'> 仅ECS类型的伸缩组支持设置15秒的统计周期。'."\n"
+ ."\n"
+ .'默认值:300。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '300',
+ ],
+ 'Statistics' => [
+ 'description' => '多指标报警规则中统计监控项数据的方法。取值范围:'."\n"
+ ."\n"
+ .'- Average:平均值。'."\n"
+ .'- Minimum:最小值。'."\n"
+ .'- Maximum:最大值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'Threshold' => [
+ 'description' => '多指标报警规则中监控指标的阈值,满足阈值表达式达到指定次数即触发执行伸缩规则。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '40.0',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'ExpressionsLogicOperator',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '多指标报警条件之间的关系。取值范围:'."\n"
+ ."\n"
+ .'- `&&`:当所有监控指标都符合报警条件时,才能触发报警。即当多指标报警规则下的表达式均为`true`时,才能触发报警。'."\n"
+ .'- `||`:如果其中一个指标符合报警条件,即可触发报警。'."\n"
+ ."\n"
+ .'默认值: `&&`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '&&',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'AlarmTaskId' => [
+ 'description' => '报警任务ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp1hvbnmkl10vll5****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'BACACF83-7070-4953-A8FD-D81F89F1****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"AlarmTaskId\\": \\"asg-bp1hvbnmkl10vll5****\\",\\n \\"RequestId\\": \\"BACACF83-7070-4953-A8FD-D81F89F1****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyAlarmResponse>\\n <AlarmTaskId>asg-bp1hvbnmkl10vll5****</AlarmTaskId>\\n <RequestId>BACACF83-7070-4953-A8FD-D81F89F1****</RequestId>\\n</ModifyAlarmResponse>","errorExample":""}]',
+ 'title' => 'ModifyAlarm',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 如果您创建自定义监控类型的报警任务(MetricType=custom),您需要先将自定义监控项指标上报到云监控。具体操作,请参见[自定义监控报警任务](~~74861~~)。'."\n"
+ ."\n"
+ .'- 创建报警任务时,您需要指定监控项(MetricName),并配合维度信息(`Dimension.N.DimensionKey`和`Dimension.N.DimensionValue`),来确定伸缩组中该监控项数据的聚合范围。例如,指定`user_id`和`scaling_group`来确定聚合该用户、该伸缩组下所有ECS实例或ECI实例的监控项数据。'."\n"
+ .' - 自定义监控报警任务(MetricType=custom)的监控项取决于您自有的监控指标。'."\n"
+ .' - 系统监控报警任务(MetricType=system)支持的监控项的更多信息,请参见[系统监控报警任务](~~74854~~)。'."\n"
+ ."\n"
+ .'> 维度信息中,`user_id`和`scaling_group`由系统自动填充,`device`、``state``需要您手动指定。更多信息,请参见参数`Dimension.N.DimensionKey`和`Dimension.N.DimensionValue`。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeAlarms' => [
+ 'summary' => '查询报警任务的信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '92670',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFLAJQ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务所属地域的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务关联的伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'AlarmTaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****',
+ ],
+ ],
+ [
+ 'name' => 'State',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务的状态。取值范围:'."\n"
+ ."\n"
+ .'- ALARM:报警,已满足报警条件。'."\n"
+ .'- OK:正常,尚未满足报警条件。'."\n"
+ .'- INSUFFICIENT_DATA:数据不足,不足以判断是否满足了报警条件。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'OK',
+ ],
+ ],
+ [
+ 'name' => 'IsEnable',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务是否启用。取值范围:'."\n"
+ ."\n"
+ .'- true:已启用。'."\n"
+ .'- false:已停用。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'MetricType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监控项类型。取值范围:'."\n"
+ ."\n"
+ .'- system:使用云监控系统指标。'."\n"
+ .'- custom:使用上报到云监控的自定义指标。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'system',
+ 'default' => 'system',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监控项名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CpuUtilization',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数。最大值:50。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '报警任务列表的页码。起始值:1。'."\n"
+ ."\n"
+ .'默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '报警任务的信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'PageSize' => [
+ 'description' => '每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '871C7C53-34A4-45AA-8C14-4B72FA6A****',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'TotalCount' => [
+ 'description' => '报警任务的总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'AlarmList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Alarm' => [
+ 'description' => '报警任务的列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '报警任务的列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AlarmTaskId' => [
+ 'description' => '报警任务ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****',
+ ],
+ 'MetricName' => [
+ 'description' => '监控项名称。可能值:'."\n"
+ ."\n"
+ .'- CpuUtilization:(ECS)CPU使用率(%)。'."\n"
+ .'- ConcurrentConnections:(ECS)ECS同时连接数(个)。'."\n"
+ .'- IntranetTx:(ECS)内网出流量(Kb/min)。'."\n"
+ .'- IntranetRx:(ECS)内网入流量(Kb/min)。'."\n"
+ .'- VpcInternetTx:(ECS)外网出流量(Kb/min)。'."\n"
+ .'- VpcInternetRx:(ECS)外网入流量(Kb/min)。'."\n"
+ .'- SystemDiskReadBps:(ECS)系统盘读BPS(Byte/s)。'."\n"
+ .'- SystemDiskWriteBps:(ECS)系统盘写BPS(Byte/s)。'."\n"
+ .'- SystemDiskReadOps:(ECS)系统盘读IOPS(次/s)。'."\n"
+ .'- SystemDiskWriteOps:(ECS)系统盘写IOPS(次/s)。'."\n"
+ .'- CpuUtilizationAgent:(Agent)CPU使用率(%)。'."\n"
+ .'- GpuUtilizationAgent:(Agent)GPU使用率(%)。'."\n"
+ .'- GpuMemoryFreeUtilizationAgent:(Agent)GPU内存空闲率(%)。'."\n"
+ .'- GpuMemoryUtilizationAgent:(Agent)GPU内存使用率(%)。'."\n"
+ .'- MemoryUtilization:(Agent)内存(%)。'."\n"
+ .'- LoadAverage:(Agent)系统平均负载。'."\n"
+ .'- TcpConnection:(Agent)TCP总连接数(个)。'."\n"
+ .'- TcpConnection:(Agent)TCP已建立连接数(个)。'."\n"
+ .'- PackagesNetOut:(Agent)内网网卡发包数(个/s)。'."\n"
+ .'- PackagesNetIn:(Agent)内网网卡收包数(个/s)。'."\n"
+ .'- PackagesNetOut:(Agent)外网网卡发包数(个/s)。'."\n"
+ .'- PackagesNetIn:(Agent)外网网卡收包数(个/s)。'."\n"
+ .'- EciPodCpuUtilization:CPU使用率(%)。'."\n"
+ .'- EciPodMemoryUtilization:内存(%)。'."\n"
+ .'- LoadBalancerRealServerAverageQps:(ALB)服务器组单机QPS(次/s)。'."\n"
+ ."\n"
+ .'更多信息,请参见[系统监控报警任务](~~74854~~)。',
+ 'type' => 'string',
+ 'example' => 'CpuUtilization',
+ ],
+ 'EvaluationCount' => [
+ 'description' => '触发执行伸缩规则需要满足阈值表达式的次数,例如,CPU使用率平均值3次的统计结果均大于等于80%。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'State' => [
+ 'description' => '报警任务的状态。可能值:'."\n"
+ ."\n"
+ .'- ALARM:报警,已满足报警条件。'."\n"
+ .'- OK:正常,尚未满足报警条件。'."\n"
+ .'- INSUFFICIENT_DATA:数据不足,不足以判断是否满足了报警条件。',
+ 'type' => 'string',
+ 'example' => 'ALARM',
+ ],
+ 'Period' => [
+ 'description' => '统计监控项数据的周期,单位为秒。可能值:'."\n"
+ ."\n"
+ .'- 15。'."\n"
+ .'- 60。'."\n"
+ .'- 120。'."\n"
+ .'- 300。'."\n"
+ .'- 900。'."\n"
+ ."\n"
+ .'>仅ECS类型的伸缩组支持设置15秒的统计周期。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '300',
+ ],
+ 'ScalingGroupId' => [
+ 'description' => '报警任务关联的伸缩组的ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ 'ComparisonOperator' => [
+ 'description' => '监控项统计值与阈值的比较符,用于指定监控项统计值与阈值在什么关系下满足条件。可能值:'."\n"
+ ."\n"
+ .'- 监控项统计值大于等于阈值。取值:>=。'."\n"
+ ."\n"
+ .'- 监控项统计值小于等于阈值。取值:<=。'."\n"
+ ."\n"
+ .'- 监控项统计值大于阈值。取值:>。'."\n"
+ ."\n"
+ .'- 监控项统计值小于阈值。取值:<。',
+ 'type' => 'string',
+ 'example' => '>=',
+ ],
+ 'Effective' => [
+ 'description' => '指定报警任务的生效时间段。',
+ 'type' => 'string',
+ 'example' => '* * * * * ?',
+ ],
+ 'Description' => [
+ 'description' => '报警任务的描述。',
+ 'type' => 'string',
+ 'example' => 'Test alarm task.',
+ ],
+ 'MetricType' => [
+ 'description' => '监控项类型。可能值:'."\n"
+ .'- system:使用云监控系统指标。'."\n"
+ .'- custom:使用上报到云监控的自定义指标。',
+ 'type' => 'string',
+ 'example' => 'system',
+ ],
+ 'Name' => [
+ 'description' => '报警任务的名称。',
+ 'type' => 'string',
+ 'example' => 'TestAlarmTask',
+ ],
+ 'Threshold' => [
+ 'description' => '监控指标的阈值,满足阈值表达式达到指定次数即触发执行伸缩规则。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '80.0',
+ ],
+ 'Enable' => [
+ 'description' => '报警任务是否启用。可能值:'."\n"
+ ."\n"
+ .'- true:已启用。'."\n"
+ .'- false:已停用。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Statistics' => [
+ 'description' => '统计监控项数据的方法。可能值:'."\n"
+ ."\n"
+ .'- Average:平均值。'."\n"
+ .'- Minimum:最小值。'."\n"
+ .'- Maximum:最大值。',
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ 'Dimensions' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Dimension' => [
+ 'description' => '监控项关联的维度信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '监控项关联的维度信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DimensionKey' => [
+ 'description' => '监控项关联的维度信息键,可能值:'."\n"
+ ."\n"
+ .'- user_id:您的账号ID。'."\n"
+ .'- scaling_group:被监控的伸缩组。'."\n"
+ .'- device:网卡设备的类型。'."\n"
+ .'- state:TCP连接的状态。',
+ 'type' => 'string',
+ 'example' => 'device',
+ ],
+ 'DimensionValue' => [
+ 'description' => '监控项关联的维度信息值,可能值由维度信息键决定。'."\n"
+ ."\n"
+ .'- `user_id`:由系统自动填充。'."\n"
+ ."\n"
+ .'- `scaling_group`:由系统自动填充。'."\n"
+ ."\n"
+ .'- `device`的可能值:'."\n"
+ .' - eth0:对于经典网络实例,eth0表示内网网卡。对于VPC实例,只存在eth0一张网卡。'."\n"
+ .' - eth1:对于经典网络实例,eth1代表外网网卡。'."\n"
+ ."\n"
+ .'-`state`的可能值:'."\n"
+ .' - TCP_TOTAL:表示总的TCP连接数。'."\n"
+ .' - ESTABLISHED:表示已建立的TCP连接数。',
+ 'type' => 'string',
+ 'example' => 'eth0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'AlarmActions' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'AlarmAction' => [
+ 'description' => '报警任务关联伸缩规则的唯一标识符的列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '报警任务关联伸缩规则的唯一标识符的列表。',
+ 'type' => 'string',
+ 'example' => 'ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp163l21e07uh****',
+ ],
+ ],
+ ],
+ ],
+ 'Expressions' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Expression' => [
+ 'description' => '多指标报警规则的相关信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '多指标报警规则的相关信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => '多指标报警规则的监控指标名称。可能值: '."\n"
+ ."\n"
+ .'- CpuUtilization:(ECS)CPU使用率(%)。'."\n"
+ .'- ConcurrentConnections:(ECS)ECS同时连接数(个)。'."\n"
+ .'- IntranetTx:(ECS)内网出流量(Kb/min)。'."\n"
+ .'- IntranetRx:(ECS)内网入流量(Kb/min)。'."\n"
+ .'- VpcInternetTx:(ECS)外网出流量(Kb/min)。'."\n"
+ .'- VpcInternetRx:(ECS)外网入流量(Kb/min)。'."\n"
+ .'- SystemDiskReadBps:(ECS)系统盘读BPS(Byte/s)。'."\n"
+ .'- SystemDiskWriteBps:(ECS)系统盘写BPS(Byte/s)。'."\n"
+ .'- SystemDiskReadOps:(ECS)系统盘读IOPS(次/s)。'."\n"
+ .'- SystemDiskWriteOps:(ECS)系统盘写IOPS(次/s)。'."\n"
+ .'- CpuUtilizationAgent:(Agent)CPU使用率(%)。'."\n"
+ .'- GpuUtilizationAgent:(Agent)GPU使用率(%)。'."\n"
+ .'- GpuMemoryFreeUtilizationAgent:(Agent)GPU内存空闲率(%)。'."\n"
+ .'- GpuMemoryUtilizationAgent:(Agent)GPU内存使用率(%)。'."\n"
+ .'- MemoryUtilization:(Agent)内存(%)。'."\n"
+ .'- LoadAverage:(Agent)系统平均负载。'."\n"
+ .'- TcpConnection:(Agent)TCP总连接数(个)。'."\n"
+ .'- TcpConnection:(Agent)TCP已建立连接数(个)。'."\n"
+ .'- PackagesNetOut:(Agent)内网网卡发包数(个/s)。'."\n"
+ .'- PackagesNetIn:(Agent)内网网卡收包数(个/s)。'."\n"
+ .'- PackagesNetOut:(Agent)外网网卡发包数(个/s)。'."\n"
+ .'- PackagesNetIn:(Agent)外网网卡收包数(个/s)。'."\n"
+ .'- EciPodCpuUtilization:CPU使用率(%)。'."\n"
+ .'- EciPodMemoryUtilization:内存(%)。'."\n"
+ .'- LoadBalancerRealServerAverageQps:(ALB)服务器组单机QPS(次/s)。'."\n"
+ ."\n"
+ .'更多信息,请参见[系统监控报警任务](~~74854~~)。',
+ 'type' => 'string',
+ 'example' => 'CpuUtilization',
+ ],
+ 'ComparisonOperator' => [
+ 'description' => '多指标报警规则的监控项统计值与阈值的比较符,用于指定监控项统计值与阈值在什么关系下满足条件。可能值:'."\n"
+ ."\n"
+ .'- 监控项统计值大于等于阈值。取值:>=。'."\n"
+ .'- 监控项统计值小于等于阈值。取值:<=。'."\n"
+ .'- 监控项统计值大于阈值。取值:>。'."\n"
+ .'- 监控项统计值小于阈值。取值:<。'."\n"
+ ."\n"
+ .'默认值:>=。',
+ 'type' => 'string',
+ 'example' => '>=',
+ ],
+ 'Period' => [
+ 'description' => '多指标报警规则中统计监控项数据的周期,单位为秒。可能值:'."\n"
+ ."\n"
+ .'- 15。'."\n"
+ .'- 60。'."\n"
+ .'- 120。'."\n"
+ .'- 300。'."\n"
+ .'- 900。'."\n"
+ ."\n"
+ .'>仅ECS类型的伸缩组支持设置15秒的统计周期。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '900',
+ ],
+ 'Statistics' => [
+ 'description' => '多指标报警规则中统计监控项数据的方法。可能值:'."\n"
+ .'- Average:平均值。'."\n"
+ .'- Minimum:最小值。'."\n"
+ .'- Maximum:最大值。',
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ 'Threshold' => [
+ 'description' => '多指标报警规则中监控指标的阈值,满足阈值表达式达到指定次数即触发执行伸缩规则。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '40.0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ExpressionsLogicOperator' => [
+ 'description' => '多指标报警条件之间的关系。可能值:'."\n"
+ .'- `&&`:当所有监控指标都符合报警条件时,才能触发报警。即当多指标报警规则下的表达式均为`true`时,才能触发报警。'."\n"
+ .'- `||`:如果其中一个指标符合报警条件,即可触发报警。',
+ 'type' => 'string',
+ 'example' => '&&',
+ ],
+ 'HybridMonitorNamespace' => [
+ 'description' => '企业云监控指标仓库id。'."\n"
+ ."\n"
+ .'管理指标仓库,请参见[管理指标仓库](~~217606~~)。',
+ 'type' => 'string',
+ 'example' => 'aliyun-test',
+ ],
+ 'HybridMetrics' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'HybridMetric' => [
+ 'description' => '企业云监控指标设置。如何设置,请参见[使用公式运算自定义目标追踪规则](~~2852162~~)。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => '公制运算表达式中指标的引用id。',
+ 'type' => 'string',
+ 'example' => 'a',
+ ],
+ 'Expression' => [
+ 'description' => '多个企业云监控指标的公制运算表达式,表达式的计算结果将用于触发扩缩容。'."\n"
+ ."\n"
+ .'运算表达式需满足逆波兰表达式(RPN)规范,并且操作符只支持`+ - * /`。',
+ 'type' => 'string',
+ 'example' => '(a+b)/2',
+ ],
+ 'MetricName' => [
+ 'description' => '企业云监控指标仓库中的指标名称。',
+ 'type' => 'string',
+ 'example' => 'AliyunSmq_NumberOfMessagesVisible',
+ ],
+ 'Statistic' => [
+ 'description' => '指标的统计方式。可能值:'."\n"
+ .'- Average:指定区间内所有点的平均值。'."\n"
+ .'- Minimum:指定区间内所有点的最小值。'."\n"
+ .'- Maximum:指定区间内所有点的最大值。',
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ 'Dimensions' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Dimension' => [
+ 'description' => '指标纬度。用于指定指标监控的资源。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'DimensionKey' => [
+ 'description' => '指标维度key。',
+ 'type' => 'string',
+ 'example' => 'queue',
+ ],
+ 'DimensionValue' => [
+ 'description' => '指标维度value。',
+ 'type' => 'string',
+ 'example' => 'testQueue',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PromQL' => [
+ 'description' => '企业云监控promql查询语句。',
+ 'type' => 'string',
+ 'example' => '(avg(last_over_time(AliyunMnsnew_ActiveMessages{region=\'cn-hangzhou\',userId=\'123456****\',queue=\'testQueue\'}[900s])) by (userId))/(avg(last_over_time(AliyunEss_RunningInstanceCount{instanceId=\'asg-bp1****\'}[900s])) by (userId) != 0)',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"871C7C53-34A4-45AA-8C14-4B72FA6A****\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"AlarmList\\": {\\n \\"Alarm\\": [\\n {\\n \\"AlarmTaskId\\": \\"asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****\\",\\n \\"MetricName\\": \\"CpuUtilization\\",\\n \\"EvaluationCount\\": 3,\\n \\"State\\": \\"ALARM\\",\\n \\"Period\\": 300,\\n \\"ScalingGroupId\\": \\"asg-bp18p2yfxow2dloq****\\",\\n \\"ComparisonOperator\\": \\">=\\",\\n \\"Effective\\": \\"* * * * * ?\\",\\n \\"Description\\": \\"Test alarm task.\\",\\n \\"MetricType\\": \\"system\\",\\n \\"Name\\": \\"TestAlarmTask\\",\\n \\"Threshold\\": 80,\\n \\"Enable\\": true,\\n \\"Statistics\\": \\"Average\\",\\n \\"Dimensions\\": {\\n \\"Dimension\\": [\\n {\\n \\"DimensionKey\\": \\"device\\",\\n \\"DimensionValue\\": \\"eth0\\"\\n }\\n ]\\n },\\n \\"AlarmActions\\": {\\n \\"AlarmAction\\": [\\n \\"ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp163l21e07uh****\\"\\n ]\\n },\\n \\"Expressions\\": {\\n \\"Expression\\": [\\n {\\n \\"MetricName\\": \\"CpuUtilization\\",\\n \\"ComparisonOperator\\": \\">=\\",\\n \\"Period\\": 900,\\n \\"Statistics\\": \\"Average\\",\\n \\"Threshold\\": 40\\n }\\n ]\\n },\\n \\"ExpressionsLogicOperator\\": \\"&&\\",\\n \\"HybridMonitorNamespace\\": \\"aliyun-test\\",\\n \\"HybridMetrics\\": {\\n \\"HybridMetric\\": [\\n {\\n \\"Id\\": \\"a\\",\\n \\"Expression\\": \\"(a+b)/2\\",\\n \\"MetricName\\": \\"AliyunSmq_NumberOfMessagesVisible\\",\\n \\"Statistic\\": \\"Average\\",\\n \\"Dimensions\\": {\\n \\"Dimension\\": [\\n {\\n \\"DimensionKey\\": \\"queue\\",\\n \\"DimensionValue\\": \\"testQueue\\"\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"PromQL\\": \\"(avg(last_over_time(AliyunMnsnew_ActiveMessages{region=\'cn-hangzhou\',userId=\'123456****\',queue=\'testQueue\'}[900s])) by (userId))/(avg(last_over_time(AliyunEss_RunningInstanceCount{instanceId=\'asg-bp1****\'}[900s])) by (userId) != 0)\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeAlarmsResponse>\\n <PageSize>10</PageSize>\\n <RequestId>871C7C53-34A4-45AA-8C14-4B72FA6A****</RequestId>\\n <PageNumber>1</PageNumber>\\n <TotalCount>2</TotalCount>\\n <AlarmList>\\n <AlarmTaskId>asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****</AlarmTaskId>\\n <MetricName>CpuUtilization</MetricName>\\n <EvaluationCount>3</EvaluationCount>\\n <State>ALARM</State>\\n <Period>300</Period>\\n <ScalingGroupId>asg-bp18p2yfxow2dloq****</ScalingGroupId>\\n <ComparisonOperator>&gt;=</ComparisonOperator>\\n <Effective>* * * * * ?</Effective>\\n <Description>Test alarm task.</Description>\\n <MetricType>system</MetricType>\\n <Name>TestAlarmTask</Name>\\n <Threshold>80</Threshold>\\n <Enable>true</Enable>\\n <Statistics>Average</Statistics>\\n <Dimensions>\\n <DimensionKey>device</DimensionKey>\\n <DimensionValue>eth0</DimensionValue>\\n </Dimensions>\\n <AlarmActions>ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp163l21e07uh****</AlarmActions>\\n <Expressions>\\n <MetricName>CpuUtilization</MetricName>\\n <ComparisonOperator>&gt;=</ComparisonOperator>\\n <Period>900</Period>\\n <Statistics>Average</Statistics>\\n <Threshold>40</Threshold>\\n </Expressions>\\n <ExpressionsLogicOperator>&amp;&amp;</ExpressionsLogicOperator>\\n </AlarmList>\\n</DescribeAlarmsResponse>","errorExample":""}]',
+ 'title' => '查询报警任务的信息',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'AttachAlbServerGroups' => [
+ 'summary' => '向伸缩组添加一个或多个ALB服务器组。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92647',
+ 'abilityTreeNodes' => [
+ 'FEATUREess2GK585',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属地域的ID。'."\n"
+ ."\n"
+ .'例如`cn-hangzhou`、c`n-shanghai`。更多信息,请参见[地域和可用区](~~40654~~)。 ',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'ForceAttach',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否将当前伸缩组内的ECS实例或ECI实例添加到新增的ALB服务器组。'."\n"
+ ."\n"
+ .'- true:添加,并返回`ScalingActivityId`,您可以通过查看该伸缩活动ID来确定已有实例是否添加成功。'."\n"
+ ."\n"
+ .'- false:不添加。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'AlbServerGroup',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ALB服务器组列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ALB服务器组列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AlbServerGroupId' => [
+ 'description' => 'ALB服务器组的ID。'."\n"
+ ."\n"
+ .'N为ALB服务器组的编号。一个伸缩组支持关联的ALB服务器组数量有限,如需查看或手动申请提升配额值,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)。'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sgp-ddwb0y0g6y9bjm****',
+ ],
+ 'Weight' => [
+ 'description' => '弹性伸缩将ECS实例或ECI实例添加到ALB服务器组后,ECS实例或ECI实例作为后端服务器的权重。N为ALB服务器组的编号。'."\n"
+ ."\n"
+ .'权重越高,ECS实例或ECI实例将被分配到越多的访问请求。如果权重为0,则ECS实例或ECI实例不会收到访问请求。取值范围:0~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '100',
+ ],
+ 'Port' => [
+ 'description' => '弹性伸缩将ECS实例或ECI实例添加到ALB服务器组后,ECS实例或ECI实例使用的端口号,取值范围:1~65535。'."\n"
+ ."\n"
+ .'> N为ALB服务器组的编号,如果N相同,Port不同,系统会默认向伸缩组关联多个不同Port的该ALB服务器组。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '22',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingActivityId' => [
+ 'description' => '添加ALB服务器组并将伸缩组内的ECS实例或ECI实例添加到该ALB服务器组时,伸缩活动的ID。'."\n"
+ ."\n"
+ .'>仅当`ForceAttach`取值为`true`时,返回该参数。',
+ 'type' => 'string',
+ 'example' => 'asa-2ze6wxj8vsohn6j9****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingActivityId\\": \\"asa-2ze6wxj8vsohn6j9****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<AttachAlbServerGroupsResponse>\\n <ScalingActivityId>asa-2ze6wxj8vsohn6j9****</ScalingActivityId>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</AttachAlbServerGroupsResponse>","errorExample":""}]',
+ 'title' => '添加一个或多个ALB服务器组',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'向伸缩组添加ALB服务器组时,需要满足以下条件:'."\n"
+ ."\n"
+ .'- 伸缩组的网络类型必须为VPC,且与ALB服务器组处于同一VPC。'."\n"
+ ."\n"
+ .'- ALB服务器组必须处于可用状态。 ',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|AlbServerGroup.NotExist|The ServerGroup "%s" do(es) not exist.|账号下不存在指定的ALB服务器组。|'."\n"
+ .'|400|AlbServerGroup.AlreadyAttached|The ALB ServerGroups are already attached.|当前ALB服务器组已经添加到伸缩组中。|'."\n",
+ ],
+ 'CreateEciScalingConfiguration' => [
+ 'summary' => '创建一个ECI类型的伸缩配置。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '92654',
+ 'abilityTreeNodes' => [
+ 'FEATUREessWJGIW5',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩配置所属的伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asg-bp14wlu85wrpchm0****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingConfigurationName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩配置的名称。长度为2~64个英文或中文字符组成,以数字、大小写字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。'."\n"
+ ."\n"
+ .'在同一地域下同一伸缩组内伸缩配置名称唯一。如果您没有指定该参数,则默认使用伸缩配置的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'scalingconfig****',
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECI实例所属的安全组ID。同一个安全组内的ECI实例之间可以互相访问。'."\n"
+ ."\n"
+ .'如果没有指定安全组,系统将自动使用您选择的地域下的默认安全组,您需要确保该安全组的入方向规则中包含容器需要暴露的协议和端口。如果您在该地域下没有默认安全组,系统将自动创建一个默认安全组,并将您声明的容器协议和端口添加到该安全组的入方向规则中。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'sg-uf66jeqopgqa9hdn****',
+ ],
+ ],
+ [
+ 'name' => 'ContainerGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECI实例名称,即容器组名称。'."\n"
+ ."\n"
+ .'如果要设置有序名称,格式为`name_prefix(AUTO_INCREMENT)[begin_number,bits]name_suffix`。'."\n"
+ ."\n"
+ .'- **name_prefix**:指定主机名称的前缀。'."\n"
+ ."\n"
+ .'- **(AUTO_INCREMENT)**:固定值,用来标识此排序方式。'."\n"
+ ."\n"
+ .'- **begin_number**:有序数值的起始值,取值范围:`[0,999999]`。'."\n"
+ ."\n"
+ .'- **bits**:有序数值所占的位数,取值范围:`[1,6]`,当指定的begin_number位数大于bits的取值时,bits默认为6。'."\n"
+ .'> bits建议最少为3,否则容易达到有序数值的上限。在达到上限后,若还有扩容需求,伸缩活动会报错,并停止扩容。此时,您需要重新设置生成主机名称的规则。'."\n"
+ ."\n"
+ .'- **name_suffix**(可选):指定主机名称的后缀。'."\n"
+ ."\n"
+ .'> `[begin_number,bits]`中不能有空格,且系统默认依次递增,但是如果存在扩容的ECI实例无法启动,会被伸缩组移除后再扩容一台新的ECI实例,所以伸缩组内ECI实例的主机名称可能断续递增。'."\n"
+ ."\n"
+ .'**示例:** 当设置为`nginx-test-(AUTO_INCREMENT)[0,3]`时,容器组名称为nginx-test-000、nginx-test-001、nginx-test-002。'."\n"
+ ."\n"
+ .'设置ECI有序实例名称的规则与设置ECS伸缩组有序实例规格相同,具体规则介绍,请参见[设置有序且唯一的实例名称或主机名称规则](~~203831~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'nginx-test[0,3]',
+ ],
+ ],
+ [
+ 'name' => 'RestartPolicy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECI实例重启策略。取值范围:'."\n"
+ ."\n"
+ .'- Always:总是重启。'."\n"
+ .'- Never:从不重启。'."\n"
+ .'- OnFailure:失败时重启。'."\n"
+ ."\n"
+ .'默认值:Always。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Always',
+ ],
+ ],
+ [
+ 'name' => 'Cpu',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例级别vCPU大小。单位:核。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '1.0',
+ ],
+ ],
+ [
+ 'name' => 'Memory',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例级别内存大小。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '2.0',
+ ],
+ ],
+ [
+ 'name' => 'ResourceGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源组ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rg-uf66jeqopgqa9hdn****',
+ ],
+ ],
+ [
+ 'name' => 'DnsPolicy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'DNS策略。取值范围:'."\n"
+ ."\n"
+ .'- None:使用DnsConfig字段设置的DNS。'."\n"
+ .'- Default:继承运行环境的DNS设置。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Default',
+ ],
+ ],
+ [
+ 'name' => 'ImageSnapshotId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像缓存ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'imc-2zebxkiifuyzzlhl****',
+ ],
+ ],
+ [
+ 'name' => 'RamRoleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例RAM角色名称。其中,ECI与ECS共用实例RAM角色,更多信息,请参见[实例RAM角色](~~61175~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'RamTestRole',
+ ],
+ ],
+ [
+ 'name' => 'TerminationGracePeriodSeconds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '程序的缓冲时间,用于处理关闭之前的操作。单位为秒。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'AutoMatchImageCache',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否自动匹配镜像缓存。取值范围:'."\n"
+ .'- true:是。'."\n"
+ .'- false:否。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'Ipv6AddressCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'IPv6地址数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'ActiveDeadlineSeconds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '有效期限。单位为秒。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1000',
+ ],
+ ],
+ [
+ 'name' => 'SpotStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例的抢占策略。取值范围:'."\n"
+ ."\n"
+ .'- NoSpot:正常按量付费实例。'."\n"
+ .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n"
+ .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格的抢占式实例。'."\n"
+ ."\n"
+ .'默认值:NoSpot。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SpotWithPriceLimit',
+ ],
+ ],
+ [
+ 'name' => 'SpotPriceLimit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '设置抢占式实例的每小时最高价格,最多精确到小数点后3位。'."\n"
+ ."\n"
+ .'当`SpotStrategy`取值为`SpotWithPriceLimit`时,必须设置`SpotPriceLimit`。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.025',
+ ],
+ ],
+ [
+ 'name' => 'AutoCreateEip',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否自动创建弹性公网IP,并绑定ECI实例。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'EipBandwidth',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性公网IP的带宽。默认为5 M。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '1000000',
+ 'minimum' => '0',
+ 'example' => '5',
+ ],
+ ],
+ [
+ 'name' => 'HostName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '主机名称,即容器组名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'IngressBandwidth',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '入方向带宽限制。单位:Byte。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'docRequired' => false,
+ 'maximum' => '9223372036854775807',
+ 'minimum' => '0',
+ 'example' => '1024000',
+ ],
+ ],
+ [
+ 'name' => 'EgressBandwidth',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '出方向带宽限制。单位:Byte。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'docRequired' => false,
+ 'maximum' => '9223372036854775807',
+ 'minimum' => '0',
+ 'example' => '1024000',
+ ],
+ ],
+ [
+ 'name' => 'CpuOptionsCore',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'CPU物理核心数。仅部分规格支持自定义设置。更多信息,请参见[自定义CPU选项](~~197781~~)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '1000',
+ 'minimum' => '0',
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'CpuOptionsThreadsPerCore',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '每核线程数。仅部分规格支持自定义设置。配置为1时表示关闭超线程。更多信息,请参见[自定义CPU选项](~~197781~~)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'EphemeralStorage',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '临时存储空间大小,默认使用ESSD PL1类型的云盘。单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '5000',
+ 'minimum' => '0',
+ 'example' => '20',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerWeight',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECI实例作为负载均衡后端服务器时的权重,取值范围:1~100。'."\n"
+ ."\n"
+ .'默认值:50。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例的标签键值对。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例的标签键值对。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '实例的标签键。N的取值范围:1~20。'."\n"
+ ."\n"
+ .'如果传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'version',
+ ],
+ 'Value' => [
+ 'description' => '实例的标签值。N的取值范围:1~20。'."\n"
+ ."\n"
+ .'如果传入该值,则允许为空字符串。最多支持128个字符,不能以`acs:`开头,不能包含`http://`或者`https://`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ ],
+ [
+ 'name' => 'ImageRegistryCredential',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '镜像仓库信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '镜像仓库信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Password' => [
+ 'description' => '镜像仓库密码。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'yourpassword',
+ ],
+ 'Server' => [
+ 'description' => '镜像仓库注册地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'registry-vpc.cn-shanghai.aliyuncs.com',
+ ],
+ 'UserName' => [
+ 'description' => '镜像仓库用户名。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'yourusername',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 11,
+ ],
+ ],
+ [
+ 'name' => 'Container',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例包含的容器信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例包含的容器信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ReadinessProbe.TimeoutSeconds' => [
+ 'description' => '检查超时的时间,默认值为1秒,最小值为1秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ ],
+ 'ReadinessProbe.SuccessThreshold' => [
+ 'description' => '从上次检查失败后重新认定检查成功的检查次数阈值(必须是连续成功),默认值为1。当前值必须为1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'SecurityContext.Capability.Add' => [
+ 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n"
+ ."\n"
+ .'> NET_RAW默认不支持,需提交工单申请。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n"
+ ."\n"
+ .'> NET_RAW默认不支持,需提交工单申请。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'NET_ADMIN',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ 'ReadinessProbe.TcpSocket.Port' => [
+ 'description' => '使用TCP Socket方式进行健康检查时,TCP Socket检测的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '8000',
+ ],
+ 'ReadinessProbe.HttpGet.Scheme' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求对应的协议类型,取值范围:'."\n"
+ .'- HTTP。'."\n"
+ .'- HTTPS。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HTTP',
+ ],
+ 'LivenessProbe.PeriodSeconds' => [
+ 'description' => '检查执行的周期,默认值为10秒,最小值为1秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ ],
+ 'Port' => [
+ 'description' => '暴露的端口和协议。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '暴露的端口和协议。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Protocol' => [
+ 'description' => '协议类型。取值范围:'."\n"
+ ."\n"
+ .'- TCP。'."\n"
+ .'- UDP。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TCP',
+ ],
+ 'Port' => [
+ 'description' => '端口号。取值范围:1~65535。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '80',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'EnvironmentVar' => [
+ 'description' => '环境变量。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '环境变量。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '环境变量名。长度为1~128个字符。格式要求:`[0-9a-zA-Z]`,以及下划线(_),不能以数字开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PATH',
+ ],
+ 'Value' => [
+ 'description' => '环境变量值。长度为0~256位。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/local/bin',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 301,
+ ],
+ 'LivenessProbe.TcpSocket.Port' => [
+ 'description' => '使用TCP Socket方式进行健康检查时,TCP Socket检测的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '8000',
+ ],
+ 'Tty' => [
+ 'description' => '是否开启交互。取值范围:'."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。'."\n"
+ ."\n"
+ .'默认值:false。'."\n"
+ ."\n"
+ .'当Command为/bin/bash命令时,需要设置为true。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'WorkingDir' => [
+ 'description' => '容器工作目录。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/local/',
+ ],
+ 'LivenessProbe.HttpGet.Scheme' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求对应的协议类型,取值范围:'."\n"
+ ."\n"
+ .'- HTTP。'."\n"
+ .'- HTTPS。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HTTP',
+ ],
+ 'ReadinessProbe.HttpGet.Port' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '8080',
+ ],
+ 'Arg' => [
+ 'description' => '容器启动命令对应的参数。最多10个。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动命令对应的参数。最多10个。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'Gpu' => [
+ 'description' => '指定容器使用的GPU个数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'ReadinessProbe.InitialDelaySeconds' => [
+ 'description' => '检查开始执行的时间,以容器启动完成为起点计算。单位为秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'Stdin' => [
+ 'description' => '此容器是否应在容器运行时为标准输入分配缓冲区。如果未设置,则容器中标准输入的读取值将导致EOF。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'Memory' => [
+ 'description' => '容器内存大小。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.5',
+ ],
+ 'Name' => [
+ 'description' => '容器镜像名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'nginx',
+ ],
+ 'Image' => [
+ 'description' => '容器镜像。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:latest',
+ ],
+ 'LivenessProbe.InitialDelaySeconds' => [
+ 'description' => '检查开始执行的时间,以容器启动完成为起点计算。单位为秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ ],
+ 'VolumeMount' => [
+ 'description' => '数据卷挂载信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据卷挂载信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'MountPropagation' => [
+ 'description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。取值范围:'."\n"
+ ."\n"
+ .'- None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。'."\n"
+ .'- HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。'."\n"
+ .'- Bidirectional:和HostToCotainer类似,能感知挂载操作。另外,该卷将被传播回主机和使用同一卷的所有Pod的所有容器。'."\n"
+ ."\n"
+ .'默认值:None。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'None',
+ ],
+ 'MountPath' => [
+ 'description' => '容器挂载数据卷的目录。'."\n"
+ ."\n"
+ .'> 容器挂载目录下的内容会被Volume的内容直接覆盖,请谨慎使用。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/pod/data',
+ ],
+ 'ReadOnly' => [
+ 'description' => '数据卷是否只读。取值范围:'."\n"
+ .'- true:是。'."\n"
+ .'- false:否。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'Name' => [
+ 'description' => '数据卷名称。同Volume中的Name。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'default-volume1',
+ ],
+ 'SubPath' => [
+ 'description' => '数据卷子路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'data2/',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'LivenessProbe.FailureThreshold' => [
+ 'description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。'."\n"
+ ."\n"
+ .'默认值:3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'ReadinessProbe.Exec.Command' => [
+ 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cat /tmp/healthy',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ 'ReadinessProbe.FailureThreshold' => [
+ 'description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。默认值:3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'ImagePullPolicy' => [
+ 'description' => '容器的镜像拉取策略。取值范围:'."\n"
+ ."\n"
+ .'- Always:总是拉取。每次都拉取镜像。'."\n"
+ .'- IfNotPresent:按需拉取。优先使用本地镜像,本地没有镜像时则拉取镜像。'."\n"
+ .'- Never:从不拉取。使用本地镜像,不拉取镜像。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Always',
+ ],
+ 'StdinOnce' => [
+ 'description' => '当标准输入为true时,标准输入流将在多个附加会话中是否保持开启状态。'."\n"
+ ."\n"
+ .'如果StdinOnce设为true,标准输入在容器开启时被打开,在首个客户端附加到标准输入之前都为空,然后会一直保持开启状态,接收数据,直到客户端连接断开,此时标准输入被关闭,在容器重启前一直保持关闭状态。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'Cpu' => [
+ 'description' => '容器CPU核数。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.25',
+ ],
+ 'LivenessProbe.HttpGet.Port' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '8888',
+ ],
+ 'LivenessProbe.HttpGet.Path' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/healthyz',
+ ],
+ 'LivenessProbe.SuccessThreshold' => [
+ 'description' => '从上次检查失败后重新认定检查成功的检查次数阈值(必须是连续成功),默认值为1。当前值必须为1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'ReadinessProbe.PeriodSeconds' => [
+ 'description' => '检查执行的周期,默认值为10秒,最小值为1秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'LivenessProbe.TimeoutSeconds' => [
+ 'description' => '检查超时的时间,默认值为1秒,最小值为1秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'Command' => [
+ 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sleep',
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'SecurityContext.RunAsUser' => [
+ 'description' => '设置运行容器的用户ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1000',
+ ],
+ 'ReadinessProbe.HttpGet.Path' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/healthz',
+ ],
+ 'LivenessProbe.Exec.Command' => [
+ 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cat/tmp/healthy',
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ 'LifecyclePostStartHandlerHttpGetHost' => [
+ 'description' => '使用HTTP请求方式设置PostStart回调函数时,接收HTTP Get请求的主机地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.0.XX.XX',
+ ],
+ 'LifecyclePostStartHandlerHttpGetPort' => [
+ 'description' => '使用HTTP请求方式设置PostStart回调函数时,HTTP Get请求检查的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5050',
+ ],
+ 'LifecyclePostStartHandlerHttpGetPath' => [
+ 'description' => '使用HTTP请求方式设置PostStart回调函数时,HTTP Get请求检测的路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/healthyz',
+ ],
+ 'LifecyclePostStartHandlerHttpGetScheme' => [
+ 'description' => '使用HTTP请求方式设置postStart回调函数时,HTTP Get请求对应的协议类型,取值范围:'."\n"
+ ."\n"
+ .'- HTTP。'."\n"
+ .'- HTTPS。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HTTPS',
+ ],
+ 'LifecyclePostStartHandlerExec' => [
+ 'description' => '使用命令行方式设置PostStart回调函数时,在容器内执行的命令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '使用命令行方式设置PostStart回调函数时,在容器内执行的命令。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[ "/bin/sh", "-c", "echo Hello from the postStart handler /usr/share/message" ]',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ 'LifecyclePostStartHandlerTcpSocketHost' => [
+ 'description' => '使用TCP Socket方式设置PostStart回调函数时,TCP Socket检测的主机地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.0.XX.XX',
+ ],
+ 'LifecyclePostStartHandlerTcpSocketPort' => [
+ 'description' => '使用TCPSocket方式设置PostStart回调函数时,TCP Socket检测的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '80',
+ ],
+ 'LifecyclePreStopHandlerHttpGetHost' => [
+ 'description' => '使用HTTP请求方式设置PreStop回调函数时,接收HTTP Get请求的主机地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.0.XX.XX',
+ ],
+ 'LifecyclePreStopHandlerHttpGetPort' => [
+ 'description' => '使用HTTP请求方式设置PreStop回调函数时,HTTP Get请求检测的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '88',
+ ],
+ 'LifecyclePreStopHandlerHttpGetPath' => [
+ 'description' => '使用HTTP请求方式设置PreStop回调函数时,HTTP Get请求检测的路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/healthyz',
+ ],
+ 'LifecyclePreStopHandlerHttpGetScheme' => [
+ 'description' => '使用HTTP请求方式设置PreStop回调函数时,HTTP Get请求对应的协议类型,取值范围:'."\n"
+ ."\n"
+ .'- HTTP。'."\n"
+ .'- HTTPS。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HTTP',
+ ],
+ 'LifecyclePreStopHandlerExec' => [
+ 'description' => '使用命令行方式设置PreStop回调函数时,在容器内执行的命令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '使用命令行方式设置PreStop回调函数时,在容器内执行的命令。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[ "/bin/sh", "-c", "echo Hello from the preStop handler /usr/share/message" ]',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ 'LifecyclePreStopHandlerTcpSocketHost' => [
+ 'description' => '使用TCP Socket方式设置PreStop回调函数时,TCP Socket检测的主机地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.0.XX.XX',
+ ],
+ 'LifecyclePreStopHandlerTcpSocketPort' => [
+ 'description' => '使用TCPSocket方式设置PreStop回调函数时,TCP Socket检测的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '90',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ ],
+ [
+ 'name' => 'Volume',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '数据卷信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据卷信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => [
+ 'description' => '数据卷类型。取值范围:'."\n"
+ ."\n"
+ .'- EmptyDirVolume:EmptyDir类型的数据卷,表示空目录。'."\n"
+ .'- NFSVolume:NFS类型的数据卷,表示网络文件系统。'."\n"
+ .'- ConfigFileVolume:ConfigFile类型的数据卷,表示配置文件。'."\n"
+ .'- FlexVolume:使用FlexVolume插件扩展存储类型,支持挂载云盘。'."\n"
+ .'- HostPathVolume:HostPath类型的数据卷,表示主机节点的文件或目录。'."\n"
+ .'- DiskVolume(不推荐):云盘数据卷。建议使用FlexVolume挂载云盘。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ConfigFileVolume',
+ ],
+ 'DiskVolume.DiskSize' => [
+ 'description' => 'DiskVolume的大小。单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '15',
+ ],
+ 'NFSVolume.Path' => [
+ 'description' => 'NFS数据卷路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/share',
+ ],
+ 'FlexVolume.FsType' => [
+ 'description' => '挂载的文件系统类型,默认取决于FlexVolume的script。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ext4',
+ ],
+ 'DiskVolume.FsType' => [
+ 'description' => '该系统类型不推荐使用,建议您使用`FlexVolume.FsType`参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'xfs',
+ ],
+ 'HostPathVolume.Type' => [
+ 'description' => 'Host目录的类型。例如:File、Directory、Socket等。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Directory',
+ ],
+ 'NFSVolume.ReadOnly' => [
+ 'description' => 'NFS数据卷是否只读。取值范围:'."\n"
+ .'- true:是。'."\n"
+ .'- false:否。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'HostPathVolume.Path' => [
+ 'description' => 'Host上的绝对路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/xx/xx/path',
+ ],
+ 'FlexVolume.Options' => [
+ 'description' => 'FlexVolume对象选项列表。为KV形式,采用JSON传递。'."\n"
+ ."\n"
+ .'例如:通过FlexVolume挂载云盘时,Options的格式为`{"volumeId":"d-2zehdahrwoa7srg****","performanceLevel": "PL2"}`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"volumeId":"d-2zehdahrwoa7srg****","performanceLevel": "PL2"}',
+ ],
+ 'FlexVolume.Driver' => [
+ 'description' => '用于FlexVolume的驱动程序名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'flexvolume',
+ ],
+ 'ConfigFileVolumeDefaultMode' => [
+ 'description' => 'ConfigFileVolume默认的权限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '0644',
+ ],
+ 'NFSVolume.Server' => [
+ 'description' => 'NFS服务器地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '3f9cd4a596-naw76.cn-shanghai.nas.aliyuncs.com',
+ ],
+ 'DiskVolume.DiskId' => [
+ 'description' => 'DiskVolume的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'd-xx',
+ ],
+ 'Name' => [
+ 'description' => '数据卷名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'default-volume1',
+ ],
+ 'EmptyDirVolume.Medium' => [
+ 'description' => 'EmptyDirVolume的存储媒介,默认为空,使用node文件系统;支持memory,表示使用内存。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'memory',
+ ],
+ 'ConfigFileVolumeConfigFileToPath' => [
+ 'description' => '配置文件路径列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '配置文件路径列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Path' => [
+ 'description' => '配置文件所在的相对文件路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PATH',
+ ],
+ 'Mode' => [
+ 'description' => 'ConfigFileVolume目录权限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '0644',
+ ],
+ 'Content' => [
+ 'description' => '配置文件内容(32 KB)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'bGl1bWk=',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 90,
+ ],
+ 'EmptyDirVolume.SizeLimit' => [
+ 'description' => 'EmptyDir数据卷的大小。取值时请带上单位,建议使用Gi或Mi。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '256 Mi',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ ],
+ [
+ 'name' => 'InitContainer',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'Init容器列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Init容器列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InitContainerEnvironmentVar' => [
+ 'description' => '环境变量信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '环境变量信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '环境变量名。长度为1~128个字符。格式要求:`[0-9a-zA-Z]`,以及下划线(_),不能以数字开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Path',
+ ],
+ 'Value' => [
+ 'description' => '环境变量值。长度为0~256位。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/bin/',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 301,
+ ],
+ 'SecurityContext.Capability.Add' => [
+ 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n"
+ ."\n"
+ .'> NET_RAW默认不支持,需提交工单申请。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n"
+ ."\n"
+ .'> NET_RAW默认不支持,需提交工单申请。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'NET_ADMIN',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ 'Image' => [
+ 'description' => '容器使用的镜像。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'nginx',
+ ],
+ 'InitContainerVolumeMount' => [
+ 'description' => '数据卷挂载信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据卷挂载信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'MountPropagation' => [
+ 'description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。可能值:'."\n"
+ ."\n"
+ .'- None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。'."\n"
+ .'- HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。'."\n"
+ .'- Bidirectional:和HostToCotainer类似,能感知挂载操作。另外,该卷将被传播回主机和使用同一卷的所有Pod的所有容器。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'None',
+ ],
+ 'MountPath' => [
+ 'description' => '挂载目录,容器的挂载目录下的内容被Volume的内容直接覆盖。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/share/',
+ ],
+ 'ReadOnly' => [
+ 'description' => '挂载路径是否只读。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'Name' => [
+ 'description' => '挂载数据卷的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-empty',
+ ],
+ 'SubPath' => [
+ 'description' => '数据卷下的子目录,方便Pod将同一个Volume下不同目录挂载到容器不同目录。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/sub/',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'ImagePullPolicy' => [
+ 'description' => '镜像拉取策略。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Always',
+ ],
+ 'Cpu' => [
+ 'description' => '容器的vCPU大小。单位:核。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.5',
+ ],
+ 'WorkingDir' => [
+ 'description' => '工作目录。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/local',
+ ],
+ 'Command' => [
+ 'description' => '容器启动指令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动指令。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sleep',
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'Arg' => [
+ 'description' => '容器启动参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'SecurityContext.RunAsUser' => [
+ 'description' => '设置运行容器的用户ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '587',
+ ],
+ 'Gpu' => [
+ 'description' => '指定容器使用的GPU个数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'Memory' => [
+ 'description' => '内存大小。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '1.0',
+ ],
+ 'Name' => [
+ 'description' => '容器名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-init',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ ],
+ [
+ 'name' => 'DnsConfigNameServer',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'DNS服务器的IP地址列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'DNS服务器的IP地址列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '172.10.*.**',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'DnsConfigSearch',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'DNS搜索域列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'DNS搜索域列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'svc.local.kubenetes',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'DnsConfigOption',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '对象选项列表,每个对象由Name和Value(可选)构成。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '对象选项列表,每个对象由Name和Value(可选)构成。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => '对象变量值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'value',
+ ],
+ 'Name' => [
+ 'description' => '对象变量名。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'name',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'HostAliase',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '自定义实例内一个容器的Hostname映射。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '自定义实例内一个容器的Hostname映射。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Ip' => [
+ 'description' => '添加IP。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1.1.1.1',
+ ],
+ 'Hostname' => [
+ 'description' => '添加主机名。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '添加主机名。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'hehe.com',
+ ],
+ 'required' => false,
+ 'maxItems' => 51,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ ],
+ [
+ 'name' => 'SecurityContextSysctl',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '系统信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '系统信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => '实例运行的安全上下文的变量值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '65536',
+ ],
+ 'Name' => [
+ 'description' => '实例运行的安全上下文系统名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'kernel.msgmax',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 11,
+ ],
+ ],
+ [
+ 'name' => 'NtpServer',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'NTP服务器。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'NTP服务器。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ntp.cloud.aliyuncs.com',
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ ],
+ [
+ 'name' => 'AcrRegistryInfo',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ACR企业版实例信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ACR企业版实例信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Domain' => [
+ 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '*****-****-registry.cn-beijing.cr.aliyuncs.com',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ 'InstanceName' => [
+ 'description' => 'ACR企业版实例的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acr-test',
+ ],
+ 'InstanceId' => [
+ 'description' => 'ACR企业版实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cri-nwj395hgf6f3****',
+ ],
+ 'RegionId' => [
+ 'description' => 'ACR企业版实例所属地域。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ ],
+ [
+ 'name' => 'CostOptimization',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'schema' => [
+ 'description' => '是否开启成本优化开关。取值范围:'."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'InstanceFamilyLevel',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例规格族级别,用于筛选符合要求的实例规格范围,当`CostOptimization`开启时生效。取值范围:'."\n"
+ ."\n"
+ .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n"
+ .'- EnterpriseLevel:企业级。性能稳定且资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n"
+ .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的业务场景。更多信息,请参见[突发性能实例概述](~~59977~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'EnterpriseLevel',
+ ],
+ ],
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '指定的ECS实例规格,支持指定多个规格(最多支持5个)。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定的ECS实例规格。支持指定多个规格(最多支持5个),更多信息,请参见[指定ECS规格创建实例](~~114664~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.g6.large',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'DataCacheBucket',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据缓存Bucket。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'default',
+ ],
+ ],
+ [
+ 'name' => 'DataCachePL',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据缓存使用的云盘的性能等级。建议优先使用ESSD云盘,该云盘的性能等级取值范围:'."\n"
+ ."\n"
+ .'- PL0:单盘最高随机读写IOPS 1万。'."\n"
+ .'- PL1:单盘最高随机读写IOPS 5万。'."\n"
+ .'- PL2:单盘最高随机读写IOPS 10万。'."\n"
+ .'- PL3:单盘最高随机读写IOPS 100万。'."\n"
+ ."\n"
+ .'默认值:PL1。'."\n"
+ .'>关于ESSD云盘的更多信息,请参见[ESSD云盘](~~122389~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PL1',
+ ],
+ ],
+ [
+ 'name' => 'DataCacheProvisionedIops',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据缓存使用ESSD AutoPL云盘时,ESSD AutoPL云盘预配置的读写IOPS。取值范围:0~min{50000, 1000*容量-基准性能},其中,基准性能=min{1800+50*容量, 50000}。'."\n"
+ ."\n"
+ .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '40000',
+ ],
+ ],
+ [
+ 'name' => 'DataCacheBurstingEnabled',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据缓存使用ESSD AutoPL云盘时,是否开启Burst(性能突发)。取值范围:'."\n"
+ ."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。'."\n"
+ ."\n"
+ .'默认值:false。'."\n"
+ ."\n"
+ .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~122389~~)。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'GpuDriverVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定GPU驱动版本。取值范围:'."\n"
+ .'- tesla=470.82.01(默认值)'."\n"
+ .'- tesla=525.85.12'."\n"
+ ."\n"
+ .'> 仅部分规格支持切换GPU驱动版本。更多信息,请参见[指定GPU规格创建实例](~~2579486~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tesla=525.85.12',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingConfigurationId' => [
+ 'description' => '伸缩配置ID。',
+ 'type' => 'string',
+ 'example' => 'asc-uf6fonnghi50u374****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID,唯一标识。',
+ 'type' => 'string',
+ 'example' => '89945DD3-9072-47D0-A318-353284CF****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 403 => [
+ [
+ 'errorCode' => 'Forbidden.RiskControl',
+ 'errorMessage' => 'Forbidden.RiskControl',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingConfigurationId\\": \\"asc-uf6fonnghi50u374****\\",\\n \\"RequestId\\": \\"89945DD3-9072-47D0-A318-353284CF****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateEciScalingConfigurationResponse>\\n <ScalingConfigurationId>eci-uf6fonnghi50u374****</ScalingConfigurationId>\\n <RequestId>89945DD3-9072-47D0-A318-353284CF****</RequestId>\\n</CreateEciScalingConfigurationResponse>","errorExample":""}]',
+ 'title' => '创建一个伸缩配置',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'伸缩配置用来指定弹性扩张时使用的ECI实例模板。'."\n"
+ ."\n"
+ .'参数Cpu和Memory用于指定CPU和内存定义实例规格的范围,弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。该方式仅适用于伸缩组的扩缩容策略为成本优化策略,且伸缩配置未指定实例规格的场景。',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|InstanceType.Mismatch|The specified scaling configuration and existing active scaling configuration have different instance type.|指定的伸缩配置的实例规格与当前的伸缩配置的实例规格不匹配。|'."\n"
+ .'|404|InvalidDataDiskSnapshotId.NotFound|Snapshot "XXX" does not exist.|不存在指定的快照。|'."\n"
+ .'|400|InvalidDataDiskSnapshotId.SizeNotSupported|The capacity of snapshot "XXX" exceeds the size limit of the specified disk category.|指定快照的大小超过了磁盘大小的限制。|'."\n"
+ .'|403|InvalidDevice.InUse|Device "XXX" has been occupied.|数据盘挂载点重复。|'."\n"
+ .'|400|InvalidImageId.InstanceTypeMismatch|The specified image does not support the specified instance type.|不允许在指定的实例规格下使用该镜像。|'."\n"
+ .'|404|InvalidImageId.NotFound|The specified image does not exist.|该账号下不存在指定的镜像。|'."\n"
+ .'|400|InvalidKeyPairName.NotFound|The specified KeyPairName does not exist in our records.|指定的KeyPairName不存在。|'."\n"
+ .'|400|InvalidNetworkType.ForRAMRole|RAMRole can\'t be used For classic instance.|经典网络实例不支持RamRoleName参数。|'."\n"
+ .'|400|InvalidParameter|The specified value of parameter KeyPairName is not valid.|Windows操作系统不支持KeyPairName参数。|'."\n"
+ .'|400|InvalidParameter.Conflict|The value of parameter SystemDisk.Category and parameter DataDisk.N.Category are conflict.|指定的系统盘类型和数据盘类型冲突。|'."\n"
+ .'|400|InvalidRamRole.NotFound|The specified RamRoleName does not exist.|不存在指定的RamRoleName。|'."\n"
+ .'|400|InvalidScalingConfigurationName.Duplicate|The specified value of parameter ScalingConfigurationName is duplicated.|已存在相同的伸缩配置名。|'."\n"
+ .'|404|InvalidScalingGroupId.NotFound|The specified scaling group does not exist.|该账号下不存在指定的伸缩组。|'."\n"
+ .'|400|InvalidSecurityGroupId.IncorrectNetworkType|The network type of specified security Group does not support this action.|指定的安全组与伸缩组指定网络类型不一致。|'."\n"
+ .'|404|InvalidSecurityGroupId.NotFound|The specified security group does not exist.|该账号下不存在指定的安全组。|'."\n"
+ .'|400|InvalidSecurityGroupId.VPCMismatch|The specified security group and the specified virtual switch are not in the same VPC.|指定的安全组和虚拟交换机不属于同一个虚拟专有网络。|'."\n"
+ .'|403|InvalidSnapshot.TooOld|This operation is denied because the specified snapshot is created before 2013-07-15.|该快照创建于2013年7月15日或之前,调用被拒绝。|'."\n"
+ .'|403|InvalidSystemDiskCategory.ValueUnauthorized|The system disk category is not authorized.|没有创建临时磁盘系统盘的权限。|'."\n"
+ .'|400|InvalidUserData.Base64FormatInvalid|The specified parameter UserData must be base64 encoded.|UserData不符合Base64编码规范。|'."\n"
+ .'|400|InvalidUserData.SizeExceeded|The specified parameter UserData exceeds the size.|指定的UserData过长。|'."\n"
+ .'|403|QuotaExceeded.EphemeralDiskSize|Ephemeral disk size quota exceeded.|临时磁盘数据盘总容量超过2 TiB(2048 GiB)。|'."\n"
+ .'|400|QuotaExceeded.ScalingConfiguration|Scaling configuration quota exceeded in the specified scaling group.|您目前拥有的伸缩配置个数已经达到上限。|'."\n"
+ .'|400|QuotaExceeded.SecurityGroupInstance|Instance quota exceeded in the specified security group.|指定的安全组中添加的ECI实例个数已经达到上限。',
+ ],
+ 'DeleteEciScalingConfiguration' => [
+ 'summary' => '删除一个ECI类型的伸缩配置。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '92663',
+ 'abilityTreeNodes' => [
+ 'FEATUREessTZHE2G',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingConfigurationId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待删除伸缩配置的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asc-bp1bx8mzur534edp****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。'."\n"
+ ."\n"
+ .'无论调用接口成功与否,系统都会返回请求ID。',
+ 'type' => 'string',
+ 'example' => '45D5B0AD-3B00-4A9B-9911-6D5303B0****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 403 => [
+ [
+ 'errorCode' => 'Forbidden.RiskControl',
+ 'errorMessage' => 'Forbidden.RiskControl',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"45D5B0AD-3B00-4A9B-9911-6D5303B0****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteEciScalingConfigurationResponse>\\n <RequestId>45D5B0AD-3B00-4A9B-9911-6D5303B0****</RequestId>\\n</DeleteEciScalingConfigurationResponse>","errorExample":""}]',
+ 'title' => '删除一个伸缩配置',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'删除ECI类型伸缩配置前,请注意以下情况不能删除该类型的伸缩配置:'."\n"
+ ."\n"
+ .'- 伸缩配置在伸缩组中处于生效(Active)状态。'."\n"
+ .'- 伸缩组中仍然存在使用该伸缩配置创建的ECI实例。',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|404|InvalidScalingConfigurationId.NotFound|The specified scaling configuration does not exist.|指定的伸缩配置在该用户账号下不存在。|'."\n"
+ .'|400|IncorrectScalingConfigurationLifecycleState|The current lifecycle state of specified scaling configuration does not support this action.|指定的伸缩配置未处于Inactive状态。|'."\n"
+ .'|400|InstanceInUse|You cannot delete a scaling configuration or scaling group while there is an instance associated with it.|指定的伸缩配置还有关联的ECI实例未被删除。|',
+ ],
+ 'DescribeEciScalingConfigurations' => [
+ 'summary' => '查询ECI类型的伸缩配置信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '92673',
+ 'abilityTreeNodes' => [
+ 'FEATUREessU7F1S4',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩配置所属伸缩组的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩配置列表的页码,起始值:1。'."\n"
+ ."\n"
+ .'默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值:50。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'example' => '50',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID,您可以查询该伸缩组下所有的伸缩配置。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asg-bp17pelvl720x3v7****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingConfigurationId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '待查询伸缩配置的ID列表,ID数量取值范围:1~10。'."\n"
+ ."\n"
+ .'查询结果包括生效和未生效的伸缩配置,并通过返回参数LifecycleState进行标识。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ScalingConfigurationId.待查询伸缩配置的ID。'."\n"
+ ."\n"
+ .'查询结果包括生效和未生效的伸缩配置,并通过返回参数LifecycleState进行标识。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asc-bp17pelvl720x5ub****',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'ScalingConfigurationName',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '待查询伸缩配置的名称列表,名称数量的取值范围:1~10。'."\n"
+ ."\n"
+ .'查询结果会忽略失效的伸缩配置名称,并且不报错。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '待查询伸缩配置的名称。'."\n"
+ ."\n"
+ .'查询结果会忽略失效的伸缩配置名称,并且不报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalingcon****',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'TotalCount' => [
+ 'description' => '伸缩配置的总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ScalingConfigurations' => [
+ 'description' => '伸缩配置信息的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩配置信息的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => [
+ 'description' => '伸缩配置的创建时间。',
+ 'type' => 'string',
+ 'example' => '2014-08-14T10:58Z',
+ ],
+ 'ScalingConfigurationName' => [
+ 'description' => '伸缩配置的名称。',
+ 'type' => 'string',
+ 'example' => 'scalingconfi****',
+ ],
+ 'SecurityGroupId' => [
+ 'description' => 'ECI实例所属的安全组的ID,同一个安全组内的ECI实例可以互相访问。',
+ 'type' => 'string',
+ 'example' => 'sg-bp18kz60mefs****',
+ ],
+ 'ActiveDeadlineSeconds' => [
+ 'description' => '有效期限。单位为秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1000',
+ ],
+ 'SpotStrategy' => [
+ 'description' => '实例的抢占策略。可能值:'."\n"
+ ."\n"
+ .'- NoSpot:正常按量付费实例。'."\n"
+ .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n"
+ .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。',
+ 'type' => 'string',
+ 'example' => 'NoSpot',
+ ],
+ 'AutoCreateEip' => [
+ 'description' => '是否自动创建弹性公网IP,并绑定ECI实例。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'ScalingGroupId' => [
+ 'description' => '伸缩配置所属伸缩组的ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp17pelvl720x3v7****',
+ ],
+ 'EphemeralStorage' => [
+ 'description' => '临时存储空间大小。单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'Ipv6AddressCount' => [
+ 'description' => 'IPv6地址数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'EipBandwidth' => [
+ 'description' => '弹性公网IP的带宽。默认为5 M。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'ImageSnapshotId' => [
+ 'description' => '镜像缓存ID。',
+ 'type' => 'string',
+ 'example' => 'imc-2zebxkiifuyzzlhl****',
+ ],
+ 'Memory' => [
+ 'description' => '内存大小。'."\n"
+ ."\n"
+ .'同时指定CPU和Memory可以定义实例规格范围。例如,CPU=2且Memory=16可以定义配置为2 vCPU和16 GiB的所有实例规格。弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。'."\n"
+ ."\n"
+ .'> 该区间配置效果仅在成本优化模式下且伸缩配置未设置实例规格时生效。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '16',
+ ],
+ 'RestartPolicy' => [
+ 'description' => '容器组的重启策略。可能值:'."\n"
+ ."\n"
+ .'- Never:不重启。'."\n"
+ .'- Always:始终重启。'."\n"
+ .'- OnFailure:失败时重启。',
+ 'type' => 'string',
+ 'example' => 'Never',
+ ],
+ 'SpotPriceLimit' => [
+ 'description' => '抢占式实例的每小时最高价格。'."\n"
+ ."\n"
+ .'仅当SpotStrategy为SpotWithPriceLimit时返回。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '0.025',
+ ],
+ 'IngressBandwidth' => [
+ 'description' => '入方向带宽限制。单位:Byte。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1024000',
+ ],
+ 'CpuOptionsThreadsPerCore' => [
+ 'description' => '每核线程数。仅部分规格支持自定义设置。配置为1时表示关闭超线程。更多信息,请参见[自定义CPU选项](~~197781~~)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'TerminationGracePeriodSeconds' => [
+ 'description' => '程序的缓冲时间,用于处理关闭之前的操作。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ ],
+ 'LoadBalancerWeight' => [
+ 'description' => 'ECI实例作为后端服务器时的权重,可能值:1~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'DnsPolicy' => [
+ 'description' => 'DNS策略。',
+ 'type' => 'string',
+ 'example' => 'Default',
+ ],
+ 'HostName' => [
+ 'description' => '主机名。',
+ 'type' => 'string',
+ 'example' => '[\'hehe.com\', \'haha.com\']',
+ ],
+ 'EgressBandwidth' => [
+ 'description' => '出方向带宽限制。单位:Byte。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1024000',
+ ],
+ 'RegionId' => [
+ 'description' => 'ECI实例所属的地域ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'RamRoleName' => [
+ 'description' => '实例RAM角色名称,ECI与ECS共用实例RAM角色,具体操作,请参见[通过API使用实例RAM角色](~~61178~~)。',
+ 'type' => 'string',
+ 'example' => 'ram:PassRole',
+ ],
+ 'Cpu' => [
+ 'description' => '实例级别vCPU大小。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '2.0',
+ ],
+ 'AutoMatchImageCache' => [
+ 'description' => '是否自动匹配镜像缓存。可能值:'."\n"
+ .'- true:是。'."\n"
+ .'- false:否。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'ResourceGroupId' => [
+ 'description' => '资源组ID。',
+ 'type' => 'string',
+ 'example' => 'rg-8db03793gfrz****',
+ ],
+ 'ContainerGroupName' => [
+ 'description' => 'ECI实例名称,即容器组名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'ScalingConfigurationId' => [
+ 'description' => '伸缩配置的ID。',
+ 'type' => 'string',
+ 'example' => 'asc-bp1ezrfgoyn5kijl****',
+ ],
+ 'CpuOptionsCore' => [
+ 'description' => 'CPU物理核心数。仅部分规格支持自定义设置。更多信息,请参见[自定义CPU选项](~~197781~~)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'Containers' => [
+ 'description' => 'ECI实例包含的容器列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ECI实例包含的容器的信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ReadinessProbeHttpGetPath' => [
+ 'description' => 'HttpGet检测的路径。',
+ 'type' => 'string',
+ 'example' => '/usr/local',
+ ],
+ 'ReadinessProbeSuccessThreshold' => [
+ 'description' => '从上次检查失败后重新认定检查成功的检查次数阈值(必须是连续成功),默认为1。当前值必须为1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'LivenessProbePeriodSeconds' => [
+ 'description' => '检查执行的周期,默认为10秒,最小值为1秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'LivenessProbeTcpSocketPort' => [
+ 'description' => 'TCP Socket的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'LivenessProbeHttpGetScheme' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求对应的协议类型,可能值:'."\n"
+ ."\n"
+ .'- HTTP。'."\n"
+ .'- HTTPS。',
+ 'type' => 'string',
+ 'example' => 'HTTP',
+ ],
+ 'WorkingDir' => [
+ 'description' => '容器工作目录。',
+ 'type' => 'string',
+ 'example' => '/usr/local/nginx',
+ ],
+ 'Tty' => [
+ 'description' => '是否开启交互。可能值:'."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'LivenessProbeHttpGetPort' => [
+ 'description' => 'HttpGet检测的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'Gpu' => [
+ 'description' => 'GPU个数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ReadinessProbeInitialDelaySeconds' => [
+ 'description' => '检查开始执行的时间,以容器启动完成为起点计算。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'Stdin' => [
+ 'description' => '此容器是否应在容器运行时为标准输入分配缓冲区。如果未设置,则容器中标准输入的读取值将导致EOF。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Memory' => [
+ 'description' => '容器内存大小。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '2.0',
+ ],
+ 'Name' => [
+ 'description' => '自定义的容器名称。',
+ 'type' => 'string',
+ 'example' => 'nginx',
+ ],
+ 'LivenessProbeHttpGetPath' => [
+ 'description' => 'HttpGet检测的路径。',
+ 'type' => 'string',
+ 'example' => '/usr/nginx/',
+ ],
+ 'Image' => [
+ 'description' => '容器镜像。',
+ 'type' => 'string',
+ 'example' => 'mysql',
+ ],
+ 'ReadinessProbeTcpSocketPort' => [
+ 'description' => 'TCP Socket的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '8888',
+ ],
+ 'ReadinessProbeHttpGetScheme' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求对应的协议类型,可能值:'."\n"
+ .'- HTTP。'."\n"
+ .'- HTTPS。',
+ 'type' => 'string',
+ 'example' => 'HTTP',
+ ],
+ 'ReadinessProbeHttpGetPort' => [
+ 'description' => 'HttpGet检测的路径。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '/usr/nginx/',
+ ],
+ 'LivenessProbeSuccessThreshold' => [
+ 'description' => '从上次检查失败后重新认定检查成功的检查次数阈值(必须是连续成功),默认为1。当前值必须为1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ReadinessProbeTimeoutSeconds' => [
+ 'description' => '检查超时的时间,默认为1秒,最小为1秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'SecurityContextRunAsUser' => [
+ 'description' => '用于运行容器进程入口点的UID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1000',
+ ],
+ 'LivenessProbeInitialDelaySeconds' => [
+ 'description' => '检查开始执行的时间,以容器启动完成为起点计算。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'ReadinessProbePeriodSeconds' => [
+ 'description' => '检查执行的周期,默认为10秒,最小为1秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ImagePullPolicy' => [
+ 'description' => '镜像拉取策略。可能值:'."\n"
+ ."\n"
+ .'- Always:总是拉取。每次都拉取镜像。'."\n"
+ .'- IfNotPresent:按需拉取。优先使用本地镜像,本地没有镜像时则拉取镜像。'."\n"
+ .'- Never:从不拉取。使用本地镜像,不拉取镜像。',
+ 'type' => 'string',
+ 'example' => 'Always',
+ ],
+ 'StdinOnce' => [
+ 'description' => '当标准输入为true时,标准输入流将在多个附加会话中保持开启状态。'."\n"
+ ."\n"
+ .'如果StdinOnce设为true,标准输入在容器开启时被打开,在首个客户端附加到标准输入之前都为空,然后会一直保持开启状态,接收数据,直到客户端连接断开,此时标准输入被关闭,在容器重启前一直保持关闭状态。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Cpu' => [
+ 'description' => '容器的vCPU大小。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '2.0',
+ ],
+ 'LivenessProbeTimeoutSeconds' => [
+ 'description' => '检查超时的时间,默认为1秒,最小值为1秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'ReadinessProbeFailureThreshold' => [
+ 'description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。'."\n"
+ ."\n"
+ .'默认值:3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'LivenessProbeFailureThreshold' => [
+ 'description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。'."\n"
+ ."\n"
+ .'默认值:3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'Ports' => [
+ 'description' => '暴露端口和协议列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '暴露端口和协议。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Port' => [
+ 'description' => '端口号。可能值:1~65535。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '8888',
+ ],
+ 'Protocol' => [
+ 'description' => '协议类型。可能值:'."\n"
+ .'- TCP。'."\n"
+ .'- UDP。',
+ 'type' => 'string',
+ 'example' => 'TCP',
+ ],
+ ],
+ ],
+ ],
+ 'VolumeMounts' => [
+ 'description' => '挂载数据卷列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '挂载数据卷。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ReadOnly' => [
+ 'description' => '数据卷是否只读。可能值:'."\n"
+ .'- true:是。'."\n"
+ .'- false:否。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'SubPath' => [
+ 'description' => '数据卷子路径。',
+ 'type' => 'string',
+ 'example' => 'data2/',
+ ],
+ 'Name' => [
+ 'description' => '数据卷名称。同Volume中的Name。',
+ 'type' => 'string',
+ 'example' => 'default-volume1',
+ ],
+ 'MountPropagation' => [
+ 'description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。可能值:'."\n"
+ ."\n"
+ .'- None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。'."\n"
+ .'- HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。'."\n"
+ .'- Bidirectional:和HostToCotainer类似,能感知挂载操作。另外,该卷将被传播回主机和使用同一卷的所有Pod的所有容器。',
+ 'type' => 'string',
+ 'example' => 'None',
+ ],
+ 'MountPath' => [
+ 'description' => '容器挂载数据卷的目录。'."\n"
+ ."\n"
+ .'> 容器挂载目录下的内容会被Volume的内容直接覆盖,请谨慎使用。',
+ 'type' => 'string',
+ 'example' => '/pod/data',
+ ],
+ ],
+ ],
+ ],
+ 'EnvironmentVars' => [
+ 'description' => '环境变量的信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '环境变量的信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '环境变量名。',
+ 'type' => 'string',
+ 'example' => 'PATH',
+ ],
+ 'Value' => [
+ 'description' => '环境变量值。',
+ 'type' => 'string',
+ 'example' => '/usr/bin/',
+ ],
+ ],
+ ],
+ ],
+ 'Commands' => [
+ 'description' => '容器启动命令列表。最多20个。每个命令最多包含256个字符。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。',
+ 'type' => 'string',
+ 'example' => 'sleep',
+ ],
+ ],
+ 'LivenessProbeExecCommands' => [
+ 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。',
+ 'type' => 'string',
+ 'example' => 'cat/tmp/healthy',
+ ],
+ ],
+ 'Args' => [
+ 'description' => '容器启动命令对应的参数列表。最多10个。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动命令对应的参数。最多10个。',
+ 'type' => 'string',
+ 'example' => '100',
+ ],
+ ],
+ 'ReadinessProbeExecCommands' => [
+ 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。',
+ 'type' => 'string',
+ 'example' => 'cat/tmp/healthy',
+ ],
+ ],
+ 'SecurityContextCapabilityAdds' => [
+ 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n"
+ .'>NET_RAW默认不支持,需提交工单申请。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n"
+ .'>NET_RAW默认不支持,需提交工单申请。',
+ 'type' => 'string',
+ 'example' => 'NET_ADMIN',
+ ],
+ ],
+ 'LifecyclePostStartHandlerHttpGetHost' => [
+ 'description' => '使用HTTP请求方式设置PostStart回调函数时,接收HTTP Get请求的主机地址。',
+ 'type' => 'string',
+ 'example' => '10.0.XX.XX',
+ ],
+ 'LifecyclePostStartHandlerHttpGetPort' => [
+ 'description' => '使用HTTP请求方式设置PostStart回调函数时,HTTP Get请求检查的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'LifecyclePostStartHandlerHttpGetPath' => [
+ 'description' => '使用HTTP请求方式设置PostStart回调函数时,HTTP Get请求检测的路径。',
+ 'type' => 'string',
+ 'example' => '/healthyz',
+ ],
+ 'LifecyclePostStartHandlerHttpGetScheme' => [
+ 'description' => '使用HTTP请求方式设置PostStart回调函数时,HTTP Get请求对应的协议类型。',
+ 'type' => 'string',
+ 'example' => 'HTTP',
+ ],
+ 'LifecyclePostStartHandlerExecs' => [
+ 'description' => '使用命令行方式设置PostStart回调函数时,在容器内执行的命令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '使用命令行方式设置PostStart回调函数时,在容器内执行的命令。',
+ 'type' => 'string',
+ 'example' => '[ "/bin/sh", "-c", "echo Hello from the preStop handler /usr/share/message" ]',
+ ],
+ ],
+ 'LifecyclePostStartHandlerTcpSocketHost' => [
+ 'description' => '使用TCP Socket方式设置PostStart回调函数时,TCP Socket检测的主机地址。',
+ 'type' => 'string',
+ 'example' => '10.0.XX.XX',
+ ],
+ 'LifecyclePostStartHandlerTcpSocketPort' => [
+ 'description' => '使用TCP Socket方式设置PostStart回调函数时,TCP Socket检测的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'LifecyclePreStopHandlerHttpGetHost' => [
+ 'description' => '使用HTTP请求方式设置PreStop回调函数时,接收HTTP Get请求的主机地址。',
+ 'type' => 'string',
+ 'example' => '10.0.XX.XX',
+ ],
+ 'LifecyclePreStopHandlerHttpGetPort' => [
+ 'description' => '使用HTTP请求方式设置PreStop回调函数时,HTTP Get请求检测的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'LifecyclePreStopHandlerHttpGetPath' => [
+ 'description' => '使用HTTP请求方式设置PreStop回调函数时,HTTP Get请求检测的路径。',
+ 'type' => 'string',
+ 'example' => '/healthyz',
+ ],
+ 'LifecyclePreStopHandlerHttpGetScheme' => [
+ 'description' => '使用HTTP请求方式设置PreStop回调函数时,HTTP Get请求对应的协议类型。',
+ 'type' => 'string',
+ 'example' => 'HTTP',
+ ],
+ 'LifecyclePreStopHandlerExecs' => [
+ 'description' => '使用命令行方式设置PreStop回调函数时,在容器内执行的命令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '使用命令行方式设置PreStop回调函数时,在容器内执行的命令。',
+ 'type' => 'string',
+ 'example' => '[ "/bin/sh", "-c", "echo Hello from the preStop handler /usr/share/message" ]',
+ ],
+ ],
+ 'LifecyclePreStopHandlerTcpSocketHost' => [
+ 'description' => '使用TCP Socket方式设置PreStop回调函数时,TCP Socket检测的主机地址。',
+ 'type' => 'string',
+ 'example' => '10.0.XX.XX',
+ ],
+ 'LifecyclePreStopHandlerTcpSocketPort' => [
+ 'description' => '使用TCP Socket方式设置PreStop回调函数时,TCP Socket检测的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ ],
+ ],
+ ],
+ 'InitContainers' => [
+ 'description' => 'Init容器列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'init容器列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'SecurityContextReadOnlyRootFilesystem' => [
+ 'description' => '容器运行的根文件系统是否为只读。目前仅支持配置为true。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'ImagePullPolicy' => [
+ 'description' => '镜像拉取策略。',
+ 'type' => 'string',
+ 'example' => 'Always',
+ ],
+ 'WorkingDir' => [
+ 'description' => '工作目录。',
+ 'type' => 'string',
+ 'example' => '/usr/local',
+ ],
+ 'Cpu' => [
+ 'description' => 'CPU大小。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '0.5',
+ ],
+ 'Image' => [
+ 'description' => '容器使用的镜像。',
+ 'type' => 'string',
+ 'example' => 'nginx',
+ ],
+ 'Gpu' => [
+ 'description' => '指定容器使用的GPU个数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'SecurityContextRunAsUser' => [
+ 'description' => '设置运行容器的用户ID。',
+ 'type' => 'string',
+ 'example' => '587',
+ ],
+ 'Memory' => [
+ 'description' => '内存大小。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '1.0',
+ ],
+ 'Name' => [
+ 'description' => '容器名称。',
+ 'type' => 'string',
+ 'example' => 'test-init',
+ ],
+ 'InitContainerEnvironmentVars' => [
+ 'description' => '环境变量的信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '环境变量的信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '环境变量名。',
+ 'type' => 'string',
+ 'example' => 'PATH',
+ ],
+ 'Value' => [
+ 'description' => '环境变量值。',
+ 'type' => 'string',
+ 'example' => '/usr/local/bin',
+ ],
+ ],
+ ],
+ ],
+ 'InitContainerVolumeMounts' => [
+ 'description' => '数据卷挂载。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据卷挂载。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ReadOnly' => [
+ 'description' => '挂载路径是否只读。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'SubPath' => [
+ 'description' => '数据卷下的子目录,方便Pod将同一个Volume下不同目录挂载到容器不同目录。',
+ 'type' => 'string',
+ 'example' => '/usr/sub/',
+ ],
+ 'Name' => [
+ 'description' => '挂载数据卷的名称。',
+ 'type' => 'string',
+ 'example' => 'test-empty',
+ ],
+ 'MountPropagation' => [
+ 'description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。可能值:'."\n"
+ ."\n"
+ .'- None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。'."\n"
+ .'- HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。'."\n"
+ .'- Bidirectional:和HostToCotainer类似,能感知挂载操作。另外,该卷将被传播回主机和使用同一卷的所有Pod的所有容器。',
+ 'type' => 'string',
+ 'example' => 'None',
+ ],
+ 'MountPath' => [
+ 'description' => '挂载目录,容器的挂载目录下的内容被volume的内容直接覆盖,所以要慎用。',
+ 'type' => 'string',
+ 'example' => '/usr/share/',
+ ],
+ ],
+ ],
+ ],
+ 'SecurityContextCapabilityAdds' => [
+ 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。',
+ 'type' => 'string',
+ 'example' => 'NET_ADMIN',
+ ],
+ ],
+ 'InitContainerCommands' => [
+ 'description' => '容器启动指令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动指令。',
+ 'type' => 'string',
+ 'example' => 'sleep',
+ ],
+ ],
+ 'InitContainerArgs' => [
+ 'description' => '容器启动参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动参数。',
+ 'type' => 'string',
+ 'example' => '10',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Tags' => [
+ 'description' => '实例的标签键值对。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例的标签键值对。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '标签键。',
+ 'type' => 'string',
+ 'example' => 'version',
+ ],
+ 'Value' => [
+ 'description' => '标签值。',
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ ],
+ ],
+ ],
+ 'Volumes' => [
+ 'description' => '数据卷信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据卷信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => [
+ 'description' => '数据卷类型,可能值:'."\n"
+ .'- EmptyDirVolume。'."\n"
+ .'- NFSVolume。'."\n"
+ .'- ConfigFileVolume。'."\n"
+ .'- FlexVolume。',
+ 'type' => 'string',
+ 'example' => 'EmptyDirVolume',
+ ],
+ 'DiskVolumeDiskId' => [
+ 'description' => 'DiskVolume的大小。单位为GiB。',
+ 'type' => 'string',
+ 'example' => '15',
+ ],
+ 'DiskVolumeFsType' => [
+ 'description' => 'DiskVolume的系统类型。',
+ 'type' => 'string',
+ 'example' => 'xfs',
+ ],
+ 'EmptyDirVolumeMedium' => [
+ 'description' => 'EmptyDirVolume的存储媒介,默认为空,使用node文件系统。支持memory,表示使用内存。',
+ 'type' => 'string',
+ 'example' => 'memory',
+ ],
+ 'NFSVolumePath' => [
+ 'description' => 'NFS数据卷路径。',
+ 'type' => 'string',
+ 'example' => '/share',
+ ],
+ 'DiskVolumeDiskSize' => [
+ 'description' => 'DiskVolume的大小。单位为GiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '15',
+ ],
+ 'NFSVolumeReadOnly' => [
+ 'description' => 'NFS数据卷是否只读。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'FlexVolumeFsType' => [
+ 'description' => '挂载的文件系统类型,默认取决于FlexVolume的script。',
+ 'type' => 'string',
+ 'example' => 'ext4',
+ ],
+ 'ConfigFileVolumeDefaultMode' => [
+ 'description' => 'ConfigFileVolume默认的权限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0644',
+ ],
+ 'FlexVolumeDriver' => [
+ 'description' => '用于FlexVolume的驱动程序名称。',
+ 'type' => 'string',
+ 'example' => 'flexvolume',
+ ],
+ 'FlexVolumeOptions' => [
+ 'description' => 'FlexVolume对象选项列表。为KV形式,采用JSON传递。'."\n"
+ ."\n"
+ .'例如:通过FlexVolume挂载云盘时,Options的格式为`{"volumeId":"d-2zehdahrwoa7srg****","performanceLevel": "PL2"}`。',
+ 'type' => 'string',
+ 'example' => '{"volumeId":"d-2zehdahrwoa7srg****","performanceLevel": "PL2"}',
+ ],
+ 'NFSVolumeServer' => [
+ 'description' => 'NFS服务器地址。',
+ 'type' => 'string',
+ 'example' => '3f9cd4****-na***.cn-shanghai.nas.aliyuncs.com',
+ ],
+ 'Name' => [
+ 'description' => '数据卷名称。',
+ 'type' => 'string',
+ 'example' => 'default-volume1',
+ ],
+ 'ConfigFileVolumeConfigFileToPaths' => [
+ 'description' => '配置文件路径列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '配置文件路径列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Path' => [
+ 'description' => '相对文件路径。',
+ 'type' => 'string',
+ 'example' => '/usr/bin/',
+ ],
+ 'Mode' => [
+ 'description' => 'ConfigFileVolume目录权限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0644',
+ ],
+ 'Content' => [
+ 'description' => '配置文件内容(32 KB)。',
+ 'type' => 'string',
+ 'example' => 'bGl1bWk=',
+ ],
+ ],
+ ],
+ ],
+ 'EmptyDirVolumeSizeLimit' => [
+ 'description' => 'EmptyDir数据卷的大小。',
+ 'type' => 'string',
+ 'example' => '256 Mi',
+ ],
+ 'HostPathVolumeType' => [
+ 'description' => 'HostPath Volume的类型。',
+ 'type' => 'string',
+ 'example' => 'Directory',
+ ],
+ 'HostPathVolumePath' => [
+ 'description' => 'HostPath Volume在主机上的目录路径。',
+ 'type' => 'string',
+ 'example' => '/pod/data',
+ ],
+ ],
+ ],
+ ],
+ 'ImageRegistryCredentials' => [
+ 'description' => '镜像仓库信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '镜像仓库信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Password' => [
+ 'description' => '镜像仓库密码。',
+ 'type' => 'string',
+ 'example' => 'yourpaasword',
+ ],
+ 'Server' => [
+ 'description' => '镜像仓库注册地址。',
+ 'type' => 'string',
+ 'example' => 'registry-vpc.cn-shanghai.aliyuncs.com',
+ ],
+ 'UserName' => [
+ 'description' => '镜像仓库用户名。',
+ 'type' => 'string',
+ 'example' => 'yourusername',
+ ],
+ ],
+ ],
+ ],
+ 'DnsConfigOptions' => [
+ 'description' => '对象选项列表,每个对象由Name和Value(可选)构成。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '对象选项列表,每个对象由Name和Value(可选)构成。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '对象的变量名。',
+ 'type' => 'string',
+ 'example' => 'name',
+ ],
+ 'Value' => [
+ 'description' => '对象变量值。',
+ 'type' => 'string',
+ 'example' => 'value',
+ ],
+ ],
+ ],
+ ],
+ 'HostAliases' => [
+ 'description' => '自定义实例内一个容器的Hostname映射。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '自定义实例内一个容器的Hostname映射。'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Ip' => [
+ 'description' => '添加IP地址。',
+ 'type' => 'string',
+ 'example' => '192.0.XX.XX',
+ ],
+ 'Hostnames' => [
+ 'description' => '添加主机名。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '添加主机名。',
+ 'type' => 'string',
+ 'example' => '[\'hehe.com\', \'haha.com\']',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'SecurityContextSysCtls' => [
+ 'description' => '实例运行的安全上下文的系统信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例运行的安全上下文的系统信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '实例运行的安全上下文系统名称。',
+ 'type' => 'string',
+ 'example' => 'kernel.msgmax',
+ ],
+ 'Value' => [
+ 'description' => '实例运行的安全上下文的变量值。',
+ 'type' => 'string',
+ 'example' => '65536',
+ ],
+ ],
+ ],
+ ],
+ 'AcrRegistryInfos' => [
+ 'description' => 'ACR企业版实例的信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ACR企业版实例的信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceId' => [
+ 'description' => 'ACR企业版实例ID。',
+ 'type' => 'string',
+ 'example' => 'cri-nwj395hgf6f3****',
+ ],
+ 'InstanceName' => [
+ 'description' => 'ACR企业版实例的名称。',
+ 'type' => 'string',
+ 'example' => 'acr-test',
+ ],
+ 'RegionId' => [
+ 'description' => 'ACR企业版实例所属地域。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'Domains' => [
+ 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。',
+ 'type' => 'string',
+ 'example' => '*****-****-registry.cn-beijing.cr.aliyuncs.com',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'DnsConfigNameServers' => [
+ 'description' => 'DNS服务器的IP地址列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'DNS服务器的IP地址列表。',
+ 'type' => 'string',
+ 'example' => '172.10.*.**',
+ ],
+ ],
+ 'DnsConfigSearches' => [
+ 'description' => 'DNS搜索域列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'DNS搜索域列表。',
+ 'type' => 'string',
+ 'example' => 'svc.local.kubenetes',
+ ],
+ ],
+ 'NtpServers' => [
+ 'description' => 'NTP服务器。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'NTP服务器。',
+ 'type' => 'string',
+ 'example' => 'ntp.cloud.aliyuncs.com',
+ ],
+ ],
+ 'LifecycleState' => [
+ 'description' => '伸缩配置在伸缩组中的状态。可能值:'."\n"
+ ."\n"
+ .'- Active:生效状态。伸缩组会使用处于生效状态的伸缩配置自动创建ECI实例。'."\n"
+ .'- Inacitve:未生效状态。处于未生效状态的伸缩配置存在于伸缩组中,但伸缩组不会使用此类伸缩配置自动创建ECI实例。',
+ 'type' => 'string',
+ 'example' => 'Active',
+ ],
+ 'CostOptimization' => [
+ 'description' => '是否开启成本优化开关。可能值:'."\n"
+ ."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'InstanceFamilyLevel' => [
+ 'description' => '实例规格族级别,用于筛选符合要求的实例规格范围,当`CostOptimization`开启时生效。可能值:'."\n"
+ ."\n"
+ .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n"
+ .'- EnterpriseLevel:企业级。性能稳定且资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n"
+ .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的业务场景。更多信息,请参见[突发性能实例概述](~~59977~~)。',
+ 'type' => 'string',
+ 'example' => 'EnterpriseLevel',
+ ],
+ 'InstanceTypes' => [
+ 'description' => '指定的ECS实例规格,支持指定多个规格(最多支持5个)。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定的ECS实例规格。支持多个规格(最多支持5个),更多信息,请参见[指定ECS规格创建实例](~~114664~~)。',
+ 'type' => 'string',
+ 'example' => 'ecs.g6.large',
+ ],
+ ],
+ 'DataCacheBucket' => [
+ 'description' => '数据缓存Bucket。',
+ 'type' => 'string',
+ 'example' => 'default',
+ ],
+ 'DataCachePL' => [
+ 'description' => '数据缓存使用的云盘的性能等级。 建议优先使用ESSD云盘,该云盘的性能等级的可能值:'."\n"
+ ."\n"
+ .'- PL0:单盘最高随机读写IOPS 1万。'."\n"
+ .'- PL1:单盘最高随机读写IOPS 5万。'."\n"
+ .'- PL2:单盘最高随机读写IOPS 10万。'."\n"
+ .'- PL3:单盘最高随机读写IOPS 100万。'."\n"
+ ."\n"
+ .'>关于ESSD云盘的更多信息,请参见[ESSD云盘](~~122389~~)。',
+ 'type' => 'string',
+ 'example' => 'PL1',
+ ],
+ 'DataCacheProvisionedIops' => [
+ 'description' => '数据缓存使用ESSD AutoPL云盘时,ESSD AutoPL云盘预配置的读写IOPS。 可能值:0~min{50000, 1000*容量-基准性能},其中,基准性能=min{1800+50*容量, 50000}。'."\n"
+ .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '40000',
+ ],
+ 'DataCacheBurstingEnabled' => [
+ 'description' => '数据缓存使用ESSD AutoPL云盘时,是否开启Burst(性能突发)。可能值:'."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。'."\n"
+ ."\n"
+ .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'GpuDriverVersion' => [
+ 'description' => '指定 GPU 驱动版本。',
+ 'type' => 'string',
+ 'example' => 'tesla=470.82.01',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 403 => [
+ [
+ 'errorCode' => 'Forbidden.RiskControl',
+ 'errorMessage' => 'Forbidden.RiskControl',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"TotalCount\\": 1,\\n \\"ScalingConfigurations\\": [\\n {\\n \\"CreationTime\\": \\"2014-08-14T10:58Z\\",\\n \\"ScalingConfigurationName\\": \\"scalingconfi****\\",\\n \\"SecurityGroupId\\": \\"sg-bp18kz60mefs****\\",\\n \\"ActiveDeadlineSeconds\\": 1000,\\n \\"SpotStrategy\\": \\"NoSpot\\",\\n \\"AutoCreateEip\\": true,\\n \\"ScalingGroupId\\": \\"asg-bp17pelvl720x3v7****\\",\\n \\"EphemeralStorage\\": 20,\\n \\"Ipv6AddressCount\\": 1,\\n \\"EipBandwidth\\": 5,\\n \\"ImageSnapshotId\\": \\"imc-2zebxkiifuyzzlhl****\\",\\n \\"Memory\\": 16,\\n \\"RestartPolicy\\": \\"Never\\",\\n \\"SpotPriceLimit\\": 0.025,\\n \\"IngressBandwidth\\": 1024000,\\n \\"CpuOptionsThreadsPerCore\\": 2,\\n \\"TerminationGracePeriodSeconds\\": 60,\\n \\"LoadBalancerWeight\\": 1,\\n \\"DnsPolicy\\": \\"Default\\",\\n \\"HostName\\": \\"[\'hehe.com\', \'haha.com\']\\",\\n \\"EgressBandwidth\\": 1024000,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"RamRoleName\\": \\"ram:PassRole\\",\\n \\"Cpu\\": 2,\\n \\"AutoMatchImageCache\\": false,\\n \\"ResourceGroupId\\": \\"rg-8db03793gfrz****\\",\\n \\"ContainerGroupName\\": \\"test\\",\\n \\"ScalingConfigurationId\\": \\"asc-bp1ezrfgoyn5kijl****\\",\\n \\"CpuOptionsCore\\": 2,\\n \\"Containers\\": [\\n {\\n \\"ReadinessProbeHttpGetPath\\": \\"/usr/local\\",\\n \\"ReadinessProbeSuccessThreshold\\": 1,\\n \\"LivenessProbePeriodSeconds\\": 5,\\n \\"LivenessProbeTcpSocketPort\\": 80,\\n \\"LivenessProbeHttpGetScheme\\": \\"HTTP\\",\\n \\"WorkingDir\\": \\"/usr/local/nginx\\",\\n \\"Tty\\": false,\\n \\"LivenessProbeHttpGetPort\\": 80,\\n \\"Gpu\\": 1,\\n \\"ReadinessProbeInitialDelaySeconds\\": 5,\\n \\"Stdin\\": true,\\n \\"Memory\\": 2,\\n \\"Name\\": \\"nginx\\",\\n \\"LivenessProbeHttpGetPath\\": \\"/usr/nginx/\\",\\n \\"Image\\": \\"mysql\\",\\n \\"ReadinessProbeTcpSocketPort\\": 8888,\\n \\"ReadinessProbeHttpGetScheme\\": \\"HTTP\\",\\n \\"ReadinessProbeHttpGetPort\\": 0,\\n \\"LivenessProbeSuccessThreshold\\": 1,\\n \\"ReadinessProbeTimeoutSeconds\\": 5,\\n \\"SecurityContextRunAsUser\\": 1000,\\n \\"LivenessProbeInitialDelaySeconds\\": 10,\\n \\"ReadinessProbePeriodSeconds\\": 1,\\n \\"ImagePullPolicy\\": \\"Always\\",\\n \\"StdinOnce\\": true,\\n \\"Cpu\\": 2,\\n \\"LivenessProbeTimeoutSeconds\\": 10,\\n \\"ReadinessProbeFailureThreshold\\": 3,\\n \\"LivenessProbeFailureThreshold\\": 3,\\n \\"Ports\\": [\\n {\\n \\"Port\\": 8888,\\n \\"Protocol\\": \\"TCP\\"\\n }\\n ],\\n \\"VolumeMounts\\": [\\n {\\n \\"ReadOnly\\": false,\\n \\"SubPath\\": \\"data2/\\",\\n \\"Name\\": \\"default-volume1\\",\\n \\"MountPropagation\\": \\"None\\",\\n \\"MountPath\\": \\"/pod/data\\"\\n }\\n ],\\n \\"EnvironmentVars\\": [\\n {\\n \\"Key\\": \\"PATH\\",\\n \\"Value\\": \\"/usr/bin/\\"\\n }\\n ],\\n \\"Commands\\": [\\n \\"sleep\\"\\n ],\\n \\"LivenessProbeExecCommands\\": [\\n \\"cat/tmp/healthy\\"\\n ],\\n \\"Args\\": [\\n \\"100\\"\\n ],\\n \\"ReadinessProbeExecCommands\\": [\\n \\"cat/tmp/healthy\\"\\n ],\\n \\"SecurityContextCapabilityAdds\\": [\\n \\"NET_ADMIN\\"\\n ],\\n \\"LifecyclePostStartHandlerHttpGetHost\\": \\"10.0.XX.XX\\",\\n \\"LifecyclePostStartHandlerHttpGetPort\\": 80,\\n \\"LifecyclePostStartHandlerHttpGetPath\\": \\"/healthyz\\",\\n \\"LifecyclePostStartHandlerHttpGetScheme\\": \\"HTTP\\",\\n \\"LifecyclePostStartHandlerExecs\\": [\\n \\"[ \\\\\\"/bin/sh\\\\\\", \\\\\\"-c\\\\\\", \\\\\\"echo Hello from the preStop handler /usr/share/message\\\\\\" ]\\"\\n ],\\n \\"LifecyclePostStartHandlerTcpSocketHost\\": \\"10.0.XX.XX\\",\\n \\"LifecyclePostStartHandlerTcpSocketPort\\": 80,\\n \\"LifecyclePreStopHandlerHttpGetHost\\": \\"10.0.XX.XX\\",\\n \\"LifecyclePreStopHandlerHttpGetPort\\": 80,\\n \\"LifecyclePreStopHandlerHttpGetPath\\": \\"/healthyz\\",\\n \\"LifecyclePreStopHandlerHttpGetScheme\\": \\"HTTP\\",\\n \\"LifecyclePreStopHandlerExecs\\": [\\n \\"[ \\\\\\"/bin/sh\\\\\\", \\\\\\"-c\\\\\\", \\\\\\"echo Hello from the preStop handler /usr/share/message\\\\\\" ]\\"\\n ],\\n \\"LifecyclePreStopHandlerTcpSocketHost\\": \\"10.0.XX.XX\\",\\n \\"LifecyclePreStopHandlerTcpSocketPort\\": 80\\n }\\n ],\\n \\"InitContainers\\": [\\n {\\n \\"SecurityContextReadOnlyRootFilesystem\\": true,\\n \\"ImagePullPolicy\\": \\"Always\\",\\n \\"WorkingDir\\": \\"/usr/local\\",\\n \\"Cpu\\": 0.5,\\n \\"Image\\": \\"nginx\\",\\n \\"Gpu\\": 1,\\n \\"SecurityContextRunAsUser\\": \\"587\\",\\n \\"Memory\\": 1,\\n \\"Name\\": \\"test-init\\",\\n \\"InitContainerEnvironmentVars\\": [\\n {\\n \\"Key\\": \\"PATH\\",\\n \\"Value\\": \\"/usr/local/bin\\"\\n }\\n ],\\n \\"InitContainerVolumeMounts\\": [\\n {\\n \\"ReadOnly\\": false,\\n \\"SubPath\\": \\"/usr/sub/\\",\\n \\"Name\\": \\"test-empty\\",\\n \\"MountPropagation\\": \\"None\\",\\n \\"MountPath\\": \\"/usr/share/\\"\\n }\\n ],\\n \\"SecurityContextCapabilityAdds\\": [\\n \\"NET_ADMIN\\"\\n ],\\n \\"InitContainerCommands\\": [\\n \\"sleep\\"\\n ],\\n \\"InitContainerArgs\\": [\\n \\"10\\"\\n ]\\n }\\n ],\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"version\\",\\n \\"Value\\": \\"3\\"\\n }\\n ],\\n \\"Volumes\\": [\\n {\\n \\"Type\\": \\"EmptyDirVolume\\",\\n \\"DiskVolumeDiskId\\": \\"15\\",\\n \\"DiskVolumeFsType\\": \\"xfs\\",\\n \\"EmptyDirVolumeMedium\\": \\"memory\\",\\n \\"NFSVolumePath\\": \\"/share\\",\\n \\"DiskVolumeDiskSize\\": 15,\\n \\"NFSVolumeReadOnly\\": false,\\n \\"FlexVolumeFsType\\": \\"ext4\\",\\n \\"ConfigFileVolumeDefaultMode\\": 644,\\n \\"FlexVolumeDriver\\": \\"flexvolume\\",\\n \\"FlexVolumeOptions\\": \\"{\\\\\\"volumeId\\\\\\":\\\\\\"d-2zehdahrwoa7srg****\\\\\\",\\\\\\"performanceLevel\\\\\\": \\\\\\"PL2\\\\\\"}\\",\\n \\"NFSVolumeServer\\": \\"3f9cd4****-na***.cn-shanghai.nas.aliyuncs.com\\",\\n \\"Name\\": \\"default-volume1\\",\\n \\"ConfigFileVolumeConfigFileToPaths\\": [\\n {\\n \\"Path\\": \\"/usr/bin/\\",\\n \\"Mode\\": 644,\\n \\"Content\\": \\"bGl1bWk=\\"\\n }\\n ],\\n \\"EmptyDirVolumeSizeLimit\\": \\"256 Mi\\",\\n \\"HostPathVolumeType\\": \\"Directory\\",\\n \\"HostPathVolumePath\\": \\"/pod/data\\"\\n }\\n ],\\n \\"ImageRegistryCredentials\\": [\\n {\\n \\"Password\\": \\"yourpaasword\\",\\n \\"Server\\": \\"registry-vpc.cn-shanghai.aliyuncs.com\\",\\n \\"UserName\\": \\"yourusername\\"\\n }\\n ],\\n \\"DnsConfigOptions\\": [\\n {\\n \\"Name\\": \\"name\\",\\n \\"Value\\": \\"value\\"\\n }\\n ],\\n \\"HostAliases\\": [\\n {\\n \\"Ip\\": \\"192.0.XX.XX\\",\\n \\"Hostnames\\": [\\n \\"[\'hehe.com\', \'haha.com\']\\"\\n ]\\n }\\n ],\\n \\"SecurityContextSysCtls\\": [\\n {\\n \\"Name\\": \\"kernel.msgmax\\",\\n \\"Value\\": \\"65536\\"\\n }\\n ],\\n \\"AcrRegistryInfos\\": [\\n {\\n \\"InstanceId\\": \\"cri-nwj395hgf6f3****\\",\\n \\"InstanceName\\": \\"acr-test\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Domains\\": [\\n \\"*****-****-registry.cn-beijing.cr.aliyuncs.com\\"\\n ]\\n }\\n ],\\n \\"DnsConfigNameServers\\": [\\n \\"172.10.*.**\\"\\n ],\\n \\"DnsConfigSearches\\": [\\n \\"svc.local.kubenetes\\"\\n ],\\n \\"NtpServers\\": [\\n \\"ntp.cloud.aliyuncs.com\\"\\n ],\\n \\"LifecycleState\\": \\"Active\\",\\n \\"CostOptimization\\": false,\\n \\"InstanceFamilyLevel\\": \\"EnterpriseLevel\\",\\n \\"InstanceTypes\\": [\\n \\"ecs.g6.large\\"\\n ],\\n \\"DataCacheBucket\\": \\"default\\",\\n \\"DataCachePL\\": \\"PL1\\",\\n \\"DataCacheProvisionedIops\\": 40000,\\n \\"DataCacheBurstingEnabled\\": false,\\n \\"GpuDriverVersion\\": \\"tesla=470.82.01\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeEciScalingConfigurationsResponse>\\n <PageNumber>1</PageNumber>\\n <PageSize>50</PageSize>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <TotalCount>1</TotalCount>\\n <ScalingConfigurations>\\n <CreationTime>2014-08-14T10:58Z</CreationTime>\\n <ScalingConfigurationName>scalingconfi****</ScalingConfigurationName>\\n <SecurityGroupId>sg-bp18kz60mefs****</SecurityGroupId>\\n <ActiveDeadlineSeconds>1000</ActiveDeadlineSeconds>\\n <SpotStrategy>NoSpot</SpotStrategy>\\n <AutoCreateEip>true</AutoCreateEip>\\n <ScalingGroupId>asg-bp17pelvl720x3v7****</ScalingGroupId>\\n <EphemeralStorage>20</EphemeralStorage>\\n <Ipv6AddressCount>1</Ipv6AddressCount>\\n <EipBandwidth>5</EipBandwidth>\\n <ImageSnapshotId>imc-2zebxkiifuyzzlhl****</ImageSnapshotId>\\n <Memory>16</Memory>\\n <RestartPolicy>Never</RestartPolicy>\\n <SpotPriceLimit>0.025</SpotPriceLimit>\\n <IngressBandwidth>1024000</IngressBandwidth>\\n <CpuOptionsThreadsPerCore>2</CpuOptionsThreadsPerCore>\\n <TerminationGracePeriodSeconds>60</TerminationGracePeriodSeconds>\\n <LoadBalancerWeight>1</LoadBalancerWeight>\\n <DnsPolicy>Default</DnsPolicy>\\n <HostName>[\'hehe.com\', \'haha.com\']</HostName>\\n <EgressBandwidth>1024000</EgressBandwidth>\\n <RegionId>cn-hangzhou</RegionId>\\n <RamRoleName>ram:PassRole</RamRoleName>\\n <Cpu>2</Cpu>\\n <AutoMatchImageCache>false</AutoMatchImageCache>\\n <ResourceGroupId>rg-8db03793gfrz****</ResourceGroupId>\\n <ContainerGroupName>test</ContainerGroupName>\\n <ScalingConfigurationId>asc-bp1ezrfgoyn5kijl****</ScalingConfigurationId>\\n <CpuOptionsCore>2</CpuOptionsCore>\\n <Containers>\\n <ReadinessProbeHttpGetPath>/usr/local</ReadinessProbeHttpGetPath>\\n <ReadinessProbeSuccessThreshold>1</ReadinessProbeSuccessThreshold>\\n <LivenessProbePeriodSeconds>5</LivenessProbePeriodSeconds>\\n <LivenessProbeTcpSocketPort>80</LivenessProbeTcpSocketPort>\\n <LivenessProbeHttpGetScheme>HTTP</LivenessProbeHttpGetScheme>\\n <WorkingDir>/usr/local/nginx</WorkingDir>\\n <Tty>false</Tty>\\n <LivenessProbeHttpGetPort>80</LivenessProbeHttpGetPort>\\n <Gpu>1</Gpu>\\n <ReadinessProbeInitialDelaySeconds>5</ReadinessProbeInitialDelaySeconds>\\n <Stdin>true</Stdin>\\n <Memory>2</Memory>\\n <Name>nginx</Name>\\n <LivenessProbeHttpGetPath>/usr/nginx/</LivenessProbeHttpGetPath>\\n <Image>mysql</Image>\\n <ReadinessProbeTcpSocketPort>8888</ReadinessProbeTcpSocketPort>\\n <ReadinessProbeHttpGetScheme>HTTP</ReadinessProbeHttpGetScheme>\\n <LivenessProbeSuccessThreshold>1</LivenessProbeSuccessThreshold>\\n <ReadinessProbeTimeoutSeconds>5</ReadinessProbeTimeoutSeconds>\\n <SecurityContextRunAsUser>1000</SecurityContextRunAsUser>\\n <LivenessProbeInitialDelaySeconds>10</LivenessProbeInitialDelaySeconds>\\n <ReadinessProbePeriodSeconds>1</ReadinessProbePeriodSeconds>\\n <ImagePullPolicy>Always</ImagePullPolicy>\\n <StdinOnce>true</StdinOnce>\\n <Cpu>2</Cpu>\\n <LivenessProbeTimeoutSeconds>10</LivenessProbeTimeoutSeconds>\\n <ReadinessProbeFailureThreshold>3</ReadinessProbeFailureThreshold>\\n <LivenessProbeFailureThreshold>3</LivenessProbeFailureThreshold>\\n <Ports>\\n <Port>8888</Port>\\n <Protocol>TCP</Protocol>\\n </Ports>\\n <VolumeMounts>\\n <ReadOnly>false</ReadOnly>\\n <SubPath>data2/</SubPath>\\n <Name>default-volume1</Name>\\n <MountPropagation>None</MountPropagation>\\n <MountPath>/pod/data</MountPath>\\n </VolumeMounts>\\n <EnvironmentVars>\\n <Key>PATH</Key>\\n <Value>/usr/bin/</Value>\\n </EnvironmentVars>\\n <Commands>sleep</Commands>\\n <LivenessProbeExecCommands>cat/tmp/healthy</LivenessProbeExecCommands>\\n <Args>100</Args>\\n <ReadinessProbeExecCommands>cat/tmp/healthy</ReadinessProbeExecCommands>\\n <SecurityContextCapabilityAdds>NET_ADMIN</SecurityContextCapabilityAdds>\\n <LifecyclePostStartHandlerHttpGetHost>10.0.XX.XX</LifecyclePostStartHandlerHttpGetHost>\\n <LifecyclePostStartHandlerHttpGetPort>80</LifecyclePostStartHandlerHttpGetPort>\\n <LifecyclePostStartHandlerHttpGetPath>/healthyz</LifecyclePostStartHandlerHttpGetPath>\\n <LifecyclePostStartHandlerHttpGetScheme>HTTP</LifecyclePostStartHandlerHttpGetScheme>\\n <LifecyclePostStartHandlerExecs>[ \\"/bin/sh\\", \\"-c\\", \\"echo Hello from the preStop handler /usr/share/message\\" ]</LifecyclePostStartHandlerExecs>\\n <LifecyclePostStartHandlerTcpSocketHost>10.0.XX.XX</LifecyclePostStartHandlerTcpSocketHost>\\n <LifecyclePostStartHandlerTcpSocketPort>80</LifecyclePostStartHandlerTcpSocketPort>\\n <LifecyclePreStopHandlerHttpGetHost>10.0.XX.XX</LifecyclePreStopHandlerHttpGetHost>\\n <LifecyclePreStopHandlerHttpGetPort>80</LifecyclePreStopHandlerHttpGetPort>\\n <LifecyclePreStopHandlerHttpGetPath>/healthyz</LifecyclePreStopHandlerHttpGetPath>\\n <LifecyclePreStopHandlerHttpGetScheme>HTTP</LifecyclePreStopHandlerHttpGetScheme>\\n <LifecyclePreStopHandlerExecs>[ \\"/bin/sh\\", \\"-c\\", \\"echo Hello from the preStop handler /usr/share/message\\" ]</LifecyclePreStopHandlerExecs>\\n <LifecyclePreStopHandlerTcpSocketHost>10.0.XX.XX</LifecyclePreStopHandlerTcpSocketHost>\\n <LifecyclePreStopHandlerTcpSocketPort>80</LifecyclePreStopHandlerTcpSocketPort>\\n </Containers>\\n <InitContainers>\\n <SecurityContextReadOnlyRootFilesystem>true</SecurityContextReadOnlyRootFilesystem>\\n <ImagePullPolicy>Always</ImagePullPolicy>\\n <WorkingDir>/usr/local</WorkingDir>\\n <Cpu>0.5</Cpu>\\n <Image>nginx</Image>\\n <Gpu>1</Gpu>\\n <SecurityContextRunAsUser>587</SecurityContextRunAsUser>\\n <Memory>1</Memory>\\n <Name>test-init</Name>\\n <InitContainerEnvironmentVars>\\n <Key>PATH</Key>\\n <Value>/usr/local/bin</Value>\\n </InitContainerEnvironmentVars>\\n <InitContainerVolumeMounts>\\n <ReadOnly>false</ReadOnly>\\n <SubPath>/usr/sub/</SubPath>\\n <Name>test-empty</Name>\\n <MountPropagation>None</MountPropagation>\\n <MountPath>/usr/share/</MountPath>\\n </InitContainerVolumeMounts>\\n <SecurityContextCapabilityAdds>NET_ADMIN</SecurityContextCapabilityAdds>\\n <InitContainerCommands>sleep</InitContainerCommands>\\n <InitContainerArgs>10</InitContainerArgs>\\n </InitContainers>\\n <Tags>\\n <Key>version</Key>\\n <Value>3</Value>\\n </Tags>\\n <Volumes>\\n <Type>EmptyDirVolume</Type>\\n <DiskVolumeDiskId>15</DiskVolumeDiskId>\\n <DiskVolumeFsType>xfs</DiskVolumeFsType>\\n <EmptyDirVolumeMedium>memory</EmptyDirVolumeMedium>\\n <NFSVolumePath>/share</NFSVolumePath>\\n <DiskVolumeDiskSize>15</DiskVolumeDiskSize>\\n <NFSVolumeReadOnly>false</NFSVolumeReadOnly>\\n <FlexVolumeFsType>ext4</FlexVolumeFsType>\\n <ConfigFileVolumeDefaultMode>644</ConfigFileVolumeDefaultMode>\\n <FlexVolumeDriver>flexvolume</FlexVolumeDriver>\\n <FlexVolumeOptions>{\\"volumeId\\":\\"d-2zehdahrwoa7srg****\\",\\"performanceLevel\\": \\"PL2\\"}</FlexVolumeOptions>\\n <NFSVolumeServer>3f9cd4****-na***.cn-shanghai.nas.aliyuncs.com</NFSVolumeServer>\\n <Name>default-volume1</Name>\\n <ConfigFileVolumeConfigFileToPaths>\\n <Path>/usr/bin/</Path>\\n <Mode>644</Mode>\\n <Content>bGl1bWk=</Content>\\n </ConfigFileVolumeConfigFileToPaths>\\n <EmptyDirVolumeSizeLimit>256 Mi</EmptyDirVolumeSizeLimit>\\n <HostPathVolumeType>Directory</HostPathVolumeType>\\n <HostPathVolumePath>/pod/data</HostPathVolumePath>\\n </Volumes>\\n <ImageRegistryCredentials>\\n <Password>yourpaasword</Password>\\n <Server>registry-vpc.cn-shanghai.aliyuncs.com</Server>\\n <UserName>yourusername</UserName>\\n </ImageRegistryCredentials>\\n <DnsConfigOptions>\\n <Name>name</Name>\\n <Value>value</Value>\\n </DnsConfigOptions>\\n <HostAliases>\\n <Ip>192.0.XX.XX</Ip>\\n <Hostnames>[\'hehe.com\', \'haha.com\']</Hostnames>\\n </HostAliases>\\n <SecurityContextSysCtls>\\n <Name>kernel.msgmax</Name>\\n <Value>65536</Value>\\n </SecurityContextSysCtls>\\n <AcrRegistryInfos>\\n <InstanceId>cri-nwj395hgf6f3****</InstanceId>\\n <InstanceName>acr-test</InstanceName>\\n <RegionId>cn-hangzhou</RegionId>\\n <Domains>*****-****-registry.cn-beijing.cr.aliyuncs.com</Domains>\\n </AcrRegistryInfos>\\n <DnsConfigNameServers>172.10.*.**</DnsConfigNameServers>\\n <DnsConfigSearches>svc.local.kubenetes</DnsConfigSearches>\\n <NtpServers>ntp.cloud.aliyuncs.com</NtpServers>\\n <LifecycleState>Active</LifecycleState>\\n <CostOptimization>false</CostOptimization>\\n <InstanceFamilyLevel>EnterpriseLevel</InstanceFamilyLevel>\\n <InstanceTypes>ecs.g6.large</InstanceTypes>\\n <DataCacheBucket>default</DataCacheBucket>\\n <DataCachePL>PL1</DataCachePL>\\n <DataCacheProvisionedIops>40000</DataCacheProvisionedIops>\\n <DataCacheBurstingEnabled>false</DataCacheBurstingEnabled>\\n <GpuDriverVersion>tesla=470.82.01</GpuDriverVersion>\\n </ScalingConfigurations>\\n</DescribeEciScalingConfigurationsResponse>","errorExample":""}]',
+ 'title' => '查询伸缩配置的信息',
+ ],
+ 'DetachAlbServerGroups' => [
+ 'summary' => '从伸缩组移出一个或多个ALB服务器组。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '92688',
+ 'abilityTreeNodes' => [
+ 'FEATUREess2GK585',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID,如cn-hangzhou、cn-shanghai。更多信息,请参见[地域和可用区](~~40654~~)。 ',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。'."\n"
+ ."\n"
+ .'只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'ForceDetach',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否从待移出ALB服务器组中移出已有的ECS实例。'."\n"
+ ."\n"
+ .'- true:移出,并返回`ScalingActivityId`,您可以通过查看该伸缩活动ID来确定已有实例是否移出成功。'."\n"
+ ."\n"
+ .'- false:不移出。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'AlbServerGroup',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ALB服务器组列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'AlbServerGroupId' => [
+ 'description' => 'ALB服务器组的ID。N为ALB服务器组的编号。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sgp-ddwb0y0g6y9bjm****',
+ ],
+ 'Port' => [
+ 'description' => 'ALB服务器组中ECS实例使用的端口号。N为ALB服务器组的编号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '22',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingActivityId' => [
+ 'description' => '移出ALB服务器组,并移出该ALB服务器组内的ECS实例时,对应伸缩活动的ID。仅当`ForceDetach`取值为`true`时,返回该参数。',
+ 'type' => 'string',
+ 'example' => 'asa-2ze6wxj8vsohn6j9****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingActivityId\\": \\"asa-2ze6wxj8vsohn6j9****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<DetachAlbServerGroupsResponse>\\n <ScalingActivityId>asa-2ze6wxj8vsohn6j9****</ScalingActivityId>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</DetachAlbServerGroupsResponse>","errorExample":""}]',
+ 'title' => '移出一个或多个ALB服务器组',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|400|AlbServerGroup.NotAttached|The ALB server groups are not attached to specific ScalingGroup.|当前ALB服务器组未添加到伸缩组中。|',
+ ],
+ 'ModifyEciScalingConfiguration' => [
+ 'summary' => '调用ModifyScalingConfiguration修改一个ECI类型的伸缩配置。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92705',
+ 'abilityTreeNodes' => [
+ 'FEATUREessT4M3WE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingConfigurationId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待修改伸缩配置的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asc-bp16har3jpj6fjbx****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingConfigurationName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩配置的名称。长度为2~64个英文或中文字符,以数字、大小写字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。'."\n"
+ ."\n"
+ .'在同一地域下同一伸缩组内伸缩配置名称唯一。如果您没有指定该参数,则默认使用伸缩配置的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'test-modify',
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECI实例所属的安全组ID。同一个安全组内的ECI实例之间可以互相访问。'."\n"
+ ."\n"
+ .'如果没有指定安全组,系统将自动使用您选择的地域下的默认安全组,您需要确保该安全组的入方向规则中包含容器需要暴露的协议和端口。如果您在该地域下没有默认安全组,系统将自动创建一个默认安全组,并将您声明的容器协议和端口添加到该安全组的入方向规则中。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'sg-uf66jeqopgqa9hdn****',
+ ],
+ ],
+ [
+ 'name' => 'ContainerGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ECI实例名称,即容器组名称。格式要求如下:'."\n"
+ ."\n"
+ .'- 长度为2~128个字符。'."\n"
+ .'- 支持英文小写字母、数字或者短划线(-),不能以短划线(-)开头或者结尾。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'nginx-test',
+ ],
+ ],
+ [
+ 'name' => 'RestartPolicy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例重启策略。取值范围:'."\n"
+ .'- Always:总是重启。'."\n"
+ .'- Never:从不重启。'."\n"
+ .'- OnFailure:失败时重启。'."\n"
+ ."\n"
+ .'默认值:Always。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Always',
+ ],
+ ],
+ [
+ 'name' => 'Cpu',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例级别的vCPU大小。单位:核。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '1.0',
+ ],
+ ],
+ [
+ 'name' => 'Memory',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例级别的内存大小。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '2.0',
+ ],
+ ],
+ [
+ 'name' => 'ResourceGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源组ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rg-uf66jeqopgqa9hdn****',
+ ],
+ ],
+ [
+ 'name' => 'DnsPolicy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'DNS策略。取值范围:'."\n"
+ ."\n"
+ .'- None:使用DnsConfig字段设置的DNS。'."\n"
+ .'- Default:继承运行环境的DNS设置。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Default',
+ ],
+ ],
+ [
+ 'name' => 'ImageSnapshotId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像缓存ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'imc-2zebxkiifuyzzlhl****',
+ ],
+ ],
+ [
+ 'name' => 'RamRoleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例RAM角色名称。ECI与ECS共用实例RAM角色,更多信息,请参见[通过API使用实例RAM角色](~~61178~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'RamTestRole',
+ ],
+ ],
+ [
+ 'name' => 'TerminationGracePeriodSeconds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '程序的缓冲时间,用于处理关闭之前的操作。单位为秒。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'AutoMatchImageCache',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否自动匹配镜像缓存。取值范围:'."\n"
+ .'- true:是。'."\n"
+ .'- false:否。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'Ipv6AddressCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'IPv6地址数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'ActiveDeadlineSeconds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '有效期限。单位为秒。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1000',
+ ],
+ ],
+ [
+ 'name' => 'SpotStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例的抢占策略。取值范围:'."\n"
+ ."\n"
+ .'- NoSpot:正常按量付费实例。'."\n"
+ .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n"
+ .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格的抢占式实例。'."\n"
+ ."\n"
+ .'默认值:NoSpot。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SpotPriceLimit',
+ ],
+ ],
+ [
+ 'name' => 'SpotPriceLimit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '设置抢占式实例的每小时最高价格,最多精确到小数点后3位。'."\n"
+ ."\n"
+ .'当SpotStrategy取值为SpotWithPriceLimit时,必须设置SpotPriceLimit。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.025',
+ ],
+ ],
+ [
+ 'name' => 'AutoCreateEip',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否自动创建弹性公网IP,并绑定ECI实例。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'EipBandwidth',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性公网IP的带宽。'."\n"
+ ."\n"
+ .'默认值:5 Mbit/s。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '1000000',
+ 'minimum' => '0',
+ 'example' => '5',
+ ],
+ ],
+ [
+ 'name' => 'HostName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '主机名称,即容器组名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'IngressBandwidth',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '入方向带宽限制。单位:Byte。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'docRequired' => false,
+ 'maximum' => '9223372036854775807',
+ 'minimum' => '0',
+ 'example' => '1024000',
+ ],
+ ],
+ [
+ 'name' => 'EgressBandwidth',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '出方向带宽限制。单位:Byte。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'docRequired' => false,
+ 'maximum' => '9223372036854775807',
+ 'minimum' => '0',
+ 'example' => '1024000',
+ ],
+ ],
+ [
+ 'name' => 'CpuOptionsCore',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'CPU物理核心数。仅部分规格支持自定义设置。更多信息,请参见[自定义CPU选项](~~197781~~)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '1000',
+ 'minimum' => '0',
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'CpuOptionsThreadsPerCore',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '每核线程数。仅部分规格支持自定义设置。配置为1时表示关闭超线程。更多信息,请参见[自定义CPU选项](~~197781~~)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'EphemeralStorage',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '临时存储空间大小,默认使用ESSD PL1类型的云盘。单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '5000',
+ 'minimum' => '0',
+ 'example' => '20',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerWeight',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '后端服务器的权重,取值范围:1~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例的标签键值对。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例的标签键值对。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '标签键。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'version',
+ ],
+ 'Value' => [
+ 'description' => '标签值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ ],
+ [
+ 'name' => 'ImageRegistryCredential',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '镜像仓库的信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '镜像仓库的信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Password' => [
+ 'description' => '镜像仓库密码。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'yourpaasword',
+ ],
+ 'Server' => [
+ 'description' => '镜像仓库注册地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'registry-vpc.cn-shanghai.aliyuncs.com',
+ ],
+ 'UserName' => [
+ 'description' => '镜像仓库用户名。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'yourusername',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 11,
+ ],
+ ],
+ [
+ 'name' => 'Container',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例包含的容器列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例包含的容器列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ReadinessProbe.TimeoutSeconds' => [
+ 'description' => '检查超时的时间,默认值为1秒,最小值为1秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'ReadinessProbe.SuccessThreshold' => [
+ 'description' => '从上次检查失败后重新认定检查成功的检查次数阈值(必须是连续成功),默认值为1。当前值必须为1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'SecurityContext.Capability.Add' => [
+ 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n"
+ ."\n"
+ .'> NET_RAW默认不支持,需提交工单申请。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n"
+ ."\n"
+ .'> NET_RAW默认不支持,需提交工单申请。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'NET_ADMIN',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ 'ReadinessProbe.TcpSocket.Port' => [
+ 'description' => '使用TCP Socket方式进行健康检查时,TCP Socket检测的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '8000',
+ ],
+ 'ReadinessProbe.HttpGet.Scheme' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求对应的协议类型,取值范围:'."\n"
+ ."\n"
+ .'- HTTP。'."\n"
+ .'- HTTPS。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HTTP',
+ ],
+ 'LivenessProbe.PeriodSeconds' => [
+ 'description' => '检查执行的周期,默认为值10秒,最小值为1秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ ],
+ 'Port' => [
+ 'description' => '暴露端口和协议。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '暴露端口和协议。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Protocol' => [
+ 'description' => '协议类型。取值范围:'."\n"
+ ."\n"
+ .'- TCP。'."\n"
+ .'- UDP。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TCP',
+ ],
+ 'Port' => [
+ 'description' => '端口号。取值范围:1~65535。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '80',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'SecurityContext.ReadOnlyRootFilesystem' => [
+ 'description' => '容器运行的根文件系统是否为只读,目前仅支持配置为true。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'EnvironmentVar' => [
+ 'description' => '环境变量的信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '环境变量的信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '环境变量名。长度为1~128位,格式要求:`[0-9a-zA-Z]`,以及下划线,不能以数字开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PATH',
+ ],
+ 'Value' => [
+ 'description' => '环境变量值。长度为0~256位。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/local/bin',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 301,
+ ],
+ 'LivenessProbe.TcpSocket.Port' => [
+ 'description' => '使用TCP Socket方式进行健康检查时,TCP Socket检测的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '8000',
+ ],
+ 'Tty' => [
+ 'description' => '是否开启交互。默认为false。'."\n"
+ ."\n"
+ .'当Command为`/bin/bash`命令时,需要设置为true。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'WorkingDir' => [
+ 'description' => '容器工作目录。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/local/',
+ ],
+ 'LivenessProbe.HttpGet.Scheme' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求对应的协议类型,取值范围:'."\n"
+ ."\n"
+ .'- HTTP。'."\n"
+ .'- HTTPS。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HTTP',
+ ],
+ 'ReadinessProbe.HttpGet.Port' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '8080',
+ ],
+ 'Arg' => [
+ 'description' => '容器启动命令对应的参数。最多10个。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动命令对应的参数。最多10个。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'Gpu' => [
+ 'description' => '指定容器使用的GPU个数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'ReadinessProbe.InitialDelaySeconds' => [
+ 'description' => '检查开始执行的时间,以容器启动完成为起点计算。单位为秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'Stdin' => [
+ 'description' => '此容器是否应在容器运行时为标准输入分配缓冲区。如果未设置,则容器中标准输入的读取值将导致EOF。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'Memory' => [
+ 'description' => '容器内存大小。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.5',
+ ],
+ 'Name' => [
+ 'description' => '容器镜像名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'nginx',
+ ],
+ 'Image' => [
+ 'description' => '容器镜像。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:latest',
+ ],
+ 'LivenessProbe.InitialDelaySeconds' => [
+ 'description' => '检查开始执行的时间,以容器启动完成为起点计算。单位为秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5',
+ ],
+ 'VolumeMount' => [
+ 'description' => '数据卷挂载信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据卷挂载信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'MountPropagation' => [
+ 'description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。取值范围:'."\n"
+ ."\n"
+ .'- None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。'."\n"
+ .'- HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。'."\n"
+ .'- Bidirectional:和HostToCotainer类似,能感知挂载操作。另外,该卷将被传播回主机和使用同一卷的所有Pod的所有容器。'."\n"
+ ."\n"
+ .'默认值:None。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'None',
+ ],
+ 'MountPath' => [
+ 'description' => '容器挂载数据卷的目录。'."\n"
+ ."\n"
+ .'><notice>容器挂载目录下的内容会被Volume的内容直接覆盖,请您谨慎使用。'."\n"
+ .'></notice>',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/pod/data',
+ ],
+ 'ReadOnly' => [
+ 'description' => '数据卷是否只读。'."\n"
+ .'- true:只读。'."\n"
+ .'- false:可读可写。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'Name' => [
+ 'description' => '数据卷名称。同Volume中的Name。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'default-volume1',
+ ],
+ 'SubPath' => [
+ 'description' => '数据卷子路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'data2/',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'LivenessProbe.FailureThreshold' => [
+ 'description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。'."\n"
+ ."\n"
+ .'默认值:3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'ReadinessProbe.Exec.Command' => [
+ 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cat/tmp/healthy',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ 'ReadinessProbe.FailureThreshold' => [
+ 'description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。'."\n"
+ ."\n"
+ .'默认值:3。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'ImagePullPolicy' => [
+ 'description' => '容器的镜像拉取策略。取值范围:'."\n"
+ ."\n"
+ .'- Alway:总是拉取。每次都拉取镜像。'."\n"
+ .'- IfNotPresent:按需拉取。优先使用本地镜像,本地没有镜像时则拉取镜像。'."\n"
+ .'- Never:从不拉取。使用本地镜像,不拉取镜像。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Always',
+ ],
+ 'StdinOnce' => [
+ 'description' => '当标准输入为true时,标准输入流将在多个附加会话中是否保持开启状态。'."\n"
+ ."\n"
+ .'如果StdinOnce设为true,标准输入在容器开启时被打开,在首个客户端附加到标准输入之前都为空,然后会一直保持开启状态,接收数据,直到客户端连接断开,此时标准输入被关闭,在容器重启前一直保持关闭状态。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'Cpu' => [
+ 'description' => '容器的VCPU大小。单位:核。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.25',
+ ],
+ 'LivenessProbe.HttpGet.Port' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '8888',
+ ],
+ 'LivenessProbe.HttpGet.Path' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/healthyz',
+ ],
+ 'LivenessProbe.SuccessThreshold' => [
+ 'description' => '从上次检查失败后重新认定检查成功的检查次数阈值(必须是连续成功),默认值为1。当前值必须为1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'ReadinessProbe.PeriodSeconds' => [
+ 'description' => '检查执行的周期,默认值为10秒,最小值为1秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'LivenessProbe.TimeoutSeconds' => [
+ 'description' => '检查超时的时间,默认值为1秒,最小值为1秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'Command' => [
+ 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sleep',
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'SecurityContext.RunAsUser' => [
+ 'description' => '设置运行容器的用户ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1000',
+ ],
+ 'ReadinessProbe.HttpGet.Path' => [
+ 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/healthz',
+ ],
+ 'LivenessProbe.Exec.Command' => [
+ 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cat /tmp/healthy',
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ 'LifecyclePostStartHandlerHttpGetHost' => [
+ 'description' => '使用HTTP请求方式设置PostStart回调函数时,接收HTTP Get请求的主机地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.0.XX.XX',
+ ],
+ 'LifecyclePostStartHandlerHttpGetPort' => [
+ 'description' => '使用HTTP请求方式设置PostStart回调函数时,HTTP Get请求检查的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '5050',
+ ],
+ 'LifecyclePostStartHandlerHttpGetPath' => [
+ 'description' => '使用HTTP请求方式设置PostStart回调函数时,HTTP Get请求检测的路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/healthyz',
+ ],
+ 'LifecyclePostStartHandlerHttpGetScheme' => [
+ 'description' => '使用HTTP请求方式设置PostStart回调函数时,HTTP Get请求对应的协议类型,取值范围:'."\n"
+ ."\n"
+ .'- HTTP。'."\n"
+ .'- HTTPS。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HTTPS',
+ ],
+ 'LifecyclePostStartHandlerExec' => [
+ 'description' => '使用命令行方式设置PostStart回调函数时,在容器内执行的命令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '使用命令行方式设置PostStart回调函数时,在容器内执行的命令。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[ "/bin/sh", "-c", "echo Hello from the postStart handler /usr/share/message" ]',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ 'LifecyclePostStartHandlerTcpSocketHost' => [
+ 'description' => '使用TCP Socket方式设置PostStart回调函数时,TCP Socket检测的主机地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.0.XX.XX',
+ ],
+ 'LifecyclePostStartHandlerTcpSocketPort' => [
+ 'description' => '使用TCPSocket方式设置PostStart回调函数时,TCP Socket 检测的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '80',
+ ],
+ 'LifecyclePreStopHandlerHttpGetHost' => [
+ 'description' => '使用HTTP请求方式设置PreStop回调函数时,接收HTTP Get请求的主机地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.0.XX.XX',
+ ],
+ 'LifecyclePreStopHandlerHttpGetPort' => [
+ 'description' => '使用HTTP请求方式设置PreStop回调函数时,HTTP Get请求检测的端口号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '80',
+ ],
+ 'LifecyclePreStopHandlerHttpGetPath' => [
+ 'description' => '使用HTTP请求方式设置PreStop回调函数时,HTTP Get 请求检测的路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/healthyz',
+ ],
+ 'LifecyclePreStopHandlerHttpGetScheme' => [
+ 'description' => '使用HTTP请求方式设置PreStop回调函数时,HTTP Get请求对应的协议类型,取值范围:'."\n"
+ ."\n"
+ .'- HTTP。'."\n"
+ .'- HTTPS。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HTTP',
+ ],
+ 'LifecyclePreStopHandlerExec' => [
+ 'description' => '使用命令行方式设置PreStop回调函数时,在容器内执行的命令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '使用命令行方式设置PreStop回调函数时,在容器内执行的命令。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[ "/bin/sh", "-c", "echo Hello from the preStop handler /usr/share/message" ]',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ 'LifecyclePreStopHandlerTcpSocketHost' => [
+ 'description' => '使用TCP Socket方式设置PreStop回调函数时,TCP Socket检测的主机地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.0.XX.XX',
+ ],
+ 'LifecyclePreStopHandlerTcpSocketPort' => [
+ 'description' => '使用TCP Socket方式设置PreStop回调函数时,TCP Socket检测的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '80',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ ],
+ [
+ 'name' => 'Volume',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '数据卷信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据卷信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => [
+ 'description' => '数据卷类型,取值范围:'."\n"
+ ."\n"
+ .'- EmptyDirVolume。'."\n"
+ .'- NFSVolume。'."\n"
+ .'- ConfigFileVolume。'."\n"
+ .'- FlexVolume。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'EmptyDirVolume',
+ ],
+ 'DiskVolume.DiskSize' => [
+ 'description' => 'DiskVolume的大小。单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '15',
+ ],
+ 'NFSVolume.Path' => [
+ 'description' => 'NFS数据卷路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/share',
+ ],
+ 'FlexVolume.FsType' => [
+ 'description' => '挂载的文件系统类型,默认取决于FlexVolume的script。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ext4',
+ ],
+ 'DiskVolume.FsType' => [
+ 'description' => '该系统类型不推荐使用,建议您使用`FlexVolume.FsType`参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'xfs',
+ ],
+ 'HostPathVolume.Type' => [
+ 'description' => 'Host目录的类型。例如:File、Directory、Socket等。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Directory',
+ ],
+ 'NFSVolume.ReadOnly' => [
+ 'description' => 'NFS数据卷是否只读。'."\n"
+ .'- true:只读。'."\n"
+ .'- false:可读可写。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'HostPathVolume.Path' => [
+ 'description' => 'Host上的绝对路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/xx/xx/name',
+ ],
+ 'FlexVolume.Options' => [
+ 'description' => 'FlexVolume对象选项列表。为KV形式,采用JSON传递。'."\n"
+ ."\n"
+ .'例如:通过FlexVolume挂载云盘时,Options的格式为`{"volumeId":"d-2zehdahrwoa7srg****","performanceLevel": "PL2"}`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"volumeId":"d-2zehdahrwoa7srg****","performanceLevel": "PL2"}',
+ ],
+ 'FlexVolume.Driver' => [
+ 'description' => '用于FlexVolume的驱动程序名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'flexvolume',
+ ],
+ 'ConfigFileVolumeDefaultMode' => [
+ 'description' => 'ConfigFileVolume默认的权限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '0644',
+ ],
+ 'NFSVolume.Server' => [
+ 'description' => 'NFS服务器地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '3f9cd4a596-n****.cn-shanghai.nas.aliyuncs.com',
+ ],
+ 'DiskVolume.DiskId' => [
+ 'description' => 'DiskVolume的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'd-xx',
+ ],
+ 'Name' => [
+ 'description' => '数据卷名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'default-volume1',
+ ],
+ 'EmptyDirVolume.Medium' => [
+ 'description' => 'EmptyDirVolume的存储媒介,默认为空,使用node文件系统;支持memory,表示使用内存。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'memory',
+ ],
+ 'ConfigFileVolumeConfigFileToPath' => [
+ 'description' => '配置文件路径列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '配置文件路径列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Path' => [
+ 'description' => '相对文件路径。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/bin/',
+ ],
+ 'Mode' => [
+ 'description' => 'ConfigFileVolume目录权限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '0644',
+ ],
+ 'Content' => [
+ 'description' => '配置文件内容(32 KB)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'bGl1bWk=',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 90,
+ ],
+ 'EmptyDirVolume.SizeLimit' => [
+ 'description' => 'EmptyDir数据卷的大小。取值时请带上单位,建议使用Gi或Mi。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '256 Mi',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ ],
+ [
+ 'name' => 'InitContainer',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'Init容器列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Init容器列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InitContainerEnvironmentVar' => [
+ 'description' => '环境变量信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '环境变量信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '环境变量名。长度为1~128位。格式要求:`[0-9a-zA-Z]`,以及下划线,不能以数字开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Path',
+ ],
+ 'Value' => [
+ 'description' => '环境变量值。长度为0~256位。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/bin/',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 301,
+ ],
+ 'SecurityContext.Capability.Add' => [
+ 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n"
+ ."\n"
+ .'>NET_RAW默认不支持,需提交工单申请。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n"
+ ."\n"
+ .'>NET_RAW默认不支持,需提交工单申请。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'NET_ADMIN',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ 'Image' => [
+ 'description' => '容器使用的镜像。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'nginx',
+ ],
+ 'InitContainerVolumeMount' => [
+ 'description' => '数据卷挂载信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据卷挂载信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'MountPropagation' => [
+ 'description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。取值范围:'."\n"
+ ."\n"
+ .'- None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。'."\n"
+ .'- HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。'."\n"
+ .'- Bidirectional:和HostToCotainer类似,能感知挂载操作。另外,该卷将被传播回主机和使用同一卷的所有Pod的所有容器。'."\n"
+ ."\n"
+ .'默认值:None。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'None',
+ ],
+ 'MountPath' => [
+ 'description' => '挂载目录。'."\n"
+ ."\n"
+ .'><notice>容器挂载目录下的内容会被Volume的内容直接覆盖,请您谨慎使用。'."\n"
+ .'></notice>',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/share/',
+ ],
+ 'ReadOnly' => [
+ 'description' => '挂载路径是否只读。'."\n"
+ .'- true:只读。'."\n"
+ .'- false:可读可写。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'Name' => [
+ 'description' => '挂载数据卷的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-empty',
+ ],
+ 'SubPath' => [
+ 'description' => '数据卷下的子目录,方便Pod将同一个Volume下不同目录挂载到容器不同目录。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/sub/',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'ImagePullPolicy' => [
+ 'description' => '镜像拉取策略。取值范围:'."\n"
+ ."\n"
+ .'- Always:总是拉取。每次都拉取镜像。'."\n"
+ .'- IfNotPresent:按需拉取。优先使用本地镜像,本地没有镜像时则拉取镜像。'."\n"
+ .'- Never:从不拉取。使用本地镜像,不拉取镜像。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Always',
+ ],
+ 'Cpu' => [
+ 'description' => '容器的vCPU大小。单位:核。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '0.5',
+ ],
+ 'WorkingDir' => [
+ 'description' => '工作目录。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/local',
+ ],
+ 'Command' => [
+ 'description' => '容器启动指令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动指令。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sleep',
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'Arg' => [
+ 'description' => '容器启动参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ 'SecurityContext.RunAsUser' => [
+ 'description' => '设置运行容器的用户ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '587',
+ ],
+ 'Gpu' => [
+ 'description' => '指定容器使用的GPU个数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'Memory' => [
+ 'description' => '内存大小。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '1.0',
+ ],
+ 'Name' => [
+ 'description' => '容器名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-init',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ ],
+ [
+ 'name' => 'DnsConfigNameServer',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'DNS服务器的IP地址列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'DNS服务器的IP地址列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '172.10.*.**',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'DnsConfigSearch',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'DNS搜索域列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'DNS搜索域列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'svc.local.kubenetes',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'DnsConfigOption',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '对象选项列表,每个对象由Name和Value(可选)构成。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '对象选项列表,每个对象由Name和Value(可选)构成。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => '对象变量值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'value',
+ ],
+ 'Name' => [
+ 'description' => '对象变量名。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'name',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'HostAliase',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '自定义实例内一个容器的Hostname映射。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '自定义实例内一个容器的Hostname映射。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Ip' => [
+ 'description' => '添加IP地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '192.0.XX.XX',
+ ],
+ 'Hostname' => [
+ 'description' => '添加主机名。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '添加主机名。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[\'hehe.com\', \'haha.com\']',
+ ],
+ 'required' => false,
+ 'maxItems' => 51,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 101,
+ ],
+ ],
+ [
+ 'name' => 'SecurityContextSysctl',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '容器组运行的安全上下文。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器组运行的安全上下文。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => '实例运行的安全上下文的变量值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '65536',
+ ],
+ 'Name' => [
+ 'description' => '实例运行的安全上下文系统名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'kernel.msgmax',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 11,
+ ],
+ ],
+ [
+ 'name' => 'NtpServer',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'NTP服务器。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'NTP服务器。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ntp.cloud.aliyuncs.com',
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ ],
+ [
+ 'name' => 'AcrRegistryInfo',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'ACR企业版实例信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ACR企业版实例信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Domain' => [
+ 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号分隔。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号分隔。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '*****-****-registry.cn-beijing.cr.aliyuncs.com',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ 'InstanceName' => [
+ 'description' => 'ACR企业版实例的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acr-test',
+ ],
+ 'InstanceId' => [
+ 'description' => 'ACR企业版实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cri-nwj395hgf6f3****',
+ ],
+ 'RegionId' => [
+ 'description' => 'ACR企业版实例所属地域。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 21,
+ ],
+ ],
+ [
+ 'name' => 'CostOptimization',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启成本优化开关。取值范围:'."\n"
+ ."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'InstanceFamilyLevel',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例规格族级别,用于筛选符合要求的实例规格范围,当`CostOptimization`开启时生效。取值范围:'."\n"
+ ."\n"
+ .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n"
+ .'- EnterpriseLevel:企业级。性能稳定且资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n"
+ .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的业务场景。更多信息,请参见[突发性能实例概述](~~59977~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'EnterpriseLevel',
+ ],
+ ],
+ [
+ 'name' => 'ContainersUpdateType',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'schema' => [
+ 'description' => 'Containers参数更新方式的控制参数。取值范围:'."\n"
+ ."\n"
+ .'- RenewUpdate:全量更新,以更新请求参数中Containers为准,覆盖原有Containers参数配置。'."\n"
+ .'- IncrementalUpdate:增量更新,根据Containers.Name进行Containers匹配,仅更新请求参数中已设置的参数,未设置的参数不进行更新。'."\n"
+ ."\n"
+ .'默认值:RenewUpdate。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'RenewUpdate',
+ ],
+ ],
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '指定的ECS实例规格,支持指定多个规格(最多支持5个)。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定的ECS实例规格。支持指定多个规格(最多支持5个),更多信息,请参见[指定ECS规格创建实例](~~114664~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.g6.large',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'DataCacheBucket',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据缓存Bucket。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'default',
+ ],
+ ],
+ [
+ 'name' => 'DataCachePL',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据缓存使用的云盘的性能等级。建议优先使用ESSD云盘,该云盘的性能等级取值范围:'."\n"
+ ."\n"
+ .'- PL0:单盘最高随机读写IOPS 1万。'."\n"
+ .'- PL1:单盘最高随机读写IOPS 5万。'."\n"
+ .'- PL2:单盘最高随机读写IOPS 10万。'."\n"
+ .'- PL3:单盘最高随机读写IOPS 100万。'."\n"
+ ."\n"
+ .'默认值:PL1。'."\n"
+ .'>关于ESSD云盘的更多信息,请参见[ESSD云盘](~~122389~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PL1',
+ ],
+ ],
+ [
+ 'name' => 'DataCacheProvisionedIops',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据缓存使用ESSD AutoPL云盘时,ESSD AutoPL云盘预配置的读写IOPS。 取值范围:0~min{50000, 1000*容量-基准性能},其中,基准性能=min{1800+50*容量, 50000}。'."\n"
+ ."\n"
+ .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '40000',
+ ],
+ ],
+ [
+ 'name' => 'DataCacheBurstingEnabled',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据缓存使用ESSD AutoPL云盘时,是否开启Burst(性能突发)。取值范围:'."\n"
+ .'- true:开启。'."\n"
+ .'- false:未开启。'."\n"
+ ."\n"
+ .'默认值:false。'."\n"
+ .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'GpuDriverVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定GPU驱动版本。取值范围:'."\n"
+ .'- tesla=470.82.01(默认值)'."\n"
+ .'- tesla=525.85.12'."\n"
+ ."\n"
+ .'> 仅部分规格支持切换GPU驱动版本。更多信息,请参见[指定GPU规格创建实例](~~2579486~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tesla=525.85.12',
+ ],
+ ],
+ [
+ 'name' => 'Override',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否覆盖。取值范围:'."\n"
+ ."\n"
+ .'- true:覆盖。'."\n"
+ .'- false:不覆盖。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID,唯一标识。',
+ 'type' => 'string',
+ 'example' => '89945DD3-9072-47D0-A318-353284CF****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 403 => [
+ [
+ 'errorCode' => 'Forbidden.RiskControl',
+ 'errorMessage' => 'Forbidden.RiskControl',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"89945DD3-9072-47D0-A318-353284CF****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyEciScalingConfigurationResponse>\\n <RequestId>89945DD3-9072-47D0-A318-353284CF****</RequestId>\\n</ModifyEciScalingConfigurationResponse>","errorExample":""}]',
+ 'title' => '修改一个伸缩配置',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 如果修改伸缩配置的名称,请注意同一伸缩组下不能存在名称相同的伸缩配置。'."\n"
+ ."\n"
+ .'- 可以调用[DescribeEciScalingConfigurations ](~~426144~~)查询并验证修改结果。',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|未授权操作当前Action。|'."\n"
+ .'|404|InvalidDataDiskSnapshotId.NotFound|Snapshot "XXX" does not exist.|不存在指定的快照。|'."\n"
+ .'|400|InvalidDataDiskSnapshotId.SizeNotSupported|The capacity of snapshot "XXX" exceeds the size limit of the specified disk category.|指定快照的大小超过了磁盘大小的限制。|'."\n"
+ .'|404|InvalidImageId.NotFound|The specified image does not exist.|指定的镜像不存在。|'."\n"
+ .'|400|InvalidKeyPairName.NotFound|The specified KeyPairName does not exist in our records.|指定的KeyPairName不存在。|'."\n"
+ .'|400|InvalidNetworkType.ForRAMRole|RAMRole can\'t be used For classic instance.|经典网络实例不支持RamRoleName参数。|'."\n"
+ .'|400|InvalidParamter|The specified value of parameter is not valid.|指定的参数值无效。|'."\n"
+ .'|400|InvalidScalingConfigurationName.Duplicate|The specified value of parameter is duplicated.|伸缩配置名已存在。|'."\n"
+ .'|400|InvalidSecurityGroupId.IncorrectNetworkType|The network type of specified Security Group does not support this action.|指定的安全组与伸缩组指定网络类型不一致。|'."\n"
+ .'|400|InvalidSecurityGroupId.VPCMismatch|The specified security group and the specified virtual switch are not in the same VPC.|指定的安全组和虚拟交换机不属于同一个虚拟专有网络。|'."\n"
+ .'|400|InvalidTags.KeyValue|The specified tags key/value cannot be empty.|必须指定Tags参数。|'."\n"
+ .'|400|InvalidTags.ListSize|The specified tags list size cannot be more than "20".|Tags列表长度超过限制长度。|'."\n"
+ .'|400|InvalidUserData.Base64FormatInvalid|The specified parameter UserData must be base64 encoded.|UserData不符合Base64编码规范。|'."\n"
+ .'|400|InvalidUserData.SizeExceeded|The specified parameter UserData exceeds the size.|指定的UserData过长。',
+ ],
+ 'ScaleWithAdjustment' => [
+ 'summary' => '基于指定调整规则触发弹性扩缩容。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '92716',
+ 'abilityTreeNodes' => [
+ 'FEATUREessSQIS9M',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asg-j6c1o397427hyjdc****',
+ ],
+ ],
+ [
+ 'name' => 'AdjustmentType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩活动调整方式,取值范围:'."\n"
+ ."\n"
+ .'- QuantityChangeInCapacity:增加或减少指定数量的ECS实例。'."\n"
+ .'- PercentChangeInCapacity:增加或减少指定比例的ECS实例。'."\n"
+ .'- TotalCapacity:将当前伸缩组的ECS实例数量调整到指定数量。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'QuantityChangeInCapacity',
+ ],
+ ],
+ [
+ 'name' => 'AdjustmentValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩活动调整值。任何情况下,单次调整的ECS实例台数都不能超过1000,否则会导致调整失败。不同调整方式对应的取值范围:'."\n"
+ .'- QuantityChangeInCapacity:-1000~1000。'."\n"
+ .'- PercentChangeInCapacity:-100~10000。'."\n"
+ .'- TotalCapacity:0~2000。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'docRequired' => true,
+ 'maximum' => '2147483647',
+ 'minimum' => '-2147483648',
+ 'example' => '100',
+ 'isFileTransferUrl' => false,
+ ],
+ ],
+ [
+ 'name' => 'MinAdjustmentMagnitude',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩活动最小调整实例数,仅当`AdjustmentType`为`PercentChangeInCapacity`时生效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '用于保证请求的幂等性,防止重复提交请求。由客户端生成该参数值,要保证在不同请求之间唯一,最大值不超过64个ASCII字符,且该参数值中不能包含非ASCII字符。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'SyncActivity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩活动同步执行开关,仅对具有期望实例数配置项的伸缩组有效。取值范围:'."\n"
+ ."\n"
+ .'- true:同步流程,即执行伸缩规则时会直接触发伸缩组的扩缩容活动。'."\n"
+ .'- false:异步流程,即修改伸缩组内的期望实例数时,不会立刻触发伸缩组的实际扩缩容活动,需等待期望实例数变化后,系统自动检测期望实例数与伸缩组内当前实例数不一致,才会触发扩缩容活动。'."\n"
+ ."\n"
+ .'> 关于期望实例数的更多信息,请参见[期望实例数](~~146231~~)。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'Overrides',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'ECI类型的伸缩组扩容指定覆写参数。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Cpu' => [
+ 'description' => '实例级别vCPU大小。单位:核。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'Memory' => [
+ 'description' => '实例级别内存大小。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ 'UserData' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ 'ContainerOverride' => [
+ 'description' => '覆写容器列表参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '覆写容器列表参数。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Command' => [
+ 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sleep',
+ ],
+ 'required' => false,
+ ],
+ 'Memory' => [
+ 'description' => '容器的内存大小。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ 'Arg' => [
+ 'description' => '容器启动命令对应的参数。最多10个。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动命令对应的参数。最多10个。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'arg',
+ ],
+ 'required' => false,
+ ],
+ 'Cpu' => [
+ 'description' => '容器的vCPU大小。单位:核。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'EnvironmentVar' => [
+ 'description' => '环境变量的信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '环境变量的信息列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => '环境变量值。长度为0~256位。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/local/tomcat',
+ ],
+ 'Key' => [
+ 'description' => '环境变量名。长度为1~128个字符。格式要求:`[0-9a-zA-Z]`,以及下划线(_),不能以数字开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PATH',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'Name' => [
+ 'description' => '容器名称。当需要覆写容器参数时,必须指定容器名称,容器名称与伸缩配置中的容器名称相匹配时,方可覆写容器参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'container-1',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'LifecycleHookContext',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '生命周期挂钩的上下文信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DisableLifecycleHook' => [
+ 'description' => '伸缩活动是否禁用所有生命周期挂钩功能。取值范围:'."\n"
+ ."\n"
+ .'- true:禁用。'."\n"
+ .'- false:不禁用。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ 'IgnoredLifecycleHookIds' => [
+ 'description' => '伸缩活动禁用的生命周期挂钩ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩活动禁用的生命周期挂钩ID列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ash-bp14zolna43z266bq***',
+ ],
+ 'required' => false,
+ ],
+ 'LifecycleHookResult' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'ActivityMetadata',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩活动的元数据。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"key":"value"}',
+ ],
+ ],
+ [
+ 'name' => 'ExecutionMode',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '执行模式。取值范围:'."\n"
+ ."\n"
+ .'- None:未指定,正常扩缩容。'."\n"
+ .'- PlanOnly:不触发扩缩容,仅执行弹性规划,在PlanResult中返回规划的结果,包括实例规格、可用区ID、付费类型和创建的实例数量等信息。'."\n"
+ ."\n"
+ .'默认为None。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PlanOnly',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '基于指定调整规则触发弹性扩缩容返回参数。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingActivityId' => [
+ 'description' => '伸缩活动的ID。',
+ 'type' => 'string',
+ 'example' => 'asa-bp175o6f6ego3r2j****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'ActivityType' => [
+ 'description' => '伸缩活动的类型。'."\n"
+ ."\n"
+ .'当`ActivityType`为`CapacityChange`时,表示返回值`ScalingActivityId`对应伸缩活动仅修改伸缩组期望实例数,没有立刻执行扩缩。'."\n"
+ ."\n"
+ .'适用范围:期望实例数类型的伸缩组。',
+ 'type' => 'string',
+ 'example' => 'CapacityChange',
+ ],
+ 'PlanResult' => [
+ 'description' => '当ExecutionMode为PlanOnly时,返回的弹性规划的结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ResourceAllocations' => [
+ 'description' => '弹性规划结果中的资源分配信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ZoneId' => [
+ 'description' => '可用区ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing-g',
+ ],
+ 'InstanceType' => [
+ 'description' => '实例规格。',
+ 'type' => 'string',
+ 'example' => 'ecs.u1-c1m8.large',
+ ],
+ 'SpotStrategy' => [
+ 'description' => '实例的抢占策略。取值范围:'."\n"
+ ."\n"
+ .'- NoSpot:正常按量付费实例。'."\n"
+ .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n"
+ .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格的抢占式实例。',
+ 'type' => 'string',
+ 'example' => 'NoSpot',
+ ],
+ 'Amount' => [
+ 'description' => '实例数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'InstanceChargeType' => [
+ 'description' => '付费类型,返回值如下:'."\n"
+ ."\n"
+ .'- Prepaid:包年包月。'."\n"
+ .'- Postpaid:按量付费。',
+ 'type' => 'string',
+ 'example' => 'Postpaid',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 403 => [
+ [
+ 'errorCode' => 'Forbidden.Forbidden',
+ 'errorMessage' => 'Operation Forbidden',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp175o6f6ego3r2j****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ActivityType\\": \\"CapacityChange\\",\\n \\"PlanResult\\": {\\n \\"ResourceAllocations\\": [\\n {\\n \\"ZoneId\\": \\"cn-beijing-g\\",\\n \\"InstanceType\\": \\"ecs.u1-c1m8.large\\",\\n \\"SpotStrategy\\": \\"NoSpot\\",\\n \\"Amount\\": 1,\\n \\"InstanceChargeType\\": \\"Postpaid\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ScaleWithAdjustmentResponse>\\n <ScalingActivityId>asa-bp175o6f6ego3r2j****</ScalingActivityId>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <ActivityType>CapacityChange</ActivityType>\\n</ScaleWithAdjustmentResponse>","errorExample":""}]',
+ 'title' => '基于指定调整规则触发弹性扩缩容',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 调用该接口前,请确保满足以下条件:'."\n"
+ .' - 伸缩组处于Active状态。'."\n"
+ .' - 伸缩组内没有执行中的伸缩活动。'."\n"
+ ."\n"
+ .'- 当伸缩组没有执行中的伸缩活动时,该接口可以绕过冷却时间(Cooldown)直接执行伸缩活动。'."\n"
+ .'- 如果伸缩规则需要增加的ECS实例数加上当前伸缩组的实例数(Total Capacity)大于最大实例数(MaxSize),则按Total Capacity=MaxSize执行伸缩活动。'."\n"
+ .'- 如果当前伸缩组的实例数(Total Capacity)减去伸缩规则需要减少的ECS实例数小于最小实例数(MinSize),则按Total Capacity=MinSize执行伸缩活动。'."\n"
+ ."\n"
+ .'调用该接口返回成功,只是表示弹性伸缩服务接受了该接口的调用请求,可以执行伸缩活动,但不代表伸缩活动能够执行成功。您需要通过返回的`ScalingActivityId`查看该伸缩活动的执行状态。',
+ 'extraInfo' => '|HttpCode|错误码|错误信息|描述|'."\n"
+ .'|-----|-----|-----|-----|'."\n"
+ .'|403|Forbidden.Unauthorized|A required authorization for the specified action is not supplied.|您并未向弹性伸缩完整授权OpenAPI接口。|'."\n"
+ .'|400|IncorrectScalingGroupStatus|The current status of the specified scaling group does not support this action.|指定伸缩规则所属的伸缩组未处于Active状态。|'."\n"
+ .'|400|ScalingActivityInProgress|You cannot delete a scaling group or launch a new scaling activity while there is a scaling activity in progress for the specified scaling group.|指定伸缩规则所属的伸缩组有伸缩活动正在进行。|'."\n"
+ .'|400|InsufficientBalance|Your account does not have enough balance.|账号余额不足。|'."\n"
+ .'|400|QuotaExceed.Instance|Living instance quota exceeded.|ECS实例个数达到上限。|'."\n"
+ .'|400|IncorrectLoadBalancerStatus|The current status of the specified load balancer does not support this action.|指定伸缩规则所属的伸缩组的负载均衡实例未处于active状态。|'."\n"
+ .'|400|IncorrectLoadBalancerHealthCheck|The current health check type of specified load balancer does not support this action.|指定伸缩规则所属的伸缩组的负载均衡实例未开启健康检查。|'."\n"
+ .'|400|InvalidLoadBalancerId.IncorrectInstanceNetworkType|The network type of the instance in specified load balancer does not support this action.|指定的负载均衡实例含有的ECS实例的网络类型与伸缩组的网络类型不匹配。|'."\n"
+ .'|400|InvalidLoadBalancerId.VPCMismatch|The specified virtual switch and the instance in specified load balancer are not in the same VPC.|指定的伸缩组的负载均衡实例含有的ECS实例与VSwitchId不在同一个VPC当中。|'."\n"
+ .'|400|IncorrectDBInstanceStatus|The current status of DB instance "XXX" does not support this action.|指定伸缩规则所属的伸缩组的RDS实例未处于running状态。|'."\n"
+ .'|400|QuotaExceeded.DBInstanceSecurityIP|Security IP quota exceeded in DB instance "XXX".|指定伸缩规则所属的伸缩组的RDS实例访问白名单的IP个数达到上限。|'."\n"
+ .'|400|QuotaExceeded.SecurityGroupInstance|Instance quota exceeded in the specified security group.|指定的安全组已添加的ECS实例个数达到上限。|'."\n"
+ .'|400|IncorrectCapacity.NoChange|To execute the specified scaling rule, the total capacity will not change.|伸缩规则未造成伸缩组实例数的变化。|'."\n"
+ .'|400|QuotaExceeded.ScalingInstance|Scaling instance quota exceeded.|弹性伸缩的ECS实例使用个数达到上限。|'."\n"
+ .'|400|QuotaExceeded.AfterpayInstance|Living afterpay instance quota exceeded.|按量付费ECS实例的使用个数达到上限。|'."\n"
+ .'|400|ResourceNotAvailable.ECS|The specified region or zone does not offer the specified disk or instance category.|指定的区域无法创建指定的ECS实例类型或磁盘类型。|'."\n"
+ .'|400|ScalingRule.InvalidScalingRuleType|Specific scaling rule type: %s can not be executed.|无法执行当前类型的伸缩规则。|'."\n"
+ .'|400|InvalidStepAdjustments.NoStepFound|No adjustment step found for a metric value of: %s.|未找到符合条件的分步执行步骤。|'."\n"
+ .'|400|MissingParameter.MetricValue|Metric value must be specified for StepScalingRule.|执行分步伸缩规则必须指定指标值。|'."\n"
+ .'|400|MissingParameter.BreachThreshold|Breach threshold must be specified for StepScalingRule.|执行分步伸缩规则必须指定阈值。|'."\n"
+ .'|400|BreachThresholdBeyondPermitRange|Specific parameter "%s" beyond permit range.|阈值超过了可选范围。',
+ ],
+ 'ChangeResourceGroup' => [
+ 'summary' => '将一个伸缩组作为资源加入一个资源组。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '163910',
+ 'abilityTreeNodes' => [
+ 'FEATUREessXN6KX4',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属地域的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ResourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源类型。目前仅支持伸缩组,取值:scalinggroup。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'scalinggroup',
+ ],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待更换资源组的伸缩组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp17xb4x1vr29lgt****',
+ ],
+ ],
+ [
+ 'name' => 'NewResourceGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '将伸缩组更改到新的资源组后,新资源组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'rg-aek2ckjqe3****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<ChangeResourceGroupResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</ChangeResourceGroupResponse>","errorExample":""}]',
+ 'title' => '更改伸缩组所属的资源组',
+ 'description' => '## 接口说明'."\n"
+ ."\n"
+ .'- 资源是您在阿里云创建的云服务实体,例如,一个伸缩组就是一份资源。'."\n"
+ ."\n"
+ .'- 资源组是在阿里云账号下进行资源分组管理的一种机制,能够帮助您解决单个云账号内的资源分组和授权管理等复杂性问题。更多信息,请参见[什么是资源管理](~~94475~~)。',
+ ],
+ 'AttachServerGroups' => [
+ 'summary' => '从伸缩组添加一个或多个负载均衡服务器组,支持的服务器组类型包括:应用型负载均衡ALB (Application Load Balancer)、网络型负载均衡NLB (Network Load Balancer)。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '166340',
+ 'abilityTreeNodes' => [
+ 'FEATUREess2GK585',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从客户端生成一个参数值,确保不同请求之间,该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'ForceAttach',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否将当前伸缩组内的ECS实例或ECI实例添加到新增的服务器组。取值范围:'."\n"
+ ."\n"
+ .'- true:添加。'."\n"
+ ."\n"
+ .'- false:不添加。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ServerGroup',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '负载均衡服务器组的相关信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡服务器组的相关信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServerGroupId' => [
+ 'description' => '负载均衡服务器组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sgp-60ofsqhwer0b***',
+ ],
+ 'Type' => [
+ 'description' => '负载均衡服务器组类型。取值范围:'."\n"
+ ."\n"
+ .'- ALB:应用型负载均衡ALB(Application Load Balancer)。'."\n"
+ .'- NLB:网络型负载均衡NLB(Network Load Balancer)。'."\n"
+ .'- GWLB: 网关型负载均衡 GWLB(Gateway Load Balancer)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ALB',
+ ],
+ 'Weight' => [
+ 'description' => '弹性伸缩将ECS实例或ECI实例添加到服务器组后,ECS实例或ECI实例作为后端服务器的权重。取值范围:0~100。'."\n"
+ ."\n"
+ .'权重越高,ECS实例或ECI实例将被分配到越多的访问请求。如果权重为0,则ECS实例或ECI实例不会收到访问请求。'."\n"
+ ."\n"
+ .'> ALB和NLB类型负载均衡该参数为必填参数,GWLB类型负载均衡不能设置该参数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ 'Port' => [
+ 'description' => '弹性伸缩将ECS实例或ECI实例添加到服务器组后,ECS实例或ECI实例使用的端口号。'."\n"
+ ."\n"
+ .'取值范围:1~65535。'."\n"
+ ."\n"
+ .'> ALB和NLB类型负载均衡该参数为必填参数,GWLB类型负载均衡不能设置该参数且默认值为6081。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '22',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingActivityId' => [
+ 'description' => '添加负载均衡服务器组并将伸缩组内的ECS实例或ECI实例添加到该服务器组时,伸缩活动的ID。'."\n"
+ .'>仅当`ForceAttach`取值为`true`时,返回该参数。',
+ 'type' => 'string',
+ 'example' => 'asa-bp1c9djwrgxjyk31****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '74C4E313-8570-479F-8791-DC25360D****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp1c9djwrgxjyk31****\\",\\n \\"RequestId\\": \\"74C4E313-8570-479F-8791-DC25360D****\\"\\n}","errorExample":""},{"type":"xml","example":"<AttachServerGroupsResponse>\\n <ScalingActivityId>asa-bp1c9djwrgxjyk31****</ScalingActivityId>\\n <RequestId>74C4E313-8570-479F-8791-DC25360D****</RequestId>\\n</AttachServerGroupsResponse>","errorExample":""}]',
+ 'title' => '添加一个或多个负载均衡服务器组',
+ ],
+ 'DetachServerGroups' => [
+ 'summary' => '从伸缩组移除一个或多个负载均衡服务器组,支持的服务器组类型包括应用型负载均衡ALB(Application Load Balancer)和网络型负载均衡NLB(Network Load Balancer)。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '166341',
+ 'abilityTreeNodes' => [
+ 'FEATUREess2GK585',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。'."\n"
+ ."\n"
+ .'从客户端生成一个参数值,确保不同请求之间,该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'ForceDetach',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否从待移除服务器组中移除当前伸缩组内的ECS实例或ECI实例。 取值范围:'."\n"
+ ."\n"
+ .'- true:移除。'."\n"
+ ."\n"
+ .'- false:不移除。'."\n"
+ ."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ServerGroup',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '负载均衡服务器组的相关信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡服务器组的相关信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServerGroupId' => [
+ 'description' => '负载均衡服务器组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sgp-1gv2uidn2msy****',
+ ],
+ 'Type' => [
+ 'description' => '负载均衡服务器组类型。取值范围:'."\n"
+ ."\n"
+ .'- ALB:应用型负载均衡ALB(Application Load Balancer)。'."\n"
+ .'- NLB:网络型负载均衡NLB(Network Load Balancer)。'."\n"
+ .'- GWLB: 网关型负载均衡 GWLB(Gateway Load Balancer)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ALB',
+ ],
+ 'Port' => [
+ 'description' => '负载均衡服务器组中ECS实例或ECI实例使用的端口号。'."\n"
+ ."\n"
+ .'> ALB和NLB类型负载均衡该参数为必填参数,GWLB类型负载均衡不能设置该参数且默认值为6081。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '22',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ScalingActivityId' => [
+ 'description' => '移出负载均衡服务器组,并移出该服务器组内的ECS实例或ECI实例时,伸缩活动的ID。'."\n"
+ ."\n"
+ .'>仅当`ForceDetach`取值为`true`时,返回该参数。',
+ 'type' => 'string',
+ 'example' => 'asa-bp1gbswjhjrw8tko****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '6EF9BFEE-FE07-4627-B8FB-14326FB9****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp1gbswjhjrw8tko****\\",\\n \\"RequestId\\": \\"6EF9BFEE-FE07-4627-B8FB-14326FB9****\\"\\n}","errorExample":""},{"type":"xml","example":"<DetachServerGroupsResponse>\\n <ScalingActivityId>asa-bp1gbswjhjrw8tko****</ScalingActivityId>\\n <RequestId>6EF9BFEE-FE07-4627-B8FB-14326FB9****</RequestId>\\n</DetachServerGroupsResponse>","errorExample":""}]',
+ 'title' => '移除一个或多个负载均衡服务器组',
+ ],
+ 'ModifyInstanceAttribute' => [
+ 'summary' => '调用API ModifyInstanceAttribute修改伸缩组中一台ECS实例的部分信息,目前仅支持修改手动添加到伸缩组中的实例的生命周期托管属性,方便弹性伸缩更加灵活地管理伸缩组中的ECS实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '201545',
+ 'abilityTreeNodes' => [
+ 'FEATUREessBFHJ1B',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组内ECS实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-bp109k5j3dum1ce6****',
+ ],
+ ],
+ [
+ 'name' => 'Entrusted',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '对于手动添加到伸缩组的ECS实例,是否将该实例的生命周期托管给伸缩组。取值范围:'."\n"
+ ."\n"
+ .'- true:托管。该实例的生命周期由弹性伸缩管理,与伸缩组自动创建的实例一致。实例被移出伸缩组时(不包括通过调用DetachInstances参数移出的实例)会自动释放。'."\n"
+ .'- false:不托管。该实例在被移出伸缩组时不会被释放。'."\n"
+ ."\n"
+ .'> 该参数仅支持手动添加到伸缩组的实例,而不支持在伸缩组内创建的实例。',
+ 'type' => 'boolean',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-bp109k5j3dum1ce6****',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyInstanceAttributeResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</ModifyInstanceAttributeResponse>","errorExample":""}]',
+ 'title' => '修改伸缩组中一台ECS实例的部分信息',
+ ],
+ 'DescribePatternTypes' => [
+ 'summary' => '使用指定实例属性方式配置伸缩配置时,调用API DescribePatternTypes接口根据指定实例的vCPU核数、内存大小、规格族级别以及可接受的最高价格等属性,筛选出符合要求的实例规格。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'abilityTreeCode' => '222292',
+ 'abilityTreeNodes' => [
+ 'FEATUREessWJGIW5',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '所属地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '交换机的ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '交换机的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-bp14zolna43z266bq****',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'ZoneId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '可用区ID列表。当传入交换机ID时,此参数无效。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '可用区ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou-g',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'SpotStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '后付费实例的抢占策略。取值范围:'."\n"
+ ."\n"
+ .'- NoSpot:普通的按量付费实例。'."\n"
+ .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n"
+ .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。'."\n"
+ ."\n"
+ .'默认值:NoSpot。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'NoSpot',
+ ],
+ ],
+ [
+ 'name' => 'Cores',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例规格的vCPU内核数目。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'Memory',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例规格的内存大小,单位为GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ ],
+ [
+ 'name' => 'MaxPrice',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '按量付费实例或者抢占式实例可接受的每小时最高价格。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'InstanceFamilyLevel',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例规格族级别。取值范围:'."\n"
+ ."\n"
+ .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n"
+ .'- EnterpriseLevel:企业级。性能稳定,资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n"
+ .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的情况。更多信息,请参见[突发性能实例](~~59977~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'EnterpriseLevel',
+ ],
+ ],
+ [
+ 'name' => 'ExcludedInstanceType',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '需要排除的实例规格。通过使用通配符(*)可以排除单个规格或者整个规格族。例如:'."\n"
+ ."\n"
+ .'- ecs.c6.large:表示排除ecs.c6.large实例规格。'."\n"
+ .'- ecs.c6.*:表示排除整个c6规格族的实例规格。'."\n"
+ ."\n"
+ .'>如果需要排除多个实例规格,请使用分隔符(/)隔开单个实例规格。例如`ecs.n1.small/ecs.n1.*/*7*`。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '需要排除的实例规格。通过使用通配符(*)可以排除单个规格或者整个规格族。例如:'."\n"
+ ."\n"
+ .'- ecs.c6.large:表示排除ecs.c6.large实例规格。'."\n"
+ .'- ecs.c6.*:表示排除整个c6规格族的实例规格。'."\n"
+ ."\n"
+ .'>如果需要排除多个实例规格,请使用分隔符(/)隔开单个实例规格。例如`ecs.n1.small/ecs.n1.*/*7*`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.c6.xlarge',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'Architecture',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例规格所属的架构类型。取值范围:'."\n"
+ ."\n"
+ .'- X86:X86计算。'."\n"
+ .'- Heterogeneous:异构计算,例如GPU或FPGA等。'."\n"
+ .'- BareMental:弹性裸金属服务器。'."\n"
+ .'- Arm:Arm计算。'."\n"
+ ."\n"
+ .'默认值:包含所有架构类型。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格所属的架构类型。取值范围:'."\n"
+ ."\n"
+ .'- X86:X86计算。'."\n"
+ .'- Heterogeneous:异构计算,例如GPU或FPGA等。'."\n"
+ .'- BareMental:弹性裸金属服务器。'."\n"
+ .'- Arm:Arm计算。'."\n"
+ ."\n"
+ .'默认值:包含所有架构类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'X86',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'BurstablePerformance',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否为性能突发实例规格。取值范围:'."\n"
+ ."\n"
+ .'- Exclude:不包含性能突发实例规格。'."\n"
+ .'- Include:包含性能突发实例规格。'."\n"
+ .'- Required:只包含性能突发实例规格。'."\n"
+ ."\n"
+ .'默认值:Include。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Include',
+ ],
+ ],
+ [
+ 'name' => 'CoresList',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例规格的vCPU内核数目,可以指定多个。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格的vCPU内核数目,可以指定多个。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'MemoryList',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例规格的内存大小,单位为GiB,可以指定多个。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格的内存大小,单位为GiB,可以指定多个。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'ChannelId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '渠道ID。'."\n"
+ .'>该参数不对外开放(仅为内部保留参数)。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '79425074',
+ ],
+ ],
+ [
+ 'name' => 'InstanceTypeFamilies',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '指定查询的实例规格族。N 表示可以设置多个实例规格族,N 的取值范围:1~10。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定查询的实例规格族。N 表示可以设置多个实例规格族,N 的取值范围:1~10。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.g6',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'MinimumCpuCoreCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例规格的最小vCPU内核数目。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'MaximumCpuCoreCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例规格的最大vCPU内核数目。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ ],
+ [
+ 'name' => 'GpuSpecs',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'GPU 类型。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'GPU 类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'NVIDIA V100',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'InstanceCategories',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例规格分类。取值范围:'."\n"
+ ."\n"
+ .'- General-purpose: 通用型。'."\n"
+ .'- Compute-optimized:计算型。'."\n"
+ .'- Memory-optimized:内存型。'."\n"
+ .'- Big data:大数据型。'."\n"
+ .'- Local SSDs :本地 SSD 型。'."\n"
+ .'- High Clock Speed :高主频型。'."\n"
+ .'- Enhanced :增强型。'."\n"
+ .'- Shared:共享型。'."\n"
+ .'- Compute-optimized with GPU :GPU 计算型。'."\n"
+ .'- Visual Compute-optimized :视觉计算型。'."\n"
+ .'- Heterogeneous Service :异构服务型。'."\n"
+ .'- Compute-optimized with FPGA :FPGA 计算型。'."\n"
+ .'- Compute-optimized with NPU :NPU 计算型。'."\n"
+ .'- ECS Bare Metal :弹性裸金属服务器。'."\n"
+ .'- High Performance Compute:高性能计算型。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格分类。取值范围:'."\n"
+ ."\n"
+ .'- General-purpose: 通用型。'."\n"
+ .'- Compute-optimized:计算型。'."\n"
+ .'- Memory-optimized:内存型。'."\n"
+ .'- Big data:大数据型。'."\n"
+ .'- Local SSDs :本地 SSD 型。'."\n"
+ .'- High Clock Speed :高主频型。'."\n"
+ .'- Enhanced :增强型。'."\n"
+ .'- Shared:共享型。'."\n"
+ .'- Compute-optimized with GPU :GPU 计算型。'."\n"
+ .'- Visual Compute-optimized :视觉计算型。'."\n"
+ .'- Heterogeneous Service :异构服务型。'."\n"
+ .'- Compute-optimized with FPGA :FPGA 计算型。'."\n"
+ .'- Compute-optimized with NPU :NPU 计算型。'."\n"
+ .'- ECS Bare Metal :弹性裸金属服务器。'."\n"
+ .'- High Performance Compute:高性能计算型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Compute-optimized with GPU',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'CpuArchitectures',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例规格的CPU架构。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格的CPU架构。取值范围:'."\n"
+ ."\n"
+ .'> N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n"
+ ."\n"
+ .'- X86。'."\n"
+ .'- ARM。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'X86',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'PhysicalProcessorModels',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例的处理器型号。N表示可以设置多个处理器型号,N的取值范围:1~10。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例的处理器型号。N表示可以设置多个处理器型号,N的取值范围:1~10。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Intel Xeon(Ice Lake) Platinum 8369B',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'MinimumEniQuantity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例最小支持挂载的弹性网卡上限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'MinimumEniPrivateIpAddressQuantity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例最小单块弹性网卡的IPv4地址上限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'MinimumEniIpv6AddressQuantity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例最小单块弹性网卡的IPv6地址上限。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'MinimumInitialCredit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例最小突发性能实例t5、t6的初始vCPU积分值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '12',
+ ],
+ ],
+ [
+ 'name' => 'MinimumBaselineCredit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例最小突发性能实例t5、t6的基准vCPU计算性能(所有vCPU之和)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '12',
+ ],
+ ],
+ [
+ 'name' => 'MinimumMemorySize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例最小内存。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ ],
+ [
+ 'name' => 'MaximumMemorySize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例最大内存。单位:GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ ],
+ [
+ 'name' => 'MinimumGpuAmount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例最小 GPU 数目。取值范围:正整数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'MaximumGpuAmount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例最大 GPU 数目。取值范围:正整数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'PatternTypes' => [
+ 'description' => '符合条件的实例规格。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '符合条件的实例规格。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '实例规格名称。',
+ 'type' => 'string',
+ 'example' => 'ecs.c7.xlarge',
+ ],
+ 'InstanceFamilyLevel' => [
+ 'description' => '实例规格族级别。可能值:'."\n"
+ ."\n"
+ .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n"
+ .'- EnterpriseLevel:企业级。性能稳定,资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n"
+ .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的情况。更多信息,请参见[突发性能实例](~~59977~~)。',
+ 'type' => 'string',
+ 'example' => 'EnterpriseLevel',
+ ],
+ 'InstanceTypeFamily' => [
+ 'description' => '实例规格族。',
+ 'type' => 'string',
+ 'example' => 'ecs.c7',
+ ],
+ 'Cores' => [
+ 'description' => '实例规格的vCPU核数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ 'Memory' => [
+ 'description' => '实例规格的内存大小,单位为GiB。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '8',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PatternTypes\\": [\\n {\\n \\"InstanceType\\": \\"ecs.c7.xlarge\\",\\n \\"InstanceFamilyLevel\\": \\"EnterpriseLevel\\",\\n \\"InstanceTypeFamily\\": \\"ecs.c7\\",\\n \\"Cores\\": 4,\\n \\"Memory\\": 8\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribePatternTypesResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <PatternTypes>\\n <InstanceType>ecs.c7.xlarge</InstanceType>\\n <InstanceFamilyLevel>EnterpriseLevel</InstanceFamilyLevel>\\n <InstanceTypeFamily>ecs.c7</InstanceTypeFamily>\\n <Cores>4</Cores>\\n <Memory>8</Memory>\\n </PatternTypes>\\n</DescribePatternTypesResponse>","errorExample":""}]',
+ 'title' => 'DescribePatternTypes',
+ ],
+ 'ApplyScalingGroup' => [
+ 'summary' => '如果您需要通过配置文件方式快速创建和管理ECI类型的伸缩组,则可以通过调用API ApplyScalingGroup来实现该功能。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '206918',
+ 'abilityTreeNodes' => [
+ 'FEATUREessGIWHSQ',
+ 'FEATUREessXN6KX4',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'schema' => [
+ 'title' => '幂等参数',
+ 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'Content',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '配置文件内容。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment labels: app: nginx spec: replicas: 3 selector: matchLabels: app: nginx template: metadata: labels: app: nginx annotations: k8s.aliyun.com/eip-bandwidth: 10 k8s.aliyun.com/eci-with-eip: true spec: containers: - name: nginx image: nginx:1.14.2 ports: - containerPort: 80',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '所属地域的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CC107349-57B7-4405-B1BF-9BF5AF7F****',
+ ],
+ 'ScalingGroupId' => [
+ 'description' => '生效的伸缩组ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp1igpak5ft1flyp****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'IdempotentParameterMismatch',
+ 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CC107349-57B7-4405-B1BF-9BF5AF7F****\\",\\n \\"ScalingGroupId\\": \\"asg-bp1igpak5ft1flyp****\\"\\n}","errorExample":""},{"type":"xml","example":"<ApplyScalingGroupResponse>\\n <RequestId>CC107349-57B7-4405-B1BF-9BF5AF7F****</RequestId>\\n <ScalingGroupId>asg-bp1igpak5ft1flyp****</ScalingGroupId>\\n</ApplyScalingGroupResponse>","errorExample":""}]',
+ 'title' => 'ApplyScalingGroup',
+ 'description' => '## 接口说明'."\n"
+ .'ApplyScalingGroup目前支持以Kubernetes Deployment资源定义格式快速创建ECI伸缩组。同时支持ECI实例对Kubernetes YAML拓展annotation,更多信息,请参见本文的《支持的annotation列表》。'."\n"
+ ."\n\n"
+ .'YAML配置与伸缩组的映射关系:通过YAML中定义的`namespace`、`kind`、`name`三元组映射伸缩组`name`,一个地域(region)下同一个YAMLl配置只能映射同一个伸缩组。例如:'."\n"
+ .'如果使用默认命名空间(namespace)下`name`为`nginx`的Deployment YAML配置,则映射同地域(region)下名称为`k8s_default_Deployment_nginx`的伸缩组。'."\n"
+ ."\n\n"
+ .'基于YAML配置管理伸缩组的逻辑:'."\n"
+ ."\n"
+ .'- 当YAML配置映射伸缩组存在时,会基于YAML配置更新伸缩组。'."\n"
+ .'- 当YAML配置映射伸缩组不存在时,会基于YAML配置创建对应伸缩组。'."\n"
+ ."\n"
+ .'### 注意事项 '."\n"
+ ."\n"
+ .'- 当YAML配置未指定VPC、vSwitch、安全组annotation时,系统会自动创建默认VPC,在该VPC下会创建默认交换机,以及创建弹性伸缩的默认安全组(`ess-default-sg`)。其中,安全组策略默认开放TCP协议的22、3389端口以及ICMP(IPv4)协议,如果您有其他端口协议需求,可另行调整安全组策略。'."\n"
+ .'- 当使用公网镜像时,需配置开启公网访问能力,设置`k8s.aliyun.com/eci-with-eip pod annotation`开启EIP功能。'."\n"
+ .'- ApplyScalingGroup应用YAML配置后,伸缩组及伸缩配置会立即生效,如果指定replicas>0,则会自动创建资源。'."\n"
+ ."\n"
+ .'### 支持的annotation列表'."\n"
+ .'更多annotation信息,请参考[ECI Pod Annotation](~~186939~~) 。'."\n"
+ .'|参数|示例值|说明|'."\n"
+ .'|-----|-----|-----|'."\n"
+ .'|k8s.aliyun.com/ess-scaling-group-min-size|1|伸缩组最小值。默认值:0。'."\n"
+ .'|k8s.aliyun.com/ess-scaling-group-max-size|20|伸缩组最大值。默认值:max(replicas, 30)。'."\n"
+ .'|k8s.aliyun.com/eci-ntp-server|100.100.*.*|NTP Server。'."\n"
+ .'|k8s.aliyun.com/eci-use-specs|2-4Gi|2核4 G规格配置。更多信息,请参见[多规格创建Pod](~~451267~~)。'."\n"
+ .'|k8s.aliyun.com/eci-vswitch|vsw-bp1xpiowfm5vo8o3c****|指定交换机ID,支持指定多个交换机实现多可用区功能。'."\n"
+ .'|k8s.aliyun.com/eci-security-group|sg-bp1dktddjsg5nktv****|指定安全组ID。要求如下:支持指定一个或多个安全组,最多可以指定5个安全组;指定的安全组必须属于同一VPC;指定的安全组的类型必须相同。'."\n"
+ .'|k8s.aliyun.com/eci-sls-enable|"false"|配置为false表示关闭日志采集功能。通过SLS CRD方式采集日志时,如果某些Pod不需要采集日志,可配置该Annotation来关闭日志采集功能,避免系统自动创建Logtail而造成资源浪费。'."\n"
+ .'|k8s.aliyun.com/eci-spot-strategy|SpotAsPriceGo|抢占式实例的出价策略,可根据需要进行配置。SpotWithPriceLimit:自定义设置抢占实例价格上限。此时必须设置`k8s.aliyun.com/eci-spot-price-limit`;SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。'."\n"
+ .'|k8s.aliyun.com/eci-spot-price-limit|"0.5"|抢占式实例的每小时价格上限,最多支持精确到小数点后三位。仅当`k8s.aliyun.com/eci-spot-strategy`设置为`SpotWithPriceLimit`时有效。'."\n"
+ .'|k8s.aliyun.com/eci-with-eip|"true"|配置为true表示自动创建并绑定EIP。'."\n"
+ .'|k8s.aliyun.com/eci-data-cache-bucket|default|指定DataCache的Bucket。使用DataCache创建Pod时必须配置。'."\n"
+ .'|k8s.aliyun.com/eci-data-cache-pl|PL1|基于DataCache创建的云盘的性能等级。默认使用ESSD云盘,性能等级默认为PL1。'."\n"
+ .'|k8s.aliyun.com/eci-data-cache-provisionedIops|"40000"|ESSD AutoPL云盘预配置的读写IOPS。取值范围:0~min{50000, 1000 * 容量-基准性能},基准性能=min{1800+50 * 容量, 50000}。更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。如果添加了该Annotation,则基于DataCache创建的云盘类型为ESSD AutoPL云盘。'."\n"
+ .'|k8s.aliyun.com/eci-data-cache-burstingEnabled|"true"|ESSD AutoPL云盘是否开启Burst(性能突发)。更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。如果添加了该Annotation,则基于DataCache创建的云盘类型为ESSD AutoPL云盘。'."\n"
+ .'|k8s.aliyun.com/eci-custom-tags|"env:test,name:alice"|绑定的标签(Tag)字符串,最多可以绑定3个标签。标签键和标签值之间用半角冒号(:)隔开,多个标签之间用半角逗号(,)隔开。',
+ ],
+ 'ModifyAlertConfiguration' => [
+ 'summary' => '伸缩活动在执行成功、失败或者被拒绝时,弹性伸缩支持通过短信、邮件方式发送消息通知,您需要在接收到消息后自行处理相关事件。您可以调用API ModifyAlertConfiguration设置伸缩组中需要发送短信、邮件通知的伸缩活动状态,方便您及时了解某个伸缩活动的变化,快速响应提高扩缩容效率。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '208787',
+ 'abilityTreeNodes' => [
+ 'FEATUREessLTO4TI',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1eyv4qn8ssgv43****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ScaleStatus',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '伸缩组中需要发送短信、邮件通知的伸缩活动状态。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组中需要发送短信、邮件通知的伸缩活动状态。取值范围:'."\n"
+ ."\n"
+ .'- ScaleSuccessful:伸缩活动执行成功时发送短信、邮件通知。'."\n"
+ .'- ScaleRejected:伸缩活动被拒绝时发送短信、邮件通知。'."\n"
+ .'- ScaleFailed:伸缩活动执行失败时发送短信、邮件通知。'."\n"
+ ."\n"
+ .'>不设置该参数(该参数为空)时,表示取消全部短信、邮件发送通知。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ScaleSuccessful',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '73469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"73469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyAlertConfigurationResponse>\\n <RequestId>73469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</ModifyAlertConfigurationResponse>","errorExample":""}]',
+ 'title' => 'ModifyAlertConfiguration',
+ ],
+ 'DescribeAlertConfiguration' => [
+ 'summary' => '伸缩活动在执行成功、失败或者被拒绝时,弹性伸缩支持通过短信、邮件方式发送消息通知,您需要在接收到消息后自行处理相关事件。您可以调用API DescribeAlertConfiguration查询伸缩组中的发送短信、邮件通知的伸缩活动状态,方便您及时了解某个伸缩活动的变化,快速响应提高扩缩容效率。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '208803',
+ 'abilityTreeNodes' => [
+ 'FEATUREessFY8KDA',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属地域的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'ScaleStatuses' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ScaleStatus' => [
+ 'description' => '伸缩组中的发送短信、站内信和邮件通知的伸缩活动状态。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '伸缩组中的发送短信、站内信和邮件通知的伸缩活动状态。可能值:'."\n"
+ ."\n"
+ .'- ScaleSuccessful:伸缩活动执行成功时发送了短信、邮件通知。'."\n"
+ .'- ScaleRejected:伸缩活动被拒绝时发送了短信、邮件通知。'."\n"
+ .'- ScaleFailed:伸缩活动执行失败时发送了短信、邮件通知。',
+ 'type' => 'string',
+ 'example' => 'ScaleSuccessful',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScaleStatuses\\": {\\n \\"ScaleStatus\\": [\\n \\"ScaleSuccessful\\"\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeAlertConfigurationResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <ScaleStatuses>ScaleSuccessful</ScaleStatuses>\\n</DescribeAlertConfigurationResponse>","errorExample":""}]',
+ 'title' => ' DescribeAlertConfiguration',
+ ],
+ 'SuspendInstanceRefresh' => [
+ 'summary' => '实例刷新任务执行期间,如果您觉得配置存在问题,但不确定是否需要回滚,您可以调用此API暂停实例刷新任务,在此期间,您可以检查配置是否正确。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '232222',
+ 'abilityTreeNodes' => [
+ 'FEATUREessPV8ZVU',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceRefreshTaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例刷新任务ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ir-a12ds234fasd*****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<SuspendInstanceRefreshResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</SuspendInstanceRefreshResponse>","errorExample":""}]',
+ 'title' => 'SuspendInstanceRefresh',
+ 'description' => '## 接口说明'."\n"
+ .'处于回滚阶段的实例刷新任务不支持该操作。',
+ ],
+ 'ResumeInstanceRefresh' => [
+ 'summary' => '恢复一个处于暂停状态的实例刷新任务。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '232223',
+ 'abilityTreeNodes' => [
+ 'FEATUREessPV8ZVU',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceRefreshTaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例刷新任务ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ir-a12ds234fasd*****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<ResumeInstanceRefreshResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</ResumeInstanceRefreshResponse>","errorExample":""}]',
+ 'title' => 'ResumeInstanceRefresh',
+ ],
+ 'CancelInstanceRefresh' => [
+ 'summary' => '取消实例刷新任务,会保留已经完成替换和扩容的新实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '232214',
+ 'abilityTreeNodes' => [
+ 'FEATUREessPV8ZVU',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp1igpak5ft1flyp****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceRefreshTaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例刷新的任务ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ir-aca123sf****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<CancelInstanceRefreshResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</CancelInstanceRefreshResponse>","errorExample":""}]',
+ 'title' => 'CancelInstanceRefresh',
+ 'description' => '## 接口说明'."\n"
+ .'正在回滚中的实例刷新任务不支持取消。',
+ ],
+ 'DescribeInstanceRefreshes' => [
+ 'summary' => '如果您需要查看实例刷新任务的基本信息、 实例刷新任务的进度等信息,您可以调用DescribeInstanceRefreshes查询该伸缩组的实例刷新任务。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '232225',
+ 'abilityTreeNodes' => [
+ 'FEATUREessACRSW1',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'caeba0bbb2be03f84eb48b699f0a****',
+ ],
+ ],
+ [
+ 'name' => 'MaxResults',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时每页的最大条目数,取值范围:1~50。 默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'maximum' => '50',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => false,
+ 'example' => 'asg-bp1ffogfdauy0jw0****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceRefreshTaskId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '待查询实例刷新任务的 ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '待查询实例刷新任务的 ID。N的取值范围:1~20',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ir-adfa12312*****',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'NextToken' => [
+ 'description' => '下一个查询开始的Token,NextToken为空表示没有下一个。',
+ 'type' => 'string',
+ 'example' => 'caeba0bbb2be03f84eb48b699f****',
+ ],
+ 'MaxResults' => [
+ 'description' => '单页查询的最大条目数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'TotalCount' => [
+ 'description' => '实例刷新任务总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'InstanceRefreshTasks' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceRefreshTask' => [
+ 'description' => '实例刷新任务列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例刷新任务。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceRefreshTaskId' => [
+ 'description' => '实例刷新任务ID。',
+ 'type' => 'string',
+ 'example' => 'ir-1adfa123****',
+ ],
+ 'ScalingGroupId' => [
+ 'description' => '伸缩组ID。',
+ 'type' => 'string',
+ 'example' => 'asg-bp16pbfcr8j9*****',
+ ],
+ 'RegionId' => [
+ 'description' => '伸缩组所属地域的ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'EndTime' => [
+ 'description' => '实例刷新任务的结束时间。',
+ 'type' => 'string',
+ 'example' => '2024-08-22T02:09:00Z',
+ ],
+ 'StartTime' => [
+ 'description' => '实例刷新任务的开始时间。',
+ 'type' => 'string',
+ 'example' => '2024-08-22T01:09:00Z',
+ ],
+ 'Status' => [
+ 'description' => '实例刷新任务当前的状态,可能值:'."\n"
+ ."\n"
+ .'- Pending: 实例刷新任务创建成功,等待调度;'."\n"
+ .'- InProgress:实例刷新任务正在处理中;'."\n"
+ .'- Paused: 实例刷新任务处于暂停中;'."\n"
+ .'- CheckpointPause:因任务进度到达刷新任务检查点(`Checkpoint.Percentage`)而处于暂停状态;'."\n"
+ .'- Failed:实例刷新任务执行失败;'."\n"
+ .'- Successful:实例刷新任务执行成功;'."\n"
+ .'- Cancelling:实例刷新任务取消中;'."\n"
+ .'- Cancelled: 实例刷新任务取消完成;'."\n"
+ .'- RollbackInProgress:实例刷新任务回滚中;'."\n"
+ .'- RollbackSuccessful:实例刷新任务回滚成功;'."\n"
+ .'- RollbackFailed: 实例刷新任务回滚失败。',
+ 'type' => 'string',
+ 'example' => 'InProgress',
+ ],
+ 'Detail' => [
+ 'description' => '实例刷新任务执行失败时,具体的失败原因。',
+ 'type' => 'string',
+ 'example' => 'The task exceeded its maximum run time of one week. So the task failed.',
+ ],
+ 'MinHealthyPercentage' => [
+ 'description' => '实例刷新期间,伸缩组中保持正常提供服务实例数量占伸缩组容量的比例。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'MaxHealthyPercentage' => [
+ 'description' => '实例刷新期间,伸缩组中实例数量可以超出伸缩组容量的比例。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '120',
+ ],
+ 'DesiredConfiguration' => [
+ 'description' => '实例刷新的期望配置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ImageId' => [
+ 'description' => '镜像文件ID,自动创建实例时使用的镜像资源。',
+ 'type' => 'string',
+ 'example' => 'm-uf6g5noisr****',
+ ],
+ 'ScalingConfigurationId' => [
+ 'description' => '伸缩配置ID。',
+ 'type' => 'string',
+ 'example' => 'asc-wz91ibkhfor****',
+ ],
+ 'LaunchTemplateId' => [
+ 'description' => '实例启动模板的 ID,用于指定伸缩组从实例启动模板获取启动配置信息。',
+ 'type' => 'string',
+ 'example' => 'lt-2ze5x4mp*****',
+ ],
+ 'LaunchTemplateVersion' => [
+ 'description' => '实例启动模板的版本。可能值:'."\n"
+ ."\n"
+ .'- 固定的模板版本号。'."\n"
+ .'- Default:始终使用模板默认版本。'."\n"
+ .'- Latest:始终使用模板最新版本。',
+ 'type' => 'string',
+ 'example' => 'Latest',
+ ],
+ 'LaunchTemplateOverrides' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'LaunchTemplateOverride' => [
+ 'description' => '扩展启动模板的实例规格信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '扩展启动模板的实例规格信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '指定的实例规格,会覆盖启动模板中的实例规格。',
+ 'type' => 'string',
+ 'example' => 'ecs.g7.2xlarge',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Containers' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Container' => [
+ 'description' => '实例包含的容器列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例包含的容器列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '自定义的容器名称。',
+ 'type' => 'string',
+ 'example' => 'name',
+ ],
+ 'Image' => [
+ 'description' => '容器镜像。',
+ 'type' => 'string',
+ 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:latest',
+ ],
+ 'Commands' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Command' => [
+ 'description' => '容器启动命令。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动命令。',
+ 'type' => 'string',
+ 'example' => 'sleep',
+ ],
+ ],
+ ],
+ ],
+ 'EnvironmentVars' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EnvironmentVar' => [
+ 'description' => '环境变量的信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '环境变量的信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '环境变量名。',
+ 'type' => 'string',
+ 'example' => 'PATH',
+ ],
+ 'Value' => [
+ 'description' => '环境变量值。',
+ 'type' => 'string',
+ 'example' => '/usr/local/bin',
+ ],
+ 'FieldRefFieldPath' => [
+ 'description' => '> 该参数未开放使用。',
+ 'type' => 'string',
+ 'example' => 'fieldPath',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Args' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Arg' => [
+ 'description' => '容器启动命令对应的参数。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动命令对应的参数。',
+ 'type' => 'string',
+ 'example' => '100',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'FinishedUpdateCapacity' => [
+ 'description' => '已经完成刷新的容量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalNeedUpdateCapacity' => [
+ 'description' => '一共需要完成刷新的容量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'SkipMatching' => [
+ 'description' => '是否跳过和期望配置匹配的实例。'."\n"
+ ."\n"
+ .'> 系统会根据期望伸缩配置的 ID 界定是否匹配,不会对比具体的配置项。'."\n"
+ ."\n"
+ .'可能值:'."\n"
+ ."\n"
+ .'- true:跳过。当启动实例刷新任务时,系统会检查每个实例的配置。对于已经使用期望配置创建的实例,不执行刷新操作。'."\n"
+ .'- false:不跳过。在启动实例刷新任务后,刷新任务启动时所有伸缩组中的实例。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'CheckpointPauseTime' => [
+ 'description' => '当进入刷新任务检查点时,暂停的时长。单位:分钟。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ 'Checkpoints' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Checkpoint' => [
+ 'description' => '刷新任务检查点:指定在实例刷新过程中,当新实例占比达到设定值时自动暂停任务CheckpointPauseTime分钟。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '刷新任务检查点:指定在实例刷新过程中,当新实例占比达到设定值时自动暂停任务CheckpointPauseTime分钟。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Percentage' => [
+ 'description' => '伸缩组中新实例占总实例的占比,到达该占比时任务自动暂停。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f****\\",\\n \\"MaxResults\\": 50,\\n \\"TotalCount\\": 100,\\n \\"InstanceRefreshTasks\\": {\\n \\"InstanceRefreshTask\\": [\\n {\\n \\"InstanceRefreshTaskId\\": \\"ir-1adfa123****\\",\\n \\"ScalingGroupId\\": \\"asg-bp16pbfcr8j9*****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"EndTime\\": \\"2024-08-22T02:09:00Z\\",\\n \\"StartTime\\": \\"2024-08-22T01:09:00Z\\",\\n \\"Status\\": \\"InProgress\\",\\n \\"Detail\\": \\"The task exceeded its maximum run time of one week. So the task failed.\\",\\n \\"MinHealthyPercentage\\": 80,\\n \\"MaxHealthyPercentage\\": 120,\\n \\"DesiredConfiguration\\": {\\n \\"ImageId\\": \\"m-uf6g5noisr****\\",\\n \\"ScalingConfigurationId\\": \\"asc-wz91ibkhfor****\\",\\n \\"LaunchTemplateId\\": \\"lt-2ze5x4mp*****\\",\\n \\"LaunchTemplateVersion\\": \\"Latest\\",\\n \\"LaunchTemplateOverrides\\": {\\n \\"LaunchTemplateOverride\\": [\\n {\\n \\"InstanceType\\": \\"ecs.g7.2xlarge\\"\\n }\\n ]\\n },\\n \\"Containers\\": {\\n \\"Container\\": [\\n {\\n \\"Name\\": \\"name\\",\\n \\"Image\\": \\"registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:latest\\",\\n \\"Commands\\": {\\n \\"Command\\": [\\n \\"sleep\\"\\n ]\\n },\\n \\"EnvironmentVars\\": {\\n \\"EnvironmentVar\\": [\\n {\\n \\"Key\\": \\"PATH\\",\\n \\"Value\\": \\"/usr/local/bin\\",\\n \\"FieldRefFieldPath\\": \\"fieldPath\\"\\n }\\n ]\\n },\\n \\"Args\\": {\\n \\"Arg\\": [\\n \\"100\\"\\n ]\\n }\\n }\\n ]\\n }\\n },\\n \\"FinishedUpdateCapacity\\": 10,\\n \\"TotalNeedUpdateCapacity\\": 20,\\n \\"SkipMatching\\": true,\\n \\"CheckpointPauseTime\\": 30,\\n \\"Checkpoints\\": {\\n \\"Checkpoint\\": [\\n {\\n \\"Percentage\\": 60\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeInstanceRefreshesResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <NextToken>caeba0bbb2be03f84eb48b699f****</NextToken>\\n <MaxResults>50</MaxResults>\\n <TotalCount>100</TotalCount>\\n <InstanceRefreshTasks>\\n <InstanceRefreshTaskId>ir-1adfa123****</InstanceRefreshTaskId>\\n <ScalingGroupId>asg-bp16pbfcr8j9*****</ScalingGroupId>\\n <RegionId>cn-hangzhou</RegionId>\\n <EndTime>2024-08-22T02:09:00Z</EndTime>\\n <StartTime>2024-08-22T01:09:00Z</StartTime>\\n <Status>InProgress</Status>\\n <Detail>The task exceeded its maximum run time of one week. So the task failed.</Detail>\\n <MinHealthyPercentage>80</MinHealthyPercentage>\\n <MaxHealthyPercentage>120</MaxHealthyPercentage>\\n <DesiredConfiguration>\\n <ImageId>m-uf6g5noisr****</ImageId>\\n <ScalingConfigurationId>asc-wz91ibkhfor****</ScalingConfigurationId>\\n </DesiredConfiguration>\\n <FinishedUpdateCapacity>10</FinishedUpdateCapacity>\\n <TotalNeedUpdateCapacity>20</TotalNeedUpdateCapacity>\\n </InstanceRefreshTasks>\\n</DescribeInstanceRefreshesResponse>","errorExample":""}]',
+ 'title' => 'DescribeInstanceRefreshes',
+ ],
+ 'RollbackInstanceRefresh' => [
+ 'summary' => '在实例刷新任务执行过程中,如果发现期望配置不符合需求,您可以调用此API来回滚实例刷新任务。在回滚时,系统将使用伸缩组当前生效的配置来创建新的实例,以替换那些基于期望配置创建的实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '232220',
+ 'abilityTreeNodes' => [
+ 'FEATUREessPV8ZVU',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属地域的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceRefreshTaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例刷新任务ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ir-a12ds234fasd*****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'B13527BF-1FBD-4334-A512-20F5E9D3****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B13527BF-1FBD-4334-A512-20F5E9D3****\\"\\n}","errorExample":""},{"type":"xml","example":"<RollbackInstanceRefreshResponse>\\n <RequestId>B13527BF-1FBD-4334-A512-20F5E9D3****</RequestId>\\n</RollbackInstanceRefreshResponse>","errorExample":""}]',
+ 'title' => 'RollbackInstanceRefresh',
+ ],
+ 'StartInstanceRefresh' => [
+ 'summary' => '在您需要将新的伸缩配置应用到伸缩组实例中时,或需要更新伸缩组中实例的镜像时,您可以调用本接口完成伸缩组中实例的刷新。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '232212',
+ 'abilityTreeNodes' => [
+ 'FEATUREessPV8ZVU',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组所属的地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123e4567-e89b-12d3-a456-42665544****',
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '伸缩组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'asg-bp18p2yfxow2dloq****',
+ ],
+ ],
+ [
+ 'name' => 'MinHealthyPercentage',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例刷新期间,保持伸缩组中正常提供服务占伸缩组容量的比例。取值范围 0~100。 默认值:80。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'MaxHealthyPercentage',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例刷新期间,伸缩组中实例可以超出伸缩组容量的比例。取值范围 100~200。 默认值:120。'."\n"
+ ."\n"
+ .'> 当MinHealthyPercentage = MaxHealthyPercentage = 100时,每次会刷新1个实例。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'DesiredConfiguration',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '实例刷新的期望配置。'."\n"
+ ."\n"
+ .'> - ScalingConfigurationId 、ImageId、LaunchTemplateId、Containers 不可以同时设置,且必须要设置一个。'."\n"
+ .'- 刷新任务会跳过伸缩组中与期望配置匹配的实例。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ImageId' => [
+ 'description' => '镜像ID。'."\n"
+ ."\n"
+ .'> - 实例刷新任务执行成功后,伸缩组当前生效的配置信息中的镜像配置会更新为该镜像。'."\n"
+ .'- 伸缩组当前生效的配置信息来源是启动模板时不支持设置该参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'm-2ze8cqacj7opnf***',
+ ],
+ 'ScalingConfigurationId' => [
+ 'description' => '伸缩配置的ID。'."\n"
+ ."\n"
+ .'> 实例刷新任务执行成功后,伸缩组生效的伸缩配置会更新为该配置。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'asc-2zed7lqn4ts4****',
+ ],
+ 'LaunchTemplateId' => [
+ 'description' => '实例启动模板的 ID,用于指定伸缩组从实例启动模板获取启动配置信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lt-2ze2qli30u***',
+ ],
+ 'LaunchTemplateVersion' => [
+ 'description' => '实例启动模板的版本。取值范围:'."\n"
+ ."\n"
+ .'- 固定的模板版本号。'."\n"
+ .'- Default:始终使用模板默认版本。'."\n"
+ .'- Latest:始终使用模板最新版本。'."\n"
+ ."\n"
+ .'> 版本设置为 Default、Latest 时,实例刷新任务不支持回滚。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '8',
+ ],
+ 'LaunchTemplateOverrides' => [
+ 'description' => '扩展启动模板的实例规格信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '扩展启动模板的实例规格信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '本参数用于指定实例规格,会覆盖启动模板中的实例规格。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs.g7.2xlarge',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'Containers' => [
+ 'description' => '实例包含的容器列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例包含的容器列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '自定义的容器名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'nginx',
+ ],
+ 'Image' => [
+ 'description' => '容器镜像。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:latest',
+ ],
+ 'Commands' => [
+ 'description' => '容器启动命令。最多 20 个。每个命令最多包含 256 个字符。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动命令。最多包含 256 个字符。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sleep',
+ ],
+ 'required' => false,
+ ],
+ 'Args' => [
+ 'description' => '容器启动命令对应的参数。最多 10 个。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器启动命令对应的参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ 'required' => false,
+ ],
+ 'EnvironmentVars' => [
+ 'description' => '环境变量的信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '环境变量的信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '环境变量名。长度为 1~128 位。格式要求:\\[0-9a-zA-Z\\],以及下划线,不能以数字开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PATH',
+ ],
+ 'Value' => [
+ 'description' => '环境变量值。长度为 0~256 位。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/usr/local/bin',
+ ],
+ 'FieldRefFieldPath' => [
+ 'description' => '> 该参数未开放使用。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'fieldPath',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'SkipMatching',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否跳过和期望配置匹配的实例。'."\n"
+ ."\n"
+ .'> 系统会根据期望伸缩配置的 ID 界定是否匹配,不会对比具体的配置项。'."\n"
+ ."\n"
+ .'取值范围:'."\n"
+ ."\n"
+ .'- true:跳过。当启动实例刷新任务时,系统会检查每个实例的配置。对于已经使用期望配置创建的实例,不执行刷新操作。'."\n"
+ .'- false:不跳过。在启动实例刷新任务后,刷新任务启动时所有伸缩组中的实例。'."\n"
+ ."\n"
+ .'默认值:true。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'Checkpoints',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '刷新任务检查点:指定在实例刷新过程中,当新实例占比达到设定值时自动暂停任务CheckpointPauseTime分钟。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '刷新任务检查点:指定在实例刷新过程中,当新实例占比达到设定值时自动暂停任务CheckpointPauseTime分钟。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Percentage' => [
+ 'description' => '伸缩组中新实例占总实例的占比,到达该占比时任务自动暂停。取值范围:1 ~100 (%)。'."\n"
+ ."\n"
+ .'> 需要从小到大设置,且最后一个进度百分比需要为100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '20',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'CheckpointPauseTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '当进入刷新任务检查点时,暂停的时长。'."\n"
+ .'- 单位:分钟'."\n"
+ .'- 取值范围 : 1~ 2880'."\n"
+ .' - 默认值:60。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****',
+ ],
+ 'InstanceRefreshTaskId' => [
+ 'description' => '实例刷新任务ID。',
+ 'type' => 'string',
+ 'example' => 'ir-a12ds234fasd*****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"InstanceRefreshTaskId\\": \\"ir-a12ds234fasd*****\\"\\n}","errorExample":""},{"type":"xml","example":"<StartInstanceRefreshResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <InstanceRefreshTaskId>ir-a12ds234fasd*****</InstanceRefreshTaskId>\\n</StartInstanceRefreshResponse>","errorExample":""}]',
+ 'title' => 'StartInstanceRefresh',
+ 'description' => '## 接口说明'."\n"
+ .'- 伸缩组同时刻只能有一个正在运行中的实例刷新任务。'."\n"
+ .'- 目前该功能仅支持扩容策略为**优先级策略**的ECS伸缩组。**使用vCPU个数计算伸缩组容量**的伸缩组和实例回收模式为**停机回收模式**、**强制停机回收模式**的伸缩组不支持该功能。'."\n"
+ .'- 实例刷新期间,可以进行正常扩缩容,但扩容时会以实例刷新的期望配置进行扩容。'."\n"
+ .'- 伸缩组手动添加的实例、处于备用状态、保护状态的实例会被实例刷新任务忽略,不参与实例刷新。',
+ ],
+ ],
+ 'endpoints' => [
+ [
+ 'regionId' => 'cn-qingdao',
+ 'endpoint' => 'ess.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-beijing',
+ 'endpoint' => 'ess.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-zhangjiakou',
+ 'endpoint' => 'ess.cn-zhangjiakou.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-zhengzhou-jva',
+ 'endpoint' => 'ess.cn-zhengzhou-jva.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-huhehaote',
+ 'endpoint' => 'ess.cn-huhehaote.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-wulanchabu',
+ 'endpoint' => 'ess.cn-wulanchabu.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-hangzhou',
+ 'endpoint' => 'ess.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shanghai',
+ 'endpoint' => 'ess.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-nanjing',
+ 'endpoint' => 'ess.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-fuzhou',
+ 'endpoint' => 'ess.cn-fuzhou.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shenzhen',
+ 'endpoint' => 'ess.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-heyuan',
+ 'endpoint' => 'ess.cn-heyuan.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-guangzhou',
+ 'endpoint' => 'ess.cn-guangzhou.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-chengdu',
+ 'endpoint' => 'ess.cn-chengdu.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-wuhan-lr',
+ 'endpoint' => 'ess.cn-wuhan-lr.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-hongkong',
+ 'endpoint' => 'ess.cn-hongkong.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-northeast-1',
+ 'endpoint' => 'ess.ap-northeast-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-northeast-2',
+ 'endpoint' => 'ess.ap-northeast-2.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-1',
+ 'endpoint' => 'ess.ap-southeast-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-2',
+ 'endpoint' => 'ess.ap-southeast-2.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-3',
+ 'endpoint' => 'ess.ap-southeast-3.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-5',
+ 'endpoint' => 'ess.ap-southeast-5.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-6',
+ 'endpoint' => 'ess.ap-southeast-6.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'us-east-1',
+ 'endpoint' => 'ess.us-east-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'us-west-1',
+ 'endpoint' => 'ess.us-west-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'eu-west-1',
+ 'endpoint' => 'ess.eu-west-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'eu-central-1',
+ 'endpoint' => 'ess.eu-central-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-south-1',
+ 'endpoint' => 'ess.ap-south-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'me-east-1',
+ 'endpoint' => 'ess.me-east-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-hangzhou-finance',
+ 'endpoint' => 'ess.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shanghai-finance-1',
+ 'endpoint' => 'ess.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shenzhen-finance-1',
+ 'endpoint' => 'ess.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-7',
+ 'endpoint' => 'ess.ap-southeast-7.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-beijing-finance-1',
+ 'endpoint' => 'ess.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'me-central-1',
+ 'endpoint' => 'ess.me-central-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-heyuan-acdr-1',
+ 'endpoint' => 'ess.cn-heyuan-acdr-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'na-south-1',
+ 'endpoint' => 'ess.na-south-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'us-southeast-1',
+ 'endpoint' => 'ess.us-southeast-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-wulanchabu-gic-1',
+ 'endpoint' => 'ess.cn-wulanchabu-gic-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-north-2-gov-1',
+ 'endpoint' => 'ess.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-zhongwei',
+ 'endpoint' => 'ess.cn-zhongwei.aliyuncs.com',
+ ],
+ ],
+];