From 1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634 Mon Sep 17 00:00:00 2001 From: Zhineng Li Date: Sun, 12 Jul 2026 17:11:17 +0800 Subject: update APIs 20260712 --- data/zh_cn/ess/2022-02-22/api-docs.php | 41128 ++++++++++++------------------- 1 file changed, 16094 insertions(+), 25034 deletions(-) (limited to 'data/zh_cn/ess/2022-02-22') diff --git a/data/zh_cn/ess/2022-02-22/api-docs.php b/data/zh_cn/ess/2022-02-22/api-docs.php index f1c3fca..7c4f52a 100644 --- a/data/zh_cn/ess/2022-02-22/api-docs.php +++ b/data/zh_cn/ess/2022-02-22/api-docs.php @@ -1,225 +1,100 @@ '1.0', - 'info' => [ - 'style' => 'RPC', - 'product' => 'Ess', - 'version' => '2022-02-22', - ], + 'info' => ['style' => 'RPC', 'product' => 'Ess', 'version' => '2022-02-22'], 'directories' => [ [ - 'id' => 172331, - 'title' => '伸缩组', - 'type' => 'directory', 'children' => [ - 'CreateScalingGroup', - 'ModifyScalingGroup', - 'EnableScalingGroup', - 'DisableScalingGroup', - 'SetGroupDeletionProtection', - 'DeleteScalingGroup', - 'DescribeScalingGroups', - 'DescribeScalingGroupDetail', - 'DescribeScalingInstances', - 'DescribeScalingActivities', - 'DescribeScalingActivityDetail', - 'AttachLoadBalancers', - 'DetachLoadBalancers', - 'AttachDBInstances', - 'DetachDBInstances', - 'SuspendProcesses', - 'ResumeProcesses', - 'AttachVServerGroups', - 'DetachVServerGroups', - 'AttachAlbServerGroups', - 'DetachAlbServerGroups', - 'AttachServerGroups', - 'DetachServerGroups', - 'ChangeResourceGroup', - 'ApplyScalingGroup', - 'DescribeElasticStrength', + 'CreateScalingGroup', 'ModifyScalingGroup', 'EnableScalingGroup', 'DisableScalingGroup', 'SetGroupDeletionProtection', 'DeleteScalingGroup', 'DescribeScalingGroups', 'DescribeScalingGroupDetail', 'DescribeScalingInstances', 'DescribeScalingActivities', 'DescribeScalingActivityDetail', 'AttachLoadBalancers', 'DetachLoadBalancers', 'AttachDBInstances', 'DetachDBInstances', 'SuspendProcesses', 'ResumeProcesses', 'AttachVServerGroups', 'DetachVServerGroups', 'AttachAlbServerGroups', + 'DetachAlbServerGroups', 'AttachServerGroups', 'DetachServerGroups', 'ApplyScalingGroup', 'DescribeElasticStrength', ], - ], - [ - 'id' => 172353, - 'title' => '伸缩配置', 'type' => 'directory', - 'children' => [ - 'CreateScalingConfiguration', - 'DescribeScalingConfigurations', - 'ModifyScalingConfiguration', - 'DeleteScalingConfiguration', - 'CreateEciScalingConfiguration', - 'DescribeEciScalingConfigurations', - 'DescribeEciScalingConfigurationDetail', - 'ModifyEciScalingConfiguration', - 'ApplyEciScalingConfiguration', - 'DeleteEciScalingConfiguration', - 'DescribePatternTypes', - ], + 'title' => '伸缩组', + 'id' => 437070, ], [ - 'id' => 172361, - 'title' => '伸缩规则', + 'children' => ['CreateScalingConfiguration', 'DescribeScalingConfigurations', 'ModifyScalingConfiguration', 'DeleteScalingConfiguration', 'CreateEciScalingConfiguration', 'DescribeEciScalingConfigurations', 'DescribeEciScalingConfigurationDetail', 'ModifyEciScalingConfiguration', 'ApplyEciScalingConfiguration', 'DeleteEciScalingConfiguration', 'DescribePatternTypes', 'DescribeCandidateInstanceType'], 'type' => 'directory', - 'children' => [ - 'CreateScalingRule', - 'ModifyScalingRule', - 'DescribeScalingRules', - 'DeleteScalingRule', - ], + 'title' => '伸缩配置', + 'id' => 437072, ], [ - 'id' => 172367, - 'title' => '触发任务', + 'children' => ['CreateScalingRule', 'ModifyScalingRule', 'DescribeScalingRules', 'DeleteScalingRule'], 'type' => 'directory', - 'children' => [ - 'ExecuteScalingRule', - 'ScaleWithAdjustment', - 'AttachInstances', - 'RemoveInstances', - 'DetachInstances', - ], + 'title' => '伸缩规则', + 'id' => 437074, ], [ - 'id' => 172370, - 'title' => '定时任务', + 'children' => ['ExecuteScalingRule', 'ScaleWithAdjustment', 'RemoveInstances', 'DetachInstances'], 'type' => 'directory', - 'children' => [ - 'CreateScheduledTask', - 'ModifyScheduledTask', - 'DescribeScheduledTasks', - 'DeleteScheduledTask', - ], + 'title' => '触发任务', + 'id' => 437075, ], [ - 'id' => 172375, - 'title' => '报警任务', + 'children' => ['DescribeScheduledTasks'], 'type' => 'directory', - 'children' => [ - 'CreateAlarm', - 'DescribeAlarms', - 'ModifyAlarm', - 'EnableAlarm', - 'DisableAlarm', - 'DeleteAlarm', - ], + 'title' => '定时任务', + 'id' => 437077, ], [ - 'id' => 196165, - 'title' => '实例刷新', + 'children' => ['CreateAlarm', 'DescribeAlarms', 'ModifyAlarm', 'EnableAlarm', 'DisableAlarm', 'DeleteAlarm'], 'type' => 'directory', - 'children' => [ - 'DescribeInstanceRefreshes', - 'StartInstanceRefresh', - 'CancelInstanceRefresh', - 'RollbackInstanceRefresh', - 'SuspendInstanceRefresh', - 'ResumeInstanceRefresh', - ], + 'title' => '报警任务', + 'id' => 437078, ], [ - 'id' => 172382, - 'title' => '生命周期挂钩', + 'children' => ['DescribeInstanceRefreshes', 'StartInstanceRefresh', 'CancelInstanceRefresh', 'RollbackInstanceRefresh', 'SuspendInstanceRefresh', 'ResumeInstanceRefresh'], 'type' => 'directory', - 'children' => [ - 'CreateLifecycleHook', - 'ModifyLifecycleHook', - 'DescribeLifecycleHooks', - 'RecordLifecycleActionHeartbeat', - 'DescribeLifecycleActions', - 'CompleteLifecycleAction', - 'DeleteLifecycleHook', - ], + 'title' => '实例刷新', + 'id' => 437079, ], [ - 'id' => 172390, - 'title' => '事件通知', + 'children' => ['RecordLifecycleActionHeartbeat', 'DescribeLifecycleActions', 'CompleteLifecycleAction'], 'type' => 'directory', - 'children' => [ - 'CreateNotificationConfiguration', - 'ModifyNotificationConfiguration', - 'DescribeNotificationConfigurations', - 'DeleteNotificationConfiguration', - 'DescribeNotificationTypes', - ], + 'title' => '生命周期挂钩', + 'id' => 437080, ], [ - 'id' => 199238, - 'title' => '健康诊断', + 'children' => ['CreateNotificationConfiguration', 'ModifyNotificationConfiguration', 'DescribeNotificationConfigurations', 'DeleteNotificationConfiguration', 'DescribeNotificationTypes'], 'type' => 'directory', - 'children' => [ - 'CreateDiagnoseReport', - 'DescribeDiagnoseReports', - 'DescribeScalingGroupDiagnoseDetails', - ], + 'title' => '事件通知', + 'id' => 437085, ], [ - 'id' => 172396, - 'title' => '实例', + 'children' => ['CreateDiagnoseReport', 'DescribeDiagnoseReports', 'DescribeScalingGroupDiagnoseDetails'], 'type' => 'directory', - 'children' => [ - 'EnterStandby', - 'ExitStandby', - 'RebalanceInstances', - 'SetInstanceHealth', - 'SetInstancesProtection', - ], + 'title' => '健康诊断', + 'id' => 437086, ], [ - 'id' => 172402, - 'title' => '地域', + 'children' => ['EnterStandby', 'ExitStandby', 'RebalanceInstances', 'SetInstanceHealth', 'SetInstancesProtection'], 'type' => 'directory', - 'children' => [ - 'DescribeRegions', - ], + 'title' => '实例', + 'id' => 437087, ], [ - 'id' => 172404, - 'title' => '标签', + 'children' => ['ListTagKeys', 'ListTagValues'], 'type' => 'directory', - 'children' => [ - 'TagResources', - 'ListTagResources', - 'UntagResources', - 'ListTagKeys', - 'ListTagValues', - ], + 'title' => '标签', + 'id' => 437090, ], [ - 'id' => 188157, - 'title' => '其他', - 'type' => 'directory', 'children' => [ - 'VerifyUser', - 'VerifyAuthentication', - 'DescribeLimitation', - 'ModifyInstanceAttribute', - 'DescribeAlertConfiguration', - 'ModifyAlertConfiguration', - 'DescribeInstanceCreateAndDeleteStatistics', - 'QueryPredictiveValue', - 'QueryHistoricalMetric', - 'QueryPredictiveTaskInfo', - 'QueryPredictiveMetric', - 'DeleteDiagnoseReport', - 'DescribeScalingActivityStatistics', + 'VerifyUser', 'VerifyAuthentication', 'DescribeAlertConfiguration', 'ModifyAlertConfiguration', 'DescribeInstanceCreateAndDeleteStatistics', 'QueryPredictiveValue', 'QueryHistoricalMetric', 'QueryPredictiveTaskInfo', 'QueryPredictiveMetric', 'DeleteDiagnoseReport', 'DescribeScalingActivityStatistics', 'AttachInstances', 'ChangeResourceGroup', 'CreateLifecycleHook', 'CreateScheduledTask', 'DeleteLifecycleHook', 'DeleteScheduledTask', 'DescribeLifecycleHooks', 'DescribeLimitation', 'DescribeRegions', + 'ListTagResources', 'ModifyInstanceAttribute', 'ModifyLifecycleHook', 'ModifyScheduledTask', 'TagResources', 'UntagResources', ], + 'type' => 'directory', + 'title' => '其他', + 'id' => 437095, ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ - 'CreateScalingGroup' => [ - 'summary' => '如果您需要根据业务变动需求与策略自动增加或减少指定类型的实例数量,则可以通过调用API CreateScalingGroup创建伸缩组来自动调整您的业务计算能力(即实例数量)。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'ApplyEciScalingConfiguration' => [ + 'summary' => '如果您需要通过配置文件方式快速创建和管理ECI类型的伸缩配置,则可以通过调用API ApplyEciScalingConfiguration来创建或更新ECI类型的伸缩配置。', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -231,855 +106,663 @@ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '125385', - 'abilityTreeNodes' => [ - 'FEATUREessGIWHSQ', - ], + 'abilityTreeCode' => '212847', + 'abilityTreeNodes' => ['FEATUREessWJGIW5', 'FEATUREessT4M3WE'], ], 'parameters' => [ [ - 'name' => 'ScalingGroupName', + 'name' => 'Content', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的名称,同一地域下伸缩组名称唯一。'."\n" - ."\n" - .'长度为2~64个英文或中文字符,以数字、大小写英文字母或中文开头,可以包含数字、下划线(_)、短划线(-)和半角句号(.)。'."\n" - ."\n" - .'默认值为ScalingGroupId的值。', - 'type' => 'string', - 'required' => false, - 'example' => 'scalinggroup****', - ], + 'allowEmptyValue' => false, + 'schema' => ['description' => '配置文件内容。', 'type' => 'string', 'required' => true, 'example' => 'apiVersion: apps/v1'."\n" + .'kind: Deployment'."\n" + .'metadata:'."\n" + .' name: nginx-deployment'."\n" + .' labels:'."\n" + .' app: nginx'."\n" + .' spec:'."\n" + .' replicas: 3'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: nginx'."\n" + .' template:'."\n" + .' metadata:'."\n" + .' labels:'."\n" + .' app: nginx'."\n" + .' annotations:'."\n" + .' k8s.aliyun.com/eip-bandwidth: 10'."\n" + .' k8s.aliyun.com/eci-with-eip: true'."\n" + .' spec:'."\n" + .' containers:'."\n" + .' - name: nginx'."\n" + .' image: nginx:1.14.2'."\n" + .' ports:'."\n" + .' - containerPort: 80'], ], [ - 'name' => 'LaunchTemplateId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '实例启动模板ID,用于指定伸缩组从实例启动模板获取启动配置信息。', - 'type' => 'string', - 'required' => false, - 'example' => 'lt-m5e3ofjr1zn1aw7**** ', - ], + 'schema' => ['description' => '所属地域的ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], ], [ - 'name' => 'LaunchTemplateVersion', + 'name' => 'Format', 'in' => 'query', - 'schema' => [ - 'description' => '实例启动模板的版本。取值范围:'."\n" - ."\n" - .'- 固定的模板版本号。'."\n" - ."\n" - .'- Default:始终使用模板默认版本。'."\n" - ."\n" - .'- Latest:始终使用模板最新版本。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Default', - ], + 'schema' => ['description' => '可选,默认值格式为YAML,当前仅支持YAML格式。', 'type' => 'string', 'required' => false, 'example' => 'YAML'], ], [ - 'name' => 'InstanceId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '实例的ID。创建伸缩组时,将从指定的实例获取所需的配置信息,并自动创建伸缩配置。', - 'type' => 'string', - 'required' => false, - 'example' => 'i-28wt4****', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asg-bp1igpak5ft1flyp****'], ], [ - 'name' => 'RegionId', + 'name' => 'ScalingConfigurationId', 'in' => 'query', + 'schema' => ['description' => '待修改伸缩配置的ID。'."\n" + ."\n" + .'当基于Content配置信息更新ECI类型的伸缩配置时,指定`ScalingConfigurationId`;当未指定`ScalingConfigurationId`时,基于Content配置信息会新建ECI类型的伸缩配置。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'asc-bp1i65jd06v04vdh****'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-qingdao', + '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****'], + 'ScalingConfigurationId' => ['description' => '伸缩配置ID。', 'type' => 'string', 'example' => 'asc-bp16har3jpj6fjbx****'], + ], + ], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingConfigurationId\\": \\"asc-bp16har3jpj6fjbx****\\"\\n}","type":"json"}]', + 'title' => '基于配置文件管理伸缩配置', + 'description' => '基于YAML配置文件管理ECI类型的伸缩配置时,您需要注意以下事项:'."\n" + ."\n" + .'- 如果指定ECI类型的伸缩配置ID时,系统会基于YAML配置文件更新ECI类型的伸缩配置。'."\n" + .'- 如果未指定ECI类型的伸缩配置ID时,系统会基于YAML配置文件创建对应ECI类型的伸缩配置。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:ApplyEciScalingConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'ApplyScalingGroup' => [ + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'MinSize', + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '206521', + 'abilityTreeNodes' => ['FEATUREessGIWHSQ', 'FEATUREessXN6KX4'], + ], + 'parameters' => [ + [ + 'name' => 'Content', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组内实例台数的最小值,当伸缩组内实例数小于MinSize的值时,弹性伸缩会自动创建实例。 '."\n" - ."\n" - .'> MinSize的值必须小于或等于MaxSize的值。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'docRequired' => true, - 'example' => '2', - ], + 'allowEmptyValue' => false, + 'schema' => ['description' => '配置文件内容。', 'type' => 'string', 'required' => true, 'example' => 'apiVersion: apps/v1'."\n" + .'kind: Deployment'."\n" + .'metadata:'."\n" + .' name: nginx-deployment'."\n" + .' labels:'."\n" + .' app: nginx'."\n" + .' spec:'."\n" + .' replicas: 3'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: nginx'."\n" + .' template:'."\n" + .' metadata:'."\n" + .' labels:'."\n" + .' app: nginx'."\n" + .' annotations:'."\n" + .' k8s.aliyun.com/eip-bandwidth: 10'."\n" + .' k8s.aliyun.com/eci-with-eip: true'."\n" + .' spec:'."\n" + .' containers:'."\n" + .' - name: nginx'."\n" + .' image: nginx:1.14.2'."\n" + .' ports:'."\n" + .' - containerPort: 80'], ], [ - 'name' => 'MaxSize', + 'name' => 'RegionId', 'in' => 'query', + 'schema' => ['description' => '所属地域的ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '伸缩组内实例台数的最大值,当伸缩组内实例数大于MaxSize的值时,弹性伸缩会自动移出实例。 '."\n" - ."\n" - .'MaxSize的取值范围和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。'."\n" - ."\n" - .'MaxSize的取值范围和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。'."\n" - ."\n" - .'MaxSize的取值范围和弹性伸缩使用情况有关,请前往配额中心查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。'."\n" - ."\n" - .'如果**单个伸缩组可以设置的组内最大实例数**对应的配额值为2000,则MaxSize的取值范围为0~2000。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'docRequired' => true, - 'example' => '20', + '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****'], + ], + ], + ], + ], + 'title' => '基于配置文件管理伸缩组', + 'summary' => '如果您需要通过配置文件方式快速创建、管理伸缩组,则可以通过调用API ApplyScalingGroup来创建和管理伸缩组。', + 'description' => 'ApplyScalingGroup目前支持Kubernetes Deployment资源定义格式快速创建ECI伸缩组。同时支持ECI对Kubernetes YAML拓展annotation,详情参考《支持annotation列表》。'."\n" + ."\n" + .'YAML配置与伸缩组映射关系:通过YAML定义中的namespace、kind、name三元组映射伸缩组name。一个region下同一个YAML配置只能映射同一个伸缩组。示例:如果使用默认namespace下name为nginx的Deployment YAML配置,则映射同region下名称为k8s_default_Deployment_nginx伸缩组。'."\n" + ."\n" + .'基于YAML配置管理伸缩组逻辑:'."\n" + ."\n" + .'- 当YAML配置映射伸缩组存在时,会基于YAML配置更新伸缩组;'."\n" + .'- 当YAML配置映射伸缩组不存在时,会基于YAML配置创建对应伸缩组。'."\n" + ."\n" + .'### 注意事项 '."\n" + ."\n" + .'1. 当YAML配置未指定专有网络、vSwitch、安全组'."\n" + .'annotation时,系统会自动创建默认VPC,在该VPC下创建默认交换机,以及ESS默认安全组ess-default-sg。其中安全组策略默认开放TCP协议的22、3389端口以及ICMP(IPv4)协议,如果用户有其他端口协议需求,可以另行调整安全组策略。'."\n" + .'2. 当使用公网镜像时,需配置开启公网访问能力,设置k8s.aliyun.com/eci-with-eip pod annotation开启eip。'."\n" + .'3. 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核4G规格配置。更多信息,请参见[多规格创建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个标签。标签键和标签值之间用半角冒号隔开,多个标签之间用半角逗号隔开。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:ApplyScalingGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CC107349-57B7-4405-B1BF-9BF5AF7F****\\",\\n \\"ScalingGroupId\\": \\"asg-bp1igpak5ft1flyp****\\"\\n}","type":"json"}]', + ], + 'AttachAlbServerGroups' => [ + 'summary' => '对于需要动态调整实例数量来应对业务变化负载以及确保应用程序的高可用性场景,调用API AttachAlbServerGroups向伸缩组添加一个或多个ALB服务器组,可以在业务变化时自动实现弹性扩展,并根据负载情况动态分配流量、提高应用程序的稳定性。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'DefaultCooldown', + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '125338', + 'abilityTreeNodes' => ['FEATUREess2GK585'], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '一次伸缩活动(添加或移出实例)结束后的一段冷却时间。取值范围:0~86400,单位:秒。'."\n" - ."\n" - .'冷却时间内,该伸缩组不执行其他的伸缩活动,仅针对云监控报警任务触发的伸缩活动有效。 '."\n" - ."\n" - .'默认值:300。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '300', - ], + 'schema' => ['description' => '伸缩组所属地域的ID。'."\n" + ."\n" + .'例如`cn-hangzhou`、`cn-shanghai`,更多信息,请参见[地域和可用区](~~40654~~)。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'LoadBalancerIds', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '传统型负载均衡CLB(原SLB)实例ID。取值可以是由多台CLB实例ID组成一个JSON数组,ID之间用半角逗号(,)隔开。'."\n" - ."\n" - .'单个伸缩组可以关联的CLB总数和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以关联的负载均衡实例总数**对应的配额值。'."\n" - ."\n" - .'单个伸缩组可以关联的CLB总数和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以关联的负载均衡实例总数**对应的配额值。'."\n" - ."\n" - .'单个伸缩组可以关联的CLB总数和弹性伸缩使用情况有关,请前往配额中心查看**单个伸缩组可以关联的负载均衡实例总数**对应的配额值。', - 'type' => 'string', - 'required' => false, - 'example' => '["lb-bp1u7etiogg38yvwz****", "lb-bp168cqrux9ai9l7f****", "lb-bp1jv3m9zvj22ufxp****"]', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'DBInstanceIds', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => 'RDS实例ID。取值可以是由多台RDS实例ID组成一个JSON数组,ID之间用半角逗号(,)隔开。 '."\n" - ."\n" - .'单个伸缩组可以关联的RDS实例总数和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以关联的RDS实例总数**对应的配额值。'."\n" - ."\n" - .'单个伸缩组可以关联的RDS实例总数和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以关联的RDS实例总数**对应的配额值。'."\n" - ."\n" - .'单个伸缩组可以关联的RDS实例总数和弹性伸缩使用情况有关,请前往配额中心查看**单个伸缩组可以关联的RDS实例总数**对应的配额值。', - 'type' => 'string', - 'required' => false, - 'example' => '["rm-bp142f86de0t7****", "rm-bp18l1z42ar4o****", "rm-bp1lqr97h4aqk****"]', - ], + 'schema' => ['description' => '保证请求幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'RemovalPolicies', + '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' => 'AlbServerGroups', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '指定实例移出策略的筛选策略。取值范围:'."\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~~)。', + 'description' => 'ALB服务器组的相关信息集合。', 'type' => 'array', 'items' => [ - 'description' => '指定实例移出策略的筛选策略。取值范围:'."\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~~)。', - 'type' => 'string', + 'description' => 'ALB服务器组的相关信息集合。', + 'type' => 'object', + 'properties' => [ + 'AlbServerGroupId' => ['description' => 'ALB服务器组的ID。'."\n" + ."\n" + .'一个伸缩组支持关联的ALB服务器组数量有限,如需查看或手动申请提升配额值,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)。', 'type' => 'string', 'required' => true, 'example' => 'sgp-ddwb0y0g6y9bjm****'], + 'Weight' => ['description' => '弹性伸缩将ECS实例或ECI实例添加到ALB服务器组后,ECS实例或ECI实例作为后端服务器的权重。取值范围:0~100。'."\n" + ."\n" + .'权重越高,ECS实例或ECI实例将被分配到越多的访问请求。如果权重为0,则ECS实例或ECI实例不会收到访问请求。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '100'], + 'Port' => ['description' => '弹性伸缩将ECS实例或ECI实例添加到ALB服务器组后,ECS实例或ECI实例使用的端口号。'."\n" + ."\n" + .'取值范围:1~65535。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '22'], + ], 'required' => false, - 'example' => 'OldestScalingConfiguration', ], - 'required' => false, - 'maxItems' => 2, + 'required' => true, + 'maxItems' => 100, ], ], - [ - 'name' => 'VSwitchId', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '虚拟交换机的ID。指定后,伸缩组的网络类型为专有网络。'."\n" - ."\n" - .'> 当伸缩组未指定VSwitchId或VSwitchIds参数时,伸缩组的网络类型默认为经典网络。', - 'type' => 'string', - 'required' => false, - 'example' => 'vsw-bp14zolna43z266bq****', + '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****'], + ], ], ], - [ - 'name' => 'MultiAZPolicy', - 'in' => 'query', - 'schema' => [ - 'description' => '多可用区伸缩组ECS实例扩缩容策略。取值范围: '."\n" - .' '."\n" - .'- PRIORITY:先指定的虚拟交换机(VSwitchIds)优先级最高。弹性伸缩优先在优先级最高的交换机所在可用区尝试扩缩容,如果无法扩缩容,则自动在下一优先级的交换机所在可用区进行扩缩容。 '."\n" - .'- COST_OPTIMIZED:扩容时弹性伸缩按vCPU单价从低到高尝试创建ECS实例,缩容时按vCPU单价从高到低尝试移出ECS实例。当伸缩配置设置了抢占式计费方式的多实例规格时,优先创建对应抢占式实例。您可以继续通过CompensateWithOnDemand参数指定当抢占式实例由于库存等原因无法创建时,是否自动尝试以按量付费的方式创建。 '."\n" - ."\n" - .' > COST_OPTIMIZED仅在伸缩配置设置了多实例规格或者选用了抢占式实例的情况下生效。 '."\n" - .'- BALANCE:在伸缩组指定的多可用区之间均匀分配ECS实例。如果由于库存不足等原因可用区之间变得不平衡,您可以通过API [RebalanceInstance](~~71516~~)平衡资源。'."\n" - ."\n" - .' >如果`MultiAZPolicy`参数取值为`BALANCE`时,其和`MultiAZPolicy`参数取值为`COMPOSABLE`策略且`AzBalance`参数取值为`true`时的效果相同。 '."\n" - .'- COMPOSABLE:是一种组合策略,您可以根据需要自主组合上述多可用区伸缩组ECS实例的扩缩容策略。或者进一步指定参数,对伸缩组的容量进行更精细地控制。'."\n" - ."\n" - .'默认值:PRIORITY。', - 'type' => 'string', - 'required' => false, - 'example' => 'PRIORITY', + ], + 'title' => '添加一个或多个ALB服务器组', + 'description' => '向伸缩组添加ALB服务器组时,需要满足以下条件:'."\n" + ."\n" + .'- 伸缩组的网络类型必须为VPC,且与ALB服务器组处于同一VPC。'."\n" + .'- ALB服务器组必须处于可用状态。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:AttachAlbServerGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-2ze6wxj8vsohn6j9****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'AttachDBInstances' => [ + 'summary' => '通过调用API AttachDBInstances为伸缩组添加一个或多个RDS实例,可实现根据您的需要随时调整伸缩组内的RDS实例数量,增加您使用上的灵活性与实用性。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'HealthCheckType', + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '125394', + 'abilityTreeNodes' => ['FEATUREessJZ6DNF'], + ], + 'parameters' => [ + [ + 'name' => 'ScalingGroupId', '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', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1avr6ensitts3w****'], ], [ - 'name' => 'ScalingPolicy', + 'name' => 'ForceAttach', 'in' => 'query', - 'schema' => [ - 'description' => '指定伸缩组的回收模式。取值范围: '."\n" - .' '."\n" - .'- recycle:伸缩组的回收模式为停机回收模式。 '."\n" - .'- release:伸缩组的回收模式为释放模式。'."\n" - .'- forcerelease:伸缩组的回收模式为强制释放模式。'."\n" - .' >选择forcerelease后,在弹性收缩活动中系统会强制释放`运行中`(Running)的实例。强制释放实例相当于断电操作,会导致该实例内存以及存储中的临时数据被擦除,数据无法恢复,请您谨慎选择。'."\n" - .'- forcerecycle:伸缩组的回收模式为强制停机回收模式。'."\n" - .' >选择forcerecycle后,在弹性收缩活动中系统会强制关机`运行中`(Running)的实例。强制关机相当于断电操作,会导致该实例内存以及存储中的临时数据被擦除,数据无法恢复,请您谨慎选择。'."\n" - ."\n\n" - .'ScalingPolicy指定伸缩组的回收模式,但实例被移出伸缩组时的具体动作,由RemoveInstances的RemovePolicy参数决定。更多信息,请参见[RemoveInstances](~~25955~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'recycle', - ], + '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****', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。'."\n" + ."\n" + .'只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'OnDemandBaseCapacity', + 'name' => 'DBInstances', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩组所需要按量实例个数的最小值,取值范围:0~1000。当按量实例个数少于该值时,将优先创建按量实例。 ', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '30', + 'description' => 'RDS实例的ID。', + 'type' => 'array', + 'items' => ['description' => 'RDS实例的ID。'."\n" + ."\n" + .'>支持最多一次添加5个RDS实例到伸缩组。', 'type' => 'string', 'required' => false, 'example' => 'rm-bp12cy3**** '."\n"], + 'required' => true, + 'maxItems' => 5, ], ], [ - 'name' => 'OnDemandPercentageAboveBaseCapacity', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组满足最小按量实例数(OnDemandBaseCapacity)要求后,超出的实例中按量实例应占的比例,取值范围:0~100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '20', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], ], [ - 'name' => 'SpotInstanceRemedy', + 'name' => 'AttachMode', 'in' => 'query', - 'schema' => [ - 'description' => '是否开启补齐抢占式实例的弹性伸缩策略。开启后,当收到抢占式实例将被回收的系统消息时,伸缩组将尝试创建新的实例,替换掉将被回收的抢占式实例。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '伸缩组与数据库关联方式。取值范围:'."\n" + ."\n" + .'- SecurityIp:修改SecurityIp(即数据库的IP白名单)模式,通过将扩容实例自动添加到数据库白名单(目前仅RDS数据库支持)。'."\n" + .'- SecurityGroup:安全组模式,通过将伸缩配置安全组添加至数据库安全组白名单关联注册。'."\n" + ."\n" + .'默认值:SecurityIp。', 'type' => 'string', 'required' => false, 'example' => 'SecurityIp'], ], [ - 'name' => 'CompensateWithOnDemand', + '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' => [ - 'description' => '当MultiAZPolicy取值为COST_OPTIMIZED时,如果因价格、库存等原因无法创建足够的抢占式实例,是否允许自动尝试创建按量实例满足ECS实例数量要求。取值范围:'."\n" - ."\n" - .'- true:允许。'."\n" - .'- false:不允许。'."\n" - ."\n" - .'默认值:true。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], + ], + ], + ], + 'title' => '添加一个或多个RDS实例', + 'description' => '向伸缩组添加RDS实例时需要满足以下条件:'."\n" + ."\n" + .'- RDS实例与伸缩组必须属于同一账号。'."\n" + ."\n" + .'- RDS实例必须处于未锁定状态,关于锁定策略,请参见[RDS使用须知](~~41872~~)。'."\n" + ."\n" + .'- RDS实例必须处于运行中状态。'."\n" + ."\n" + .'- RDS实例必须是您当前账户所拥有的,并且该实例未被删除。'."\n" + ."\n" + .'- 如果将伸缩组中已存在的RDS实例再次添加到伸缩组,则伸缩组内的RDS实例数量不会改变,但系统会尝试把当前伸缩组内的ECS实例私网IP全部加入到RDS实例的IP白名单中。'."\n" + ."\n" + .'>添加RDS实例后,RDS IP白名单的default分组中包含的IP不能超过1000条。关于IP白名单,请参见[设置白名单](~~96118~~)。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:AttachDBInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'AttachInstances' => [ + 'summary' => '调用API AttachInstances将实例手动添加到伸缩组中,即您可以将伸缩组以外的ECS实例、ECI实例或托管实例添加到伸缩组中并提供服务,或者将伸缩组中处于节省停机状态的ECS实例重新启动变为服务状态(运行中状态)并在伸缩组中提供服务。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'SpotInstancePools', + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '125356', + 'abilityTreeNodes' => ['FEATUREessBFHJ1B'], + ], + 'parameters' => [ + [ + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '指定可用实例规格的个数,伸缩组将按成本最低的多个规格均衡创建抢占式实例。取值范围:1~10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '5', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'DesiredCapacity', + 'name' => 'Entrusted', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组内实例的期望数量,伸缩组会自动将实例数量维持在期望实例数。取值不得大于MaxSize,且不得小于MinSize。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '5', - ], + 'schema' => ['description' => '将已经存在的实例手动添加到伸缩组时,是否将该实例的生命周期托管给伸缩组。取值范围:'."\n" + ."\n" + .'- true:托管。该实例的生命周期由弹性伸缩管理,与伸缩组自动创建的实例一致。实例被移出伸缩组(不包括通过调用DetachInstances参数移出的实例)时会自动释放。'."\n" + .'- false:不托管。该实例在被移出伸缩组时不会被释放。'."\n" + ."\n" + .'>包年包月实例、托管实例和伸缩组中节省停机实例不支持设置该参数项。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'GroupDeletionProtection', + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '是否开启伸缩组删除保护。取值范围:'."\n" + 'description' => '待添加ECS实例、ECI实例、托管实例或者伸缩组中处于节省停机状态实例的ID。', + 'type' => 'array', + 'items' => ['description' => '待添加ECS实例、ECI实例、托管实例或者伸缩组中处于节省停机状态实例的ID。'."\n" ."\n" - .'- true:开启伸缩组删除保护,此时不能删除该伸缩组。'."\n" - .'- false:关闭伸缩组删除保护。'."\n" + .'举例如下所示:'."\n" ."\n" - .'默认值:false。', - 'type' => 'boolean', + .'- 待添加的ECS实例ID为i-28wt4****。'."\n" + .'- 待添加的ECI实例ID为eci-bp17gw49eu09yiwm****。'."\n" + .'- 待添加的托管实例ID为mi-2cx*****。'."\n" + .'- 待重新启动的伸缩组中节省停机状态实例ID为i-2cd2f****'."\n" + .'>一次调用请求中仅支持处理一种类型的实例。', 'type' => 'string', 'required' => false, 'example' => 'i-28wt4****'], 'required' => false, - 'example' => 'true', + 'maxItems' => 100, ], ], [ - 'name' => 'GroupType', + 'name' => 'LoadBalancerWeights', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩组管理的实例类型。取值范围:'."\n" - ."\n" - .'- ECS:伸缩组内管理的伸缩为ECS实例。'."\n" - ."\n" - .'- ECI:伸缩组内管理的伸缩为ECI实例。'."\n" + 'description' => 'ECS实例或ECI实例作为负载均衡实例后端服务器时的权重。', + 'type' => 'array', + 'items' => ['description' => '为ECS实例或ECI实例作为负载均衡实例后端服务器时的权重,该参数的取值范围:1~100。'."\n" + .'> 托管实例和伸缩组中节省停机实例不支持设置该参数项。'."\n" ."\n" - .'默认值:ECS。', - 'type' => 'string', + .'默认值:50。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50'], 'required' => false, - 'example' => 'ECS', + 'maxItems' => 100, ], ], [ - 'name' => 'ContainerGroupId', + 'name' => 'LifecycleHook', 'in' => 'query', - 'schema' => [ - 'description' => 'ECI实例ID,即容器组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'eci-uf6fonnghi50u374****', - ], + 'schema' => ['description' => '伸缩组添加实例时,是否触发扩容生命周期挂钩。取值范围:'."\n" + ."\n" + .'- true:触发。'."\n" + .'- false:不触发。'."\n" + .'>托管实例和伸缩组中节省停机实例不支持设置该参数项。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'VSwitchIds', + 'name' => 'RegionId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '一台或多台虚拟交换机的ID。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。指定后,伸缩组的网络类型为专有网络。'."\n" - ."\n" - .'指定多台虚拟交换机时:'."\n" - ."\n" - .'- 所属的VPC必须相同。'."\n" - ."\n" - .'- 所属的可用区可以不同。'."\n" - ."\n" - .'- 虚拟交换机的优先级按照数字升序排序,1表示最高优先级。当优先级较高的虚拟交换机所在可用区无法创建实例时,自动选择下一优先级的虚拟交换机创建实例。'."\n" - ."\n" - .'> 当伸缩组未指定VSwitchId或VSwitchIds参数时,伸缩组的网络类型默认为经典网络。', - 'type' => 'array', - 'items' => [ - 'description' => '一台或多台虚拟交换机的ID。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。指定后,伸缩组的网络类型为专有网络。'."\n" - ."\n" - .'指定多台虚拟交换机时:'."\n" - ."\n" - .'- 所属的VPC必须相同。'."\n" - ."\n" - .'- 所属的可用区可以不同。'."\n" - ."\n" - .'- 虚拟交换机的优先级按照数字升序排序,1表示最高优先级。当优先级较高的虚拟交换机所在可用区无法创建实例时,自动选择下一优先级的虚拟交换机创建实例。'."\n" - ."\n" - .'> 当伸缩组未指定VSwitchId或VSwitchIds参数时,伸缩组的网络类型默认为经典网络。', - 'type' => 'string', - 'required' => false, - 'example' => 'vsw-bp14zolna43z266bq****', - ], - 'required' => false, - 'maxItems' => 8, - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], ], [ - 'name' => 'LifecycleHooks', + 'name' => 'ClientToken', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '生命周期挂钩信息列表。', - 'type' => 'array', - 'items' => [ - 'description' => '生命周期挂钩信息列表。', - 'type' => 'object', - 'properties' => [ - 'DefaultResult' => [ - 'description' => '等待状态结束后的下一步动作。取值范围:'."\n" - ."\n" - .'- CONTINUE:继续响应弹性扩张活动或者继续响应弹性收缩活动。'."\n" - ."\n" - .'- ABANDON:直接释放弹性扩张活动创建出来的实例或者直接将弹性收缩活动中的实例从伸缩组移除。'."\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" - ."\n" - .'- SCALE_IN:伸缩组弹性收缩活动。'."\n" - ."\n" - .'> 若伸缩组指定生命周期挂钩,此参数必选,其他相关参数可选。', - 'type' => 'string', - 'required' => false, - 'example' => 'SCALE_OUT', - ], - 'NotificationMetadata' => [ - 'description' => '伸缩活动的等待状态的固定字符串信息。参数长度不超过4096个字符。弹性伸缩每次推送消息到通知对象时,会同时发送您预先指定的notificationmetadata参数值,便于管理和标记不同类别的通知信息。当您同时指定了notificationarn参数时,notificationmetadata才有效。', - 'type' => 'string', - 'required' => false, - 'example' => 'Test', - ], - 'NotificationArn' => [ - 'description' => '生命周期挂钩通知对象标识符,支持轻量消息队列(原 MNS)的队列或主题,参数取值格式:acs:ess:{region}:{account-id}:{resource-relative-id}。'."\n" - ."\n" - .'- region:伸缩组所在的地域。'."\n" - ."\n" - .'- account-id:阿里云账号ID。'."\n" - ."\n" - .'例如:'."\n" - ."\n" - .'- MNS队列:acs:ess:{region}:{account-id}:queue/{queuename}。'."\n" - ."\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延长实例的等待时间,也可以调用CompleteLifecycleAction提前结束伸缩活动的等待状态。'."\n" - ."\n" - .'默认值:600。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '600', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 100, - ], + 'schema' => ['description' => '保证请求幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'VServerGroups', + 'name' => 'IgnoreInvalidInstance', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '伸缩组关联虚拟服务器组的信息集合。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组关联虚拟服务器组的信息集合。', - 'type' => 'object', - 'properties' => [ - 'VServerGroupAttributes' => [ - 'description' => '后端服务器组属性。', - 'type' => 'array', - 'items' => [ - 'description' => '后端服务器组属性。', - 'type' => 'object', - 'properties' => [ - 'VServerGroupId' => [ - 'description' => '虚拟服务器组ID。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rsp-bp1443g77****', - ], - 'Weight' => [ - 'description' => '弹性伸缩将实例添加到虚拟服务器组后,实例作为后端服务器的权重。权重越高,实例将被分配到越多的访问请求。如果权重为0,则实例不会收到访问请求。取值范围:0~100。'."\n" - ."\n" - .'默认值:50。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - ], - 'Port' => [ - 'description' => '弹性伸缩将实例添加到虚拟服务器组后,实例使用的端口号,取值范围:1~65535。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '22', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 100, - ], - 'LoadBalancerId' => [ - 'description' => '虚拟服务器组所属传统型负载均衡CLB(原SLB)实例的ID。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'lb-bp1u7etiogg38yvwz****', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 100, - ], - ], - [ - 'name' => 'Tags', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '伸缩组的标签信息集合。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组的标签信息集合。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '伸缩组的标签键。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Department', - ], - 'Value' => [ - 'description' => '伸缩组的标签值。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Finance '."\n", - ], - 'Propagate' => [ - 'description' => '标识该标签是否为可传播标签,取值范围:'."\n" - .'- true:伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n" - .'- false:伸缩组上的标签不会传播到实例上。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 21, - ], + 'schema' => ['description' => '向伸缩组添加一批实例时,是否忽略其中无效的实例。取值范围:'."\n" + ."\n" + .'- true:从伸缩组中添加一批实例时,会忽略其中无效的实例。如果存在无效的实例,并且有效的实例被成功添加时,伸缩活动执行状态也会显示为警告状态,可以从伸缩活动详情查看无效的实例。'."\n" + ."\n" + .'- false:从伸缩组中添加一批实例时,不会忽略无效的实例。如果一批实例中存在无效的实例,请求会报错。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], - [ - 'name' => 'LaunchTemplateOverrides', - 'in' => 'query', - 'style' => 'repeatList', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '扩展启动模板的实例规格信息。', - 'type' => 'array', - 'items' => [ - 'description' => '扩展启动模板的实例规格信息。', - 'type' => 'object', - 'properties' => [ - 'InstanceType' => [ - 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,请同时指定本参数和LaunchTemplateOverrides.WeightedCapacity。'."\n" - ."\n" - .'本参数用于指定实例规格,会覆盖启动模板中的实例规格。'."\n" - ."\n" - .'> 仅当LaunchTemplateId参数指定了启动模板时,本参数生效。'."\n" - ."\n" - .'InstanceType的取值范围:在售的ECS实例规格。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.c5.xlarge '."\n", - ], - 'WeightedCapacity' => [ - 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,在指定LaunchTemplateOverrides.InstanceType后,再指定本参数。'."\n" - ."\n" - .'本参数用于指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。'."\n" - ."\n" - .'由于每个实例规格的vCPU个数、内存大小等性能指标会有差异,您可以根据自身需求,给不同的实例规格配置不同的权重。'."\n" - ."\n" - .'例如:'."\n" - ."\n" - .'- 当前容量:0。'."\n" - ."\n" - .'- 期望容量:6。'."\n" - ."\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.InstanceType`)的竞价价格上限。'."\n" - .'>仅当`LaunchTemplateId`参数指定了启动模板时,该参数才生效。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '0.025', - ], - ], - 'required' => false, + 'type' => 'object', + 'properties' => [ + 'ScalingActivityId' => ['description' => '伸缩活动的ID。', 'type' => 'string', 'example' => 'asa-bp1crxor24s28xf1****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE****'], ], - 'required' => false, - 'maxItems' => 20, ], ], - [ - 'name' => 'AlbServerGroups', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'ALB服务器组的相关信息集合。', - 'type' => 'array', - 'items' => [ - 'description' => 'ALB服务器组的相关信息集合。', - 'type' => 'object', - 'properties' => [ - 'AlbServerGroupId' => [ - 'description' => 'ALB服务器组的ID。'."\n" - ."\n" - .'一个伸缩组支持关联的ALB服务器组数量有限,如需查看或手动申请提升配额值,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'sgp-ddwb0y0g6y9bjm****', - ], - 'Weight' => [ - 'description' => '弹性伸缩将实例添加到ALB服务器组后,实例作为后端服务器的权重。权重越高,实例将被分配到越多的访问请求。如果权重为0,则实例不会收到访问请求。取值范围:0~100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - ], - 'Port' => [ - 'description' => '弹性伸缩将实例添加到ALB服务器组后,实例使用的端口号,取值范围:1~65535。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '22', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 100, - ], + ], + 'errorCodes' => [ + 500 => [ + ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], - [ - 'name' => 'ServerGroups', - '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。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '22', - ], - ], - 'required' => false, + ], + 'title' => '为伸缩组手动添加实例', + 'description' => '- 调用该接口前,请确保满足以下条件:'."\n" + .' - 伸缩组处于Active状态。'."\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" + .' - 只能将未加入伸缩组的托管实例加入到ECS类型伸缩组中。'."\n" + .' - 托管实例不支持配置生命周期挂钩、关联到负载均衡和健康检查功能。'."\n" + .' - 托管实例加入ECS类型伸缩组后,该伸缩组不会管理托管实例的生命周期。'."\n" + .' - 托管实例仅支持手动添加到伸缩组或手动从伸缩组移出,移出后托管实例并不会被释放。'."\n" + .'- 使用该接口需注意以下事项:'."\n" + .' - 当伸缩组没有伸缩活动正在执行时,该接口可以绕过冷却时间(Cooldown)直接执行。'."\n" + .' - 调用该接口返回成功,只是表示弹性伸缩服务接受了该接口调用的请求,伸缩活动可以执行,但不代表伸缩活动能够执行成功。您需要通过返回的ScalingActivityId查看该伸缩活动的执行状态。'."\n" + .' - 如果该接口指定的实例数加上当前伸缩组的实例数(Total Capacity)大于最大值(MaxSize),则接口调用失败。'."\n" + .' - 通过该接口手动添加的ECS实例、ECI实例或托管实例不与伸缩组生效的伸缩配置进行关联。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:AttachInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], - 'required' => false, - 'maxItems' => 100, - ], - ], - [ - 'name' => 'AzBalance', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的容量是否在多个可用区间均衡分布(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效),取值范围:'."\n" - ."\n" - .'- true:伸缩组的容量在多个可用区间均衡分布。'."\n" - ."\n" - .'- false:伸缩组的容量不在多个可用区间均衡分布。'."\n" - ."\n" - .'>如果`MultiAZPolicy`参数取值为`COMPOSABLE`策略,并且`AzBalance`参数取值为`true`时,其效果和`MultiAZPolicy`参数取值为`BALANCE`相同。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp1crxor24s28xf1****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE****\\"\\n}","type":"json"}]', + ], + 'AttachLoadBalancers' => [ + 'summary' => '伸缩组支持关联负载均衡实例,通过负载均衡实例将访问流量分发到伸缩组内的多个实例中,可以有效增强伸缩组的服务能力,您可以调用API AttachLoadBalancers添加一个或多个负载均衡实例。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'AllocationStrategy', - 'in' => 'query', - 'schema' => [ - 'description' => '容量分配策略,决定了伸缩组如何选择可用的实例规格类型满足容量。容量分布策略同时对按量和抢占式容量生效(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。取值范围:'."\n" - ."\n" - .'- priority:按照配置的实例规格的顺序创建实例。'."\n" - ."\n" - .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n" - ."\n" - .'默认值:priority。', - 'type' => 'string', - 'required' => false, - 'example' => 'priority', - ], + 'AK' => [], ], + ], + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '125378', + 'abilityTreeNodes' => ['FEATUREess2GK585'], + ], + 'parameters' => [ [ - 'name' => 'SpotAllocationStrategy', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '抢占式容量分布策略。您可以通过该参数单独指定抢占式容量的分布策略(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。取值范围:'."\n" - ."\n" - .'- priority:按照配置的实例规格的顺序创建实例。'."\n" - ."\n" - .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n" - ."\n" - .'默认值:priority。', - 'type' => 'string', - 'required' => false, - 'example' => 'lowestPrice', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asg-bp1avr6ensitts3w****'], ], [ - 'name' => 'SyncAlarmRuleToCms', + 'name' => 'ForceAttach', 'in' => 'query', - 'schema' => [ - 'description' => '>该参数暂未开放使用。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '是否把当前伸缩组内的实例全部添加为负载均衡实例的后端服务器,取值范围:'."\n" + .' '."\n" + .'- true:添加。如果该参数值为`true`,则将负载均衡实例添加到伸缩组时,系统会将当前伸缩组中已有的实例全部添加为负载均衡实例的后端服务器。'."\n" + ."\n" + .' >如果负载均衡实例已添加至伸缩组,而您需要将伸缩组中全部实例添加为该负载均衡实例的后端服务器,则您可以再次将该负载均衡实例添加到伸缩组,并选择ForceAttach为true状态。'."\n" + ."\n" + .'- false:不添加。如果该参数值为false,则将负载均衡实例添加到伸缩组时,系统不会将当前伸缩组中已有的实例添加为负载均衡实例的后端服务器。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false'], ], [ - 'name' => 'MaxInstanceLifetime', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '实例在伸缩组中存活的最大时间。单位为秒。'."\n" - ."\n" - .'取值范围:[86400, Integer.maxValue]。'."\n" - ."\n" - .'默认值:null。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => 'null', - ], + 'schema' => ['description' => '保证请求幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'CustomPolicyARN', + 'name' => 'Async', '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', - ], + 'schema' => ['description' => '添加负载均衡实例时,是否采用异步调用的方式。异步调用能保证操作的事务性,即所有操作都执行成功或者某个操作失败时所有操作的执行结果都不生效,建议您采用异步调用。'."\n" + .'取值范围:'."\n" + .'- true:异步调用。请求将返回伸缩活动的ID。'."\n" + .'- false:同步调用。'."\n" + ."\n" + .'默认值:false。'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'LoadBalancers', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '新创建的伸缩组所属的资源组ID。'."\n" - .'>将新创建的伸缩组归属到指定的资源组中。如果不指定该参数,则归属为默认资源组。', - 'type' => 'string', + 'description' => '需要添加的负载均衡CLB(原SLB)实例的ID列表。', + 'type' => 'array', + 'items' => ['description' => '需要添加的负载均衡CLB(原SLB)实例的ID列表。'."\n" + .'>支持最多一次添加5个负载均衡实例到伸缩组。', 'type' => 'string', 'required' => false, 'example' => 'lb-2zeur05gfs**** '."\n"], 'required' => false, - 'example' => 'rg-123******', + 'maxItems' => 5, ], ], [ @@ -1087,25 +770,16 @@ 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '负载均衡配置列表。', + 'description' => '负载均衡CLB(原SLB)配置列表。', 'type' => 'array', 'items' => [ 'description' => '负载均衡CLB(原SLB)配置列表。', 'type' => 'object', 'properties' => [ - 'LoadBalancerId' => [ - 'description' => '负载均衡CLB(原SLB)实例的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'lb-2zen1olhfg9yw3f4q****', - ], - 'Weight' => [ - 'description' => '弹性伸缩将实例添加到SLB服务器组后,实例作为后端服务器的权重。权重越高,实例将被分配到越多的访问请求。如果权重为0,则实例不会收到访问请求。取值范围:0~100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'LoadBalancerId' => ['description' => '负载均衡CLB(原SLB)实例的ID。', 'type' => 'string', 'required' => false, 'example' => '147b46d767c-cn-qingdao-cm5**** '], + 'Weight' => ['description' => '弹性伸缩将ECS实例或ECI实例添加到SLB服务器组后,ECS实例或ECI实例作为后端服务器的权重。权重越高,ECS实例或ECI实例将被分配到越多的访问请求。如果权重为0,则ECS实例或ECI实例不会收到访问请求。'."\n" + ."\n" + .'取值范围:0~100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], 'required' => false, ], @@ -1113,186 +787,128 @@ 'maxItems' => 20, ], ], - [ - 'name' => 'HealthCheckTypes', - 'in' => 'query', - 'style' => 'repeatList', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '伸缩组的健康检查方式。'."\n" - .'> 使用此参数可以设置多个值,开启多个健康检查选项。如果设置了`HealthCheckType`参数,则本参数将被忽略。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组的健康检查方式列表。取值范围:'."\n" - ."\n" - .'- NONE:不做健康检查。'."\n" - .'- ECS:对伸缩组内的实例做健康检查(ECS类型和ECI类型的伸缩组均使用本取值开启实例健康检查)。'."\n" - .'- LOAD_BALANCER: 根据负载均衡(暂不支持负载均衡CLB类型)健康检查结果判断实例健康状态。'."\n" + 'type' => 'object', + 'properties' => [ + 'ScalingActivityId' => ['description' => '伸缩活动的ID。'."\n" ."\n" - .'默认值:ECS。', - 'type' => 'string', - 'required' => false, - 'example' => 'ECS', + .'仅当`Async`为`true`时返回该值。您可使用API DescribeScalingActivities遍历查询返回的伸缩活动ID,查看伸缩活动的执行状态。', 'type' => 'string', 'example' => 'asa-bp140qd7mak8k63f****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], - 'required' => false, - 'maxItems' => 100, ], ], - [ - 'name' => 'DBInstances', - '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" - .'- RDS。'."\n" - .'- Redis。'."\n" - .'- MongoDB。'."\n" - ."\n" - .'默认值:RDS。', - 'type' => 'string', - 'required' => false, - 'example' => 'RDS', - ], - 'AttachMode' => [ - 'description' => '伸缩组与数据库关联方式。取值范围:'."\n" - .'- SecurityIp :修改IP白名单模式,通过将扩容实例自动添加到数据库IP白名单(目前仅RDS数据库支持)。'."\n" - .'- SecurityGroup:安全组模式,通过将伸缩配置安全组添加至数据库安全组白名单,实现安全组下实例数据库访问。', - 'type' => 'string', - 'required' => false, - 'example' => 'SecurityIp', - ], - ], - 'required' => false, + ], + 'title' => '添加一个或多个负载均衡实例', + 'description' => '向伸缩组添加负载均衡实例时需要满足以下条件:'."\n" + ."\n" + .'- 负载均衡实例与伸缩组必须属于同一账号和同一个地域。'."\n" + ."\n" + .'- 负载均衡实例必须处于`运行中`状态。'."\n" + ."\n" + .'- 负载均衡实例至少配置有一个监听且必须开启健康检查。'."\n" + ."\n" + .'- 如果负载均衡实例与伸缩组的网络类型均为VPC,必须处于同一VPC。'."\n" + ."\n" + .'- 当伸缩组的网络类型为VPC,负载均衡实例的网络类型为经典网络时,如果负载均衡实例后端服务器中包含VPC实例,该实例必须与伸缩组处于同一VPC。'."\n" + ."\n" + .'- 不超过伸缩组关联负载均衡实例的限额,具体限额,请参见[使用限制](~~25863~~)。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:AttachLoadBalancers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], - 'required' => false, - 'maxItems' => 5, ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp140qd7mak8k63f****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'AttachServerGroups' => [ + 'summary' => '对于需要动态调整实例数量来应对业务变化负载以及确保应用程序的高可用性场景,调用API AttachServerGroups为伸缩组添加一个或多个负载均衡服务器组,支持的服务器组类型包括应用型负载均衡ALB、网络型负载均衡NLB和网关型负载均衡GWLB,可以在业务变化时自动实现弹性扩展,并根据负载情况动态分配流量、提高应用程序的稳定性。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '166342', + 'abilityTreeNodes' => ['FEATUREess2GK585'], + ], + 'parameters' => [ [ - 'name' => 'StopInstanceTimeout', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '缩容流程中等待ECS实例停机成功的超时时间,单位为秒。'."\n" - .'取值范围:30~240。'."\n" - ."\n" - .'> - 该参数仅在 ScalingPolicy = release 模式下的缩容流程里生效。 '."\n" - .'> - 如果设置了该参数,系统会最长等待StopInstanceTimeout时间将实例停机成功,超时后无论实例是否成功停机都会继续缩容。 '."\n" - .'> - 如果没有设置该参数,系统会长时间等待实例停机成功,只有实例停机成功后才继续缩容,停机失败时,缩容流程会回滚,缩容失败。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '60', - ], + 'schema' => ['description' => '伸缩组所属地域的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'CapacityOptions', + 'name' => 'ScalingGroupId', '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" - .'- PricePerUnit:使用每单位容量价格比价。'."\n" - ."\n" - .' 实例在伸缩组中容量大小等于为实例规格设置的权重,默认为1,即一台ECS所占容量为1。'."\n" - ."\n" - .'- PricePerVCpu:使用每单位vCpu价格进行比价。'."\n" - ."\n" - .'默认值:PricePerUnit。', - 'type' => 'string', - 'required' => false, - 'example' => 'PricePerUnit', - ], - ], - 'required' => false, - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asg-bp1fo0dbtsbmqa9h****'], ], [ - 'name' => 'BalanceMode', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '负载均衡模式', - 'description' => '可用区均衡模式,仅当开启可用区均衡模式时生效。取值范围:'."\n" - .' '."\n" - .'- BalancedBestEffort:'."\n" - .'当某可用区资源创建失败时,会降级至其他可用区,保障资源的尽力交付。'."\n" - ."\n" - .'- BalancedOnly:'."\n" - .'当某可用区资源创建失败时,不会降级至其他可用区,扩容活动部分成功,避免资源在不同可用区过度不均衡。'."\n" - ."\n" - .'默认值:BalancedBestEffort。', - 'type' => 'string', - 'required' => false, - 'example' => 'BalancedBestEffort', - ], + 'schema' => ['description' => '保证请求幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'AutoRebalance', + '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' => 'ServerGroups', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'title' => '自动重新平衡设置', - 'description' => '是否开启伸缩组自动均衡,仅当可用区均衡伸缩组开启了BalancedOnly才生效。取值范围:'."\n" - .'- false:不开启伸缩组自动均衡。'."\n" - .'- true:开启伸缩组自动均衡时,伸缩组会自动检测可用区见容量,当可用区容量不均衡时,会主动进行可用区扩缩,进行可用区容量再均衡。'."\n" - ."\n" - .'默认值: false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', + 'description' => '负载均衡服务器组的相关信息集合。', + 'type' => 'array', + 'items' => [ + 'description' => '负载均衡服务器组的相关信息集合。', + 'type' => 'object', + 'properties' => [ + 'ServerGroupId' => ['description' => '负载均衡服务器组ID。', 'type' => 'string', 'required' => true, 'example' => 'sgp-5yc3bd9lfyh*****'], + '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" + .'> ALB和NLB类型负载均衡该参数为必填参数,GWLB类型负载均衡不能设置该参数且默认值为6081。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '22'], + ], + 'required' => false, + ], + 'required' => true, + 'maxItems' => 100, ], ], ], @@ -1301,917 +917,706 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'ScalingGroupId' => [ - 'description' => '伸缩组ID。', - 'type' => 'string', - 'example' => 'asg-bp14wlu85wrpchm0****', - ], + 'ScalingActivityId' => ['description' => '添加负载均衡服务器组并将伸缩组内的ECS实例或ECI实例添加到该服务器组时,伸缩活动的ID。'."\n" + .'> 仅当ForceAttach取值为true时,返回该参数。', 'type' => 'string', 'example' => 'asa-bp1c9djwrgxjyk31****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], + 'description' => '', ], ], ], - 'errorCodes' => [ - 404 => [ - [ - 'errorCode' => 'ResourceNotAvailable.VPCNetwork', - 'errorMessage' => 'The specified zone does not support vpc network or sold out.', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp1c9djwrgxjyk31****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + 'title' => '添加一个或多个负载均衡服务器组', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:AttachServerGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingGroupId\\": \\"asg-bp14wlu85wrpchm0****\\"\\n}","type":"json"}]', - 'title' => '创建一个伸缩组', - 'description' => '伸缩组是具有相同应用场景的ECS实例的集合。'."\n" - ."\n" - .'一个地域下支持创建的伸缩组数量和弹性伸缩使用情况有关,请前往配额中心查看伸缩组总数对应的配额值。'."\n" - ."\n" - .'伸缩组创建成功后不会立即生效。您需要先调用[EnableScalingGroup](~~25939~~)接口启用伸缩组,伸缩组才能触发伸缩活动和执行伸缩规则。'."\n" - ."\n" - .'伸缩组、关联的传统型负载均衡CLB(原SLB)实例和关联的RDS实例必须在同一个地域。更多信息,请参见[地域与可用区](~~40654~~)。'."\n" - ."\n" - .'如果您为伸缩组关联了CLB实例,伸缩组会自动将加入伸缩组的ECS实例添加到CLB实例的后端服务器组。您可以指定ECS实例需要加入的服务器组,支持以下两种服务器组:'."\n" - ."\n" - .'- 默认服务器组:用来接收前端请求的ECS实例,如果监听没有设置虚拟服务器组或主备服务器组,默认将请求转发至默认服务器组中的ECS实例。'."\n" - ."\n" - .'- 虚拟服务器组:当您需要将不同的请求转发到不同的后端服务器上,或着需要通过域名和URL进行请求转发时,可以选择使用虚拟服务器组。'."\n" - ."\n" - .'> 如果您同时指定了默认服务器组和多个虚拟服务器组,ECS实例会同时添加至这些服务器组中。'."\n" - ."\n" - .'实例在加入CLB实例的后端服务器组后,权重默认为50。CLB实例需要满足以下条件:'."\n" - ."\n" - .'- 该CLB实例的状态必须是active,您可以调用[DescribeLoadBalancers](~~2401696~~)接口查看指定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" - .'如果您为伸缩组关联了RDS实例,伸缩组会自动将加入伸缩组的ECS实例的内网IP添加到RDS实例的访问白名单。RDS实例需要满足以下条件:'."\n" - ."\n" - .'- 该RDS实例的状态必须是Running,您可以调用[DescribeDBInstances](~~610396~~)接口查看指定RDS实例的状态。'."\n" - ."\n" - .'- 该RDS实例访问白名单的IP数不能超过上限值。更多信息,请参见RDS文档[设置白名单](~~43185~~)。'."\n" - ."\n" - .'如果伸缩组的MultiAZPolicy设置为COST_OPTIMIZED:'."\n" - ."\n" - .'- 当指定OnDemandBaseCapacity、OnDemandPercentageAboveBaseCapacity和SpotInstancePools参数时,即指定成本优化策略下的实例分配方式,在扩缩容时将优先满足该实例分配方式。'."\n" - ."\n" - .'- 当不指定OnDemandBaseCapacity、OnDemandPercentageAboveBaseCapacity或SpotInstancePools参数时,成本优化策略下将仅按照成本最低的方式进行实例创建。'."\n" - ."\n" - .'如果您为伸缩组设置了可传播标签,即`Tags.Propagate`为true时:'."\n" - ."\n" - .'- 伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n" - ."\n" - .'- 如果您在伸缩配置中指定了实例标签,并且选择将伸缩组的标签传播到该实例,则所有标签都会同时存在。'."\n" - ."\n" - .'- 如果伸缩配置中的标签和伸缩组中的可传播标签指定了相同的标签键,则优先使用伸缩配置中的标签值。', ], - 'ModifyScalingGroup' => [ - 'summary' => '如果您需要根据业务变动需求与策略自动增加或减少指定类型的实例数量,则可以通过配置伸缩组来自动调整您的业务计算能力(即实例数量)。如果当前伸缩组属性不再满足业务需求,则您可以调用API ModifyScalingGroup修改伸缩组属性(例如最大实例数、最小实例数或期望实例数等属性),避免重新创建伸缩组并重新配置相关属性,节省了时间和资源成本。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'AttachVServerGroups' => [ + 'summary' => '伸缩组关联负载均衡实例(CLB)后,加入伸缩组的实例会自动添加为CLB实例的后端服务器,处理来自CLB实例转发的访问请求。当需要将不同的请求转发到不同的后端服务器上时,或需要通过域名和URL进行请求转发时,您可以调用API AttachVServerGroups来添加负载均衡实例下的一个或者多个虚拟服务器组,通过虚拟服务器组管理不同的后端服务器。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '125326', - 'abilityTreeNodes' => [ - 'FEATUREessXN6KX4', - ], + 'abilityTreeCode' => '125332', + 'abilityTreeNodes' => ['FEATUREess2GK585'], ], 'parameters' => [ [ - 'name' => 'ScalingGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => '待修改伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'asg-bp1ffogfdauy0jw0****', - ], - ], - [ - 'name' => 'ScalingGroupName', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的名称,同一地域下伸缩组名称唯一。长度为2~64个字符,以数字、大小英文字母或中文开头,可以包含数字、下划线(_)、短划线(-)和半角句号(.)。', - 'type' => 'string', - 'required' => false, - 'example' => 'scalinggroup****', - ], + 'schema' => ['description' => '伸缩组所属地域的ID。如cn-hangzhou、cn-shanghai,更多信息,请参见[地域和可用区](~~40654~~)。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'MinSize', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组内ECS实例或ECI实例台数的最小值,当伸缩组内ECS或ECI实例数小于MinSize时,弹性伸缩会自动创建ECS实例或ECI实例。'."\n" - ."\n" - .'> MinSize的值必须小于或等于MaxSize的值。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'MaxSize', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组内ECS实例或ECI实例台数的最大值,当伸缩组内ECS或ECI实例数大于MaxSize时,弹性伸缩会自动移出ECS实例或ECI实例。'."\n" - ."\n" - .'MaxSize的取值范围和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。'."\n" - ."\n" - .'MaxSize的取值范围和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。'."\n" - ."\n" - .'MaxSize的取值范围和弹性伸缩使用情况有关,请前往配额中心查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。'."\n" - ."\n" - .'例如,如果**单个伸缩组可以设置的组内最大实例数**对应的配额值为2000,则MaxSize的取值范围为0~2000。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '99', - ], + 'schema' => ['description' => '保证请求幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'DefaultCooldown', + 'name' => 'ForceAttach', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组默认的冷却时间,仅适用于简单规则。取值范围:0~86400,单位:秒。'."\n" - ."\n" - .'冷却时间内,该伸缩组不执行其他的伸缩活动,仅针对云监控报警任务触发的伸缩活动有效。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '86400', - 'minimum' => '0', - 'example' => '600', - ], + 'schema' => ['description' => '是否将当前伸缩组内的ECS实例或ECI实例添加到新增的虚拟服务器组。取值范围:'."\n" + ."\n" + .'- true:添加。'."\n" + .'- false:不添加。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false'], ], [ - 'name' => 'RemovalPolicies', + 'name' => 'VServerGroups', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '指定移出ECS实例的伸缩组策略。取值范围:'."\n" - ."\n" - .'- OldestInstance:移出最早加入伸缩组的ECS实例。'."\n" - ."\n" - .'- NewestInstance:移出最新加入伸缩组的ECS实例。'."\n" - ."\n" - .'- OldestScalingConfiguration:移出最早伸缩配置创建的ECS实例。', + 'description' => '伸缩组关联的虚拟服务器组的信息集合。', 'type' => 'array', 'items' => [ - 'description' => '指定移出ECS实例的伸缩组策略。取值范围:'."\n" - ."\n" - .'- OldestInstance:移出最早加入伸缩组的ECS实例。'."\n" - ."\n" - .'- NewestInstance:移出最新加入伸缩组的ECS实例。'."\n" - ."\n" - .'- OldestScalingConfiguration:移出最早伸缩配置创建的ECS实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'NewestInstance', - ], - 'required' => false, - 'maxItems' => 2, - ], - ], - [ - 'name' => 'ActiveScalingConfigurationId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组内生效的伸缩配置的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asc-bp17pelvl720x5ub****', + 'description' => '伸缩组关联的虚拟服务器组的信息集合。', + 'type' => 'object', + 'properties' => [ + 'VServerGroupAttributes' => [ + 'description' => '虚拟服务器组属性。', + 'type' => 'array', + 'items' => [ + 'description' => '虚拟服务器组属性。', + 'type' => 'object', + 'properties' => [ + 'VServerGroupId' => ['description' => '虚拟服务器组的ID。', 'type' => 'string', 'required' => false, 'example' => 'lb-bp1u7etiogg38yvwz****'], + 'Weight' => ['description' => '弹性伸缩将ECS实例或ECI实例添加到虚拟服务器组时设置的权重,取值范围:0~100。'."\n" + ."\n" + .'默认值:50。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], + 'Port' => ['description' => '弹性伸缩将ECS实例或ECI实例添加到虚拟服务器组时使用的端口号,取值范围:1~65535。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '22'], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 100, + ], + 'LoadBalancerId' => ['description' => '虚拟服务器组所属负载均衡实例的ID。', 'type' => 'string', 'required' => false, 'example' => 'rsp-bp1jp1rge**** '."\n"], + ], + 'required' => false, + ], + 'required' => true, + 'maxItems' => 100, ], ], - [ - 'name' => 'HealthCheckType', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '伸缩组的健康检查方式。取值范围:'."\n" - ."\n" - .'- NONE:不做健康检查。'."\n" - .'- ECS:对伸缩组内的实例做健康检查(ECS类型和ECI类型的伸缩组均使用本取值开启实例健康检查)。'."\n" - .'- LOAD_BALANCER: 根据负载均衡(暂不支持CLB负载均衡类型)健康检查结果判断实例健康状态。'."\n" - .'默认值:ECS。'."\n" - ."\n" - .'> 如果需要同时开启实例健康检查和负载均衡健康检查,请使用`HealthCheckTypes`参数。', - 'type' => 'string', - 'required' => false, - 'example' => 'ECS', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], ], ], - [ - 'name' => 'LaunchTemplateId', - 'in' => 'query', - 'schema' => [ - 'description' => '实例启动模板ID,用于指定伸缩组从实例启动模板获取启动配置信息。', - 'type' => 'string', - 'required' => false, - 'example' => ' lt-m5e3ofjr1zn1aw7****', + ], + 'title' => '添加负载均衡实例下虚拟服务器组', + 'description' => '- 向伸缩组添加虚拟服务器组时需要满足以下条件:'."\n" + ."\n" + .' - 负载均衡实例与伸缩组必须属于同一账号。'."\n" + ."\n" + .' - 负载均衡实例与伸缩组必须处于同一地域。'."\n" + ."\n" + .' - 负载均衡实例必须处于运行中状态。'."\n" + ."\n" + .' - 负载均衡实例至少配置有一个监听且必须开启健康检查。'."\n" + ."\n" + .' - 如果负载均衡实例与伸缩组的网络类型均为VPC,必须处于同一VPC。'."\n" + ."\n" + .' - 当伸缩组的网络类型为VPC,负载均衡实例的网络类型为经典网络时,如果虚拟服务器组包含VPC实例,该实例必须与伸缩组处于同一VPC。'."\n" + ."\n" + .' - 待添加虚拟服务器组必须属于对应的负载均衡实例。'."\n" + ."\n" + .' - 不超过伸缩组内虚拟服务器组的限额,具体限额,请参见[使用限制](~~25863~~)。'."\n" + ."\n" + .'- 添加伸缩组内虚拟服务器组时,需要同时指定以下属性:'."\n" + ."\n" + .' - 负载均衡实例ID(LoadBalancerId)'."\n" + ."\n" + .' - 虚拟服务器组ID(VServerGroupId)'."\n" + ."\n" + .' - 虚拟服务器组端口号(Port)'."\n" + ."\n" + .' >如果通过不同的端口号将同一虚拟服务器组添加至伸缩组,视为伸缩组内添加了多个虚拟服务器组。如果请求参数中的虚拟服务器组ID和端口号同时重复,默认使用最先配置的一组,忽略其余虚拟服务器组。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:AttachVServerGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'CancelInstanceRefresh' => [ + 'summary' => '取消实例刷新任务,会保留已经完成替换和扩容的新实例。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'LaunchTemplateVersion', - 'in' => 'query', - 'schema' => [ - 'description' => '实例启动模板的版本。取值范围:'."\n" - .' '."\n" - .'- 固定的模板版本号。'."\n" - .'- Default:始终使用模板默认版本。'."\n" - .'- Latest:始终使用模板最新版本。', - 'type' => 'string', - 'required' => false, - 'example' => 'Default', - ], + 'AK' => [], ], + ], + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '234868', + 'abilityTreeNodes' => ['FEATUREessPV8ZVU'], + ], + 'parameters' => [ [ - 'name' => 'OnDemandBaseCapacity', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所需要按量实例个数的最小值,取值范围:0~1000。当按量实例个数少于该值时,将优先创建按量实例。'."\n" - ."\n" - .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为0。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '30', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1igpak5ft1flyp****'], ], [ - 'name' => 'OnDemandPercentageAboveBaseCapacity', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组满足最小按量实例数(OnDemandBaseCapacity)要求后,超出的实例中按量实例应占的比例,取值范围:0~100。'."\n" - ."\n" - .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '20', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'SpotInstanceRemedy', + 'name' => 'InstanceRefreshTaskId', 'in' => 'query', + 'schema' => ['description' => '实例刷新的任务ID。', 'type' => 'string', 'required' => true, 'example' => 'ir-aca123sf****'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '是否开启补齐抢占式实例。开启后,当收到抢占式实例将被回收的系统消息时,伸缩组将尝试创建新的实例,替换掉将被回收的抢占式实例。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], ], ], - [ - 'name' => 'CompensateWithOnDemand', - 'in' => 'query', - 'schema' => [ - 'description' => '当`CreateScalingGroup`接口的`MultiAZPolicy`取值为`COST_OPTIMIZED`时,如果因价格、库存等原因无法创建足够的抢占式实例,是否允许自动尝试创建按量实例满足ECS实例数量要求。取值范围:'."\n" - ."\n" - .'- true:允许。'."\n" - ."\n" - .'- false:不允许。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + 'title' => '取消实例刷新任务', + 'description' => '- 正在回滚中的实例刷新任务不支持取消。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:CancelInstanceRefresh', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + ], + 'ChangeResourceGroup' => [ + 'summary' => '资源组指对您拥有的云资源(例如伸缩组资源)从用途、权限、归属等维度上进行分组,实现企业内部多用户、多项目的资源分级管理。您可以调用API ChangeResourceGroup将伸缩组资源从一个资源组更改到另一个资源组,在新的资源组里集中监控和管理该伸缩组资源,免去了您在多种阿里云服务间反复查看资源的负担。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'SpotInstancePools', - 'in' => 'query', - 'schema' => [ - 'description' => '指定可用实例规格的个数,伸缩组将按成本最低的多个规格均衡创建抢占式实例。取值范围:0~10。'."\n" - ."\n" - .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为2。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '5', - ], + 'AK' => [], ], + ], + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '163908', + 'abilityTreeNodes' => ['FEATUREessGIWHSQ'], + ], + 'parameters' => [ [ - 'name' => 'DesiredCapacity', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组内ECS实例或ECI实例的期望数量,伸缩组会自动将ECS实例或ECI实例数量维持在期望实例数。取值范围:MaxSize≥期望实例数量≥MinSize。'."\n" - ."\n" - .'> 如果期望实例数功能关闭后又重新开启,则您需要重新设置 `DesiredCapacity` 值。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '5', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'GroupDeletionProtection', + 'name' => 'ResourceType', 'in' => 'query', - 'schema' => [ - 'description' => '是否开启伸缩组删除保护。取值范围:'."\n" - ."\n" - .'- true:开启伸缩组删除保护,此时不能删除该伸缩组。'."\n" - .'- false:关闭伸缩组删除保护。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '资源类型,目前仅支持伸缩组。取值:scalinggroup。', 'type' => 'string', 'required' => false, 'example' => 'scalinggroup'], ], [ - 'name' => 'MultiAZPolicy', + 'name' => 'ResourceId', '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平衡资源。'."\n" - ."\n" - .'- COMPOSABLE:是一种组合策略,您可以根据需要自主组合上述多可用区伸缩组ECS实例的扩缩容策略。', - 'type' => 'string', - 'required' => false, - 'example' => 'PRIORITY', - ], + 'schema' => ['description' => '待修改资源组的伸缩组ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp17xb4x1vr29lgt****'], ], [ - 'name' => 'VSwitchIds', + 'name' => 'NewResourceGroupId', 'in' => 'query', - 'style' => 'repeatList', + 'schema' => ['description' => '将伸缩组更改到新的资源组后,新资源组的ID。', 'type' => 'string', 'required' => true, 'example' => 'rg-aek2ckjqe3*****'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '一台或多台虚拟交换机的ID。'."\n" - ."\n" - .'只有当伸缩组网络类型为VPC时,当前参数才生效。指定虚拟交换机所属的VPC必须和伸缩组所属的VPC相同。'."\n" - ."\n" - .'虚拟交换机可以来自多个可用区。虚拟交换机的优先级按照数字升序排序,1表示最高优先级。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动选择下一优先级的虚拟交换机创建ECS实例。', - 'type' => 'array', - 'items' => [ - 'description' => '一台或多台虚拟交换机的ID。'."\n" - ."\n" - .'只有当伸缩组网络类型为VPC时,当前参数才生效。指定虚拟交换机所属的VPC必须和伸缩组所属的VPC相同。'."\n" - ."\n" - .'虚拟交换机可以来自多个可用区。虚拟交换机的优先级按照数字升序排序,1表示最高优先级。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动选择下一优先级的虚拟交换机创建ECS实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'vsw-bp1oo2a7isyrb8igf****', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6EF9BFEE-FE07-4627-B8FB-14326FB9****'], ], - 'required' => false, - 'maxItems' => 8, ], ], - [ - 'name' => 'LaunchTemplateOverrides', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '扩展启动模板的实例规格信息。', - 'type' => 'array', - 'items' => [ - 'description' => '扩展启动模板的实例规格信息。', - 'type' => 'object', - 'properties' => [ - 'InstanceType' => [ - 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,请同时指定本参数和LaunchTemplateOverrides.WeightedCapacity。'."\n" - ."\n" - .'本参数用于指定实例规格,会覆盖启动模板中的实例规格。'."\n" - ."\n" - .'> 仅当LaunchTemplateId参数指定了启动模板时,本参数生效。'."\n" - ."\n" - .'InstanceType的取值范围:在售的ECS实例规格。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.c5.xlarge '."\n", - ], - 'WeightedCapacity' => [ - 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,在指定LaunchTemplateOverrides.InstanceType后,再指定本参数。两个参数一一对应。'."\n" - ."\n" - .'本参数用于指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。'."\n" - ."\n" - .'权重越大,满足期望容量所需的本实例规格的实例数量越少。'."\n" - ."\n" - .'由于每个实例规格的vCPU个数、内存大小等性能指标会有差异,您可以根据自身需求,给不同的实例规格配置不同的权重。'."\n" - ."\n" - .'例如:'."\n" - ."\n" - .'- 当前容量:0。'."\n" - ."\n" - .'- 期望容量:6。'."\n" - ."\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, + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6EF9BFEE-FE07-4627-B8FB-14326FB9****\\"\\n}","type":"json"}]', + 'title' => '更改伸缩组所属的资源组', + 'description' => '- 资源是您在阿里云创建的云服务实体,例如,一个伸缩组就是一份资源。'."\n" + ."\n" + .'- 资源组是在阿里云账号下进行资源分组管理的一种机制,能够帮助您解决单个云账号内的资源分组和授权管理等复杂性问题。更多信息,请参见[什么是资源管理](~~94475~~)。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ChangeResourceGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], - 'required' => false, - 'maxItems' => 20, ], ], + ], + ], + 'CompleteLifecycleAction' => [ + 'summary' => '如果您为伸缩组配置了生命周期挂钩功能,您可以根据实际业务需要,调用API CompleteLifecycleAction提前结束伸缩活动的等待状态去执行下一步动作。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - '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', - ], + 'AK' => [], ], + ], + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '125379', + 'abilityTreeNodes' => ['FEATUREessKFTMD6'], + ], + 'parameters' => [ [ - 'name' => 'AzBalance', + 'name' => 'LifecycleHookId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的容量是否在多个可用区间均衡分布(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效),取值范围:'."\n" - .'- true:伸缩组的容量在多个可用区间均衡分布。'."\n" - .'- false:伸缩组的容量不在多个可用区间均衡分布。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '生命周期挂钩的ID。', 'type' => 'string', 'required' => true, 'example' => 'ash-bp14g3ee6bt3sc98****'], ], [ - 'name' => 'AllocationStrategy', + 'name' => 'LifecycleActionToken', 'in' => 'query', - 'schema' => [ - 'description' => '容量分配策略,决定了伸缩组如何选择可用的实例规格类型满足容量。容量分布策略同时对按量和抢占式容量生效(仅当MultiAZPolicy参数取值为COMPOSABLE策略时生效)。取值范围: '."\n" - ."\n" - .'- priority:按照配置的实例规格的顺序创建实例。'."\n" - ."\n" - .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n" - ."\n" - .'默认值:priority。', - 'type' => 'string', - 'required' => false, - 'example' => 'priority', - ], + 'schema' => ['description' => '伸缩活动的等待状态标识符,您可以从生命周期挂钩指定的MNS队列或MNS主题中获取该值。', 'type' => 'string', 'required' => true, 'example' => 'aaaa-bbbbb-cccc-ddddd'], ], [ - 'name' => 'SpotAllocationStrategy', + 'name' => 'LifecycleActionResult', 'in' => 'query', - 'schema' => [ - 'description' => '抢占式容量分布策略。您可以通过该参数单独指定抢占式容量的分布策略(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。取值范围:'."\n" - ."\n" - .'- priority:按照配置的实例规格的顺序创建实例。'."\n" - .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n" - ."\n" - .'默认值:priority。', - 'type' => 'string', - 'required' => false, - 'example' => 'lowestPrice', - ], + 'schema' => ['description' => '生命周期挂钩等待状态结束后的下一步动作。取值范围:'."\n" + .'- CONTINUE:继续响应弹性扩张活动,将ECS实例添加至伸缩组;继续响应弹性收缩活动,将ECS实例从伸缩组移除。'."\n" + .'- ABANDON:终止弹性扩张活动,直接释放创建出来的ECS实例;继续响应弹性收缩活动,将ECS实例从伸缩组移除。'."\n" + .'- ROLLBACK:针对弹性收缩活动,会拒绝释放ECS实例,进行回滚;针对弹性扩张活动,效果同ABANDON一样。'."\n" + ."\n" + .'如您不指定该参数,生命周期挂钩等待状态结束后的下一步动作则仍然保持为生命周期挂钩设置的`DefaultResult`值。'."\n" + ."\n" + .'伸缩组中存在多个生命周期挂钩时同步触发,最终的下一步动作如下:'."\n" + .'- 对弹性收缩活动,在ABANDON或ROLLBACK类型生命周期挂钩触发的等待状态结束时,会将提前结束后续生命周期挂钩的等待状态。'."\n" + .'- 在挂起弹性收缩活动的生命周期挂钩类型为CONTINUE时,或者对弹性扩张活动,后续生命周期挂钩会继续挂起伸缩活动,直到最后一个生命周期挂钩触发的等待状态结束。最终的下一步动作以最后一个结束等待状态的生命周期挂钩类型为准。', 'type' => 'string', 'required' => false, 'example' => 'CONTINUE'], ], [ - 'name' => 'CustomPolicyARN', + 'name' => 'ClientToken', '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', - ], + 'schema' => ['description' => '保证请求幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'DisableDesiredCapacity', + 'name' => 'RegionId', 'in' => 'query', + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '伸缩组是否关闭期望实例数功能。取值范围:'."\n" - ."\n" - .'- false:启用期望实例数功能。'."\n" - .'- true:关闭期望实例数功能。'."\n" - ."\n" - .'> 只有伸缩组当前无伸缩活动时,才能将该参数设置为true(即关闭伸缩组的期望实例数功能),关闭伸缩组的期望实例数功能时伸缩组当前的DesiredCapacity属性也会被清空,但伸缩组中当前的实例数量不发生变化。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE****'], + ], + ], + ], + ], + 'title' => '提前结束伸缩活动的等待状态', + 'description' => '允许设置结束等待状态后的下一步动作是继续响应伸缩活动(CONTINUE),还是弃用此次伸缩活动(ABANDON)或者进行回滚操作(ROLLBACK)。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:CompleteLifecycleAction', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE****\\"\\n}","type":"json"}]', + ], + 'CreateAlarm' => [ + 'summary' => '针对具有突发性或时间上不易预测的业务,调用CreateAlarm创建一个报警任务,该任务关联云监控指标后,可以动态调整伸缩组内的ECS实例或ECI实例数量,并实时监控实例指标,帮助您更好地管理和维护云资源。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'ScalingPolicy', + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '125363', + 'abilityTreeNodes' => ['FEATUREessBFLAJQ'], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', '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', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'HealthCheckTypes', + 'name' => 'Name', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '伸缩组的健康检查方式。'."\n" - ."\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, - ], + 'schema' => ['description' => '报警任务的名称。', 'type' => 'string', 'required' => false, 'example' => 'TestAlarmTask'], ], [ - 'name' => 'StopInstanceTimeout', + 'name' => 'Description', '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', - ], + 'schema' => ['description' => '报警任务的描述。', 'type' => 'string', 'required' => false, 'example' => 'Test alarm task.'], ], [ - 'name' => 'CapacityOptions', + 'name' => 'ScalingGroupId', '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" - .'- PricePerUnit:使用每单位容量价格比价。'."\n" - ."\n" - .' 实例在伸缩组中容量大小等于为实例规格设置的权重,默认为1,即一台ECS所占容量为1。'."\n" - ."\n" - .'- PricePerVCpu:使用每单位vCpu价格进行比价。'."\n" - ."\n" - .'默认值:PricePerUnit。', - 'type' => 'string', - 'required' => false, - 'example' => 'PricePerUnit', - ], - ], - 'required' => false, - ], + 'schema' => ['description' => '报警任务关联的伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'BalanceMode', + 'name' => 'MetricName', 'in' => 'query', - 'schema' => [ - 'title' => '平衡模式设置', - 'description' => '可用区均衡模式,仅当开启可用区均衡模式时生效。取值范围:'."\n" - .' '."\n" - .'- BalancedBestEffort:当某可用区资源创建失败时,会降级至其他可用区,保障资源的尽力交付。'."\n" - ."\n" - .'- BalancedOnly:当某可用区资源创建失败时,不会降级至其他可用区,扩容活动部分成功,避免资源在不同可用区过度不均衡。'."\n" - ."\n" - .'默认值:BalancedBestEffort。', - 'type' => 'string', - 'required' => false, - 'example' => 'BalancedBestEffort', - ], + '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' => 'AutoRebalance', + 'name' => 'MetricType', 'in' => 'query', - 'schema' => [ - 'title' => '自动重新平衡设置', - 'description' => '是否开启伸缩组自动均衡,仅当可用区均衡伸缩组开启了BalancedOnly才生效。取值范围:'."\n" - .'- false:不开启伸缩组自动均衡。'."\n" - .'- true:开启伸缩组自动均衡时,伸缩组会自动检测可用区见容量,当可用区容量不均衡时,会主动进行可用区扩缩,进行可用区容量再均衡。'."\n" - ."\n" - .'默认值: false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '监控项类型。取值范围:'."\n" + .'- system:使用云监控系统指标。'."\n" + .'- custom:使用上报到云监控的自定义指标。', 'type' => 'string', 'required' => false, 'example' => 'system', 'default' => 'system'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], - ], + [ + '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'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '修改一个伸缩组', - 'description' => '- 不支持修改以下参数:'."\n" - ."\n" - .' - RegionId'."\n" - ."\n" - .' - LoadBalancerId'."\n" - ."\n" - .' > 如果需要修改负载均衡实例,请使用AttachLoadBalancers和DetachLoadBalancers接口。'."\n" - ."\n" - .' - DBInstanceId'."\n" - ."\n" - .' > 如果需要修改RDS实例,请使用AttachDBInstances和DetachDBInstances接口。'."\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。', - ], - 'EnableScalingGroup' => [ - 'summary' => '如果伸缩组处于停用状态,并且该伸缩组已通过指定启动模板方式或者创建并启用伸缩配置方式指定了实例配置来源,您可以调用API EnableScalingGroup启用一个伸缩组,通过弹性伸缩来自动调整您的业务计算能力(即实例数量)。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'Statistics', + 'in' => 'query', + 'schema' => ['description' => '统计监控项数据的方法。取值范围:'."\n" + ."\n" + .'- Average:平均值。'."\n" + .'- Minimum:最小值。'."\n" + .'- Maximum:最大值。'."\n" + ."\n" + .'默认值:Average。', 'type' => 'string', 'required' => false, 'example' => 'Average', 'default' => 'Average'], ], - ], - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125366', - 'abilityTreeNodes' => [ - 'FEATUREessUCEVTM', + [ + 'name' => 'Threshold', + 'in' => 'query', + 'schema' => ['description' => '监控指标的阈值,满足阈值表达式达到指定次数即触发执行伸缩规则。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '80.0'], ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'ComparisonOperator', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp14wlu85wrpchm0****', - ], + 'schema' => ['description' => '监控项统计值与阈值的比较符,用于指定监控项统计值与阈值在什么关系下满足条件。取值范围:'."\n" + ."\n" + .'- 监控项统计值大于等于阈值。取值:>=。'."\n" + .'- 监控项统计值小于等于阈值。取值:<=。'."\n" + .'- 监控项统计值大于阈值。取值:>。'."\n" + .'- 监控项统计值小于阈值。取值:<。'."\n" + ."\n" + .'默认值:>=。', 'type' => 'string', 'required' => false, 'example' => '>=', 'default' => '>='], ], [ - 'name' => 'ActiveScalingConfigurationId', + 'name' => 'EvaluationCount', 'in' => 'query', - 'schema' => [ - 'description' => '需要在伸缩组内启用的伸缩配置的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asc-bp1ffogfdauy0nu5****', - ], + 'schema' => ['description' => '触发执行伸缩规则需要满足阈值表达式的次数,例如,CPU使用率平均值3次的统计结果均大于等于80%。'."\n" + ."\n" + .'默认值:3。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3', 'default' => '3'], ], [ - 'name' => 'LaunchTemplateId', + 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => '实例启动模板的ID,用于指定伸缩组从实例启动模板获取启动配置信息。', - 'type' => 'string', - 'required' => false, - 'example' => 'lt-m5e3ofjr1zn1aw7****', - ], + 'schema' => ['description' => '自定义监控项所属云监控应用分组的ID,仅在监控项类型为custom时需要指定该参数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '4055401'], ], [ - 'name' => 'LaunchTemplateVersion', + 'name' => 'Effective', 'in' => 'query', - 'schema' => [ - 'description' => '实例启动模板的版本。取值范围: '."\n" - ."\n" - .'- 固定的模板版本号。'."\n" - .'- Default:始终使用模板默认版本。'."\n" - .'- Latest:始终使用模板最新版本。'."\n" - .' ', - 'type' => 'string', - 'required' => false, - 'example' => 'Default', - ], + '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' => 'InstanceIds', + 'name' => 'AlarmActions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '启用伸缩组后需要加入伸缩组的ECS实例的ID。'."\n" - ."\n" - .'指定加入伸缩组的ECS实例需要满足以下条件:'."\n" - ."\n" - .'- 必须与伸缩组在同一个地域。'."\n" - ."\n" - .'- 必须处于Running状态。'."\n" - ."\n" - .'- 不能已加入到其他伸缩组中。'."\n" - ."\n" - .'- 付费方式为包年包月、按量付费或抢占式实例。'."\n" - ."\n" - .'- 如果伸缩组指定VswitchID,则不支持Classic类型的ECS实例加入伸缩组,也不支持其他VPC的ECS实例加入伸缩组。'."\n" - ."\n" - .'- 如果伸缩组没有指定VswitchID,则不支持VPC类型的ECS实例加入伸缩组。', + 'description' => '报警任务关联伸缩规则的唯一标识符的列表。', 'type' => 'array', - 'items' => [ - 'description' => '启用伸缩组后需要加入伸缩组的ECS实例的ID。'."\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**** '."\n", - ], + 'items' => ['description' => '报警任务关联伸缩规则的唯一标识符的列表。', 'type' => 'string', 'required' => false, 'example' => 'ari:acs:ess:cn-hangzhou:1406926****:scalingrule/asr-bp163l21e07uhn****'], 'required' => false, - 'maxItems' => 100, + 'maxItems' => 5, ], ], [ - 'name' => 'LoadBalancerWeights', + 'name' => 'Dimensions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '加入伸缩组中ECS实例或ECI实例作为后端服务器的权重。'."\n" - ."\n" - .'默认值:50。', + 'description' => '监控项关联的维度信息。', 'type' => 'array', 'items' => [ - 'description' => '加入伸缩组中ECS实例或ECI实例作为后端服务器的权重。'."\n" - ."\n" - .'默认值:50。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '50', - ], - 'required' => false, - 'maxItems' => 100, - ], + 'description' => '监控项关联的维度信息。', + 'type' => 'object', + 'properties' => [ + 'DimensionKey' => ['description' => '监控项关联的维度信息键,取值范围与报警任务的监控类型有关:'."\n" + .'- 当报警任务为自定义监控类型(即MetricType=custom)时,不限制取值范围,由您自行指定。'."\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' => '监控项关联的维度信息值,取值范围由Dimensions.DimensionKey决定:'."\n" + .'- 当Dimensions.DimensionKey的取值是自定义的,即报警任务是自定义监控类型(即MetricType=custom)时,该参数不限制取值范围,由您自行指定。'."\n" + ."\n" + .'- 当Dimensions.DimensionKey的取值是系统指定的取值范围中的,即报警任务为系统监控类型(即MetricType=system)时,该参数取值范围如下:'."\n" + ."\n" + .' - user_id:由系统自动填充。'."\n" + ."\n" + .' - scaling_group:由系统自动填充。'."\n" + ."\n" + .' - device:'."\n" + ."\n" + .' - eth0:对于经典网络实例,eth0表示内网网卡。对于VPC实例,只存在eth0一张网卡。'."\n" + ."\n" + .' - eth1:对于经典网络实例,eth1代表外网网卡。'."\n" + ."\n" + .' - state:'."\n" + ."\n" + .' - TCP_TOTAL:表示总的TCP连接数。'."\n" + ."\n" + .' - ESTABLISHED:表示已建立的TCP连接数。'."\n" + .' - rulePool:ALB服务器组id,示例:sgp-xxxxx。', 'type' => 'string', 'required' => false, 'example' => 'eth0'], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 10, + ], ], [ - 'name' => 'LaunchTemplateOverrides', + 'name' => 'Expressions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '扩展启动模板的实例规格信息。', + 'description' => '多指标报警规则相关信息。', 'type' => 'array', 'items' => [ - 'description' => '扩展启动模板的实例规格信息。', + 'description' => '多指标报警规则相关信息。', 'type' => 'object', 'properties' => [ - 'InstanceType' => [ - 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,请同时指定本参数和`LaunchTemplateOverrides.WeightedCapacity`。'."\n" - ."\n" - .'本参数用于指定实例规格,会覆盖启动模板中的实例规格。'."\n" - ."\n" - .'> 仅当LaunchTemplateId参数指定了启动模板时,本参数生效。'."\n" - ."\n" - .'InstanceType的取值范围:在售的ECS实例规格。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.c5.xlarge', - ], - 'WeightedCapacity' => [ - 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,指定`LaunchTemplateOverrides.InstanceType`后,再指定本参数。'."\n" - ."\n" - .'本参数用于指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。'."\n" - ."\n" - .'由于每个实例规格的vCPU个数、内存大小等性能指标会有差异,您可以根据自身需求,给不同的实例规格配置不同的权重。'."\n" - ."\n" - .'例如:'."\n" - ."\n" - .'- 当前容量:0。'."\n" - ."\n" - .'- 期望容量:6。'."\n" - ."\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', - ], + 'MetricName' => ['description' => '多指标报警规则的监控指标名称。取值范围与报警任务的监控类型有关:'."\n" + ."\n" + .'- 当报警任务为自定义监控类型(即MetricType=custom)时,取值范围是您自有的监控项范围。'."\n" + ."\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" + ."\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, ], @@ -2220,2395 +1625,1147 @@ ], ], [ - 'name' => 'RegionId', + 'name' => 'ExpressionsLogicOperator', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '多指标报警条件之间的关系。取值范围:'."\n" + ."\n" + .'- `&&`:当所有监控指标都符合报警条件时,才能触发报警。即当多指标报警规则下的表达式均为`true`时,才能触发报警。'."\n" + .'- `||`:如果其中一个指标符合报警条件,即可触发报警。'."\n" + ."\n" + .'默认值: `&&`。', 'type' => 'string', 'required' => false, 'example' => '&&'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '创建报警任务的返回信息集合。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], + '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' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '启用一个伸缩组', - 'description' => '- 当伸缩组处于Inactive状态,且伸缩组配置了组内实例的配置信息来源(伸缩配置、启动模板或者在创建伸缩组时指定的ECS实例)时,才可以调用该接口来启用伸缩组。否则,会调用失败。'."\n" - ."\n" - .' > 一个伸缩组在同一时刻有且只有一个生效的实例配置信息来源。在调用接口时,您可以为伸缩组指定伸缩配置或启动模板。如果调用该接口前您已经为伸缩组配置了实例配置信息来源,在调用时再指定伸缩配置或启动模板会覆盖原有的配置信息。'."\n" - ."\n" - .'- 当该接口指定了加入伸缩组的ECS实例(InstanceId.N),调用该接口后,弹性伸缩会判断在加入ECS实例后伸缩组的ECS实例数量(Total Capacity)是否在最小值(MinSize)和最大值(MaxSize)之间:'."\n" - ."\n" - .' - 如果伸缩组的Total Capacity小于MinSize,调用成功后,弹性伸缩服务会自动创建差额的按量付费的ECS实例。例如:创建伸缩组时,指定MinSize为5,在启用伸缩组的InstanceId.N参数中指定2台已有ECS实例,则弹性伸缩在加入2台已有ECS实例之后,再自动创建3台ECS实例。'."\n" - ."\n" - .' - 如果伸缩组的Total Capacity大于MaxSize,则调用失败。', - ], - 'DisableScalingGroup' => [ - 'summary' => '如果伸缩组处于启用状态,并且您暂时不需要该伸缩组执行伸缩活动,您可以调用API DisableScalingGroup停用该伸缩组。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '创建一个报警任务', + 'description' => '- 如果您创建自定义监控类型的报警任务(MetricType=custom),您需要先将自定义监控项指标上报到云监控。具体操作,请参见[自定义监控报警任务](~~74861~~)。'."\n" + .'- 创建报警任务时,您需要指定监控项(MetricName),并配合维度信息(Dimensions.DimensionKey和Dimensions.DimensionValue),来确定伸缩组中该监控项数据的聚合范围。例如,指定user_id和scaling_group来确定聚合该用户、该伸缩组下所有ECS实例或ECI实例的监控项数据。'."\n" + .' - 自定义监控报警任务(MetricType=custom)的监控项取决于您自有的监控指标。'."\n" + .' - 系统监控报警任务(MetricType=system)支持的监控项的更多信息,请参见[系统监控报警任务](~~74854~~)。'."\n" + ."\n\n" + .'> 维度信息中,user_id和scaling_group由系统自动填充,device、state需要您手动指定。更多信息,请参见参数`Dimensions.DimensionKey`和`Dimensions.DimensionValue`。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateAlarm', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AlarmTaskId\\": \\"asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'CreateDiagnoseReport' => [ + 'summary' => 'CreateDiagnoseReport', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125389', - 'abilityTreeNodes' => [ - 'FEATUREessUCEVTM', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '221453', + 'abilityTreeNodes' => ['FEATUREessO4WOGN'], ], '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, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '目标伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1f2f6oxc2*******'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '请求ID。', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '0189C6CB-07BA-5AFE-B533-D93892324774'], + 'ReportId' => ['description' => '诊断报告ID,资源诊断报告的唯一标志。', 'type' => 'string', 'example' => 'dr-uf6enpbnri1xhcy9qc7s'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '停用一个伸缩组', - 'description' => '停用一个指定的伸缩组前,您需要注意以下事项:'."\n" - ."\n" - .'- 停用伸缩组之前发生的伸缩活动,会继续完成,而之后触发的伸缩活动会被拒绝。'."\n" - ."\n" - .'- 当伸缩组为Active状态时才可以调用该接口。', - ], - 'SetGroupDeletionProtection' => [ - 'summary' => '如果开启伸缩组删除保护功能后,此时不能删除该伸缩组;如果关闭伸缩组删除保护功能,此时可直接删除该伸缩组,本文为您介绍如何调用API SetGroupDeletionProtection为伸缩组开启或关闭伸缩组删除保护功能。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0189C6CB-07BA-5AFE-B533-D93892324774\\",\\n \\"ReportId\\": \\"dr-uf6enpbnri1xhcy9qc7s\\"\\n}","type":"json"}]', + 'title' => '创建诊断报告', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateDiagnoseReport', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'CreateEciScalingConfiguration' => [ + 'summary' => '创建一个ECI类型的伸缩配置,弹性伸缩会以该伸缩配置作为ECI实例使用的模板,在触发弹性扩容活动时自动创建ECI实例满足您的业务需求。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125350', - 'abilityTreeNodes' => [ - 'FEATUREessF87COY', - ], + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '125325', + 'abilityTreeNodes' => ['FEATUREessWJGIW5'], ], 'parameters' => [ [ - 'name' => 'GroupDeletionProtection', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '是否为伸缩组开启删除保护。取值范围:'."\n" - ."\n" - .'- true:开启删除保护功能。开启删除保护功能后,不能在控制台或者通过调用API删除伸缩组。如果需要删除伸缩组,必须先关闭删除保护功能。'."\n" - .'- false:关闭删除保护功能。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => true, - 'example' => 'true', - ], + 'schema' => ['description' => '伸缩配置所属的伸缩组的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asg-bp14wlu85wrpchm0****'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'ScalingConfigurationName', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1igpak5ft1flyp****', - ], + 'schema' => ['description' => '伸缩配置的名称。长度为2~64个英文或中文字符组成,以数字、大小写字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。'."\n" + ."\n" + .'在同一地域下同一伸缩组内伸缩配置名称唯一。如果您没有指定该参数,则默认使用伸缩配置的ID。', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'scalingconfig****'], ], [ - 'name' => 'RegionId', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'desc'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'CCC29E24-3AEC-4F2C-8A14-78B14FA7****', - ], - ], - ], + [ + 'name' => 'SecurityGroupId', + 'in' => 'query', + 'schema' => ['description' => 'ECI实例所属的安全组ID。同一个安全组内的ECI实例之间可以互相访问。'."\n" + ."\n" + .'如果没有指定安全组,系统将自动使用您选择的地域下的默认安全组,您需要确保该安全组的入方向规则中包含容器需要暴露的协议和端口。如果您在该地域下没有默认安全组,系统将自动创建一个默认安全组,并将您声明的容器协议和端口添加到该安全组的入方向规则中。', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'sg-uf66jeqopgqa9hdn****'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CCC29E24-3AEC-4F2C-8A14-78B14FA7****\\"\\n}","type":"json"}]', - 'title' => '为伸缩组开启或关闭删除保护', - ], - 'DeleteScalingGroup' => [ - 'summary' => '如果您需要根据业务变动需求与策略自动增加或减少指定类型的实例数量,则可以通过配置伸缩组来自动调整您的业务计算能力(即实例数量)。如果您不再需要某个伸缩组,可以调用API DeleteScalingGroup删除该伸缩组来空出伸缩组配额。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + '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-(AUTO_INCREMENT)[0,3]'], ], - ], - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '125373', - 'abilityTreeNodes' => [ - 'FEATUREess909XOL', + [ + 'name' => 'RestartPolicy', + 'in' => 'query', + 'schema' => ['description' => 'ECI实例重启策略。取值范围:'."\n" + ."\n" + .'- Always:总是重启。'."\n" + .'- Never:从不重启。'."\n" + .'- OnFailure:失败时重启。'."\n" + ."\n" + .'默认值:Always。', 'type' => 'string', 'required' => false, 'example' => 'Always'], ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'Cpu', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '实例级别vCPU大小。单位:核。'."\n" + ."\n", 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '1.0'], ], [ - 'name' => 'ForceDelete', + 'name' => 'Memory', 'in' => 'query', - 'schema' => [ - 'description' => '如果伸缩组存在ECS实例或ECI实例,或者存在正在进行伸缩活动,是否强制删除伸缩组并移出和释放ECS实例或ECI实例。取值范围:'."\n" - ."\n" - .'- true:强制删除伸缩组。会先停止伸缩组,拒绝接收新的伸缩活动请求,然后等待已有的伸缩活动完成,最后将伸缩组内所有ECS实例移出伸缩组(手动添加的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', - ], + 'schema' => ['description' => '实例级别内存大小。单位:GiB。'."\n" + ."\n", 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '2.0'], ], [ - 'name' => 'RegionId', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '资源组ID', 'type' => 'string', 'required' => false, 'example' => 'rg-uf66jeqopgqa9hdn****'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], - ], + [ + 'name' => 'DnsPolicy', + 'in' => 'query', + 'schema' => ['description' => 'DNS策略。取值范围:'."\n" + ."\n" + .'- None:使用DnsConfig字段设置的DNS。'."\n" + ."\n" + .'- Default:继承运行环境的DNS设置。', 'type' => 'string', 'required' => false, 'example' => 'Default'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '删除一个伸缩组', - 'description' => '删除伸缩组需注意以下信息:'."\n" - ."\n" - .'- 删除伸缩组会删除相关联的伸缩配置、伸缩规则、伸缩活动、伸缩请求的信息。'."\n" - ."\n" - .'- 删除伸缩组不会删除定时任务、云监控报警任务、负载均衡实例以及RDS实例。'."\n" - ."\n" - .'- 如果伸缩组内存在运行中的ECS实例或ECI实例,弹性伸缩会先停止ECS实例或ECI实例,然后移出所有手动添加的ECS实例或ECI实例并释放所有自动创建的ECS实例或ECI实例。'."\n" - ."\n" - .' >删除伸缩组前,请确保伸缩组未设置开启伸缩组保护功能。如果伸缩组已开启该功能,请先在修改伸缩组页面关闭该保护功能后再删除伸缩组。'."\n" - ."\n" - .'- 如果创建伸缩组时设置了开启伸缩组保护功能,则您不能在控制台或者通过API删除该伸缩组,可以有效避免误删除伸缩组的操作。'."\n" - ."\n" - .'- 创建ECS实例时开启了实例释放保护功能,并加入伸缩组进行托管后,如果您需要删除伸缩组,则手动添加的ECS实例会被强制移出该伸缩组,自动创建的ECS实例也会随该伸缩组一起被自动释放掉。'."\n" - ."\n" - .' >删除伸缩组前,为了避免伸缩组中的ECS实例被强制释放,即使您单独为ECS实例开启了实例释放保护功能,仍然需要在伸缩组中设置伸缩组内ECS实例的保护功能,使其在删除伸缩组时不会被强制释放。具体操作,请参见[SetInstancesProtection](~~459342~~)。', - ], - 'DescribeScalingGroups' => [ - 'summary' => '如果您需要查看伸缩组的基本信息、伸缩组内实例、伸缩配置等信息,您可以通过调用API DescribeScalingGroups查询该伸缩组。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'EnableSls', + 'in' => 'query', + 'schema' => ['description' => '>该参数未开放使用。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '125357', - 'abilityTreeNodes' => [ - 'FEATUREess7569XW', + [ + 'name' => 'ImageSnapshotId', + 'in' => 'query', + 'schema' => ['description' => '镜像缓存ID。', 'type' => 'string', 'required' => false, 'example' => 'imc-2zebxkiifuyzzlhl****'], ], - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'RamRoleName', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属地域的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '实例RAM角色名称。其中,ECI与ECS共用实例RAM角色,更多信息,请参见[实例RAM角色](~~61175~~)。', 'type' => 'string', 'required' => false, 'example' => 'RamTestRole'], ], [ - 'name' => 'PageNumber', + 'name' => 'TerminationGracePeriodSeconds', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组列表的页码。起始值:1。'."\n" - ."\n" - .'默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => '程序的缓冲时间,用于处理关闭之前的操作。单位为秒。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '60'], ], [ - 'name' => 'PageSize', + 'name' => 'AutoMatchImageCache', 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时设置的每页行数。最大值:50。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '50', - 'example' => '10', - 'default' => '10', - ], + 'schema' => ['description' => '是否自动匹配镜像缓存。取值范围:'."\n" + .'- true:是。'."\n" + .'- false:否。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'GroupType', + 'name' => 'Ipv6AddressCount', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组管理的实例类型。可能值:'."\n" - ."\n" - .'- ECS:伸缩组内管理的伸缩实例为ECS实例。'."\n" - ."\n" - .'- ECI:伸缩组内管理的伸缩实例为ECI实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'ECS', - ], + 'schema' => ['description' => 'IPv6地址数。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'ScalingGroupIds', + '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实例。'."\n" + ."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + [ + 'name' => 'EipBandwidth', + 'in' => 'query', + 'schema' => ['description' => '弹性公网IP的带宽。默认为5 M。'."\n" + ."\n", '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。'."\n" + ."\n", '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' => 'Tags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '待查询伸缩组的ID。'."\n" - ."\n" - .'查询结果会忽略失效的伸缩组ID,并且不报错。', + 'description' => 'ECI实例的标签。标签以键值对方式传入,最多可以使用20组标签。Key和Value的使用要求如下:'."\n" + .' '."\n" + .'- Key最多支持64个字符,不能以aliyun和acs:开头,不能包含`http://`或者`https://`。一旦使用标签,Key不允许为空字符串。'."\n" + .'- Value最多支持128个字符,不能以aliyun和acs:开头,不能包含`http://`或者`https://`。Value可以为空字符串。', 'type' => 'array', 'items' => [ - 'description' => '待查询伸缩组的ID。'."\n" - ."\n" - .'查询结果会忽略失效的伸缩组ID,并且不报错。', - 'type' => 'string', + 'description' => 'ECI实例的标签。标签以键值对方式传入,最多可以使用20组标签。Key和Value的使用要求如下: '."\n" + .' '."\n" + .'- Key最多支持64个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。一旦使用标签,Key不允许为空字符串。 '."\n" + .'- Value最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。Value可以为空字符串。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '实例的标签键。'."\n" + ."\n" + .'如果传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => 'version'], + 'Value' => ['description' => '实例的标签值。'."\n" + ."\n" + .'如果传入该值,则允许为空字符串。最多支持128个字符,不能以`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => '3'], + ], 'required' => false, - 'example' => 'asg-bp14wlu85wrpchm0****', ], 'required' => false, - 'maxItems' => 20, + 'maxItems' => 21, ], ], [ - 'name' => 'ScalingGroupNames', + 'name' => 'ImageRegistryCredentials', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '待查询的伸缩组的名称。'."\n" - ."\n" - .'查询结果会忽略失效的伸缩组名称,并且不报错。', + 'description' => '镜像仓库的详细信息。', 'type' => 'array', 'items' => [ - 'description' => '待查询的伸缩组的名称。'."\n" - ."\n" - .'查询结果会忽略失效的伸缩组名称,并且不报错。', - 'type' => 'string', + 'description' => '镜像仓库的详细信息。', + 'type' => 'object', + 'properties' => [ + 'Password' => ['description' => '镜像仓库密码。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'yourpassword '."\n"], + 'Server' => ['description' => '镜像仓库注册地址。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'registry-vpc.cn-shanghai.aliyuncs.com'], + 'UserName' => ['description' => '镜像仓库用户名。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'yourusername '."\n"], + ], 'required' => false, - 'example' => 'scalinggroup**** '."\n", ], 'required' => false, - 'maxItems' => 20, - ], - ], - [ - 'name' => 'ScalingGroupName', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的名称。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'scalinggroup****', - ], - ], - [ - 'name' => 'ResourceGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => '待查询的伸缩组所属的资源组ID。'."\n" - ."\n" - .'>当没有伸缩组属于当前资源组下时,查询结果为空,并且不会报错。', - 'type' => 'string', - 'required' => false, - 'example' => 'rg-123******', + 'maxItems' => 11, ], ], [ - 'name' => 'Tags', + 'name' => 'Containers', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩组的标签信息集合。', + 'description' => '实例包含的容器列表。', 'type' => 'array', 'items' => [ - 'description' => '伸缩组的标签信息集合。', + 'description' => '容器的监控数据详情。', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => '伸缩组的标签键。'."\n" - ."\n", - 'type' => 'string', + '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, - 'example' => 'Department', + 'maxItems' => 100, ], - 'Value' => [ - 'description' => '伸缩组的标签值。'."\n" - ."\n", - 'type' => 'string', + '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秒。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5'], + 'Ports' => [ + '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。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '80'], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'Finance '."\n", + 'maxItems' => 101, ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 20, - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '伸缩组列表详情。', - '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' => [ - '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。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'StoppedCapacity' => [ - 'description' => '伸缩组中处于节省停机效果的实例数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'OnDemandPercentageAboveBaseCapacity' => [ - 'description' => '伸缩组满足最小按量实例数(ondemandbasecapacity)要求后,超出的实例中按量实例应占的比例,取值范围:0~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****', + 'SecurityContext.ReadOnlyRootFilesystem' => ['description' => '容器运行的根文件系统是否为只读,目前仅支持配置为true。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + '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位。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '/usr/local/bin '."\n"], + 'FieldRefFieldPath' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'required' => false, 'example' => 'fieldPath'], ], - 'CompensateWithOnDemand' => [ - 'description' => '当MultiAZPolicy取值为COST_OPTIMIZED时,如果因价格、库存等原因无法创建足够的抢占式实例,是否允许自动尝试创建按量实例满足ECS实例数量要求。可能值:'."\n" + '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" + .'例如:当Command配置为/bin/bash时,需要配置为true。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + 'WorkingDir' => ['description' => '容器工作目录。', 'type' => 'string', 'required' => false, 'example' => '/usr/local/ '."\n"], + '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请求检测的端口号。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8080'], + 'Args' => [ + 'description' => '容器启动命令对应的参数。最多10个。', + 'type' => 'array', + 'items' => ['description' => '容器启动命令对应的参数。最多10个。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '100'], + 'required' => false, + 'maxItems' => 101, + ], + 'Gpu' => ['description' => '指定容器使用的GPU个数。'."\n" + ."\n", '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。'."\n" + ."\n", 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.5'], + 'Name' => ['description' => '容器镜像名称。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'nginx '."\n"], + 'Image' => ['description' => '容器镜像。'."\n" + ."\n", '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'], + 'VolumeMounts' => [ + 'description' => '容器挂载的数据卷信息。', + 'type' => 'array', + 'items' => [ + 'description' => '容器挂载的数据卷信息。', + 'type' => 'object', + 'properties' => [ + 'MountPropagation' => ['description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。取值范围:'."\n" ."\n" - .'- true:允许。'."\n" - .'- false:不允许。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'ScalingPolicy' => [ - 'description' => '指定伸缩组的回收模式。可能值:'."\n" - .' '."\n" - .'- recycle:伸缩组的回收模式为停机回收模式。'."\n" - .'- release:伸缩组的回收模式为释放模式。'."\n" - .'- forcerelease:伸缩组的回收模式为强制释放模式。'."\n" + .'- None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。'."\n" + .'- HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。'."\n" + .'- Bidirectional:和HostToCotainer类似,能感知挂载操作。另外,该卷将被传播回主机和使用同一卷的所有Pod的所有容器。'."\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。即当伸缩组内按量实例个数少于该最小值时,系统将优先创建按量实例。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '30', - ], - 'ProtectedCapacity' => [ - 'description' => '伸缩组中处于保护中状态的ECS实例的数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'HealthCheckType' => [ - 'description' => '伸缩组的健康检查方式。可能值:'."\n" + .'默认值:None。', 'type' => 'string', 'required' => false, 'example' => 'None'], + 'MountPath' => ['description' => '容器挂载数据卷的目录。'."\n" ."\n" - .'- NONE:不做健康检查。'."\n" - .'- ECS:对伸缩组内的实例做健康检查(ECS类型和ECI类型的伸缩组均使用本取值开启实例健康检查)。'."\n" - .'- LOAD_BALANCER: 根据负载均衡(暂不支持clb负载均衡类型)健康检查结果判断实例健康状态。', - 'type' => 'string', - 'example' => 'ECS', - ], - 'LifecycleState' => [ - 'description' => '伸缩组的状态信息。可能值:'."\n" + .'>容器挂载目录下的内容会被Volume的内容直接覆盖,请您谨慎使用。'."\n" + .'>', 'type' => 'string', 'required' => false, 'example' => '/pod/data'], + 'ReadOnly' => ['description' => '数据卷是否只读。取值范围:'."\n" ."\n" - .'- Active:生效状态,处于生效状态的伸缩组才能接收执行伸缩规则的请求并触发伸缩活动。'."\n" + .'- true:是。'."\n" ."\n" - .'- Inactive:失效状态,处于失效状态的伸缩组不接收任何执行伸缩规则的请求。'."\n" + .'- false:否。'."\n" ."\n" - .'- Deleting:伸缩组正在删除,处于删除中状态的伸缩组不接收任何执行伸缩规则的请求,并且不能修改伸缩组相关参数。', - 'type' => 'string', - 'example' => 'Active', + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + 'Name' => ['description' => '数据卷名称。同Volumes中的Name。', 'type' => 'string', 'required' => false, 'example' => 'default-volume1 '."\n"], + 'SubPath' => ['description' => '数据卷子路径。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'data2/ '."\n"], ], - 'GroupDeletionProtection' => [ - 'description' => '是否开启了伸缩组删除保护。可能值:'."\n" - ."\n" - .'- true:开启伸缩组删除保护,此时不能删除该伸缩组。'."\n" - .'- false:关闭伸缩组删除保护。', - 'type' => 'boolean', - 'example' => 'true', + 'required' => false, + ], + 'required' => false, + 'maxItems' => 101, + ], + 'LivenessProbe.FailureThreshold' => ['description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。'."\n" + ."\n" + .'默认为3。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3'], + 'ReadinessProbe.Exec.Commands' => [ + 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', + 'type' => 'array', + 'items' => ['description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', 'type' => 'string', 'required' => false, 'example' => 'cat/tmp/healthy'], + 'required' => false, + 'maxItems' => 20, + ], + 'ReadinessProbe.FailureThreshold' => ['description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。默认值:3。'."\n" + ."\n", '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核数。'."\n" + ."\n", 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.25'], + 'LivenessProbe.HttpGet.Port' => ['description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的端口号。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8888'], + 'LivenessProbe.HttpGet.Path' => ['description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的路径。', 'type' => 'string', 'required' => false, 'example' => '/healthyz '."\n"], + 'LivenessProbe.SuccessThreshold' => ['description' => '从上次检查失败后重新认定检查成功的检查次数阈值(必须是连续成功),默认值为1。当前值必须为1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + 'ReadinessProbe.PeriodSeconds' => ['description' => '检查执行的周期,默认值为10秒,最小值为1秒。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3'], + 'LivenessProbe.TimeoutSeconds' => ['description' => '检查超时的时间,默认值为1秒,最小值为1秒。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + 'Commands' => [ + 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。', + 'type' => 'array', + 'items' => ['description' => '容器启动命令。最多20个。每个命令最多包含256个字符。', 'type' => 'string', 'required' => false, 'example' => 'sleep'], + 'required' => false, + 'maxItems' => 101, + ], + 'SecurityContext.RunAsUser' => ['description' => '设置运行容器的用户ID。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000'], + 'ReadinessProbe.HttpGet.Path' => ['description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的路径。', 'type' => 'string', 'required' => false, 'example' => '/healthz '."\n"], + 'LivenessProbe.Exec.Commands' => [ + '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'], + 'LifecyclePostStartHandlerExecs' => [ + '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'], + 'LifecyclePreStopHandlerExecs' => [ + '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, + 'docRequired' => true, + 'maxItems' => 21, + ], + ], + [ + 'name' => 'Volumes', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '数据卷信息。', + 'type' => 'array', + 'items' => [ + 'description' => '数据卷信息。', + 'type' => 'object', + 'properties' => [ + 'Type' => ['description' => '数据卷类型。取值范围:'."\n" + ."\n" + .'- EmptyDirVolume:EmptyDir类型的数据卷,表示空目录。'."\n" + ."\n" + .'- NFSVolume:NFS类型的数据卷,表示网络文件系统。'."\n" + ."\n" + .'- ConfigFileVolume:ConfigFile类型的数据卷,表示配置文件。'."\n" + ."\n" + .'- FlexVolume:使用FlexVolume插件扩展存储类型,支持挂载云盘。'."\n" + ."\n" + .'- HostPathVolume:HostPath类型的数据卷,表示主机节点的文件或目录。'."\n" + ."\n" + .'- DiskVolume(不推荐):云盘数据卷。建议使用FlexVolume挂载云盘。', 'type' => 'string', 'required' => false, 'example' => 'ConfigFileVolume'], + 'DiskVolume.DiskSize' => ['description' => 'DiskVolume的大小。单位:GiB。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '15'], + 'NFSVolume.Path' => ['description' => 'NFS数据卷路径。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '/share '."\n"], + 'FlexVolume.FsType' => ['description' => '挂载的文件系统类型,默认取决于FlexVolume的script。', 'type' => 'string', 'required' => false, 'example' => 'ext4 '."\n"], + '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" + ."\n" + .'- true:是。'."\n" + ."\n" + .'- false:否。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + 'HostPathVolume.Path' => ['description' => 'Host上的绝对路径。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '/xx/xx/path '."\n"], + '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的驱动程序名称。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'flexvolume'], + 'ConfigFileVolumeDefaultMode' => ['description' => 'ConfigFileVolume默认的权限。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0644'], + 'NFSVolume.Server' => ['description' => 'NFS服务器地址。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '3f9cd4a596-naw76.cn-shanghai.nas.aliyuncs.com'], + 'DiskVolume.DiskId' => ['description' => 'DiskVolume的ID。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'd-xx '."\n"], + 'Name' => ['description' => '数据卷名称。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'default-volume1 '."\n"], + 'EmptyDirVolume.Medium' => ['description' => 'EmptyDirVolume的存储媒介,默认为空,使用node文件系统;支持memory,表示使用内存。', 'type' => 'string', 'required' => false, 'example' => 'memory'], + 'ConfigFileVolumeConfigFileToPaths' => [ + 'description' => '配置文件路径列表。', + 'type' => 'array', + 'items' => [ + 'description' => '配置文件路径列表。', + 'type' => 'object', + 'properties' => [ + 'Path' => ['description' => '环境变量名。', 'type' => 'string', 'required' => false, 'example' => 'PATH'], + 'Mode' => ['description' => 'ConfigFileVolume目录权限。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0644'], + 'Content' => ['description' => '配置文件内容(32 KB)。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'bGl1bWk= '."\n"], ], - 'ActiveScalingConfigurationId' => [ - 'description' => '伸缩组内生效的伸缩配置的ID。', - 'type' => 'string', - 'example' => 'asc-bp1et2qekq3ojr33****', + 'required' => false, + ], + 'required' => false, + 'maxItems' => 90, + ], + 'EmptyDirVolume.SizeLimit' => ['description' => 'EmptyDir数据卷的大小。取值请带上单位,建议使用Gi或Mi。', 'type' => 'string', 'required' => false, 'example' => '256Mi'], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 101, + ], + ], + [ + 'name' => 'InitContainers', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'init容器列表。', + 'type' => 'array', + 'items' => [ + 'description' => 'init容器列表。', + 'type' => 'object', + 'properties' => [ + 'InitContainerEnvironmentVars' => [ + 'description' => 'init容器的环境变量信息。', + 'type' => 'array', + 'items' => [ + 'description' => 'init容器的环境变量信息。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '环境变量名。长度为1~128位,格式要求:`[0-9a-zA-Z]`,以及下划线,不能以数字开头。', 'type' => 'string', 'required' => false, 'example' => 'Path '."\n"], + 'Value' => ['description' => '环境变量值。长度为0~256位。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '/usr/bin/ '."\n"], + 'FieldRefFieldPath' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'required' => false, 'example' => 'path'], ], - 'GroupType' => [ - 'description' => '伸缩组管理的实例类型。'."\n" - ."\n", - 'type' => 'string', - 'example' => 'ECS', + 'required' => false, + ], + 'required' => false, + 'maxItems' => 301, + ], + 'SecurityContext.Capability.Adds' => [ + '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'], + 'InitContainerPorts' => [ + 'description' => 'init容器端口映射列表。', + 'type' => 'array', + 'items' => [ + 'description' => 'init容器端口映射列表。', + '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' => '1'], ], - 'MultiAZPolicy' => [ - 'description' => '多可用区伸缩组ECS实例扩缩容策略。可能值:'."\n" - .' '."\n" - .'- PRIORITY:根据您定义的虚拟交换机(VSwitchIds)扩缩容。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动使用下一优先级的虚拟交换机创建ECS实例。'."\n" + 'required' => false, + ], + 'required' => false, + 'maxItems' => 101, + ], + 'InitContainerVolumeMounts' => [ + 'description' => 'init容器的挂载点信息数组。', + 'type' => 'array', + 'items' => [ + 'description' => 'init容器的挂载点信息数组。', + 'type' => 'object', + 'properties' => [ + 'MountPropagation' => ['description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。可能值:'."\n" ."\n" - .'- COST_OPTIMIZED:按vCPU单价从低到高进行尝试创建。当伸缩配置设置了抢占式计费方式的多实例规格时,优先创建对应抢占式实例。您可以继续通过CompensateWithOnDemand参数指定当抢占式实例由于库存等原因无法创建时,是否自动尝试以按量付费的方式创建。'."\n" - .' > COST_OPTIMIZED仅在伸缩配置设置了多实例规格或者选用了抢占式实例的情况下生效。'."\n" + .'- None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。'."\n" ."\n" - .'- BALANCE:在伸缩组指定的多可用区之间均匀分配ECS实例。如果由于库存不足等原因可用区之间变得不平衡,您可以通过API RebalanceInstance平衡资源。', - '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', - ], - 'CurrentHostName' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'example' => 'hostname', - ], - '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。'."\n" - ."\n", - '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' => [ - 'description' => '后端服务器组列表。', - 'type' => 'array', - 'items' => [ - 'description' => '后端服务器组列表。', - 'type' => 'object', - 'properties' => [ - 'LoadBalancerId' => [ - 'description' => '后端服务器组所属的负载均衡实例的ID。', - 'type' => 'string', - 'example' => '147b46d767c-cn-qingdao-cm5****', - ], - 'VServerGroupAttributes' => [ - 'description' => '后端服务器组属性。', - 'type' => 'array', - 'items' => [ - 'description' => '后端服务器组属性。', - 'type' => 'object', - 'properties' => [ - 'VServerGroupId' => [ - 'description' => '后端服务器组属性。'."\n" - ."\n", - 'type' => 'string', - 'example' => 'rsp-bp12bjrny****', - ], - 'Weight' => [ - 'description' => '后端服务器组的权重。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Port' => [ - 'description' => '负载均衡实例对外提供服务的端口号。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '22', - ], - ], - ], - ], - ], - ], - ], - 'LaunchTemplateOverrides' => [ - '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.InstanceType`)的竞价价格上限。'."\n" - .'>仅当`LaunchTemplateId`参数指定了启动模板时,该参数才生效。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.025', - ], - ], - ], - ], - 'AlbServerGroups' => [ - 'description' => 'ALB服务器组的相关信息集合。', - 'type' => 'array', - 'items' => [ - 'description' => 'ALB服务器组的相关信息集合。', - 'type' => 'object', - 'properties' => [ - 'AlbServerGroupId' => [ - 'description' => 'ALB服务器组的ID。'."\n" - ."\n", - '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' => [ - 'description' => '负载均衡服务器组的相关信息集合。'."\n" + .'- HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。'."\n" ."\n" - .'> 您可以通过此参数获取伸缩组关联的ALB类型服务组、NLB类型服务器组和GWLB类型服务组的相关信息集合。'."\n" - .'>', - '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' => [ - 'description' => 'ECS实例移出伸缩组的策略的集合。可能值:'."\n" - .'- OldestInstance:移出最早创建的ECS实例。'."\n" - .'- NewestInstance:移出最新创建的ECS实例。'."\n" - .'- OldestScalingConfiguration:移出最早由伸缩配置创建的ECS实例。', - 'type' => 'array', - 'items' => [ - 'description' => 'ECS实例移出伸缩组的策略的集合。可能值:'."\n" - .'- OldestInstance:移出最早创建的ECS实例。'."\n" - .'- NewestInstance:移出最新创建的ECS实例。'."\n" - .'- OldestScalingConfiguration:移出最早由伸缩配置创建的ECS实例。', - 'type' => 'string', - 'example' => 'OldestScalingConfiguration', - ], - ], - 'DBInstanceIds' => [ - 'description' => '伸缩组关联RDS实例的ID。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组关联RDS实例的ID。', - 'type' => 'string', - 'example' => 'rm-bp15556qzebg1****', - ], - ], - 'LoadBalancerIds' => [ - 'description' => '伸缩组关联的负载均衡实例的ID列表。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组关联的负载均衡实例的ID列表。', - 'type' => 'string', - 'example' => 'lb-bp19byhscefk3x0li****', - ], - ], - 'VSwitchIds' => [ - 'description' => '伸缩组关联虚拟交换机的ID集合。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组关联虚拟交换机的ID集合。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。'."\n" - ."\n", - 'type' => 'string', - 'example' => 'vsw-bp1whw2u46cn8zubm****', - ], - ], - 'SuspendedProcesses' => [ - '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', - ], - 'IsElasticStrengthInAlarm' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'MonitorGroupId' => [ - 'description' => '伸缩组关联的云监控应用分组ID。', - 'type' => 'string', - 'example' => '1497****', - ], - 'AzBalance' => [ - 'description' => '伸缩组的容量是否在多个可用区间均衡分布(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效),可能值:'."\n" - ."\n" - .'- true:伸缩组的容量在多个可用区间均衡分布。'."\n" - .'- false:伸缩组的容量不在多个可用区间均衡分布。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'AllocationStrategy' => [ - 'description' => '容量分配策略,决定了伸缩组如何选择可用的实例规格类型满足容量。容量分布策略同时对按量和抢占式容量生效(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。可能值:'."\n" - ."\n" - .'- priority:按照配置的实例规格的顺序创建实例。'."\n" - .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。', - 'type' => 'string', - 'example' => 'priority', - ], - 'SpotAllocationStrategy' => [ - 'description' => '抢占式容量分布策略。您可以通过该参数单独指定抢占式容量的分布策略(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。可能值:'."\n" - ."\n" - .'- priority:按照配置的实例规格的顺序创建实例。'."\n" - .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n" - ."\n" - .'默认值:priority。', - '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' => [ - 'description' => '负载均衡配置列表。', - 'type' => 'array', - 'items' => [ - 'description' => '负载均衡配置列表。', - 'type' => 'object', - 'properties' => [ - 'LoadBalancerId' => [ - 'description' => '负载均衡CLB(原SLB)实例的ID。', - 'type' => 'string', - 'example' => 'lb-2zep8alpq5zq1a2xwyxxx', - ], - 'Weight' => [ - 'description' => '弹性伸缩将ECS实例添加到SLB服务器组后,ECS实例作为后端服务器的权重。权重越高,ECS实例将被分配到越多的访问请求。如果权重为0,则ECS实例不会收到访问请求。取值范围:0~100。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - ], - ], - ], - 'EnableDesiredCapacity' => [ - 'description' => '是否开启期望实例数标识。可能值:'."\n" - .'- true:已开启期望实例数。'."\n" - .'- false:未开启期望实例数。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'Tags' => [ - 'description' => '伸缩组的标签信息集合。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组的标签信息集合。', - 'type' => 'object', - 'properties' => [ - 'TagKey' => [ - 'description' => '伸缩组的标签键。', - 'type' => 'string', - 'example' => 'Department', - ], - 'TagValue' => [ - 'description' => '伸缩组的标签值。', - 'type' => 'string', - 'example' => 'Finance', - ], - 'Propagate' => [ - 'description' => '标识该标签是否为可传播标签,可能值:'."\n" - .'- true:伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n" - .'- false:伸缩组上的标签不会传播到实例上。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'example' => 'false', - ], - ], - ], - ], - 'HealthCheckTypes' => [ - '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' => [ - 'description' => '伸缩组关联的数据库列表。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组关联的数据库配置信息。', - 'type' => 'object', - 'properties' => [ - 'DBInstanceId' => [ - 'description' => '数据库实例ID。', - 'type' => 'string', - 'example' => 'rm-m5eqju85s45mu0***'."\n", - ], - 'Type' => [ - 'description' => '数据库类型。可能值:'."\n" - .'- RDS。'."\n" - .'- Redis。'."\n" - .'- MongoDB。', - 'type' => 'string', - 'example' => 'RDS', - ], - 'SecurityGroupIds' => [ - 'description' => '伸缩组向数据库添加的安全组白名单列表。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组向数据库添加的安全组白名单。'."\n" - ."\n" - .'当DetachDBInstances接口中的`RemoveSecurityGroup`参数取值为`true`时,将从数据库安全组白名单中移除此列表中的安全组。', - '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" - .'- PricePerUnit:使用每单位容量价格比价。'."\n" - ."\n" - .' 实例在伸缩组中容量大小等于为实例规格设置的权重,默认为1,即一台ECS所占容量为1。'."\n" - ."\n" - .'- PricePerVCpu:使用每单位vCpu价格进行比价。', - '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', + .'- 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 '."\n"], + 'SubPath' => ['description' => '数据卷下的子目录,方便Pod将同一个Volume下不同目录挂载到容器不同目录。', 'type' => 'string', 'required' => false, 'example' => '/usr/sub/'], ], + 'required' => false, ], + 'required' => false, + 'maxItems' => 101, + ], + 'SecurityContext.ReadOnlyRootFilesystem' => ['description' => '容器运行的根文件系统是否为只读。目前仅支持配置为true。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'ImagePullPolicy' => ['description' => '镜像拉取策略。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'Always'], + 'Cpu' => ['description' => '容器的vCPU大小。单位:核。'."\n" + ."\n", 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.5'], + 'WorkingDir' => ['description' => '工作目录。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '/usr/local '."\n"], + 'Commands' => [ + 'description' => '容器启动指令。', + 'type' => 'array', + 'items' => ['description' => '容器启动指令。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'sleep'."\n"], + 'required' => false, + 'maxItems' => 101, + ], + 'Args' => [ + 'description' => '容器启动命令对应的参数。最多10个。', + 'type' => 'array', + 'items' => ['description' => '容器启动命令对应的参数。最多10个。', 'type' => 'string', 'required' => false, 'example' => '100'], + 'required' => false, + 'maxItems' => 101, ], + 'SecurityContext.RunAsUser' => ['description' => '设置运行容器的用户ID。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '587'], + 'Gpu' => ['description' => '指定容器使用的GPU个数。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + 'Memory' => ['description' => '内存大小。单位:GiB。'."\n" + ."\n", 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '1.0'], + 'Name' => ['description' => '容器名称。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'test-init '."\n"], ], + 'required' => false, ], + 'required' => false, + 'maxItems' => 21, ], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"ScalingGroups\\": [\\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 \\"CurrentHostName\\": \\"hostname\\",\\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 {\\n \\"LoadBalancerId\\": \\"147b46d767c-cn-qingdao-cm5****\\",\\n \\"VServerGroupAttributes\\": [\\n {\\n \\"VServerGroupId\\": \\"rsp-bp12bjrny****\\",\\n \\"Weight\\": 1,\\n \\"Port\\": 22\\n }\\n ]\\n }\\n ],\\n \\"LaunchTemplateOverrides\\": [\\n {\\n \\"WeightedCapacity\\": 4,\\n \\"InstanceType\\": \\"ecs.c5.xlarge\\",\\n \\"SpotPriceLimit\\": 0.025\\n }\\n ],\\n \\"AlbServerGroups\\": [\\n {\\n \\"AlbServerGroupId\\": \\"sgp-ddwb0y0g6y9bjm****\\",\\n \\"Weight\\": 100,\\n \\"Port\\": 80\\n }\\n ],\\n \\"ServerGroups\\": [\\n {\\n \\"ServerGroupId\\": \\"sgp-i9ouakeaerr*****\\",\\n \\"Type\\": \\"ALB\\",\\n \\"Weight\\": 100,\\n \\"Port\\": 80\\n }\\n ],\\n \\"RemovalPolicies\\": [\\n \\"OldestScalingConfiguration\\"\\n ],\\n \\"DBInstanceIds\\": [\\n \\"rm-bp15556qzebg1****\\"\\n ],\\n \\"LoadBalancerIds\\": [\\n \\"lb-bp19byhscefk3x0li****\\"\\n ],\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1whw2u46cn8zubm****\\"\\n ],\\n \\"SuspendedProcesses\\": [\\n \\"ScaleIn\\"\\n ],\\n \\"SystemSuspended\\": true,\\n \\"IsElasticStrengthInAlarm\\": false,\\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 {\\n \\"LoadBalancerId\\": \\"lb-2zep8alpq5zq1a2xwyxxx\\",\\n \\"Weight\\": 10\\n }\\n ],\\n \\"EnableDesiredCapacity\\": false,\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"Department\\",\\n \\"TagValue\\": \\"Finance\\",\\n \\"Propagate\\": false\\n }\\n ],\\n \\"HealthCheckTypes\\": [\\n \\"ECS\\"\\n ],\\n \\"DBInstances\\": [\\n {\\n \\"DBInstanceId\\": \\"rm-m5eqju85s45mu0***\\\\n\\",\\n \\"Type\\": \\"RDS\\",\\n \\"SecurityGroupIds\\": [\\n \\"sg-uf65zt66cf2a0q47***\\"\\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}","type":"json"}]', - 'title' => '查询伸缩组列表', - ], - 'DescribeScalingGroupDetail' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], - ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '212843', - 'abilityTreeNodes' => [ - 'FEATUREess7569XW', + 'name' => 'DnsConfigNameServers', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'DNS服务器的IP地址列表。', + 'type' => 'array', + 'items' => ['description' => 'DNS服务器的IP地址列表。', 'type' => 'string', 'required' => false, 'example' => '172.10.*.**'."\n"], + 'required' => false, + 'maxItems' => 20, + ], ], - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'DnsConfigSearchs', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩组所属的地域ID。更多信息,请参见[地域与可用区](~~40654~~)。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', + 'description' => 'DNS搜索域列表。', + 'type' => 'array', + 'items' => ['description' => 'DNS搜索域列表。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'svc.local.kubenetes'."\n"], + 'required' => false, + 'maxItems' => 20, ], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'DnsConfigOptions', 'in' => 'query', - 'allowEmptyValue' => false, + 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', + 'description' => '对象选项列表,每个对象由Name和Value(可选)构成。', + 'type' => 'array', + 'items' => [ + 'description' => '对象选项列表,每个对象由Name和Value(可选)构成。', + 'type' => 'object', + 'properties' => [ + 'Value' => ['description' => '对象变量值。', 'type' => 'string', 'required' => false, 'example' => 'value '."\n"], + 'Name' => ['description' => '对象变量名。', 'type' => 'string', 'required' => false, 'example' => 'name'], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 20, ], ], [ - 'name' => 'OutputFormat', + 'name' => 'HostAliases', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'Output输出格式,现仅支持YAML格式。', - 'type' => 'string', + 'description' => '自定义实例内一个容器的Hostname映射。'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '自定义实例内一个容器的Hostname映射。'."\n", + 'type' => 'object', + 'properties' => [ + 'Ip' => ['description' => '添加IP。', 'type' => 'string', 'required' => false, 'example' => '1.1.1.1'."\n"], + 'Hostnames' => [ + 'description' => '添加主机名。', + 'type' => 'array', + 'items' => ['description' => '添加主机名。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'hehe.com'], + 'required' => false, + 'maxItems' => 51, + ], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'YAML', + 'maxItems' => 101, ], ], - ], - 'responses' => [ - 200 => [ + [ + 'name' => 'SecurityContextSysctls', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'ScalingGroup' => [ - 'description' => '弹性伸缩组。', - 'type' => 'object', - 'properties' => [ - 'VpcId' => [ - 'description' => '专有网络(VPC)ID。', - 'type' => 'string', - 'example' => 'vpc-wz9fcq97y1vqkd8bijcq6', - ], - 'CreationTime' => [ - 'description' => '伸缩组的创建时间。', - 'type' => 'string', - 'example' => '2014-08-14T10:58Z'."\n", - ], - 'TotalInstanceCount' => [ - 'description' => '伸缩组内所有ECS实例的数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'ScalingGroupName' => [ - 'description' => '伸缩组的名称,同一地域下伸缩组名称唯一。'."\n" - ."\n" - .'长度为2~64个字符,以数字、大小英文字母或中文开头,可以包含数字、下划线(_)、短划线(-)和半角句号(.)。', - 'type' => 'string', - 'example' => 'dyrSuvBOtO1dEdIlIbp****'."\n", - ], - 'SpotInstancePools' => [ - 'description' => '指定可用实例规格的个数,伸缩组将按成本最低的多个规格均衡创建抢占式实例。取值范围:0~10。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'StoppedCapacity' => [ - 'description' => '伸缩组中处于节省停机效果的实例数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'OnDemandPercentageAboveBaseCapacity' => [ - 'description' => '伸缩组满足最小按量实例数(ondemandbasecapacity)要求后,超出的实例中按量实例应占的比例,取值范围:0~100。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - 'ModificationTime' => [ - 'description' => '修改时间。', - 'type' => 'string', - 'example' => '2014-08-14T10:58Z'."\n", - ], - 'MinSize' => [ - 'description' => '伸缩组最小实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'ScalingGroupId' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'example' => 'asg-bp14wlu85wrpchm0****'."\n", - ], - '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" - .'- forcerecycle:伸缩组的回收模式为强制停机回收模式。'."\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。即当伸缩组内按量实例个数少于该最小值时,系统将优先创建按量实例。', - '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****'."\n", - ], - 'GroupType' => [ - 'description' => '伸缩组管理的实例类型。可能值:'."\n" - ."\n" - .'- ECS:伸缩组内管理的伸缩实例为ECS实例。'."\n" - ."\n" - .'- ECI:伸缩组内管理的伸缩实例为ECI实例。', - 'type' => 'string', - 'example' => 'ECS', - ], - 'MultiAZPolicy' => [ - 'description' => '多可用区伸缩组ECS实例扩缩容策略。可能值:'."\n" - .' '."\n" - .'- PRIORITY:根据您定义的虚拟交换机(VSwitchIds)扩缩容。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动使用下一优先级的虚拟交换机创建ECS实例。'."\n" - ."\n" - .'- COST_OPTIMIZED:按vCPU单价从低到高进行尝试创建。当伸缩配置设置了抢占式计费方式的多实例规格时,优先创建对应抢占式实例。您可以继续通过CompensateWithOnDemand参数指定当抢占式实例由于库存等原因无法创建时,是否自动尝试以按量付费的方式创建。'."\n" - .' > COST_OPTIMIZED仅在伸缩配置设置了多实例规格或者选用了抢占式实例的情况下生效。'."\n" - ."\n" - .'- BALANCE:在伸缩组指定的多可用区之间均匀分配ECS实例。如果由于库存不足等原因可用区之间变得不平衡,您可以通过API RebalanceInstance平衡资源。', - 'type' => 'string', - 'example' => 'PRIORITY', - ], - 'RemovingCapacity' => [ - 'description' => '正在移出伸缩组的ECS实例的数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'PendingWaitCapacity' => [ - 'description' => '伸缩组中处于加入挂起状态的ECS实例的数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'StandbyCapacity' => [ - 'description' => '伸缩组中处于备用状态的实例数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'CurrentHostName' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'example' => 'hostname', - ], - 'PendingCapacity' => [ - 'description' => '正在加入伸缩组,还未完成相关配置的ECS实例的数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'LaunchTemplateId' => [ - 'description' => '伸缩组使用的实例启动模板的ID。', - 'type' => 'string', - 'example' => 'lt-m5e3ofjr1zn1aw7****'."\n", - ], - 'TotalCapacity' => [ - 'description' => '当伸缩组设置了实例规格权重,表示伸缩组内所有实例的加权容量总和。否则,表示伸缩组内所有实例的数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'DesiredCapacity' => [ - 'description' => '伸缩组内实例的期望数量,伸缩组会自动将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-shenzhen', - ], - 'VSwitchId' => [ - 'description' => '伸缩组关联虚拟交换机的ID。', - 'type' => 'string', - 'example' => 'vsw-bp1whw2u46cn8zubm****'."\n", - ], - 'MaxSize' => [ - 'description' => '伸缩组最大实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'DefaultCooldown' => [ - 'description' => '冷却时间,单位秒。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '60', - ], - 'VServerGroups' => [ - 'description' => '后端服务器组列表。', - 'type' => 'array', - 'items' => [ - 'description' => '后端服务器组列表。', - 'type' => 'object', - 'properties' => [ - 'LoadBalancerId' => [ - 'description' => '虚拟服务器组所属传统型负载均衡CLB(原SLB)实例的ID。'."\n" - ."\n", - 'type' => 'string', - 'example' => '147b46d767c-cn-qingdao-cm5****'."\n", - ], - 'VServerGroupAttributes' => [ - 'description' => '后端服务器组属性。', - 'type' => 'array', - 'items' => [ - 'description' => '后端服务器组属性。', - 'type' => 'object', - 'properties' => [ - 'VServerGroupId' => [ - 'description' => '后端服务器组的ID。', - 'type' => 'string', - 'example' => 'rsp-bp12bjrny****'."\n", - ], - 'Weight' => [ - 'description' => '后端服务器组的权重。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Port' => [ - 'description' => '后端服务器端口。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '80', - ], - ], - ], - ], - ], - ], - ], - 'LaunchTemplateOverrides' => [ - 'description' => '扩展启动模板的实例规格信息。', - 'type' => 'array', - 'items' => [ - 'description' => '扩展启动模板的实例规格信息。', - 'type' => 'object', - 'properties' => [ - 'WeightedCapacity' => [ - 'description' => '指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4', - ], - 'InstanceType' => [ - 'description' => '指定的实例规格,会覆盖启动模板中的实例规格。', - 'type' => 'string', - 'example' => 'ecs.c5.xlarge'."\n", - ], - 'SpotPriceLimit' => [ - 'description' => '本参数用于指定实例启动模板覆盖规格(即`LaunchTemplateOverride.InstanceType`)的竞价价格上限。'."\n" - .'>仅当`LaunchTemplateId`参数指定了启动模板时,该参数才生效。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.025', - ], - ], - ], - ], - 'AlbServerGroups' => [ - 'description' => 'ALB服务器组的相关信息集合。', - 'type' => 'array', - 'items' => [ - 'description' => 'ALB服务器组的相关信息集合。', - 'type' => 'object', - 'properties' => [ - 'AlbServerGroupId' => [ - 'description' => 'ALB服务器组的ID。', - 'type' => 'string', - 'example' => 'sgp-ddwb0y0g6y9bjm****'."\n", - ], - 'Weight' => [ - 'description' => '弹性伸缩将实例添加到ALB服务器组后,实例作为后端服务器的权重。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'Port' => [ - 'description' => '弹性伸缩将实例添加到ALB服务器组后,实例使用的端口号。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '80', - ], - ], - ], - ], - 'ServerGroups' => [ - 'description' => '负载均衡服务器组的相关信息集合。'."\n" - ."\n" - .'> 您可以通过此参数获取伸缩组关联的ALB类型服务组、NLB类型服务器组和GWLB类型服务组的相关信息集合。'."\n" - .'>', - 'type' => 'array', - 'items' => [ - 'description' => '负载均衡服务器组的相关信息集合。', - 'type' => 'object', - 'properties' => [ - 'ServerGroupId' => [ - 'description' => '服务器组的ID。', - 'type' => 'string', - 'example' => 'sgp-i9ouakeaerr*****'."\n", - ], - 'Type' => [ - 'description' => '负载均衡服务器组类型,可能值:'."\n" - ."\n" - .'- ALB:应用型负载均衡 ALB(Application Load Balancer)。'."\n" - .'- NLB:网络型负载均衡 NLB(Network Load Balancer)。'."\n" - .'- GWLB:网关型负载均衡 GWLB(Gateway Load Balancer)。', - 'type' => 'string', - 'example' => 'ALB', - ], - 'Weight' => [ - 'description' => '弹性伸缩将实例添加到服务器组后,实例作为后端服务器的权重。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'Port' => [ - 'description' => '弹性伸缩将实例添加到服务器组后,实例使用的端口号。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '80', - ], - ], - ], - ], - 'RemovalPolicies' => [ - 'description' => '实例移出伸缩组的策略的集合。', - 'type' => 'array', - 'items' => [ - 'description' => 'ECS实例移出伸缩组的策略的集合。可能值:'."\n" - .'- OldestInstance:移出最早创建的实例。'."\n" - .'- NewestInstance:移出最新创建的实例。'."\n" - .'- OldestScalingConfiguration:移出最早由伸缩配置创建的实例。', - 'type' => 'string', - 'example' => 'OldestScalingConfiguration', - ], - ], - 'DBInstanceIds' => [ - 'description' => '伸缩组关联RDS实例的ID。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组关联RDS实例的ID。', - 'type' => 'string', - 'example' => 'rm-bp15556qzebg1****'."\n", - ], - ], - 'LoadBalancerIds' => [ - 'description' => '伸缩组关联的负载均衡实例的ID列表。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组关联的负载均衡实例的ID列表。', - 'type' => 'string', - 'example' => 'lb-bp19byhscefk3x0li****'."\n", - ], - ], - 'VSwitchIds' => [ - 'description' => '伸缩组关联虚拟交换机的ID集合。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。'."\n" - ."\n", - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组关联虚拟交换机的ID集合。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。', - 'type' => 'string', - 'example' => 'vsw-bp1whw2u46cn8zubm****'."\n", - ], - ], - 'SuspendedProcesses' => [ - '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:执行伸缩组内的伸缩活动。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'IsElasticStrengthInAlarm' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'MonitorGroupId' => [ - 'description' => '伸缩组关联的云监控应用分组ID。', - 'type' => 'string', - 'example' => '1497****'."\n", - ], - 'AzBalance' => [ - 'description' => '伸缩组的容量是否在多个可用区间均衡分布(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效),可能值:'."\n" - ."\n" - .'- true:伸缩组的容量在多个可用区间均衡分布。'."\n" - .'- false:伸缩组的容量不在多个可用区间均衡分布。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'AllocationStrategy' => [ - 'description' => '容量分配策略,决定了伸缩组如何选择可用的实例规格类型满足容量。容量分布策略同时对按量和抢占式容量生效(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。可能值:'."\n" - ."\n" - .'- priority:按照配置的实例规格的顺序创建实例。'."\n" - .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。', - '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' => 'null', - ], - 'InitCapacity' => [ - 'description' => '伸缩组中处于实例扩容前初始化状态的实例数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'ResourceGroupId' => [ - 'description' => '新创建的伸缩组所属的资源组ID。'."\n" - .'>将新创建的伸缩组归属到指定的资源组中。如果不指定该参数,则归属为默认资源组。', - 'type' => 'string', - 'example' => 'rg-aek2epf32c4uyji', - ], - 'LoadBalancerConfigs' => [ - 'description' => '负载均衡配置列表。', - 'type' => 'array', - 'items' => [ - 'description' => '负载均衡配置列表。', - 'type' => 'object', - 'properties' => [ - 'LoadBalancerId' => [ - 'description' => '负载均衡CLB(原SLB)实例的ID。', - 'type' => 'string', - 'example' => 'lb-2zein3ytoeq49cmkbyxr0', - ], - 'Weight' => [ - 'description' => '后端服务器的权重。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - ], - ], - ], - 'EnableDesiredCapacity' => [ - 'description' => '是否开启期望实例数标识。可能值:'."\n" - .'- true:已开启期望实例数'."\n" - .'- false:未开启期望实例数', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Tags' => [ - 'description' => '伸缩组的标签信息集合。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组的标签信息集合。', - 'type' => 'object', - 'properties' => [ - 'TagKey' => [ - 'description' => '伸缩组的标签键。', - 'type' => 'string', - 'example' => 'Department', - ], - 'TagValue' => [ - 'description' => '伸缩组的标签值。', - 'type' => 'string', - 'example' => 'Finance', - ], - 'Propagate' => [ - 'description' => '标识该标签是否为可传播标签,可能值:'."\n" - .'- true:伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n" - .'- false:伸缩组上的标签不会传播到实例上。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'example' => 'false', - ], - ], - ], - ], - 'HealthCheckTypes' => [ - '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', - ], - ], - ], - ], - 'Output' => [ - 'description' => 'ECI伸缩组输出详情。目前仅支持Kubernetes Deployment YAML格式输出。', - 'type' => 'string', - 'example' => 'apiVersion: apps/v1'."\n" - .'kind: Deployment'."\n" - .'metadata:'."\n" - .' name: nginx-deployment'."\n" - .' labels:'."\n" - .' app: nginx'."\n" - .' spec:'."\n" - .' replicas: 3'."\n" - .' selector:'."\n" - .' matchLabels:'."\n" - .' app: nginx'."\n" - .' template:'."\n" - .' metadata:'."\n" - .' labels:'."\n" - .' app: nginx'."\n" - .' annotations:'."\n" - .' k8s.aliyun.com/eip-bandwidth: 10'."\n" - .' k8s.aliyun.com/eci-with-eip: true'."\n" - .' spec:'."\n" - .' containers:'."\n" - .' - name: nginx'."\n" - .' image: nginx:1.14.2'."\n" - .' ports:'."\n" - .' - containerPort: 80', + 'description' => '实例运行的安全上下文系统信息。', + 'type' => 'array', + 'items' => [ + 'description' => '实例运行的安全上下文系统信息。', + 'type' => 'object', + 'properties' => [ + 'Value' => ['description' => '实例运行的安全上下文的变量值。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '65536'], + 'Name' => ['description' => '实例运行的安全上下文系统名称。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'kernel.msgmax'."\n"], ], + 'required' => false, ], + 'required' => false, + 'maxItems' => 11, ], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingGroup\\": {\\n \\"VpcId\\": \\"vpc-wz9fcq97y1vqkd8bijcq6\\",\\n \\"CreationTime\\": \\"2014-08-14T10:58Z\\\\n\\",\\n \\"TotalInstanceCount\\": 1,\\n \\"ScalingGroupName\\": \\"dyrSuvBOtO1dEdIlIbp****\\\\n\\",\\n \\"SpotInstancePools\\": 5,\\n \\"StoppedCapacity\\": 1,\\n \\"OnDemandPercentageAboveBaseCapacity\\": 20,\\n \\"ModificationTime\\": \\"2014-08-14T10:58Z\\\\n\\",\\n \\"MinSize\\": 1,\\n \\"ScalingGroupId\\": \\"asg-bp14wlu85wrpchm0****\\\\n\\",\\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\\",\\n \\"GroupType\\": \\"ECS\\",\\n \\"MultiAZPolicy\\": \\"PRIORITY\\",\\n \\"RemovingCapacity\\": 0,\\n \\"PendingWaitCapacity\\": 0,\\n \\"StandbyCapacity\\": 1,\\n \\"CurrentHostName\\": \\"hostname\\",\\n \\"PendingCapacity\\": 0,\\n \\"LaunchTemplateId\\": \\"lt-m5e3ofjr1zn1aw7****\\\\n\\",\\n \\"TotalCapacity\\": 1,\\n \\"DesiredCapacity\\": 5,\\n \\"SpotInstanceRemedy\\": true,\\n \\"LaunchTemplateVersion\\": \\"Default\\",\\n \\"RegionId\\": \\"cn-shenzhen\\",\\n \\"VSwitchId\\": \\"vsw-bp1whw2u46cn8zubm****\\\\n\\",\\n \\"MaxSize\\": 2,\\n \\"DefaultCooldown\\": 60,\\n \\"VServerGroups\\": [\\n {\\n \\"LoadBalancerId\\": \\"147b46d767c-cn-qingdao-cm5****\\\\n\\",\\n \\"VServerGroupAttributes\\": [\\n {\\n \\"VServerGroupId\\": \\"rsp-bp12bjrny****\\\\n\\",\\n \\"Weight\\": 1,\\n \\"Port\\": 80\\n }\\n ]\\n }\\n ],\\n \\"LaunchTemplateOverrides\\": [\\n {\\n \\"WeightedCapacity\\": 4,\\n \\"InstanceType\\": \\"ecs.c5.xlarge\\\\n\\",\\n \\"SpotPriceLimit\\": 0.025\\n }\\n ],\\n \\"AlbServerGroups\\": [\\n {\\n \\"AlbServerGroupId\\": \\"sgp-ddwb0y0g6y9bjm****\\\\n\\",\\n \\"Weight\\": 100,\\n \\"Port\\": 80\\n }\\n ],\\n \\"ServerGroups\\": [\\n {\\n \\"ServerGroupId\\": \\"sgp-i9ouakeaerr*****\\\\n\\",\\n \\"Type\\": \\"ALB\\",\\n \\"Weight\\": 100,\\n \\"Port\\": 80\\n }\\n ],\\n \\"RemovalPolicies\\": [\\n \\"OldestScalingConfiguration\\"\\n ],\\n \\"DBInstanceIds\\": [\\n \\"rm-bp15556qzebg1****\\\\n\\"\\n ],\\n \\"LoadBalancerIds\\": [\\n \\"lb-bp19byhscefk3x0li****\\\\n\\"\\n ],\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1whw2u46cn8zubm****\\\\n\\"\\n ],\\n \\"SuspendedProcesses\\": [\\n \\"ScaleIn\\"\\n ],\\n \\"SystemSuspended\\": true,\\n \\"IsElasticStrengthInAlarm\\": false,\\n \\"MonitorGroupId\\": \\"1497****\\\\n\\",\\n \\"AzBalance\\": false,\\n \\"AllocationStrategy\\": \\"priority\\",\\n \\"SpotAllocationStrategy\\": \\"lowestPrice\\",\\n \\"MaxInstanceLifetime\\": 0,\\n \\"CustomPolicyARN\\": \\"null\\",\\n \\"InitCapacity\\": 0,\\n \\"ResourceGroupId\\": \\"rg-aek2epf32c4uyji\\",\\n \\"LoadBalancerConfigs\\": [\\n {\\n \\"LoadBalancerId\\": \\"lb-2zein3ytoeq49cmkbyxr0\\",\\n \\"Weight\\": 100\\n }\\n ],\\n \\"EnableDesiredCapacity\\": true,\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"Department\\",\\n \\"TagValue\\": \\"Finance\\",\\n \\"Propagate\\": false\\n }\\n ],\\n \\"HealthCheckTypes\\": [\\n \\"ECS\\"\\n ]\\n },\\n \\"Output\\": \\"apiVersion: apps/v1\\\\nkind: Deployment\\\\nmetadata:\\\\n name: nginx-deployment\\\\n labels:\\\\n app: nginx\\\\n spec:\\\\n replicas: 3\\\\n selector:\\\\n matchLabels:\\\\n app: nginx\\\\n template:\\\\n metadata:\\\\n labels:\\\\n app: nginx\\\\n annotations:\\\\n k8s.aliyun.com/eip-bandwidth: 10\\\\n k8s.aliyun.com/eci-with-eip: true\\\\n spec:\\\\n containers:\\\\n - name: nginx\\\\n image: nginx:1.14.2\\\\n ports:\\\\n - containerPort: 80\\"\\n}","type":"json"}]', - 'title' => '查询指定伸缩组详情', - 'summary' => '您可以通过调用API DescribeScalingGroupDetail查询该伸缩组详情,例如,查看指定伸缩组的基本信息、伸缩组内实例、伸缩配置等信息。当ECI类型的伸缩组指定OutputFormat参数为YAML时,可以输出Kubernetes Deployment YAML格式内容。', - ], - 'DescribeScalingInstances' => [ - 'summary' => '调用DescribeScalingInstances,通过伸缩组ID查询该伸缩组内的ECS实例列表及实例信息,包括当前伸缩组中,运行状态的抢占式实例总数、ECS实例总数、ECS实例的预热状态、生命周期状态等。同时也支持指定实例健康状态、生命周期状态、创建方式等筛选符合要求的ECS实例。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '125341', - 'abilityTreeNodes' => [ - 'FEATUREessPMOEEX', - ], - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'NtpServers', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩组所属地域的ID。'."\n" - ."\n", - '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', + 'description' => 'NTP服务器。', + 'type' => 'array', + 'items' => ['description' => 'NTP服务器。', 'type' => 'string', 'required' => false, 'example' => 'ntp.cloud.aliyuncs.com'], 'required' => false, - 'example' => 'asc-bp1i65jd06v04vdh****', + 'maxItems' => 21, ], ], [ - 'name' => 'HealthStatus', + 'name' => 'AcrRegistryInfos', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'ECS实例在伸缩组中的健康状态,未处于运行中(Running)状态的ECS实例会被判定为不健康的ECS实例,取值范围: '."\n" - ."\n" - .'- Healthy:健康的ECS实例。 '."\n" - .'- Unhealthy:不健康的ECS实例。 '."\n" - ."\n" - .'弹性伸缩会自动移出伸缩组中不健康的ECS实例,并释放自动创建的ECS实例。'."\n" - ."\n" - .'是否释放手动添加的ECS实例由其托管状态决定。如果实例生命周期未托管给伸缩组,只移出实例但不释放。如果实例生命周期托管给伸缩组,移出并释放实例。'."\n" - ."\n" - .'> 请确保账号可用额度充足。如果账号欠费,所有后付费的ECS实例(包括按量付费实例和抢占式实例)都会停机,甚至被释放。欠费后伸缩组内ECS实例状态变化,请参见[欠费说明](~~170589~~)。', - 'type' => 'string', + 'description' => 'ACR企业版实例的信息。', + 'type' => 'array', + 'items' => [ + 'description' => 'ACR企业版实例的信息。', + 'type' => 'object', + 'properties' => [ + 'Domains' => [ + 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。', + 'type' => 'array', + 'items' => ['description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。', 'type' => 'string', 'required' => false, 'example' => '*****-****-registry.cn-beijing.cr.aliyuncs.com '."\n"], + 'required' => false, + 'maxItems' => 100, + ], + 'InstanceName' => ['description' => 'ACR企业版实例的名称。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'acr-test'."\n"], + 'InstanceId' => ['description' => 'ACR企业版实例ID。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'cri-nwj395hgf6f3**** '."\n"], + 'RegionId' => ['description' => 'ACR企业版实例所属地域。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'cn-beijing '."\n"], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'Healthy', + 'maxItems' => 21, ], ], [ - 'name' => 'LifecycleState', + 'name' => 'CostOptimization', 'in' => 'query', - 'schema' => [ - 'description' => 'ECS实例在伸缩组中的生命周期状态,取值范围:'."\n" - .' '."\n" - .'- InService:已成功加入伸缩组并正常提供服务。 '."\n" - .'- Pending:加入中。ECS实例加入伸缩组时包括加入负载均衡实例的后端服务器、RDS实例的访问白名单等过程。'."\n" - .'- Pending:Wait:加入挂起中。如果伸缩组内创建了适用于弹性扩张活动的生命周期挂钩,ECS实例在加入伸缩组时被挂起并等待挂钩超时时间结束。'."\n" - .'- Protected:保护中。ECS实例正常提供服务,但弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n" - .'- Standby:备用中。ECS实例不提供服务,负载均衡权重被置为零,且弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n" - .'- Stopped:停用中。ECS实例已停机,不提供服务。'."\n" - .'- Removing:移出中。ECS实例移出伸缩组时包括移出负载均衡实例的后端服务器、RDS实例的访问白名单等过程。 '."\n" - .'- Removing:Wait:移出挂起中。如果伸缩组内创建了适用于弹性收缩活动的生命周期挂钩,ECS实例在移出伸缩组时被挂起并等待挂钩超时时间结束。', - 'type' => 'string', - 'required' => false, - 'example' => 'InService', - ], + 'schema' => ['description' => '是否开启成本优化开关。可能值:'."\n" + .'- true:开启。'."\n" + .'- false:未开启。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'CreationType', + 'name' => 'InstanceFamilyLevel', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组中实例的创建方式,取值范围: '."\n" - ."\n" - .'- AutoCreated:弹性伸缩根据实例配置信息来源自动创建的ECS实例。 '."\n" - .'- Attached:不是通过弹性伸缩服务创建,而是由您手动添加到伸缩组中的ECS实例。'."\n" - .'- Managed:不是通过弹性伸缩服务创建,而是由您手动添加到伸缩组中的托管实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'AutoCreated', - ], + 'schema' => ['description' => '实例规格族级别,用于筛选符合要求的实例规格范围,当`CostOptimization`开启时生效。可能值:'."\n" + ."\n" + .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n" + .'- EnterpriseLevel:企业级。性能稳定且资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n" + .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的业务场景。更多信息,请参见[突发性能实例概述](~~59977~~)。', 'type' => 'string', 'required' => false, 'example' => 'EnterpriseLevel'], ], [ - 'name' => 'PageNumber', + 'name' => 'InstanceTypes', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'ECS实例列表的页码,起始值:1。'."\n" - ."\n" - .'默认值:1。', - 'type' => 'integer', - 'format' => 'int32', + 'description' => '指定的ECS实例规格,支持多规格(最多支持5个)。', + 'type' => 'array', + 'items' => ['description' => '指定的ECS实例规格。支持指定多个规格(最多支持5个),更多信息,请参见[指定ECS规格创建实例](~~114664~~)。', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large'], 'required' => false, - 'example' => '1', - 'default' => '1', + 'maxItems' => 10, ], ], [ - 'name' => 'PageSize', + 'name' => 'DataCacheBucket', 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时设置的每页行数,最大值:100。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'example' => '10', - 'default' => '10', - ], + 'schema' => ['description' => '数据缓存Bucket。', 'type' => 'string', 'required' => false, 'example' => 'default'], ], [ - 'name' => 'ScalingActivityId', + 'name' => 'DataCachePL', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩活动的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asa-bp1c9djwrgxjyk31****', - ], + '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' => 'InstanceIds', + 'name' => 'DataCacheProvisionedIops', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'ECS实例的ID。'."\n" - ."\n" - .'返回查询结果时忽略失效的InstanceId,并且不报错。', - 'type' => 'array', - 'items' => [ - 'description' => 'ECS实例的ID。'."\n" - ."\n" - .'返回查询结果时忽略失效的InstanceId,并且不报错。', - 'type' => 'string', - 'required' => false, - 'example' => 'i-bp109k5j3dum1ce6****', - ], - 'required' => false, - 'maxItems' => 200, - ], + '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' => 'CreationTypes', + 'name' => 'DataCacheBurstingEnabled', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '伸缩组中实例的创建方式,此参数和CreationType参数只能同时传入一个。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组中实例的创建方式,可分为AutoCreated、Attached、Managed。', - 'type' => 'string', - 'required' => false, - 'example' => 'AutoCreated', - ], - 'required' => false, - 'maxItems' => 10, - ], + 'schema' => ['description' => '数据缓存使用ESSD AutoPL云盘时,是否开启Burst(性能突发)。取值范围:'."\n" + ."\n" + .'- true:开启。'."\n" + .'- false:未开启。'."\n" + ."\n" + .'默认值:false。'."\n" + .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'LifecycleStates', + 'name' => 'GpuDriverVersion', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'ECS实例在伸缩组中的生命周期状态列表,此参数和LifecycleState参数只能同时传入一个,建议您使用此参数。', - 'type' => 'array', - 'items' => [ - 'description' => 'ECS实例在伸缩组中的生命周期状态,取值范围:'."\n" - .' '."\n" - .'- InService:已成功加入伸缩组并正常提供服务。 '."\n" - .'- Pending:加入中。ECS实例加入伸缩组时包括加入负载均衡实例的后端服务器、RDS实例的访问白名单等过程。'."\n" - .'- Pending:Wait:加入挂起中。如果伸缩组内创建了适用于弹性扩张活动的生命周期挂钩,ECS实例在加入伸缩组时被挂起并等待挂钩超时时间结束。'."\n" - .'- Protected:保护中。ECS实例正常提供服务,但弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n" - .'- Standby:备用中。ECS实例不提供服务,负载均衡权重被置为零,且弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n" - .'- Stopped:停用中。ECS实例已停机,不提供服务。'."\n" - .'- Removing:移出中。ECS实例移出伸缩组时包括移出负载均衡实例的后端服务器、RDS实例的访问白名单等过程。 '."\n" - .'- Removing:Wait:移出挂起中。如果伸缩组内创建了适用于弹性收缩活动的生命周期挂钩,ECS实例在移出伸缩组时被挂起并等待挂钩超时时间结束。', - 'type' => 'string', - 'required' => false, - 'example' => 'InService', - ], - 'required' => false, - 'maxItems' => 10, - ], + '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' => [ + 'description' => '创建伸缩配置后的返回信息。', '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' => 'ECS实例的总数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'ScalingInstances' => [ - 'description' => 'ECS实例信息组成的集合。', - 'type' => 'array', - 'items' => [ - 'description' => 'ECS实例信息组成的集合。', - 'type' => 'object', - 'properties' => [ - 'CreationTime' => [ - 'description' => 'ECS实例加入伸缩组的时间,精确到分钟。', - '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' => 'ECS实例的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实例在伸缩组中的健康状态,未处于运行中(Running)状态的ECS实例会被判定为不健康的ECS实例,可能值: '."\n" - ."\n" - .'- Healthy:健康的ECS实例。 '."\n" - .'- Unhealthy:不健康的ECS实例。 '."\n" - ."\n" - .'弹性伸缩会自动移出伸缩组中不健康的ECS实例,并释放自动创建的ECS实例。'."\n" - ."\n" - .'是否释放手动添加的ECS实例由其托管状态决定。如果实例生命周期未托管给伸缩组,只移出实例但不释放。如果实例生命周期托管给伸缩组,移出并释放实例。'."\n" - ."\n" - .'> 请确保账号可用额度充足。如果账号欠费,所有后付费的ECS实例(包括按量付费实例和抢占式实例)都会停机,甚至被释放。欠费后伸缩组内ECS实例状态变化,请参见[欠费说明](~~170589~~)。', - 'type' => 'string', - 'example' => 'Healthy', - ], - 'ScalingGroupId' => [ - 'description' => '所属伸缩组的ID。', - 'type' => 'string', - 'example' => 'asg-bp1igpak5ft1flyp****', - ], - 'WarmupState' => [ - 'description' => 'ECS实例的预热状态,可能值: '."\n" - .' '."\n" - .'- NoNeedWarmup:不需要预热。'."\n" - .'- WaitingForInstanceWarmup:等待预热结束。'."\n" - .'- InstanceWarmupFinish:预热结束。'."\n" - .' ', - 'type' => 'string', - 'example' => 'NoNeedWarmup', - ], - 'LifecycleState' => [ - 'description' => 'ECS实例在伸缩组中的生命周期状态,可能值:'."\n" - .' '."\n" - .'- InService:已成功加入伸缩组并正常提供服务。 '."\n" - .'- Pending:加入中。ECS实例加入伸缩组时包括加入负载均衡实例的后端服务器、RDS实例的访问白名单等过程。'."\n" - .'- Pending:Wait:加入挂起中。如果伸缩组内创建了适用于弹性扩张活动的生命周期挂钩,ECS实例在加入伸缩组时被挂起并等待挂钩超时时间结束。'."\n" - .'- Protected:保护中。ECS实例正常提供服务,但弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n" - .'- Standby:备用中。ECS实例不提供服务,负载均衡权重被置为零,且弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n" - .'- Stopped:停用中。ECS实例已停机,不提供服务。'."\n" - .'- Removing:移出中。ECS实例移出伸缩组时包括移出负载均衡实例的后端服务器、RDS实例的访问白名单等过程。 '."\n" - .'- Removing:Wait:移出挂起中。如果伸缩组内创建了适用于弹性收缩活动的生命周期挂钩,ECS实例在移出伸缩组时被挂起并等待挂钩超时时间结束。', - 'type' => 'string', - 'example' => 'InService', - ], - 'CreationType' => [ - 'description' => 'ECS实例的创建方式,可能值: '."\n" - ."\n" - .'- AutoCreated:弹性伸缩根据实例配置信息来源自动创建的ECS实例。 '."\n" - .'- Attached:不是通过弹性伸缩服务创建,而是由您手动添加到伸缩组中的ECS实例。', - 'type' => 'string', - 'example' => 'AutoCreated', - ], - 'ZoneId' => [ - 'description' => 'ECS实例所属的可用区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' => 'ECS实例加入伸缩组的时间,精确到秒。'."\n" - ."\n", - 'type' => 'string', - 'example' => '2020-05-18T03:11:39Z', - ], - 'ScalingActivityId' => [ - 'description' => 'ECS实例加入伸缩组时,伸缩活动的ID。', - 'type' => 'string', - 'example' => 'asa-bp1c9djwrgxjyk31****', - ], - 'ScalingInstanceId' => [ - 'description' => '伸缩组内的实例标识,与ECS实例或ECI实例的ID一一对应。', - 'type' => 'string', - 'example' => 'asi-j6cj1gcte640ekhb****', - ], - 'PrivateIpAddress' => [ - 'description' => '伸缩组中实例的内网IP地址。', - 'type' => 'string', - 'example' => '1**.2*.1**.2**', - ], - ], - ], - ], + 'ScalingConfigurationId' => ['description' => '实例ID,即容器组ID。', 'type' => 'string', 'example' => 'eci-uf6fonnghi50u374****'], + 'RequestId' => ['description' => '请求ID,唯一标识。', 'type' => 'string', 'example' => '89945DD3-9072-47D0-A318-353284CF****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B13527BF-1FBD-4334-A512-20F5E9D3****\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"TotalSpotCount\\": 4,\\n \\"TotalCount\\": 1,\\n \\"ScalingInstances\\": [\\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 \\"ScalingInstanceId\\": \\"asi-j6cj1gcte640ekhb****\\",\\n \\"PrivateIpAddress\\": \\"1**.2*.1**.2**\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => '查询伸缩组内ECS实例列表', - ], - 'DescribeScalingActivities' => [ - 'summary' => '通过API DescribeScalingActivities查看伸缩活动的详情,了解通过定时任务、报警任务或手动执行伸缩规则等方式触发伸缩活动的结果。例如,您可以在伸缩活动详情页查看到伸缩活动的状态、活动起因、变化后总实例数等信息。', - 'methods' => [ - 'post', - 'get', + 'errorCodes' => [ + 403 => [ + ['errorCode' => 'Forbidden.RiskControl', 'errorMessage' => 'Forbidden.RiskControl', 'description' => ''], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingConfigurationId\\": \\"eci-uf6fonnghi50u374****\\",\\n \\"RequestId\\": \\"89945DD3-9072-47D0-A318-353284CF****\\"\\n}","type":"json"}]', + 'title' => '创建一个ECI类型伸缩配置', + 'description' => '伸缩配置用来指定弹性扩张时使用的ECI实例模板。'."\n" + ."\n" + .'参数Cpu和Memory用于指定CPU和内存定义实例规格的范围,弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。该方式仅适用于伸缩组的扩缩容策略为成本优化策略,且伸缩配置未指定实例规格的场景。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateEciScalingConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + ], + 'CreateLifecycleHook' => [ + 'summary' => 'CreateLifecycleHook API用于在指定的弹性伸缩组中创建一个或多个生命周期挂钩。这些挂钩在实例的生命周期关键阶段(如启动、终止前)介入,使您能够执行自定义操作,如发送通知或执行自动化脚本等。通过此功能,您可以实现更细粒度的控制和管理,例如在实例被自动伸缩活动影响前后执行验证、配置或数据备份任务,从而增强应用部署的灵活性和可靠性。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '125358', - 'abilityTreeNodes' => [ - 'FEATUREessACRSW1', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '125396', + 'abilityTreeNodes' => ['FEATUREessZQ2TYX'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩活动所属伸缩组的地域ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '目标伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1eyv4qn8ssgv43****'], ], [ - 'name' => 'PageNumber', + 'name' => 'LifecycleHookName', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩活动列表的页码,起始值:1。'."\n" - ."\n" - .'默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'docRequired' => false, - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => '生命周期挂钩的名称。不能与当前伸缩组其他生命周期挂钩重名,长度为2~64个英文或中文字符,以数字、大小写字母或中文开头,可包含数字、下划线(_)、短划线(-)和英文句号(.)。'."\n" + ."\n" + .'默认值为LifecycleHookId的值。', 'type' => 'string', 'required' => false, 'example' => 'lifecyclehook****'], ], [ - 'name' => 'PageSize', + 'name' => 'LifecycleTransition', 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时设置的每页行数,最大值:50。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'docRequired' => false, - 'maximum' => '50', - 'example' => '10', - 'default' => '10', - ], + 'schema' => ['description' => '生命周期挂钩适用的伸缩活动类型,取值范围: '."\n" + .' '."\n" + .'- SCALE_OUT:伸缩组弹性扩张活动 '."\n" + .'- SCALE_IN:伸缩组弹性收缩活动 '."\n" + .' ', 'type' => 'string', 'required' => true, 'example' => 'SCALE_OUT'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'DefaultResult', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。'."\n" - ."\n" - .'> 调用该API时,`ScalingGroupId`和`ScalingActivityIds`参数必须二选一进行配置,如果两个参数同时都不配置,则会报错。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '等待状态结束后的下一步动作,取值范围: '."\n" + ."\n" + .'- CONTINUE:继续响应弹性扩张活动或者继续响应弹性收缩活动。'."\n" + .'- ABANDON:直接释放弹性扩张活动创建出来的ECS实例或者直接将弹性收缩活动中的ECS实例从伸缩组移除。 '."\n" + .'- ROLLBACK:针对弹性收缩活动,会拒绝释放ECS实例,进行回滚;针对弹性扩张活动,会直接释放创建出来的ECS实例,效果同ABANDON一样。'."\n" + ."\n" + .'当伸缩组发生弹性收缩活动(SCALE_IN)并触发多个生命周期挂钩时,如果一个生命周期挂钩的DefaultResult取值为ABANDON或ROLLBACK,且该挂钩等待状态结束时,会提前将其他生命周期挂钩对应的等待状态提前结束。其他情况下,下一步动作均以最后一个结束等待状态的下一步动作为准。'."\n" + ."\n\n" + ."\n" + .'默认值:CONTINUE', 'type' => 'string', 'required' => false, 'example' => 'CONTINUE'], ], [ - 'name' => 'StatusCode', + 'name' => 'HeartbeatTimeout', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩活动的状态。取值范围:'."\n" - .' '."\n" - .'- Successful:执行成功的伸缩活动。 '."\n" - .'- Warning:部分执行成功的伸缩活动。 '."\n" - .'- Failed:执行失败的伸缩活动。 '."\n" - .'- InProgress:正在执行的伸缩活动。 '."\n" - .'- Rejected:执行伸缩活动请求被拒绝。 '."\n" - .' ', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'Successful', - ], + 'schema' => ['description' => '生命周期挂钩为伸缩组活动设置的等待时间,等待状态超时后会执行下一步动作。取值范围:30~21600,单位:秒。'."\n" + ."\n" + .'创建了生命周期挂钩后,您可以调用RecordLifecycleActionHeartbeat延长ECS实例的等待时间,也可以调用CompleteLifecycleAction提前结束伸缩活动的等待状态。 '."\n" + ."\n" + .'默认值:600', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '600'], ], [ - 'name' => 'ScalingActivityIds', + 'name' => 'NotificationMetadata', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '待查询伸缩活动的ID。'."\n" - ."\n" - .'> 调用该API时,`ScalingGroupId`和`ScalingActivityIds`参数必须二选一进行配置,如果两个参数同时都不配置,则会报错。', - 'type' => 'array', - 'items' => [ - 'description' => '待查询伸缩活动的ID。'."\n" - ."\n" - .'> 调用该API时,`ScalingGroupId`和`ScalingActivityIds`参数必须二选一进行配置,如果两个参数同时都不配置,则会报错。', - 'type' => 'string', - 'required' => false, - 'example' => 'asa-bp161xudmuxdzofe****', - ], - 'required' => false, - 'maxItems' => 20, - ], + 'schema' => ['description' => '生命周期挂钩暂停伸缩活动时推送给NotificationArn(通知对象)的通知信息,便于管理和标记不同类别的通知信息。必须同时指定NotificationArn。参数长度不能超过4096个字符。'."\n" + ."\n" + .'如果NotificationArn指定为OOS模板,包括公共模板或者自定义模板,则NotificationMetadata必须指定为JSON字符串,且与OOS模板的参数相符。比如,`{"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" + ."\n" + .'>- 您可以根据需要设置lifecycleActionResult的值来覆盖当前默认值,取值范围为ABANDON、CONTINUE、ROLLBACK、${lifecycleActionResult}。'."\n" + .'其中,${lifecycleActionResult}表示lifecycleActionResult的值和DefaultResult保持一致。'."\n" + .'- 您可以在[OOS控制台](https://oos.console.aliyun.com/)获取对应模板的参数的详细信息。', 'type' => 'string', 'required' => false, 'example' => 'Test lifecycle hook.'], ], [ - 'name' => 'InstanceRefreshTaskId', + 'name' => 'NotificationArn', 'in' => 'query', - 'schema' => [ - 'description' => '实例刷新任务ID,可以设置此参数查询实例刷新任务相关的伸缩活动列表。', - 'type' => 'string', - 'required' => false, - 'example' => 'ir-a12ds234fasd*****', - ], + '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,不支持RAM用户的账号ID。'."\n" + .'- queuename:MNS队列的名称。'."\n" + .'- topicname:MNS主题的名称。'."\n" + .'- templatename:OOS模板的名称。', 'type' => 'string', 'required' => false, 'example' => 'acs:mns:cn-beijing:161456884340****:queue/modifyLifecycleHo****'], ], ], 'responses' => [ @@ -4616,5546 +2773,3399 @@ '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' => [ - 'description' => '伸缩活动信息组成的集合。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩活动信息组成的集合。', - 'type' => 'object', - 'properties' => [ - 'Progress' => [ - 'description' => '伸缩活动的运行进度。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'ScalingInstanceNumber' => [ - 'description' => '- 如果伸缩活动类型为扩容,该参数表示本次伸缩活动中被创建或从停机回收状态启动的实例的个数。'."\n" - ."\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" - .' '."\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' => [ - 'description' => '当前伸缩活动新建实例列表。', - 'type' => 'array', - 'items' => [ - 'description' => '当前伸缩活动新建实例列表。', - 'type' => 'string', - 'example' => '["i-abc1","i-abc2"]', - ], - ], - 'DestroyedInstances' => [ - 'description' => '当前伸缩活动释放实例列表。', - 'type' => 'array', - 'items' => [ - 'description' => '当前伸缩活动释放实例列表。', - 'type' => 'string', - 'example' => '['."\n" - .' "i-abc1",'."\n" - .' "i-abc2"'."\n" - .']', - ], - ], - 'StartedInstances' => [ - 'description' => '当前伸缩活动启动的停机不收费实例列表。', - 'type' => 'array', - 'items' => [ - 'description' => '当前伸缩活动启动的停机不收费实例列表。', - 'type' => 'string', - 'example' => '['."\n" - .' "i-abc1",'."\n" - .' "i-abc2"'."\n" - .']', - ], - ], - 'StoppedInstances' => [ - 'description' => '当前伸缩活动进入停机不收费状态实例列表。', - 'type' => 'array', - 'items' => [ - 'description' => '当前伸缩活动进入停机不收费状态实例列表。', - 'type' => 'string', - 'example' => '['."\n" - .' "i-abc1",'."\n" - .' "i-abc2"'."\n" - .']', - ], - ], - '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" - .'- Cms:通过报警任务触发伸缩活动。'."\n" - .'- Api:用户通过API方式触发伸缩活动。'."\n" - .'- Ess:系统任务触发伸缩活动。', - 'type' => 'string', - 'example' => 'Api', - ], - 'TriggerSourceId' => [ - 'description' => '伸缩活动触发源ID。可能值:'."\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' => [ - 'description' => '伸缩活动禁用的生命周期挂钩ID列表。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩活动禁用的生命周期挂钩ID列表。', - 'type' => 'string', - 'example' => 'ash-bp14zolna43z266bq***'."\n", - ], - ], - ], - ], - 'ActivityMetadata' => [ - 'description' => '伸缩活动的元数据。', - 'type' => 'string', - 'example' => '{\\"goatscaler.io/managed\\":\\"true\\"}', - ], - 'InstanceRefreshTaskId' => [ - 'description' => '实例刷新任务ID。', - 'type' => 'string', - 'example' => 'ir-asdf12adsxg*****', - ], - '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' => [ - 'description' => '失败的实例ID列表。', - 'type' => 'array', - 'items' => [ - 'description' => '实例ID。', - 'type' => 'string', - 'example' => 'i-8vbedazhjj6a6******', - ], - ], - ], - ], - ], - ], - ], - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'LifecycleHookId' => ['description' => '生命周期挂钩的ID。', 'type' => 'string', 'example' => 'ash-bp1at9ufhmcf9cmy****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CC107349-57B7-4405-B1BF-9BF5AF7F****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"ScalingActivities\\": [\\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 \\"[\\\\\\"i-abc1\\\\\\",\\\\\\"i-abc2\\\\\\"]\\"\\n ],\\n \\"DestroyedInstances\\": [\\n \\"[\\\\n \\\\\\"i-abc1\\\\\\",\\\\n \\\\\\"i-abc2\\\\\\"\\\\n]\\"\\n ],\\n \\"StartedInstances\\": [\\n \\"[\\\\n \\\\\\"i-abc1\\\\\\",\\\\n \\\\\\"i-abc2\\\\\\"\\\\n]\\"\\n ],\\n \\"StoppedInstances\\": [\\n \\"[\\\\n \\\\\\"i-abc1\\\\\\",\\\\n \\\\\\"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 \\"ash-bp14zolna43z266bq***\\\\n\\"\\n ]\\n },\\n \\"ActivityMetadata\\": \\"{\\\\\\\\\\\\\\"goatscaler.io/managed\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"true\\\\\\\\\\\\\\"}\\",\\n \\"InstanceRefreshTaskId\\": \\"ir-asdf12adsxg*****\\",\\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 \\"i-8vbedazhjj6a6******\\"\\n ]\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', - 'title' => '查询伸缩活动', - 'description' => '- 查询时可以指定伸缩组ID来查询该伸缩组下的所有伸缩活动。'."\n" + 'title' => '为伸缩组创建一个或多个生命周期挂钩', + 'description' => '一个伸缩组最多可以创建10个生命周期挂钩。创建了生命周期挂钩的伸缩组,在发生伸缩活动时,生命周期挂钩会暂停伸缩活动一段时间,具体等待时长可以通过HeartbeatTimeout参数指定。您可以在等待期间进行初始化ECS实例配置、获取ECS实例数据等操作。'."\n" ."\n" - .'- 查询时可以通过伸缩活动的状态来过滤查询结果。'."\n" + .'弹性扩张活动时,ECS实例添加至RDS实例白名单后进入等待状态,等待状态结束后再加入SLB实例后端服务器组。弹性收缩活动时,ECS实例从SLB实例后端服务器组移出后进入等待状态,等待状态结束后再从RDS实例白名单移出。'."\n" ."\n" - .'- 可以查询30日内的伸缩活动。', - ], - 'DescribeScalingActivityDetail' => [ - 'summary' => '调用DescribeScalingActivityDetail接口,通过伸缩组中伸缩活动ID查询伸缩活动的详细信息,包括伸缩活动状态,错误码和错误信息等,根据错误信息进行故障排查与性能分析。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + .'生命周期挂钩可以配置通知方式,支持MNS主题、MNS队列和OOS模板。如果配置OOS模板,您需要为OOS服务创建RAM角色。具体操作,请参见[为OOS服务设置RAM权限](~~120810~~)。'."\n" + ."\n" + .'> 如果伸缩组有存量的ECS实例,且配置的OOS模板用于加入或移出除RDS外的其他云数据库白名单,则您必须手动将存量的ECS实例加入云数据库的白名单。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateLifecycleHook', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"LifecycleHookId\\": \\"ash-bp1at9ufhmcf9cmy****\\"\\n}","type":"json"}]', + ], + 'CreateNotificationConfiguration' => [ + 'summary' => '调用API CreateNotificationConfiguration创建弹性伸缩事件及资源变化通知,帮助您及时掌握伸缩组的动态,进一步实现弹性伸缩事件的自动化管理。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'deprecated' => false, + 'operationType' => 'readAndWrite', 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '125351', - 'abilityTreeNodes' => [ - 'FEATUREessACRSW1', - ], + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '125368', + 'abilityTreeNodes' => ['FEATUREess6E26FJ', 'FEATUREessFY8KDA'], ], 'parameters' => [ [ - 'name' => 'ScalingActivityId', + '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' => 'NotificationTypes', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '待查询伸缩活动的ID。您可以通过调用DescribeScalingActivities查询伸缩活动ID。', - 'type' => 'string', + 'description' => '一类或者多类弹性伸缩事件及资源变化通知。多个取值使用重复列表的形式。'."\n" + ."\n" + .'您可以调用API DescribeNotificationTypes接口查询参数取值。', + 'type' => 'array', + 'items' => ['description' => '一类或者多类弹性伸缩事件及资源变化通知。多个取值使用重复列表的形式。'."\n" + ."\n" + .'您可以调用API DescribeNotificationTypes接口查询参数取值。', 'type' => 'string', 'required' => false, 'example' => 'AUTOSCALING:SCALE_OUT_SUCCESS'], 'required' => true, - 'docRequired' => true, - 'example' => 'asa-bp1c9djwrgxjyk31****', + '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" + .'> 仅支持MNS通知对象设置该参数。', 'type' => 'string', 'required' => false, 'example' => 'PlainText'], + ], ], '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.', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], - '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":"\\n B13527BF-1FBD-4334-A512-20F5E9D3FB4D\\n asa-bp1c9djwrgxjyk31****\\n new ECS instances \\\\\\"i-bp16t2cgmiiymeqv****\\\\\\" are created.\\n","errorExample":""}]', - 'title' => '查询一个伸缩活动的详细信息', - ], - 'AttachLoadBalancers' => [ - 'summary' => '伸缩组支持关联负载均衡实例,通过负载均衡实例将访问流量分发到伸缩组内的多个实例中,可以有效增强伸缩组的服务能力,您可以调用API AttachLoadBalancers添加一个或多个负载均衡实例。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + 'title' => '创建弹性伸缩事件及资源变化通知', + 'description' => '- 您可以设置由云监控系统事件、轻量消息队列(原MNS)队列或轻量消息队列(原MNS)主题接收消息通知。当伸缩组发生指定类型的伸缩事件或者资源变化时,弹性伸缩会通知云监控或轻量消息队列(原MNS)。'."\n" + .'- 同一个伸缩组内的不同事件通知不可重复使用同一个接收端。'."\n" + ."\n" + .' 例如,不同的事件通知不能同时使用同一个云监控、同一个MNS主题或者同一个MNS队列。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateNotificationConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + ], + 'CreateScalingConfiguration' => [ + 'summary' => '通过调用CreateScalingConfiguration接口,并指定伸缩组ID、实例规格、实例镜像等信息,为伸缩组创建一个ECS类型的伸缩配置。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125378', - 'abilityTreeNodes' => [ - 'FEATUREess2GK585', - ], + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '125374', + 'abilityTreeNodes' => ['FEATUREessWJGIW5'], ], 'parameters' => [ [ 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'asg-bp1avr6ensitts3w****', - ], + 'schema' => ['description' => '伸缩配置所属的伸缩组的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asg-bp14wlu85wrpchm0****'], ], [ - 'name' => 'ForceAttach', + 'name' => 'ImageId', 'in' => 'query', - 'schema' => [ - 'description' => '是否把当前伸缩组内的实例全部添加为负载均衡实例的后端服务器,取值范围:'."\n" - .' '."\n" - .'- true:添加。如果该参数值为`true`,则将负载均衡实例添加到伸缩组时,系统会将当前伸缩组中已有的实例全部添加为负载均衡实例的后端服务器。'."\n" - ."\n" - .' >如果负载均衡实例已添加至伸缩组,而您需要将伸缩组中全部实例添加为该负载均衡实例的后端服务器,则您可以再次将该负载均衡实例添加到伸缩组,并选择ForceAttach为true状态。'."\n" - ."\n" - .'- false:不添加。如果该参数值为false,则将负载均衡实例添加到伸缩组时,系统不会将当前伸缩组中已有的实例添加为负载均衡实例的后端服务器。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'schema' => ['description' => '镜像文件ID,自动创建实例时使用的镜像资源。', 'type' => 'string', 'required' => false, 'example' => 'centos6u5_64_20G_aliaegis****.vhd'], ], [ - 'name' => 'ClientToken', + 'name' => 'ImageName', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。'."\n" - ."\n" - .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '镜像文件名称,同一个地域内镜像名称唯一。如果设置了ImageId,ImageName将被忽略。'."\n" + ."\n\n" + .'不支持通过ImageName设置镜像市场镜像。', 'type' => 'string', 'required' => false, 'example' => 'image****'], ], [ - 'name' => 'Async', + 'name' => 'InstanceType', 'in' => 'query', - 'schema' => [ - 'description' => '添加负载均衡实例时,是否采用异步调用的方式。异步调用能保证操作的事务性,即所有操作都执行成功或者某个操作失败时所有操作的执行结果都不生效,建议您采用异步调用。'."\n" - .'取值范围:'."\n" - .'- true:异步调用。请求将返回伸缩活动的ID。'."\n" - .'- false:同步调用。'."\n" - ."\n" - .'默认值:false。'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => 'ECS实例的实例规格,更多信息,请参见实例规格族。', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large'], ], [ - 'name' => 'LoadBalancers', + 'name' => 'Cpu', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '需要添加的负载均衡CLB(原SLB)实例的ID列表。', - 'type' => 'array', - 'items' => [ - 'description' => '需要添加的负载均衡CLB(原SLB)实例的ID列表。'."\n" - .'>支持最多一次添加5个负载均衡实例到伸缩组。', - 'type' => 'string', - 'required' => false, - 'example' => 'lb-2zeur05gfs**** '."\n", - ], - 'required' => false, - 'maxItems' => 5, - ], + 'schema' => ['description' => 'vCPU个数。单位:核。'."\n" + ."\n" + .'同时指定CPU和Memory可以定义实例规格范围,例如,CPU=2且Memory=16可以定义配置为2 vCPU和16 GiB的所有实例规格。弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。'."\n" + .'>该区间配置效果仅在成本优化模式下且伸缩配置未设置实例规格时生效。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2'], ], [ - 'name' => 'LoadBalancerConfigs', + 'name' => 'Memory', '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实例添加到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, - ], + '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'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'ScalingActivityId' => [ - 'description' => '伸缩活动的ID。'."\n" - ."\n" - .'仅当`Async`为`true`时返回该值。您可使用API DescribeScalingActivities遍历查询返回的伸缩活动ID,查看伸缩活动的执行状态。', - 'type' => 'string', - 'example' => 'asa-bp140qd7mak8k63f****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], - ], + [ + 'name' => 'DeploymentSetId', + 'in' => 'query', + 'schema' => ['description' => 'ECS实例所属的部署集的ID。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'ds-bp1frxuzdg87zh4pz****'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp140qd7mak8k63f****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '添加一个或多个负载均衡实例', - 'description' => '向伸缩组添加负载均衡实例时需要满足以下条件:'."\n" - ."\n" - .'- 负载均衡实例与伸缩组必须属于同一账号和同一个地域。'."\n" - ."\n" - .'- 负载均衡实例必须处于`运行中`状态。'."\n" - ."\n" - .'- 负载均衡实例至少配置有一个监听且必须开启健康检查。'."\n" - ."\n" - .'- 如果负载均衡实例与伸缩组的网络类型均为VPC,必须处于同一VPC。'."\n" - ."\n" - .'- 当伸缩组的网络类型为VPC,负载均衡实例的网络类型为经典网络时,如果负载均衡实例后端服务器中包含VPC实例,该实例必须与伸缩组处于同一VPC。'."\n" - ."\n" - .'- 不超过伸缩组关联负载均衡实例的限额,具体限额,请参见[使用限制](~~25863~~)。', - ], - 'DetachLoadBalancers' => [ - 'summary' => '如果当前弹性伸缩组关联的负载均衡实例不能满足您的需求或者您需要取消关联,调用DetachLoadBalancers,通过指定伸缩组的ID、负载均衡实例的ID、ForceDetach等配置参数,移除一个或多个负载均衡 CLB(原 SLB)实例,同时可以选择异步调用以及是否移除负载均衡实例后端服务器中属于当前伸缩组的ECS实例。该接口仅支持移除负载均衡 CLB(原 SLB)实例。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], - ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125361', - 'abilityTreeNodes' => [ - 'FEATUREess2GK585', + 'name' => 'SecurityGroupId', + 'in' => 'query', + 'schema' => ['description' => 'ECS实例所属的安全组的ID,同一个安全组内的ECS实例可以互相访问。', 'type' => 'string', 'required' => false, 'example' => 'sg-280ih****'], ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'IoOptimized', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'asg-bp1ffogfdauy0jw0****', - ], + 'schema' => ['description' => '是否为I/O优化实例。取值范围:'."\n" + ."\n" + .'none:非I/O优化实例。'."\n" + .'optimized:I/O优化实例。'."\n" + ."\n" + .'已停售的实例规格的实例默认值是none,其他实例规格的实例默认值是optimized。', 'type' => 'string', 'required' => false, 'example' => 'optimized'], ], [ - 'name' => 'ForceDetach', + 'name' => 'InternetChargeType', 'in' => 'query', - 'schema' => [ - 'description' => '是否移除负载均衡实例后端服务器中属于当前伸缩组的ECS实例。取值范围:'."\n" - ."\n" - .'- true:移除ECS实例。'."\n" - ."\n" - .'- false:不移除ECS实例。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'schema' => ['description' => '网络计费类型。取值范围:'."\n" + ."\n" + .'- PayByBandwidth:按带宽计费。此时InternetMaxBandwidthOut即为所选的固定带宽值。'."\n" + ."\n" + .'- PayByTraffic:按流量计费。此时InternetMaxBandwidthOut只是一个带宽上限,计费以实际产生的网络流量为依据。'."\n" + ."\n" + .'如果未指定该参数,经典网络下默认值为PayByBandwidth,专有网络VPC下默认值为PayByTraffic。', 'type' => 'string', 'required' => false, 'example' => 'PayByTraffic'], ], [ - 'name' => 'ClientToken', + 'name' => 'InternetMaxBandwidthIn', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + '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' => 'Async', + 'name' => 'InternetMaxBandwidthOut', 'in' => 'query', - 'schema' => [ - 'description' => '移除负载均衡实例时,是否采用异步调用的方式。异步调用能保证操作的事务性,即所有操作都执行成功或者某个操作失败时所有操作的执行结果都不生效,建议您采用异步调用。'."\n" - ."\n" - .'取值范围:'."\n" - ."\n" - .'- true:异步调用。请求将返回伸缩活动的ID。'."\n" - ."\n" - .'- false:同步调用。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '公网出带宽最大值,单位为 Mbit/s。取值范围:0~100。'."\n" + ."\n" + .'默认值:0。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'LoadBalancers', + 'name' => 'SystemDisk.Category', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '负载均衡实例的ID,单次最多支持移除5台负载均衡实例。', - 'type' => 'array', - 'items' => [ - 'description' => '负载均衡实例的ID,单次最多支持移除5台负载均衡实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'lb-2zeur05gfs**** '."\n", - ], - 'required' => true, - 'maxItems' => 5, - ], + 'schema' => ['description' => '系统盘的磁盘种类。取值范围:'."\n" + ."\n" + .'- cloud:普通云盘。'."\n" + ."\n" + .'- cloud_efficiency:高效云盘。'."\n" + ."\n" + .'- cloud_ssd:SSD云盘。'."\n" + ."\n" + .'- ephemeral_ssd:本地SSD盘。'."\n" + ."\n" + .'- cloud_essd:ESSD云盘。'."\n" + ."\n" + .'- cloud_auto:ESSD AutoPL云盘。'."\n" + ."\n" + .'该参数不能与`SystemDiskCategories`同时指定。当该参数与`SystemDiskCategories`都未指定时,该参数有默认值:'."\n" + ."\n" + .'- 对于I/O优化实例,默认值为cloud_efficiency。'."\n" + .'- 对于非I/O优化实例,默认值为cloud。', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd'], ], [ - 'name' => 'RegionId', + 'name' => 'SystemDisk.Size', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-qingdao', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '移除负载均衡的返回信息集合。', - 'type' => 'object', - 'properties' => [ - 'ScalingActivityId' => [ - 'description' => '伸缩活动的ID。仅当async=true时返回该值。您可使用API describescalingactivities遍历查询返回的伸缩活动id,查看伸缩活动的执行状态。', - 'type' => 'string', - 'example' => 'asa-bp140qd7mak8k63f****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], - ], + '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'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp140qd7mak8k63f****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '移除一个或多个负载均衡CLB实例', - ], - 'AttachDBInstances' => [ - 'summary' => '通过调用API AttachDBInstances为伸缩组添加一个或多个RDS实例,可实现根据您的需要随时调整伸缩组内的RDS实例数量,增加您使用上的灵活性与实用性。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'SystemDisk.DiskName', + 'in' => 'query', + 'schema' => ['description' => '系统盘名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以`http://`或`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'cloud_ssdSystem'], ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125394', - 'abilityTreeNodes' => [ - 'FEATUREessJZ6DNF', + [ + 'name' => 'SystemDisk.Description', + 'in' => 'query', + 'schema' => ['description' => '系统盘的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。', 'type' => 'string', 'required' => false, 'example' => 'Test system disk.'], ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'SystemDisk.AutoSnapshotPolicyId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1avr6ensitts3w****', - ], + 'schema' => ['description' => '系统盘使用的自动快照策略ID。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'sp-bp12m37ccmxvbmi5****'], ], [ - 'name' => 'ForceAttach', + 'name' => 'SystemDisk.PerformanceLevel', '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', - ], + 'schema' => ['description' => '当系统盘为ESSD云盘时,设置云盘的性能等级。取值范围:'."\n" + ."\n" + .'- PL0:单盘最高随机读写IOPS 1万。'."\n" + ."\n" + .'- PL1:单盘最高随机读写IOPS 5万。'."\n" + ."\n" + .'- PL2:单盘最高随机读写IOPS 10万。'."\n" + ."\n" + .'- PL3:单盘最高随机读写IOPS 100万。'."\n" + ."\n" + .'默认值:PL1。', 'type' => 'string', 'required' => false, 'example' => 'PL0'], ], [ - 'name' => 'ClientToken', + 'name' => 'ScalingConfigurationName', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。'."\n" - ."\n" - .'只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '伸缩配置的名称,2~64英文或中文字符,以数字、大小写字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。'."\n" + ."\n" + .'在同一地域下同一伸缩组内伸缩配置名称唯一。如果您没有指定该参数,则默认使用伸缩配置的ID。', 'type' => 'string', 'required' => false, 'example' => 'scalingconfig****'], ], [ - 'name' => 'DBInstances', + 'name' => 'LoadBalancerWeight', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'RDS实例的ID。', - 'type' => 'array', - 'items' => [ - 'description' => 'RDS实例的ID。'."\n" - ."\n" - .'>支持最多一次添加5个RDS实例到伸缩组。', - 'type' => 'string', - 'required' => false, - 'example' => 'rm-bp12cy3**** '."\n", - ], - 'required' => true, - 'maxItems' => 5, - ], + 'schema' => ['description' => 'ECS实例作为负载均衡后端服务器时的权重,取值范围:1~100。'."\n" + ."\n" + .'默认值:50。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50'], ], [ - 'name' => 'RegionId', + 'name' => 'Tags', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cn-qingdao', - ], + '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' => 'AttachMode', + 'name' => 'UserData', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组与数据库关联方式。取值范围:'."\n" - ."\n" - .'- SecurityIp:修改SecurityIp(即数据库的IP白名单)模式,通过将扩容实例自动添加到数据库白名单(目前仅RDS数据库支持)。'."\n" - .'- SecurityGroup:安全组模式,通过将伸缩配置安全组添加至数据库安全组白名单关联注册。'."\n" - ."\n" - .'默认值:SecurityIp。', - 'type' => 'string', - 'required' => false, - 'example' => 'SecurityIp', - ], + 'schema' => ['description' => 'ECS实例的自定义数据,需要以Base64方式编码,编码前的原始数据最多为32 KB。', 'type' => 'string', 'required' => false, 'example' => 'ZWNobyBoZWxsbyBlY3Mh'], ], [ - 'name' => 'Type', + 'name' => 'KeyPairName', 'in' => 'query', - 'schema' => [ - 'description' => '数据库类型。取值范围:'."\n" - ."\n" - .'- RDS。'."\n" - .'- Redis。'."\n" - .'- MongoDB。'."\n" - ."\n" - .'默认值:RDS。', - 'type' => 'string', - 'required' => false, - 'example' => 'RDS', - ], + 'schema' => ['description' => '登录ECS实例时使用的密钥对的名称。 '."\n" + .' '."\n" + .'- 对Windows实例,该参数将被忽略,默认为空。 '."\n" + .'- 对Linux实例,密码登录方式会被初始化成禁止。', 'type' => 'string', 'required' => false, 'example' => 'KeyPairTest'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], - ], + [ + 'name' => 'RamRoleName', + 'in' => 'query', + 'schema' => ['description' => 'ECS实例的RAM角色名称。RAM角色名称由RAM提供和维护,您可调用ListRoles查询可用的RAM角色。', 'type' => 'string', 'required' => false, 'example' => 'ramrole****'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '添加一个或多个RDS实例', - 'description' => '向伸缩组添加RDS实例时需要满足以下条件:'."\n" - ."\n" - .'- RDS实例与伸缩组必须属于同一账号。'."\n" - ."\n" - .'- RDS实例必须处于未锁定状态,关于锁定策略,请参见[RDS使用须知](~~41872~~)。'."\n" - ."\n" - .'- RDS实例必须处于运行中状态。'."\n" - ."\n" - .'- RDS实例必须是您当前账户所拥有的,并且该实例未被删除。'."\n" - ."\n" - .'- 如果将伸缩组中已存在的RDS实例再次添加到伸缩组,则伸缩组内的RDS实例数量不会改变,但系统会尝试把当前伸缩组内的ECS实例私网IP全部加入到RDS实例的IP白名单中。'."\n" - ."\n" - .'>添加RDS实例后,RDS IP白名单的default分组中包含的IP不能超过1000条。关于IP白名单,请参见[设置白名单](~~96118~~)。', - ], - 'DetachDBInstances' => [ - 'summary' => '如果您需要减少伸缩组内的RDS实例,可以通过调用API DetachDBInstance移除一个或多个RDS实例,来改变伸缩组与RDS实例的强行绑定关系,增加您使用上的灵活性与实用性。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'SecurityEnhancementStrategy', + 'in' => 'query', + 'schema' => ['description' => '是否开启安全加固。取值范围:'."\n" + ."\n" + .'- Active:启用安全加固,只对公共镜像生效。'."\n" + .'- Deactive:不启用安全加固,对所有镜像类型生效。', 'type' => 'string', 'required' => false, 'example' => 'Active'], ], - ], - 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '125376', - 'abilityTreeNodes' => [ - 'FEATUREessJZ6DNF', + [ + 'name' => 'InstanceName', + 'in' => 'query', + 'schema' => ['description' => '使用本伸缩配置自动创建的ECS实例的名称。', 'type' => 'string', 'required' => false, 'example' => 'instance****'], ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'HostName', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1igpak5ft1flyp****', - ], + 'schema' => ['description' => '云服务器的主机名。半角句号(.)或短划线(-)不能作为首尾字符,不能连续使用半角句号(.)或短划线(-)。另外,不同类型实例的命名要求如下:'."\n" + ."\n" + .'- Windows实例:主机名长度为2~15,可以包含大小写字母、数字和短划线(-)。不能包含半角句号(.),不能全是数字。'."\n" + .'- 其他类型实例(Linux等):主机名长度为2~64,可以包含多个半角句号(.)。两个半角句号(.)之间为一段,每段可以包含大小写字母、数字和短划线(-)。', 'type' => 'string', 'required' => false, 'example' => 'host****'], ], [ - 'name' => 'ForceDetach', + 'name' => 'SpotStrategy', 'in' => 'query', - 'schema' => [ - 'description' => '是否移除RDS实例IP白名单中属于伸缩组内实例的私网IP。取值范围:'."\n" - ."\n" - .'- true:移除实例的私网IP。'."\n" - ."\n" - .'- false:不移除实例的私网IP。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'schema' => ['description' => '后付费实例的抢占策略。取值范围:'."\n" + .' '."\n" + .'- NoSpot:普通的按量付费实例。'."\n" + .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n" + .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。'."\n" + ."\n" + .'默认值:NoSpot。', 'type' => 'string', 'required' => false, 'example' => 'NoSpot'], ], [ - 'name' => 'ClientToken', + 'name' => 'PasswordInherit', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。'."\n" - ."\n" - .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '是否使用镜像预设的密码。使用该参数时,您需要确保使用的镜像已经设置了密码。取值范围:'."\n" + ."\n" + .'- true:使用镜像预设密码。'."\n" + .'- false:不使用镜像预设密码。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'DBInstances', + 'name' => 'Password', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'RDS实例的ID,单次最多支持移除5个RDS实例。'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'RDS实例的ID,单次最多支持移除5个RDS实例。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rm-bp12cy3**** '."\n", - ], - 'required' => true, - 'maxItems' => 5, - ], + 'schema' => ['description' => 'ECS实例的密码。长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号中的三类字符。特殊符号可以是:'."\n" + ."\n" + .'\\`()` ~!@#$%^&*-_+=\\|{}[]:;\'<>,.?/`'."\n" + ."\n" + .'其中,Windows实例不能以斜线号(/)为密码首字符。'."\n" + ."\n" + .'> 如果传入Password参数,建议您使用HTTPS协议发送请求,避免密码泄露。'."\n", 'type' => 'string', 'required' => false, 'example' => '123abc****'], ], [ - 'name' => 'RegionId', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => 'ECS实例所属资源组的ID。', 'type' => 'string', 'required' => false, 'example' => 'rg-resource****'], ], [ - 'name' => 'RemoveSecurityGroup', + 'name' => 'HpcClusterId', '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' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '移除一个或多个RDS实例', - ], - 'SuspendProcesses' => [ - 'summary' => '通过调用API SuspendProcesses主动暂停伸缩组某些指定流程,然后去执行其他操作,方便您更加精细地控制伸缩组活动。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125380', - 'abilityTreeNodes' => [ - 'FEATUREess4ZDI6R', + 'schema' => ['description' => 'ECS实例所属的HPC集群的ID。', 'type' => 'string', 'required' => false, 'example' => 'hpc-clusterid'], ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'InstanceDescription', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp15oubotmrq11xe****', - ], + 'schema' => ['description' => 'ECS实例的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。', 'type' => 'string', 'required' => false, 'example' => 'Test instance.'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。'."\n" - .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'Processes', + 'name' => 'Ipv6AddressCount', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '需要暂停的活动类型。取值范围:'."\n" - ."\n" - .'- ScaleIn:缩容流程。'."\n" - ."\n" - .'- ScaleOut:扩容流程。'."\n" - ."\n" - .'- HealthCheck:健康检查。'."\n" - ."\n" - .'- AlarmNotification:报警任务。'."\n" - ."\n" - .'- ScheduledAction:定时任务。'."\n" - ."\n" - .'目前系统仅支持暂停5种活动类型,如果您指定的活动超过以上5种,系统会自动去掉重复的活动类型。', - 'type' => 'array', - 'items' => [ - 'description' => '需要暂停的活动类型。取值范围:'."\n" - ."\n" - .'- ScaleIn:缩容流程。'."\n" - ."\n" - .'- ScaleOut:扩容流程。'."\n" - ."\n" - .'- HealthCheck:健康检查。'."\n" - ."\n" - .'- AlarmNotification:报警任务。'."\n" - ."\n" - .'- ScheduledAction:定时任务。'."\n" - ."\n" - .'目前系统仅支持暂停5种活动类型,如果您指定的活动超过以上5种,系统会自动去掉重复的活动类型。', - 'type' => 'string', - 'required' => false, - 'example' => 'ScaleIn', - ], - 'required' => true, - 'maxItems' => 100, - ], + 'schema' => ['description' => '为弹性网卡指定随机生成的IPv6地址数量。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'RegionId', + 'name' => 'CreditSpecification', '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-C2339DB51****', - ], - ], - ], + 'schema' => ['description' => '指定突发性能实例的运行模式。取值范围:'."\n" + ."\n" + .'- Standard:标准模式。'."\n" + ."\n" + .'- Unlimited:无性能约束模式。'."\n" + ."\n" + .'更多信息,请参见[突发性能实例概述](~~59977~~)下的性能模式章节。'."\n", 'type' => 'string', 'required' => false, 'example' => 'Standard'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3E2033F0-03B4-419D-BCE2-C2339DB51****\\"\\n}","type":"json"}]', - 'title' => '暂停伸缩组中的指定流程', - ], - 'ResumeProcesses' => [ - 'summary' => '您可以主动调用API ResumeProcesses恢复伸缩组中被暂停的流程,由伸缩组继续按功能逻辑执行指定流程。例如,您恢复健康检查流程后,如果伸缩组某实例被视为不健康就会自动被移出伸缩组。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], - ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125388', - 'abilityTreeNodes' => [ - 'FEATUREess4ZDI6R', + 'name' => 'ImageFamily', + 'in' => 'query', + 'schema' => ['description' => '镜像族系名称,通过设置该参数来获取当前镜像族系内最新的可用镜像,用于创建实例。如果已经设置了参数`ImageId`,则不能设置该参数。', 'type' => 'string', 'required' => false, 'example' => 'hangzhou-daily-update'], ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'ZoneId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp15oubotmrq11xe****', - ], + 'schema' => ['description' => 'ECS实例所属的可用区ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-g'], ], [ - 'name' => 'ClientToken', + 'name' => 'DedicatedHostId', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。'."\n" - ."\n" - .'只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '是否在专有宿主机上创建ECS实例。由于专有宿主机不支持创建抢占式实例,指定DedicatedHostId参数后,会自动忽略请求中的SpotStrategy和SpotPriceLimit设置。'."\n" + ."\n" + .'您可以调用DescribeDedicatedHosts接口查询专有宿主机ID列表。', 'type' => 'string', 'required' => false, 'example' => 'dh-bp67acfmxazb4p****'], ], [ - 'name' => 'Processes', + 'name' => 'Affinity', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '需要恢复的活动信息集合。', - 'type' => 'array', - 'items' => [ - 'description' => '需要恢复的活动类型。取值范围:'."\n" - ."\n" - .'- ScaleIn:缩容流程。'."\n" - ."\n" - .'- ScaleOut:扩容流程。'."\n" - ."\n" - .'- HealthCheck:健康检查。'."\n" - ."\n" - .'- AlarmNotification:报警任务。'."\n" - ."\n" - .'- ScheduledAction:定时任务。'."\n" - ."\n" - .'目前支持恢复以上5种活动类型,如果您指定的活动类型超过以上5种,系统会自动去掉重复的活动类型。', - 'type' => 'string', - 'required' => false, - 'example' => 'ScaleIn', - ], - 'required' => true, - 'maxItems' => 100, - ], + 'schema' => ['description' => '专有宿主机实例是否与专有宿主机关联。取值范围:'."\n" + ."\n" + .'- default:实例不与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,若原专有宿主机可用资源不足,则实例被放置在自动部署资源池的其它专有宿主机上。'."\n" + ."\n" + .'- host:实例与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,仍放置在原专有宿主机上。若原专有宿主机可用资源不足,则实例重启失败。'."\n" + ."\n" + .'默认值:default。', 'type' => 'string', 'required' => false, 'example' => 'default'], ], [ - 'name' => 'RegionId', + 'name' => 'Tenancy', '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****', - ], - ], - ], + 'schema' => ['description' => '是否在专有宿主机上创建实例。取值范围:'."\n" + ."\n" + .'- default:创建非专有宿主机实例。'."\n" + ."\n" + .'- host:创建专有宿主机实例。若您不指定DedicatedHostId,则由阿里云自动选择专有宿主机放置实例。'."\n" + ."\n" + .'默认值:default。', 'type' => 'string', 'required' => false, 'example' => 'default'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E38EB733-D714-4658-8A5F-0688AB68****\\"\\n}","type":"json"}]', - 'title' => '恢复伸缩组中被暂停的流程', - ], - 'AttachVServerGroups' => [ - 'summary' => '伸缩组关联负载均衡实例(CLB)后,加入伸缩组的实例会自动添加为CLB实例的后端服务器,处理来自CLB实例转发的访问请求。当需要将不同的请求转发到不同的后端服务器上时,或需要通过域名和URL进行请求转发时,您可以调用API AttachVServerGroups来添加负载均衡实例下的一个或者多个虚拟服务器组,通过虚拟服务器组管理不同的后端服务器。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'SchedulerOptions', + 'in' => 'query', + 'style' => 'json', + 'schema' => ['description' => '调度选项。', 'type' => 'object', 'required' => false, 'example' => '["testManagedPrivateSpaceId****"]'], ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125332', - 'abilityTreeNodes' => [ - 'FEATUREess2GK585', + [ + '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'], ], - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'PrivatePoolOptions.Id', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属地域的ID。如cn-hangzhou、cn-shanghai,更多信息,请参见[地域和可用区](~~40654~~)。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '私有池ID。即弹性保障服务ID或容量预定服务ID。'."\n", 'type' => 'string', 'required' => false, 'example' => 'eap-bp67acfmxazb4****'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'SpotDuration', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + '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' => 'ClientToken', + 'name' => 'SpotInterruptionBehavior', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。'."\n" - ."\n" - .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '抢占实例中断模式。目前仅支持terminate(默认)直接释放实例。', 'type' => 'string', 'required' => false, 'example' => 'Terminate'], ], [ - 'name' => 'ForceAttach', + 'name' => 'InstanceTypes', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '是否将当前伸缩组内的ECS实例或ECI实例添加到新增的虚拟服务器组。取值范围:'."\n" + 'description' => '多实例规格参数。如果使用了InstanceTypes,InstanceType将被忽略。'."\n" ."\n" - .'- true:添加。'."\n" - .'- false:不添加。'."\n" + .'当无法根据优先级较高的实例规格创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格来创建实例。', + 'type' => 'array', + 'items' => ['description' => '多实例规格参数。如果使用了InstanceTypes,InstanceType将被忽略。'."\n" ."\n" - .'默认值:false。', - 'type' => 'boolean', + .'当无法根据优先级较高的实例规格创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格来创建实例。', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large'], 'required' => false, - 'example' => 'false', - 'default' => 'false', + 'maxItems' => 20, ], ], [ - 'name' => 'VServerGroups', + 'name' => 'InstanceTypeOverrides', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩组关联的虚拟服务器组的信息集合。', + 'description' => '用于指定的实例规格相关信息。', 'type' => 'array', 'items' => [ - 'description' => '伸缩组关联的虚拟服务器组的信息集合。', + 'description' => '用于指定的实例规格相关信息。', 'type' => 'object', 'properties' => [ - 'VServerGroupAttributes' => [ - 'description' => '虚拟服务器组属性。', - 'type' => 'array', - 'items' => [ - 'description' => '虚拟服务器组属性。', - 'type' => 'object', - 'properties' => [ - 'VServerGroupId' => [ - 'description' => '虚拟服务器组的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'lb-bp1u7etiogg38yvwz****', - ], - 'Weight' => [ - 'description' => '弹性伸缩将ECS实例或ECI实例添加到虚拟服务器组时设置的权重,取值范围:0~100。'."\n" - ."\n" - .'默认值:50。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - ], - 'Port' => [ - 'description' => '弹性伸缩将ECS实例或ECI实例添加到虚拟服务器组时使用的端口号,取值范围:1~65535。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '22', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 100, - ], - 'LoadBalancerId' => [ - 'description' => '虚拟服务器组所属负载均衡实例的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'rsp-bp1jp1rge**** '."\n", - ], + 'InstanceType' => ['description' => '当您需要伸缩组按照实例规格容量进行伸缩时,请同时指定本参数和WeightedCapacity。'."\n" + ."\n" + .'本参数用于指定实例规格,会覆盖启动模板中的实例规格。您可以指定N个本参数,扩展启动模板支持N个实例规格。N的取值范围:1~20。'."\n" + ."\n" + .'> 仅当LaunchTemplateId参数指定了启动模板时,本参数生效。'."\n" + ."\n" + .'InstanceType的取值范围:在售的ECS实例规格。', 'type' => 'string', 'required' => false, 'example' => 'ecs.c5.xlarge'], + 'WeightedCapacity' => ['description' => '当您需要指定伸缩配置中实例规格的容量时,在指定InstanceTypeOverrides.InstanceType后,再指定本参数。'."\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' => true, - 'maxItems' => 100, + 'required' => false, + 'maxItems' => 20, ], ], - ], - 'responses' => [ - 200 => [ + [ + 'name' => 'DataDisks', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], - ], - ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '添加负载均衡实例下虚拟服务器组', - 'description' => '- 向伸缩组添加虚拟服务器组时需要满足以下条件:'."\n" - ."\n" - .' - 负载均衡实例与伸缩组必须属于同一账号。'."\n" - ."\n" - .' - 负载均衡实例与伸缩组必须处于同一地域。'."\n" - ."\n" - .' - 负载均衡实例必须处于运行中状态。'."\n" - ."\n" - .' - 负载均衡实例至少配置有一个监听且必须开启健康检查。'."\n" - ."\n" - .' - 如果负载均衡实例与伸缩组的网络类型均为VPC,必须处于同一VPC。'."\n" - ."\n" - .' - 当伸缩组的网络类型为VPC,负载均衡实例的网络类型为经典网络时,如果虚拟服务器组包含VPC实例,该实例必须与伸缩组处于同一VPC。'."\n" - ."\n" - .' - 待添加虚拟服务器组必须属于对应的负载均衡实例。'."\n" - ."\n" - .' - 不超过伸缩组内虚拟服务器组的限额,具体限额,请参见[使用限制](~~25863~~)。'."\n" - ."\n" - .'- 添加伸缩组内虚拟服务器组时,需要同时指定以下属性:'."\n" - ."\n" - .' - 负载均衡实例ID(LoadBalancerId)'."\n" - ."\n" - .' - 虚拟服务器组ID(VServerGroupId)'."\n" - ."\n" - .' - 虚拟服务器组端口号(Port)'."\n" - ."\n" - .' >如果通过不同的端口号将同一虚拟服务器组添加至伸缩组,视为伸缩组内添加了多个虚拟服务器组。如果请求参数中的虚拟服务器组ID和端口号同时重复,默认使用最先配置的一组,忽略其余虚拟服务器组。', - ], - 'DetachVServerGroups' => [ - 'summary' => '伸缩组支持关联负载均衡实例,可以有效增强伸缩组的服务能力。如果您的业务暂不需要通过负载均衡实例将访问流量分发到伸缩组内的多个实例中去,您可以调用API DetachVServerGroups移除一个或者多个虚拟服务器组。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125323', - 'abilityTreeNodes' => [ - 'FEATUREessJZ6DNF', - ], - ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属地域的ID,例如cn-hangzhou、cn-shanghai。', - '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' => 'VServerGroups', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '待移出的虚拟服务器组的信息集合。', + 'description' => '数据盘信息的集合。', 'type' => 'array', 'items' => [ - 'description' => '待移出的虚拟服务器组的信息集合。', + 'description' => '数据盘信息的集合。', 'type' => 'object', 'properties' => [ - 'VServerGroupAttributes' => [ - 'description' => '后端服务器组属性。', + 'PerformanceLevel' => ['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'], + 'AutoSnapshotPolicyId' => ['description' => '数据盘使用的自动快照策略ID。', 'type' => 'string', 'required' => false, 'example' => 'sp-bp19nq9enxqkomib****'], + 'Encrypted' => ['description' => '数据盘是否加密。该参数取值范围:'."\n" + ."\n" + .'- true:加密。'."\n" + .'- false:不加密。'."\n" + ."\n" + .'默认值:false。', 'type' => 'string', 'required' => false, 'example' => 'false'], + 'Description' => ['description' => '数据盘的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。', 'type' => 'string', 'required' => false, 'example' => 'Test data disk. '."\n"], + 'SnapshotId' => ['description' => '创建数据盘时使用的快照。指定该参数后,DataDisks.Size会被忽略,实际创建的磁盘大小为指定快照的大小。'."\n" + ."\n" + .'如果该快照创建于2013年7月15日或之前,调用会被拒绝,返回参数中会提示InvalidSnapshot.TooOld。', 'type' => 'string', 'required' => false, 'example' => 's-280s7****'], + 'Categories' => [ + 'description' => '数据盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。取值范围:'."\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" + .'- cloud_regional_disk_auto:ESSD 同城冗余云盘。'."\n" + ."\n" + .'> 指定本参数时,不允许同时指定`DataDisks.Category`。', 'type' => 'array', - 'items' => [ - 'description' => '后端服务器组属性。', - 'type' => 'object', - 'properties' => [ - 'VServerGroupId' => [ - 'description' => '虚拟服务器组的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'rsp-bp1jp1rge****', - ], - 'Port' => [ - 'description' => '弹性伸缩将ECS实例或ECI实例添加到虚拟服务器组时使用的端口号,取值范围:1~65535。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '22', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 100, - ], - 'LoadBalancerId' => [ - 'description' => '虚拟服务器组所属负载均衡实例的ID。'."\n" - .'>支持最多一次从伸缩组移除5个负载均衡实例。', - 'type' => 'string', + 'items' => ['description' => '数据盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。取值范围:'."\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" + .'- cloud_regional_disk_auto:ESSD 同城冗余云盘。'."\n" + ."\n" + .'> 指定本参数时,不允许同时指定`DataDisks.Category`。', 'type' => 'string', 'required' => false, 'example' => 'cloud'], 'required' => false, - 'example' => 'lb-bp1p90y3ya9h8s62d****', + 'maxItems' => 10, ], + 'Size' => ['description' => '数据盘的磁盘大小,内存单位为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' => '数据盘挂载点。如果您没有指定该参数,则默认在自动创建ECS实例时由系统分配,从/dev/xvdb开始,到/dev/xvdz结束。', 'type' => 'string', 'required' => false, 'example' => '/dev/xvdb'], + 'DiskName' => ['description' => '系统盘的名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以`http://`和`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssdData'], + 'Category' => ['description' => '数据盘的磁盘种类。取值范围:'."\n" + ."\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" + .'- cloud_regional_disk_auto:ESSD 同城冗余云盘。'."\n" + ."\n" + .'该参数不能与DataDisk.Categories同时指定。当该参数与DataDisk.Categories都未指定时,该参数默认值:'."\n" + .'- 对于I/O优化实例,默认值为cloud_efficiency。'."\n" + .'- 对于非I/O优化实例,默认值为cloud。', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd'], + 'DeleteWithInstance' => ['description' => '指定数据盘是否随实例释放。该参数取值范围:'."\n" + ."\n" + .'- true:释放实例时,该磁盘随实例一起释放。'."\n" + .'- false:释放实例时,该磁盘保留不释放。'."\n" + ."\n" + .'该参数只可对独立云盘设置(DataDisks.Category为cloud、cloud_efficiency、cloud_ssd或cloud_essd),否则会出现报错。'."\n" + ."\n" + .'默认值:true。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'KMSKeyId' => ['description' => '数据盘对应的KMS密钥的ID。', '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" + .'> 当`SystemDisk.Category`取值为`cloud_auto`时才支持设置该参数。'."\n" + ."\n" + .'更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。'."\n" + ."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], 'required' => false, ], - 'required' => true, - 'maxItems' => 100, - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], - ], - ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '移除一个或者多个虚拟服务器组', - 'description' => '- 确定待移除的虚拟服务器组时,需要同时指定以下参数:'."\n" - ."\n" - .' - 负载均衡实例ID(LoadBalancerId)'."\n" - ."\n" - .' - 虚拟服务器组ID(VServerGroupId)'."\n" - ."\n" - .' - 虚拟服务器组端口号(Port)'."\n" - ."\n" - .'- 如果请求参数中的虚拟服务器组与伸缩组中的虚拟服务器组相匹配,则移除该虚拟服务器组。如果未能匹配,则忽略移除请求,且接口不报错。'."\n" - ."\n" - .'- 如果移除伸缩组的负载均衡实例时,您需要确认该负载均衡实例不再向伸缩组内实例分发请求,避免造成服务请求丢失的情况。', - ], - 'AttachAlbServerGroups' => [ - 'summary' => '对于需要动态调整实例数量来应对业务变化负载以及确保应用程序的高可用性场景,调用API AttachAlbServerGroups向伸缩组添加一个或多个ALB服务器组,可以在业务变化时自动实现弹性扩展,并根据负载情况动态分配流量、提高应用程序的稳定性。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125338', - 'abilityTreeNodes' => [ - 'FEATUREess2GK585', - ], - ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属地域的ID。'."\n" - ."\n" - .'例如`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****', + 'required' => false, + 'maxItems' => 16, ], ], [ - 'name' => 'ClientToken', + 'name' => 'SpotPriceLimits', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '保证请求幂等性。'."\n" - ."\n" - .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', + 'description' => '抢占式实例相关的计费信息组成的集合。', + 'type' => 'array', + 'items' => [ + 'description' => '抢占式实例相关的计费信息组成的集合。', + 'type' => 'object', + 'properties' => [ + 'PriceLimit' => ['description' => '抢占式实例对应的出价。SpotStrategy取值为SpotWithPriceLimit时生效。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.5'], + 'InstanceType' => ['description' => '抢占式实例的实例规格。SpotStrategy取值为SpotWithPriceLimit时生效。', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large'], + ], + 'required' => false, + ], 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', + 'maxItems' => 20, ], ], [ - 'name' => 'ForceAttach', + 'name' => 'SecurityGroupIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '是否将当前伸缩组内的ECS实例或ECI实例添加到新增的ALB服务器组。取值范围:'."\n" - ."\n" - .'- true:添加,并返回`ScalingActivityId`,您可以通过查看该伸缩活动ID来确定已有实例是否添加成功。'."\n" + 'description' => '将ECS实例同时加入多个安全组。更多详情,请参见[使用限制](~~25412~~)下的安全组章节。'."\n" ."\n" - .'- false:不添加。'."\n" + .'> 不支持同时指定SecurityGroupId和SecurityGroupIds。', + 'type' => 'array', + 'items' => ['description' => '将ECS实例同时加入多个安全组。更多详情,请参见[使用限制](~~25412~~)下的安全组章节。'."\n" ."\n" - .'默认值:false。', - 'type' => 'boolean', + .'> 不支持同时指定SecurityGroupId和SecurityGroupIds。', 'type' => 'string', 'required' => false, 'example' => 'sg-bp18kz60mefs****'], 'required' => false, - 'example' => 'false', - 'default' => 'false', + 'maxItems' => 16, ], ], [ - 'name' => 'AlbServerGroups', + 'name' => 'InstancePatternInfos', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'ALB服务器组的相关信息集合。', + 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。', 'type' => 'array', 'items' => [ - 'description' => 'ALB服务器组的相关信息集合。', + 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。', 'type' => 'object', 'properties' => [ - 'AlbServerGroupId' => [ - 'description' => 'ALB服务器组的ID。'."\n" + 'Cores' => ['description' => '智能配置模式下,实例规格的vCPU内核数目,用于筛选符合要求的实例规格范围。更多信息,请参见[实例规格族](~~25378~~)。'."\n" + ."\n" + .'请注意以下信息:'."\n" + ."\n" + .'- InstancePatternInfos参数仅适用于伸缩组的网络类型为专有网络。'."\n" + ."\n" + .'- InstancePatternInfos参数必须同时配置InstancePatternInfos.Cores和InstancePatternInfos.Memory。'."\n" + ."\n" + .'- 如果您已经通过InstanceType或InstanceTypes参数指定了实例规格,弹性伸缩优先使用您指定的实例规格扩容,当指定的实例规格无库存时,再从符合InstancePatternInfos参数值的实例规格中优先使用价格最低的实例规格扩容。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2'], + 'InstanceFamilyLevel' => ['description' => '实例规格族级别,用于筛选符合要求的实例规格范围,当`CostOptimization`开启时生效。取值范围:'."\n" + ."\n" + .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n" + .'- EnterpriseLevel:企业级。性能稳定且资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n" + .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的业务场景。更多信息,请参见[突发性能实例概述](~~59977~~)。', 'type' => 'string', 'required' => false, 'example' => 'EnterpriseLevel'], + 'MaxPrice' => ['description' => '智能配置模式下,按量付费实例或者抢占式实例可接受的每小时最高价格,用于筛选符合要求的实例规格范围。'."\n" + ."\n" + .'> SpotStrategy设置为SpotWithPriceLimit时,该参数必选。其他情况下,该参数可选。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '2'], + 'Memory' => ['description' => '智能配置模式下,实例规格的内存大小,单位为GiB,用于筛选符合要求的实例规格范围。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '4'], + 'ExcludedInstanceTypes' => [ + 'description' => '需要排除的实例规格。通过使用通配符(*)可以排除单个规格或者整个规格族。例如:'."\n" ."\n" - .'一个伸缩组支持关联的ALB服务器组数量有限,如需查看或手动申请提升配额值,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)。', - 'type' => 'string', - 'required' => true, - 'example' => 'sgp-ddwb0y0g6y9bjm****', - ], - 'Weight' => [ - 'description' => '弹性伸缩将ECS实例或ECI实例添加到ALB服务器组后,ECS实例或ECI实例作为后端服务器的权重。取值范围:0~100。'."\n" + .'- ecs.c6.large:表示排除ecs.c6.large实例规格。'."\n" + .'- ecs.c6.*:表示排除整个c6规格族的实例规格。', + 'type' => 'array', + 'items' => ['description' => '需要排除的实例规格。通过使用通配符(*)可以排除单个规格或者整个规格族。例如:'."\n" ."\n" - .'权重越高,ECS实例或ECI实例将被分配到越多的访问请求。如果权重为0,则ECS实例或ECI实例不会收到访问请求。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '100', + .'- 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, ], - 'Port' => [ - 'description' => '弹性伸缩将ECS实例或ECI实例添加到ALB服务器组后,ECS实例或ECI实例使用的端口号。'."\n" + 'Architectures' => [ + 'description' => '实例规格所属的架构类型。取值范围:'."\n" ."\n" - .'取值范围:1~65535。', - '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" + .'- 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" - .'>仅当`ForceAttach`取值为`true`时,返回该参数。', - 'type' => 'string', - 'example' => 'asa-2ze6wxj8vsohn6j9****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', + .'- 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表示可以设置多个实例分类,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表示可以设置多个规格分类,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" + .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n" + ."\n" + .'- X86。'."\n" + .'- ARM。', + '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' => 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'], + '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, ], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-2ze6wxj8vsohn6j9****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '添加一个或多个ALB服务器组', - 'description' => '向伸缩组添加ALB服务器组时,需要满足以下条件:'."\n" - ."\n" - .'- 伸缩组的网络类型必须为VPC,且与ALB服务器组处于同一VPC。'."\n" - .'- ALB服务器组必须处于可用状态。', - ], - 'DetachAlbServerGroups' => [ - 'summary' => '调用DetachAlbServerGroups,并可以指定伸缩组的ID、ALB 服务器组的ID、ALB 服务器组中 ECS 实例使用的端口号等参数,实现从伸缩组中移出一个或多个ALB服务器组。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'SystemDiskCategories', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '系统盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。取值范围:'."\n" + .'- cloud:普通云盘。'."\n" + .'- cloud_efficiency:高效云盘。'."\n" + .'- cloud_ssd:SSD云盘。'."\n" + .'- cloud_essd:ESSD云盘。'."\n" + ."\n" + .'> 指定本参数时,不允许同时指定`SystemDisk.Category`。', + 'type' => 'array', + 'items' => ['description' => '系统盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。取值范围:'."\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, + 'maxItems' => 10, + ], ], - ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125336', - 'abilityTreeNodes' => [ - 'FEATUREessJZ6DNF', + [ + 'name' => 'SystemDisk.Encrypted', + 'in' => 'query', + 'schema' => ['description' => '是否加密系统盘。取值范围:'."\n" + ."\n" + .'- true:加密。'."\n" + .'- false:不加密。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'SystemDisk.KMSKeyId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID,如cn-hangzhou、cn-shanghai。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '系统盘使用的KMS密钥ID。', 'type' => 'string', 'required' => false, 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'SystemDisk.EncryptAlgorithm', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '系统盘采用的加密算法。取值范围:'."\n" + ."\n" + .'- AES-256。'."\n" + .'- SM4-128。'."\n" + ."\n" + .'默认值:AES-256。', 'type' => 'string', 'required' => false, 'example' => 'AES-256'], ], [ - 'name' => 'ClientToken', + 'name' => 'SystemDisk.ProvisionedIops', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。'."\n" - ."\n" - .'只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + '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' => 'ForceDetach', + '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" + ."\n" + .'- false:否。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + ], + [ + 'name' => 'DeletionProtection', + 'in' => 'query', + 'schema' => ['description' => '实例释放保护属性,指定是否支持通过ECS控制台或API(DeleteInstance)直接释放实例,防止实例被误删除。取值范围:'."\n" + ."\n" + .'- true:开启实例释放保护,无法通过ECS控制台或API(DeleteInstance)直接释放实例。'."\n" + ."\n" + .'- false:关闭实例释放保护,可以通过ECS控制台或API(DeleteInstance)直接释放实例。'."\n" + ."\n" + .'默认值:false。'."\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' => '是否从待移出ALB服务器组中移出已有的ECS实例。取值范围:'."\n" - ."\n" - .'- true:移出,并返回`ScalingActivityId`,您可以通过查看该伸缩活动ID来确定已有实例是否移出成功。'."\n" + 'description' => 'ECS实例规格+交换机的自定义优先级。'."\n" + .'>仅在伸缩组的扩缩容策略为优先级策略时有效。>'."\n" ."\n" - .'- false:不移出。'."\n" + .'当无法根据优先级较高的实例规格+交换机创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格+交换机组合来创建实例。'."\n" ."\n" - .'默认值:false。', - 'type' => 'boolean', + .'> 如果仅指定了部分实例规格+交换机的自定义优先级,则未指定的部分优先级低于指定的部分,且未指定部分仍会依次按照伸缩组的交换机顺序、伸缩配置的实例规格顺序确定优先级。'."\n" + .'> - 例如:伸缩组的交换机顺序为vsw1、vsw2,伸缩配置的实例规格顺序为type1、type2,自定义优先级顺序为["vsw2+type2", "vsw1+type2"],则最终优先级为:"vsw2+type2" > "vsw1+type2" > "vsw1+type1" > "vsw2+type1"', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceType' => ['description' => 'ECS 实例的实例规格。'."\n" + ."\n" + .'>必须包含在伸缩配置的实例规格列表中。>', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large'], + 'VswitchId' => ['description' => '虚拟交换机的 ID。'."\n" + ."\n" + .'>必须包含在伸缩组的交换机列表中。>', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp14zolna43z266bq****'], + ], + 'required' => false, + 'description' => '', + ], 'required' => false, - 'example' => 'false', - 'default' => 'false', + 'maxItems' => 100, ], ], [ - 'name' => 'AlbServerGroups', + 'name' => 'NetworkInterfaces', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'ALB服务器组的相关信息集合。', + 'description' => '弹性网卡列表。', 'type' => 'array', 'items' => [ - 'description' => 'ALB服务器组的相关信息集合。', + 'description' => '弹性网卡。', 'type' => 'object', 'properties' => [ - 'AlbServerGroupId' => [ - 'description' => 'ALB服务器组的ID。'."\n" - ."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'sgp-ddwb0y0g6y9bjm****', - ], - 'Port' => [ - 'description' => 'ALB服务器组中ECS实例使用的端口号。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '22', + 'InstanceType' => ['description' => '弹性网卡类型。使用此参数时,必须使用NetworkInterfaces设置主网卡,同时不能设置SecurityGroupId或SecurityGroupIds 参数取值范围:'."\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" + ."\n" + .'>RDMA模式的弹性网卡数量不能超过该实例规格族的限制。更多信息,请参见[实例规格族](~~25378~~)。', 'type' => 'string', 'required' => false, 'example' => 'HighPerformance'], + 'Ipv6AddressCount' => ['description' => '为主网卡指定随机生成的 IPv6 地址数量。'."\n" + .'您需要注意:'."\n" + ."\n" + .'- NetworkInterface.InstanceType取值为Primary时,设置该参数才会生效。如果NetworkInterface.InstanceType取值为Secondary或空值,则不能设置该参数。'."\n" + ."\n" + .'- 设置该参数后,您不能再设置Ipv6AddressCount。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + 'SecurityGroupIds' => [ + 'description' => '弹性网卡所属的一个或多个安全组 ID。', + 'type' => 'array', + 'items' => ['description' => '弹性网卡所属的一个或多个安全组 ID。'."\n" + .'您需要注意:'."\n" + ."\n" + .'- 如果NetworkInterface.InstanceType取值为Primary,则必须设置该参数。此时该参数的作用等同于SecurityGroupIds,但需要注意不能再设置SecurityGroupId、SecurityGroupIds。'."\n" + ."\n" + .'- 如果NetworkInterface.InstanceType取值为Secondary或空值,则该参数为非必填参数。默认值为 ECS 实例所属的安全组,即主网卡的安全组。', 'type' => 'string', 'required' => false, 'example' => 'sg-uf6ij8dwxxxxxx'], + 'required' => false, + 'maxItems' => 20, ], + 'SecondaryPrivateIpAddressCount' => ['description' => '为网卡指定辅助私网 IPv4 地址数量。取值范围:1~49。'."\n" + ."\n" + .'- 取值不能超过该实例规格对于ip 数量的限制。更多信息,请参见[实例规格族](https://help.aliyun.com/zh/ecs/user-guide/overview-of-instance-families)。'."\n" + ."\n" + .'- NetworkInterface.N.SecondaryPrivateIpAddressCount用于为网卡分配辅助私网IPv4 地址数量(不包含该网卡的主私网 IP),系统将从该网卡所在虚拟交换机(NetworkInterface.N.VSwitchId)的可用网段中随机分配。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '6'], ], 'required' => false, ], - 'required' => true, - 'maxItems' => 100, + 'required' => false, + 'maxItems' => 10, ], ], - ], - 'responses' => [ - 200 => [ + [ + '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' => [ - 'ScalingActivityId' => [ - 'description' => '移出ALB服务器组,并移出该ALB服务器组内的ECS实例时,对应伸缩活动的ID。仅当`ForceDetach`取值为`true`时,返回该参数。', - 'type' => 'string', - 'example' => 'asa-2ze6wxj8vsohn6j9****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], + 'ConfidentialComputingMode' => ['description' => '机密计算模式。可能值:'."\n" + .'- Enclave:表示ECS实例使用Enclave构建机密计算环境。更多信息,请参见[使用Enclave构建机密计算环境](~~203433~~)。'."\n" + .'- TDX:表示构建TDX机密计算环境。更多信息,请参见[构建TDX机密计算环境](~~479090~~)。', 'type' => 'string', 'required' => false, 'example' => 'TDX'], ], - ], - ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-2ze6wxj8vsohn6j9****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', - 'title' => '移出一个或多个ALB服务器组', - ], - 'AttachServerGroups' => [ - 'summary' => '对于需要动态调整实例数量来应对业务变化负载以及确保应用程序的高可用性场景,调用API AttachServerGroups为伸缩组添加一个或多个负载均衡服务器组,支持的服务器组类型包括应用型负载均衡ALB、网络型负载均衡NLB和网关型负载均衡GWLB,可以在业务变化时自动实现弹性扩展,并根据负载情况动态分配流量、提高应用程序的稳定性。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '166342', - 'abilityTreeNodes' => [ - 'FEATUREess2GK585', - ], - ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属地域的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', + 'required' => false, ], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'HttpEndpoint', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'asg-bp1fo0dbtsbmqa9h****', - ], + 'schema' => ['description' => '是否启用实例元数据的访问通道。取值范围:'."\n" + .'- enabled:启用。'."\n" + .'- disabled:禁用。'."\n" + ."\n" + .'默认值:enabled。'."\n" + ."\n" + .'> 有关实例元数据的信息,请参见[实例元数据概述](~~108460~~)。', 'type' => 'string', 'required' => false, 'example' => 'enabled'], ], [ - 'name' => 'ClientToken', + 'name' => 'HttpTokens', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。'."\n" - ."\n" - .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '访问实例元数据时是否强制使用加固模式(IMDSv2)。取值范围:'."\n" + ."\n" + .'- optional:不强制使用。'."\n" + .'- required:强制使用。设置该取值后,普通模式无法访问实例元数据。'."\n" + ."\n" + .'默认值:optional。'."\n" + ."\n" + .'> 有关访问实例元数据的模式,请参见[实例元数据访问模式](~~108460~~)。', 'type' => 'string', 'required' => false, 'example' => 'optional'], ], [ - 'name' => 'ForceAttach', + 'name' => 'ResourcePoolOptions', 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '是否将当前伸缩组内的ECS实例或ECI实例添加到新增的服务器组。取值范围:'."\n" - ."\n" - .'- true:添加。'."\n" + 'description' => '创建实例时使用的资源池策略。当您设置该参数后,需要注意:'."\n" ."\n" - .'- false:不添加。'."\n" + .'- 该参数只在创建按量付费实例时生效。'."\n" ."\n" - .'默认值:false。', - 'type' => 'boolean', + .'- 该参数不能与PrivatePoolOptions.MatchCriteria、PrivatePoolOptions.Id同时设置。', + 'type' => 'object', + 'properties' => [ + 'Strategy' => ['description' => '资源池包括弹性保障服务或容量预定服务生效后生成的私有池以及公共池,供实例启动时选择。取值范围:'."\n" + ."\n" + .'- PrivatePoolFirst:私有池优先。选择此种策略时,当指定了 ResourcePoolOptions.PrivatePoolIds或满足PrivatePoolTags条件,优先使用对应的私有池。如果未指定私有池或指定的私有池容量不足,将自动匹配开放类型的私有池。如果没有符合条件的私有池,则使用公共池创建实例。'."\n" + ."\n" + .'- PrivatePoolOnly:仅限私有池。选择此种策略时,必须指定ResourcePoolOptions.PrivatePoolIds。如果指定的私有池容量不足,则实例会启动失败。'."\n" + ."\n" + .'- PublicPoolFirst:公有池资源优先。优先使用公共池创建实例,当公有池资源不足时,采用私有池资源进行补充。优先自动匹配开放类型的私有池,如果没有符合条件的私有池,则使用指定的 ResourcePoolOptions.PrivatePoolIds或满足PrivatePoolTags条件的Target类型私有池。(该策略正在邀测中,暂不支持使用。)'."\n" + ."\n" + .'- None:不使用资源池策略。'."\n" + ."\n" + .'默认值:None。', 'type' => 'string', 'required' => false, 'example' => 'PrivatePoolFirst'], + 'PrivatePoolIds' => [ + 'description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。该参数只能传入 Target 模式私有池 ID且与PrivatePoolTags参数不能同时指定。', + 'type' => 'array', + 'items' => ['description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。该参数只能传入 Target 模式私有池 ID且与PrivatePoolTags参数不能同时指定。N 的取值范围:1~20。', 'type' => 'string', 'required' => false, 'example' => 'eap-bp67acfmxazb4****'], + 'required' => false, + ], + 'PrivatePoolTags' => [ + 'description' => '按标签筛选可用的 Target 私有池。N 的取值范围:1~20。'."\n" + .'说明:'."\n" + .'- 当配置该参数时,系统仅从账号下已关联的 Target 私有池中,筛选出标签匹配且同时满足伸缩组约束(如可用区、实例规格等)的私有池。'."\n" + .'- 标签匹配规则:私有池需匹配所有传入标签。'."\n" + .'- 该参数与PrivatePoolIds参数不能同时指定。', + 'type' => 'array', + 'items' => [ + 'description' => '按标签筛选可用的 Target 私有池。N 的取值范围:1~20。'."\n" + .'说明:'."\n" + .'- 当配置该参数时,系统仅从账号下已关联的 Target 私有池中,筛选出标签匹配且同时满足伸缩组约束(如可用区、实例规格等)的私有池。'."\n" + .'- 标签匹配规则:私有池需匹配所有传入标签。'."\n" + .'- 该参数与PrivatePoolIds参数不能同时指定。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '私有池的标签键。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'], + 'Value' => ['description' => '私有池的标签值。', 'type' => 'string', 'required' => false, 'example' => 'TestValue'], + ], + 'required' => false, + ], + 'required' => false, + ], + ], 'required' => false, - 'example' => 'false', - 'default' => 'false', ], ], [ - 'name' => 'ServerGroups', + 'name' => 'InstanceTypeCandidateOptions', 'in' => 'query', - 'style' => 'repeatList', + 'style' => 'flat', 'schema' => [ - 'description' => '负载均衡服务器组的相关信息集合。', - 'type' => 'array', - 'items' => [ - 'description' => '负载均衡服务器组的相关信息集合。', - 'type' => 'object', - 'properties' => [ - 'ServerGroupId' => [ - 'description' => '负载均衡服务器组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'sgp-5yc3bd9lfyh*****', - ], - '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" - .'> ALB和NLB类型负载均衡该参数为必填参数,GWLB类型负载均衡不能设置该参数且默认值为6081。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '22', - ], + 'description' => '设置备选模式后,当遇到库存不足等问题时,会根据当前已选的实例规格补充相同大小的近似规格,或者创建备选可用区的交换机并添加到伸缩组。', + 'type' => 'object', + 'properties' => [ + 'Enabled' => ['description' => '是否开启备选模式', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'MaxPrice' => ['description' => '备选实例规格的价格上限。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '2.10'], + 'AllowDifferentGeneration' => ['description' => '是否允许补充其他代系的实例规格。'."\n" + ."\n" + .'- 例如当前规格为ecs.c7.large,开启后可备选ecs.c6.large和ecs.c8.large等规格。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'AllowCrossAz' => ['description' => '是否允许补充其他可用区的交换机。'."\n" + .'> 规格不变,仅备选新的可用区。当伸缩组由于库存等问题导致所有已选可用区均无法扩容时,会根据此配置自动增加新的可用区交换机到伸缩组中。'."\n" + .'> 例如,伸缩组配置了cn-hangzhou-h和cn-hangzhou-g可用区,当两个可用区均无法扩容时ESS可能会根据实时库存状况创建一个cn-hangzhou-k的交换机并添加到伸缩组中。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'AllowCidrBlocks' => [ + 'description' => '允许补充其他可用区交换机时,需要指定可选的交换机的网段。', + 'type' => 'array', + 'items' => ['description' => '交换机网段要求如下:'."\n" + ."\n" + .'- 交换机的网段的掩码长度范围为16~29 位。'."\n" + .'- 交换机的网段必须从属于所在VPC 的网段。'."\n" + .'- 交换机的网段不能与所在VPC 中路由条目的目标网段相同,但可以是目标网段的子集。'."\n" + .'- 交换机的网段不能是100.64.0.0/10 及其子网网段。', 'type' => 'string', 'required' => false, 'example' => '172.16.0.0/24'], + 'required' => false, ], - 'required' => false, ], - 'required' => true, - 'maxItems' => 100, + 'required' => false, ], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '创建伸缩配置相关信息。', 'type' => 'object', 'properties' => [ - 'ScalingActivityId' => [ - 'description' => '添加负载均衡服务器组并将伸缩组内的ECS实例或ECI实例添加到该服务器组时,伸缩活动的ID。'."\n" - .'> 仅当ForceAttach取值为true时,返回该参数。', - 'type' => 'string', - 'example' => 'asa-bp1c9djwrgxjyk31****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], + 'ScalingConfigurationId' => ['description' => '伸缩配置ID。', 'type' => 'string', 'example' => 'asc-bp1ffogfdauy0nu5****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp1c9djwrgxjyk31****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '添加一个或多个负载均衡服务器组', - ], - 'DetachServerGroups' => [ - 'summary' => '对于需要动态调整实例数量来应对业务变化负载以及确保应用程序的高可用性场景,调用API DetachServerGroups从伸缩组移除一个或多个负载均衡服务器组,支持的服务器组类型包括应用型负载均衡ALB、网络型负载均衡NLB和网关型负载均衡GWLB,可以实现对负载均衡策略的动态调整,并帮助提高系统的高可用性。', - 'methods' => [ - 'post', - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingConfigurationId\\": \\"asc-bp1ffogfdauy0nu5****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + 'gatewayOptions' => [ + 'gatewayProtocols' => [], ], - 'schemes' => [ - 'http', - 'https', + 'title' => '创建一个ECS类型伸缩配置', + 'description' => '伸缩配置用来指定弹性扩张时使用的ECS实例模板,支持以下实例配置方式:'."\n" + ."\n" + .'- InstancePatternInfos:智能配置模式,无需指定具体的实例规格,只需根据业务需求指定实例的vCPU核数、内存大小、规格族级别以及最高价格,系统会自动筛选符合要求的实例规格,并优先选择价格最低的实例规格创建ECS实例。该模式仅适用于伸缩组的网络类型为专有网络,能够有效降低扩容时实例规格库存不足的情况。'."\n" + ."\n" + .'- InstanceType:指定一种实例规格。'."\n" + ."\n" + .'- InstanceTypes:指定多种实例规格。'."\n" + ."\n" + .'- InstanceTypeOverrides:指定多种实例规格,并为不同的实例规格配置权重。'."\n" + ."\n" + .'- Cpu和Memory:指定CPU和内存定义实例规格的范围,弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。该方式仅适用于伸缩组的扩缩容策略为成本优化策略,且伸缩配置未指定实例规格的场景。'."\n" + ."\n" + .'- 支持以下任一方式绑定主网卡,但需要注意一次调用只能选用一种方式配置主网卡,同时使用两种方式将会调用失败并返回错误信息。'."\n" + .' - 通过SecurityGroupId、SecurityGroupIds与Ipv6AddressCount等参数直接设置主网卡的相关配置信息。'."\n" + .' - 通过NetworkInterfaces设置主网卡以及辅助网卡的配置信息。当使用NetworkInterface参数时,必须设置主网卡信息,其中NetworkInterface.InstanceType取值为Primary时,表示设置主网卡;当NetworkInterface.InstanceType取值为Secondary或空值时,表示设置辅助网卡。'."\n" + ."\n" + .'> InstanceType、InstanceTypes、InstanceTypeOverrides、Cpu和Memory这四种方式不能同时指定,但InstanceType或者InstanceTypes可以与InstancePatternInfos同时指定。与InstancePatternInfos同时指定时,弹性伸缩优先使用您指定的实例规格扩容,当指定的实例规格无库存时,再使用符合InstancePatternInfos配置的实例规格。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateScalingConfiguration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'CreateScalingGroup' => [ + 'summary' => '如果您需要根据业务变动需求与策略自动增加或减少指定类型的实例数量,则可以通过调用API CreateScalingGroup创建伸缩组来自动调整您的业务计算能力(即实例数量)。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '166343', - 'abilityTreeNodes' => [ - 'FEATUREess2GK585', - ], + 'abilityTreeCode' => '125385', + 'abilityTreeNodes' => ['FEATUREessGIWHSQ'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'ScalingGroupName', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '伸缩组的名称,同一地域下伸缩组名称唯一。'."\n" + ."\n" + .'长度为2~64个英文或中文字符,以数字、大小写英文字母或中文开头,可以包含数字、下划线(_)、短划线(-)和半角句号(.)。'."\n" + ."\n" + .'默认值为ScalingGroupId的值。', 'type' => 'string', 'required' => false, 'example' => 'scalinggroup****'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'LaunchTemplateId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '实例启动模板ID,用于指定伸缩组从实例启动模板获取启动配置信息。', 'type' => 'string', 'required' => false, 'example' => 'lt-m5e3ofjr1zn1aw7**** '], ], [ - 'name' => 'ClientToken', + 'name' => 'LaunchTemplateVersion', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。'."\n" - ."\n" - .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '实例启动模板的版本。取值范围:'."\n" + ."\n" + .'- 固定的模板版本号。'."\n" + ."\n" + .'- Default:始终使用模板默认版本。'."\n" + ."\n" + .'- Latest:始终使用模板最新版本。'."\n", 'type' => 'string', 'required' => false, 'example' => 'Default'], ], [ - 'name' => 'ForceDetach', + 'name' => 'InstanceId', 'in' => 'query', - 'schema' => [ - 'description' => '是否从待移除服务器组中移除当前伸缩组内的ECS实例或ECI实例。 '."\n" - ."\n" - .'- true:移除。'."\n" - ."\n" - .'- false:不移除。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'schema' => ['description' => '实例的ID。创建伸缩组时,将从指定的实例获取所需的配置信息,并自动创建伸缩配置。', 'type' => 'string', 'required' => false, 'example' => 'i-28wt4****'], ], [ - 'name' => 'ServerGroups', + 'name' => 'RegionId', '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" - .'>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" - .'> 仅当`ForceDetach`取值为`true`时,返回该参数。', - 'type' => 'string', - 'example' => 'asa-bp1gbswjhjrw8tko****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '6EF9BFEE-FE07-4627-B8FB-14326FB9****', - ], - ], - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-qingdao'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp1gbswjhjrw8tko****\\",\\n \\"RequestId\\": \\"6EF9BFEE-FE07-4627-B8FB-14326FB9****\\"\\n}","type":"json"}]', - 'title' => '移除一个或多个负载均衡服务器组', - ], - 'ChangeResourceGroup' => [ - 'summary' => '资源组指对您拥有的云资源(例如伸缩组资源)从用途、权限、归属等维度上进行分组,实现企业内部多用户、多项目的资源分级管理。您可以调用API ChangeResourceGroup将伸缩组资源从一个资源组更改到另一个资源组,在新的资源组里集中监控和管理该伸缩组资源,免去了您在多种阿里云服务间反复查看资源的负担。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], - ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '163908', - 'abilityTreeNodes' => [ - 'FEATUREessGIWHSQ', + 'name' => 'MinSize', + 'in' => 'query', + 'schema' => ['description' => '伸缩组内实例台数的最小值,当伸缩组内实例数小于MinSize的值时,弹性伸缩会自动创建实例。 '."\n" + ."\n" + .'> MinSize的值必须小于或等于MaxSize的值。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'docRequired' => true, 'example' => '2'], ], - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'MaxSize', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '伸缩组内实例台数的最大值,当伸缩组内实例数大于MaxSize的值时,弹性伸缩会自动移出实例。 '."\n" + ."\n" + .'MaxSize的取值范围和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。'."\n" + ."\n" + .'MaxSize的取值范围和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。'."\n" + ."\n" + .'MaxSize的取值范围和弹性伸缩使用情况有关,请前往配额中心查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。'."\n" + ."\n" + .'如果**单个伸缩组可以设置的组内最大实例数**对应的配额值为2000,则MaxSize的取值范围为0~2000。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'docRequired' => true, 'example' => '20'], ], [ - 'name' => 'ResourceType', + 'name' => 'DefaultCooldown', 'in' => 'query', - 'schema' => [ - 'description' => '资源类型,目前仅支持伸缩组。取值:scalinggroup。', - 'type' => 'string', - 'required' => false, - 'example' => 'scalinggroup', - ], + 'schema' => ['description' => '一次伸缩活动(添加或移出实例)结束后的一段冷却时间。取值范围:0~86400,单位:秒。'."\n" + ."\n" + .'冷却时间内,该伸缩组不执行其他的伸缩活动,仅针对云监控报警任务触发的伸缩活动有效。 '."\n" + ."\n" + .'默认值:300。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '300'], ], [ - 'name' => 'ResourceId', + 'name' => 'LoadBalancerIds', 'in' => 'query', - 'schema' => [ - 'description' => '待修改资源组的伸缩组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp17xb4x1vr29lgt****', - ], + 'schema' => ['description' => '传统型负载均衡CLB(原SLB)实例ID。取值可以是由多台CLB实例ID组成一个JSON数组,ID之间用半角逗号(,)隔开。'."\n" + ."\n" + .'单个伸缩组可以关联的CLB总数和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以关联的负载均衡实例总数**对应的配额值。'."\n" + ."\n" + .'单个伸缩组可以关联的CLB总数和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以关联的负载均衡实例总数**对应的配额值。'."\n" + ."\n" + .'单个伸缩组可以关联的CLB总数和弹性伸缩使用情况有关,请前往配额中心查看**单个伸缩组可以关联的负载均衡实例总数**对应的配额值。', 'type' => 'string', 'required' => false, 'example' => '["lb-bp1u7etiogg38yvwz****", "lb-bp168cqrux9ai9l7f****", "lb-bp1jv3m9zvj22ufxp****"]'], ], [ - 'name' => 'NewResourceGroupId', + 'name' => 'DBInstanceIds', 'in' => 'query', - 'schema' => [ - 'description' => '将伸缩组更改到新的资源组后,新资源组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'rg-aek2ckjqe3*****', - ], + 'schema' => ['description' => 'RDS实例ID。取值可以是由多台RDS实例ID组成一个JSON数组,ID之间用半角逗号(,)隔开。 '."\n" + ."\n" + .'单个伸缩组可以关联的RDS实例总数和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以关联的RDS实例总数**对应的配额值。'."\n" + ."\n" + .'单个伸缩组可以关联的RDS实例总数和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以关联的RDS实例总数**对应的配额值。'."\n" + ."\n" + .'单个伸缩组可以关联的RDS实例总数和弹性伸缩使用情况有关,请前往配额中心查看**单个伸缩组可以关联的RDS实例总数**对应的配额值。', 'type' => 'string', 'required' => false, 'example' => '["rm-bp142f86de0t7****", "rm-bp18l1z42ar4o****", "rm-bp1lqr97h4aqk****"]'], ], - ], - 'responses' => [ - 200 => [ + [ + 'name' => 'RemovalPolicies', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '6EF9BFEE-FE07-4627-B8FB-14326FB9****', - ], - ], + 'description' => '指定实例移出策略的筛选策略。取值范围:'."\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~~)。', + 'type' => 'array', + 'items' => ['description' => '指定实例移出策略的筛选策略。取值范围:'."\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~~)。', 'type' => 'string', 'required' => false, 'example' => 'OldestScalingConfiguration'], + 'required' => false, + 'maxItems' => 2, ], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6EF9BFEE-FE07-4627-B8FB-14326FB9****\\"\\n}","type":"json"}]', - 'title' => '更改伸缩组所属的资源组', - 'description' => '- 资源是您在阿里云创建的云服务实体,例如,一个伸缩组就是一份资源。'."\n" - ."\n" - .'- 资源组是在阿里云账号下进行资源分组管理的一种机制,能够帮助您解决单个云账号内的资源分组和授权管理等复杂性问题。更多信息,请参见[什么是资源管理](~~94475~~)。', - ], - 'ApplyScalingGroup' => [ - 'summary' => '如果您需要通过配置文件方式快速创建、管理伸缩组,则可以通过调用API ApplyScalingGroup来创建和管理伸缩组。', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'VSwitchId', + 'in' => 'query', + 'schema' => ['description' => '虚拟交换机的ID。指定后,伸缩组的网络类型为专有网络。'."\n" + ."\n" + .'> 当伸缩组未指定VSwitchId或VSwitchIds参数时,伸缩组的网络类型默认为经典网络。', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp14zolna43z266bq****'], ], - ], - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '206521', - 'abilityTreeNodes' => [ - 'FEATUREessGIWHSQ', - 'FEATUREessXN6KX4', + [ + 'name' => 'MultiAZPolicy', + 'in' => 'query', + 'schema' => ['description' => '多可用区伸缩组ECS实例扩缩容策略。取值范围: '."\n" + .' '."\n" + .'- PRIORITY:先指定的虚拟交换机(VSwitchIds)优先级最高。弹性伸缩优先在优先级最高的交换机所在可用区尝试扩缩容,如果无法扩缩容,则自动在下一优先级的交换机所在可用区进行扩缩容。 '."\n" + .'- COST_OPTIMIZED:扩容时弹性伸缩按vCPU单价从低到高尝试创建ECS实例,缩容时按vCPU单价从高到低尝试移出ECS实例。当伸缩配置设置了抢占式计费方式的多实例规格时,优先创建对应抢占式实例。您可以继续通过CompensateWithOnDemand参数指定当抢占式实例由于库存等原因无法创建时,是否自动尝试以按量付费的方式创建。 '."\n" + ."\n" + .' > COST_OPTIMIZED仅在伸缩配置设置了多实例规格或者选用了抢占式实例的情况下生效。 '."\n" + .'- BALANCE:在伸缩组指定的多可用区之间均匀分配ECS实例。如果由于库存不足等原因可用区之间变得不平衡,您可以通过API [RebalanceInstance](~~71516~~)平衡资源。'."\n" + ."\n" + .' >如果`MultiAZPolicy`参数取值为`BALANCE`时,其和`MultiAZPolicy`参数取值为`COMPOSABLE`策略且`AzBalance`参数取值为`true`时的效果相同。 '."\n" + .'- COMPOSABLE:是一种组合策略,您可以根据需要自主组合上述多可用区伸缩组ECS实例的扩缩容策略。或者进一步指定参数,对伸缩组的容量进行更精细地控制。'."\n" + ."\n" + .'默认值:PRIORITY。', 'type' => 'string', 'required' => false, 'example' => 'PRIORITY'], ], - ], - 'parameters' => [ [ - 'name' => 'Content', + 'name' => 'HealthCheckType', 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'description' => '配置文件内容。', - 'type' => 'string', - 'required' => true, - 'example' => 'apiVersion: apps/v1'."\n" - .'kind: Deployment'."\n" - .'metadata:'."\n" - .' name: nginx-deployment'."\n" - .' labels:'."\n" - .' app: nginx'."\n" - .' spec:'."\n" - .' replicas: 3'."\n" - .' selector:'."\n" - .' matchLabels:'."\n" - .' app: nginx'."\n" - .' template:'."\n" - .' metadata:'."\n" - .' labels:'."\n" - .' app: nginx'."\n" - .' annotations:'."\n" - .' k8s.aliyun.com/eip-bandwidth: 10'."\n" - .' k8s.aliyun.com/eci-with-eip: true'."\n" - .' spec:'."\n" - .' containers:'."\n" - .' - name: nginx'."\n" - .' image: nginx:1.14.2'."\n" - .' ports:'."\n" - .' - containerPort: 80', - ], + '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' => 'RegionId', + 'name' => 'ScalingPolicy', 'in' => 'query', - 'schema' => [ - 'description' => '所属地域的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '指定伸缩组的回收模式。取值范围: '."\n" + .' '."\n" + .'- recycle:伸缩组的回收模式为停机回收模式。 '."\n" + .'- release:伸缩组的回收模式为释放模式。'."\n" + .'- forcerelease:伸缩组的回收模式为强制释放模式。'."\n" + .' >选择forcerelease后,在弹性收缩活动中系统会强制释放`运行中`(Running)的实例。强制释放实例相当于断电操作,会导致该实例内存以及存储中的临时数据被擦除,数据无法恢复,请您谨慎选择。'."\n" + .'- forcerecycle:伸缩组的回收模式为强制停机回收模式。'."\n" + .' >选择forcerecycle后,在弹性收缩活动中系统会强制关机`运行中`(Running)的实例。强制关机相当于断电操作,会导致该实例内存以及存储中的临时数据被擦除,数据无法恢复,请您谨慎选择。'."\n" + ."\n\n" + .'ScalingPolicy指定伸缩组的回收模式,但实例被移出伸缩组时的具体动作,由RemoveInstances的RemovePolicy参数决定。更多信息,请参见[RemoveInstances](~~25955~~)。', 'type' => 'string', 'required' => false, 'example' => 'recycle'], ], - ], - '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****', - ], - ], - ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CC107349-57B7-4405-B1BF-9BF5AF7F****\\",\\n \\"ScalingGroupId\\": \\"asg-bp1igpak5ft1flyp****\\"\\n}","type":"json"}]', - 'title' => '基于配置文件管理伸缩组', - 'description' => 'ApplyScalingGroup目前支持Kubernetes Deployment资源定义格式快速创建ECI伸缩组。同时支持ECI对Kubernetes YAML拓展annotation,详情参考《支持annotation列表》。'."\n" - ."\n" - .'YAML配置与伸缩组映射关系:通过YAML定义中的namespace、kind、name三元组映射伸缩组name。一个region下同一个YAML配置只能映射同一个伸缩组。示例:如果使用默认namespace下name为nginx的Deployment YAML配置,则映射同region下名称为k8s_default_Deployment_nginx伸缩组。'."\n" - ."\n" - .'基于YAML配置管理伸缩组逻辑:'."\n" - ."\n" - .'- 当YAML配置映射伸缩组存在时,会基于YAML配置更新伸缩组;'."\n" - .'- 当YAML配置映射伸缩组不存在时,会基于YAML配置创建对应伸缩组。'."\n" - ."\n" - .'### 注意事项 '."\n" - ."\n" - .'1. 当YAML配置未指定专有网络、vSwitch、安全组'."\n" - .'annotation时,系统会自动创建默认VPC,在该VPC下创建默认交换机,以及ESS默认安全组ess-default-sg。其中安全组策略默认开放TCP协议的22、3389端口以及ICMP(IPv4)协议,如果用户有其他端口协议需求,可以另行调整安全组策略。'."\n" - .'2. 当使用公网镜像时,需配置开启公网访问能力,设置k8s.aliyun.com/eci-with-eip pod annotation开启eip。'."\n" - .'3. 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核4G规格配置。更多信息,请参见[多规格创建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个标签。标签键和标签值之间用半角冒号隔开,多个标签之间用半角逗号隔开。', - ], - 'DescribeElasticStrength' => [ - 'summary' => '伸缩组配置的有效性很大程度决定了扩容过程的成功率。弹性伸缩通过弹性强度描述伸缩配置的有效性,让配置的优良程度量化,帮助用户针对性的优化伸缩配置。', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'OnDemandBaseCapacity', + 'in' => 'query', + 'schema' => ['description' => '伸缩组所需要按量实例个数的最小值,取值范围:0~1000。当按量实例个数少于该值时,将优先创建按量实例。 ', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30'], ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '221692', - 'abilityTreeNodes' => [ - 'FEATUREess7569XW', + [ + 'name' => 'OnDemandPercentageAboveBaseCapacity', + 'in' => 'query', + 'schema' => ['description' => '伸缩组满足最小按量实例数(OnDemandBaseCapacity)要求后,超出的实例中按量实例应占的比例,取值范围:0~100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'SpotInstanceRemedy', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属地域的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '是否开启补齐抢占式实例的弹性伸缩策略。开启后,当收到抢占式实例将被回收的系统消息时,伸缩组将尝试创建新的实例,替换掉将被回收的抢占式实例。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'CompensateWithOnDemand', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '当MultiAZPolicy取值为COST_OPTIMIZED时,如果因价格、库存等原因无法创建足够的抢占式实例,是否允许自动尝试创建按量实例满足ECS实例数量要求。取值范围:'."\n" + ."\n" + .'- true:允许。'."\n" + .'- false:不允许。'."\n" + ."\n" + .'默认值:true。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'InstanceTypes', + 'name' => 'SpotInstancePools', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'ECS实例的实例规格的集合。 传入时,覆盖伸缩配置中的实例规格。', - 'type' => 'array', - 'items' => [ - 'description' => 'ECS实例规格。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.g6.large', - ], - 'required' => false, - 'maxItems' => 50, - ], + 'schema' => ['description' => '指定可用实例规格的个数,伸缩组将按成本最低的多个规格均衡创建抢占式实例。取值范围:1~10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5'], ], [ - 'name' => 'PriorityStrategy', + 'name' => 'DesiredCapacity', 'in' => 'query', - 'schema' => [ - 'description' => '>此字段已废弃,请使用SpotStrategy。>'."\n" - .'后付费实例的抢占策略。传入时覆盖伸缩组配置的抢占策略,取值范围:'."\n" - ."\n" - .'- NoSpot:普通的按量付费实例。'."\n" - .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n" - .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。'."\n" - ."\n" - .'默认值:NoSpot。', - 'type' => 'string', - 'required' => false, - 'example' => 'NoSpot', - ], + 'schema' => ['description' => '伸缩组内实例的期望数量,伸缩组会自动将实例数量维持在期望实例数。取值不得大于MaxSize,且不得小于MinSize。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5'], ], [ - 'name' => 'SystemDiskCategories', + 'name' => 'GroupDeletionProtection', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '多个系统盘类型。 传入时,覆盖伸缩配置中的系统盘类型。取值范围:'."\n" - ."\n" - .'- cloud:普通云盘。'."\n" - .'- cloud_efficiency:高效云盘。'."\n" - .'- cloud_ssd:SSD云盘。'."\n" - .'- cloud_essd:ESSD云盘。'."\n" - .'> 当不指定伸缩组ID时,需要传入此参数。', - 'type' => 'array', - 'items' => [ - 'description' => '系统盘的多磁盘类型。取值范围:'."\n" - ."\n" - .'- cloud:普通云盘。'."\n" - .'- cloud_efficiency:高效云盘。'."\n" - .'- cloud_ssd:SSD云盘。'."\n" - .'- cloud_essd:ESSD云盘。', - 'type' => 'string', - 'required' => false, - 'example' => 'cloud', - ], - 'required' => false, - 'maxItems' => 50, - ], + 'schema' => ['description' => '是否开启伸缩组删除保护。取值范围:'."\n" + ."\n" + .'- true:开启伸缩组删除保护,此时不能删除该伸缩组。'."\n" + .'- false:关闭伸缩组删除保护。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'ScalingGroupIds', + 'name' => 'GroupType', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '批量查询时的查询伸缩组的ID列表。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asg-bp14wlu85wrpchm0****', - ], - 'required' => false, - 'maxItems' => 50, - ], + 'schema' => ['description' => '伸缩组管理的实例类型。取值范围:'."\n" + ."\n" + .'- ECS:伸缩组内管理的伸缩为ECS实例。'."\n" + ."\n" + .'- ECI:伸缩组内管理的伸缩为ECI实例。'."\n" + ."\n" + .'默认值:ECS。', 'type' => 'string', 'required' => false, 'example' => 'ECS'], ], [ - 'name' => 'SpotStrategy', + 'name' => 'ContainerGroupId', + 'in' => 'query', + 'schema' => ['description' => 'ECI实例ID,即容器组ID。', 'type' => 'string', 'required' => false, 'example' => 'eci-uf6fonnghi50u374****'], + ], + [ + 'name' => 'VSwitchIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '实例的抢占策略。取值范围:'."\n" + 'description' => '一台或多台虚拟交换机的ID。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。指定后,伸缩组的网络类型为专有网络。'."\n" + ."\n" + .'指定多台虚拟交换机时:'."\n" ."\n" - .'- NoSpot:正常按量付费实例。'."\n" - .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n" - .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格的抢占式实例。'."\n" + .'- 所属的VPC必须相同。'."\n" ."\n" - .'默认值:NoSpot。', - 'type' => 'string', + .'- 所属的可用区可以不同。'."\n" + ."\n" + .'- 虚拟交换机的优先级按照数字升序排序,1表示最高优先级。当优先级较高的虚拟交换机所在可用区无法创建实例时,自动选择下一优先级的虚拟交换机创建实例。'."\n" + ."\n" + .'> 当伸缩组未指定VSwitchId或VSwitchIds参数时,伸缩组的网络类型默认为经典网络。', + 'type' => 'array', + 'items' => ['description' => '一台或多台虚拟交换机的ID。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。指定后,伸缩组的网络类型为专有网络。'."\n" + ."\n" + .'指定多台虚拟交换机时:'."\n" + ."\n" + .'- 所属的VPC必须相同。'."\n" + ."\n" + .'- 所属的可用区可以不同。'."\n" + ."\n" + .'- 虚拟交换机的优先级按照数字升序排序,1表示最高优先级。当优先级较高的虚拟交换机所在可用区无法创建实例时,自动选择下一优先级的虚拟交换机创建实例。'."\n" + ."\n" + .'> 当伸缩组未指定VSwitchId或VSwitchIds参数时,伸缩组的网络类型默认为经典网络。', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp14zolna43z266bq****'], 'required' => false, - 'example' => 'NoSpot', + 'maxItems' => 8, ], ], [ - 'name' => 'VSwitchIds', + 'name' => 'LifecycleHooks', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '指定多个交换机ID。'."\n" - .'> 当不指定伸缩组ID时,需要传入此参数。', + 'description' => '生命周期挂钩信息列表。', 'type' => 'array', 'items' => [ - 'description' => '交换机ID。', - 'type' => 'string', + 'description' => '生命周期挂钩信息列表。', + 'type' => 'object', + 'properties' => [ + 'DefaultResult' => ['description' => '等待状态结束后的下一步动作。取值范围:'."\n" + ."\n" + .'- CONTINUE:继续响应弹性扩张活动或者继续响应弹性收缩活动。'."\n" + ."\n" + .'- ABANDON:直接释放弹性扩张活动创建出来的实例或者直接将弹性收缩活动中的实例从伸缩组移除。'."\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" + ."\n" + .'- SCALE_IN:伸缩组弹性收缩活动。'."\n" + ."\n" + .'> 若伸缩组指定生命周期挂钩,此参数必选,其他相关参数可选。', 'type' => 'string', 'required' => false, 'example' => 'SCALE_OUT'], + 'NotificationMetadata' => ['description' => '伸缩活动的等待状态的固定字符串信息。参数长度不超过4096个字符。弹性伸缩每次推送消息到通知对象时,会同时发送您预先指定的notificationmetadata参数值,便于管理和标记不同类别的通知信息。当您同时指定了notificationarn参数时,notificationmetadata才有效。', 'type' => 'string', 'required' => false, 'example' => 'Test'], + 'NotificationArn' => ['description' => '生命周期挂钩通知对象标识符,支持轻量消息队列(原 MNS)的队列或主题,参数取值格式:acs:ess:{region}:{account-id}:{resource-relative-id}。'."\n" + ."\n" + .'- region:伸缩组所在的地域。'."\n" + ."\n" + .'- account-id:阿里云账号ID。'."\n" + ."\n" + .'例如:'."\n" + ."\n" + .'- MNS队列:acs:ess:{region}:{account-id}:queue/{queuename}。'."\n" + ."\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延长实例的等待时间,也可以调用CompleteLifecycleAction提前结束伸缩活动的等待状态。'."\n" + ."\n" + .'默认值:600。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '600'], + ], 'required' => false, - 'example' => 'vsw-bp1whw2u46cn8zubm****', ], 'required' => false, - 'maxItems' => 10, + 'maxItems' => 100, ], ], [ - 'name' => 'ImageId', + 'name' => 'VServerGroups', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '镜像文件ID,自动创建实例时使用的镜像资源。'."\n" - .'> 当不指定伸缩组ID时,需要至少指定ImageId、ImageName、ImageFamily中的一个。', - 'type' => 'string', + 'description' => '伸缩组关联虚拟服务器组的信息集合。', + 'type' => 'array', + 'items' => [ + 'description' => '伸缩组关联虚拟服务器组的信息集合。', + 'type' => 'object', + 'properties' => [ + 'VServerGroupAttributes' => [ + 'description' => '后端服务器组属性。', + 'type' => 'array', + 'items' => [ + 'description' => '后端服务器组属性。', + 'type' => 'object', + 'properties' => [ + 'VServerGroupId' => ['description' => '虚拟服务器组ID。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'rsp-bp1443g77****'], + 'Weight' => ['description' => '弹性伸缩将实例添加到虚拟服务器组后,实例作为后端服务器的权重。权重越高,实例将被分配到越多的访问请求。如果权重为0,则实例不会收到访问请求。取值范围:0~100。'."\n" + ."\n" + .'默认值:50。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], + 'Port' => ['description' => '弹性伸缩将实例添加到虚拟服务器组后,实例使用的端口号,取值范围:1~65535。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '22'], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 100, + ], + 'LoadBalancerId' => ['description' => '虚拟服务器组所属传统型负载均衡CLB(原SLB)实例的ID。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'lb-bp1u7etiogg38yvwz****'], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'centos6u5_64_20G_aliaegis****.vhd', + 'maxItems' => 100, ], ], [ - 'name' => 'ImageName', + 'name' => 'Tags', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '镜像文件名称,同一个地域内镜像名称唯一。如果设置了ImageId,ImageName将被忽略。'."\n" - ."\n\n" - .'不支持通过ImageName设置镜像市场镜像。'."\n" - .'> 当不指定伸缩组ID时,需要至少指定ImageId、ImageName、ImageFamily中的一个。', - 'type' => 'string', + 'description' => '伸缩组的标签信息集合。', + 'type' => 'array', + 'items' => [ + 'description' => '伸缩组的标签信息集合。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '伸缩组的标签键。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'Department'], + 'Value' => ['description' => '伸缩组的标签值。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'Finance '."\n"], + 'Propagate' => ['description' => '标识该标签是否为可传播标签,取值范围:'."\n" + .'- true:伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n" + .'- false:伸缩组上的标签不会传播到实例上。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false'], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'ubuntu_18_04_x64_20G_alibase_20231225.vhd', + 'maxItems' => 21, ], ], [ - 'name' => 'ImageFamily', + 'name' => 'LaunchTemplateOverrides', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '镜像族系名称,通过设置该参数来获取当前镜像族系内最新的可用镜像,用于创建实例。如果已经设置了参数ImageId,则不能设置该参数。'."\n" - .'> 当不指定伸缩组ID时,需要至少指定ImageId、ImageName、ImageFamily中的一个。', - 'type' => 'string', + 'description' => '扩展启动模板的实例规格信息。', + 'type' => 'array', + 'items' => [ + 'description' => '扩展启动模板的实例规格信息。', + 'type' => 'object', + 'properties' => [ + 'InstanceType' => ['description' => '当您需要伸缩组按照实例规格容量进行伸缩时,请同时指定本参数和LaunchTemplateOverrides.WeightedCapacity。'."\n" + ."\n" + .'本参数用于指定实例规格,会覆盖启动模板中的实例规格。'."\n" + ."\n" + .'> 仅当LaunchTemplateId参数指定了启动模板时,本参数生效。'."\n" + ."\n" + .'InstanceType的取值范围:在售的ECS实例规格。', 'type' => 'string', 'required' => false, 'example' => 'ecs.c5.xlarge '."\n"], + 'WeightedCapacity' => ['description' => '当您需要伸缩组按照实例规格容量进行伸缩时,在指定LaunchTemplateOverrides.InstanceType后,再指定本参数。'."\n" + ."\n" + .'本参数用于指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。'."\n" + ."\n" + .'由于每个实例规格的vCPU个数、内存大小等性能指标会有差异,您可以根据自身需求,给不同的实例规格配置不同的权重。'."\n" + ."\n" + .'例如:'."\n" + ."\n" + .'- 当前容量:0。'."\n" + ."\n" + .'- 期望容量:6。'."\n" + ."\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.InstanceType`)的竞价价格上限。'."\n" + .'>仅当`LaunchTemplateId`参数指定了启动模板时,该参数才生效。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.025'], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'CentOS7', + 'maxItems' => 20, ], ], [ - 'name' => 'DataDiskCategories', + 'name' => 'AlbServerGroups', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '查询指定了多种数据盘类型时的弹性强度,当存在数据盘类型不匹配时,查询结果中会返回具体的不匹配磁盘类型。'."\n" - .'> 当不指定伸缩组ID时,可以传入此参数。', + 'description' => 'ALB服务器组的相关信息集合。', 'type' => 'array', 'items' => [ - 'description' => '数据盘类型。可能值:'."\n" - ."\n" - .'- cloud:普通云盘'."\n" - .'- cloud_efficiency:高效云盘'."\n" - .'- cloud_ssd:SSD云盘'."\n" - .'- cloud_essd:ESSD云盘'."\n" - .'- ephemeral_ssd:本地SSD盘', - 'type' => 'string', + 'description' => 'ALB服务器组的相关信息集合。', + 'type' => 'object', + 'properties' => [ + 'AlbServerGroupId' => ['description' => 'ALB服务器组的ID。'."\n" + ."\n" + .'一个伸缩组支持关联的ALB服务器组数量有限,如需查看或手动申请提升配额值,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)。'."\n", 'type' => 'string', 'required' => false, 'example' => 'sgp-ddwb0y0g6y9bjm****'], + 'Weight' => ['description' => '弹性伸缩将实例添加到ALB服务器组后,实例作为后端服务器的权重。权重越高,实例将被分配到越多的访问请求。如果权重为0,则实例不会收到访问请求。取值范围:0~100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], + 'Port' => ['description' => '弹性伸缩将实例添加到ALB服务器组后,实例使用的端口号,取值范围:1~65535。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '22'], + ], 'required' => false, - 'example' => 'cloud_essd', ], 'required' => false, - 'maxItems' => 50, + 'maxItems' => 100, ], ], [ - 'name' => 'Ipv6AddressCount', + 'name' => 'ServerGroups', 'in' => 'query', + 'style' => 'repeatList', '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" - .'>该字段已废弃。>', - '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' => 'IMG_NOT_SUPPORTED', - ], - 'Msg' => [ - 'description' => '弹性强度为0时的原因(错误描述)。', - 'type' => 'string', - 'example' => 'The instanceType does not support the image in the configuration.', - ], - '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" - .'>该字段已废弃。>', - 'type' => 'number', - 'format' => 'double', - 'example' => '1.5', - ], - 'ResourcePools' => [ - 'description' => '每个资源池的弹性强度信息。', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'InstanceType' => [ - 'description' => '资源池的实例规格。', - 'type' => 'string', - 'example' => 'ecs.r7.large', - ], - 'Strength' => [ - 'description' => '资源池的弹性强度。'."\n" - .'>该字段已废弃。>', - '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-2ze6e8p4******', - ], - ], - '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', - ], - ], - ], - ], - ], - ], - ], - ], + '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。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '22'], ], + 'required' => false, ], + 'required' => false, + 'maxItems' => 100, ], ], - ], - 'responseDemo' => '[{"errorExample":"","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\\": \\"IMG_NOT_SUPPORTED\\",\\n \\"Msg\\": \\"The instanceType does not support the image in the configuration.\\",\\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\\": 1.5,\\n \\"ResourcePools\\": [\\n {\\n \\"InstanceType\\": \\"ecs.r7.large\\",\\n \\"Strength\\": 0.6,\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-2ze6e8p4******\\"\\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}","type":"json"}]', - 'title' => '查询伸缩组的弹性强度', - ], - 'CreateScalingConfiguration' => [ - 'summary' => '通过调用CreateScalingConfiguration接口,并指定伸缩组ID、实例规格、实例镜像等信息,为伸缩组创建一个ECS类型的伸缩配置。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], - ], - ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '125374', - 'abilityTreeNodes' => [ - 'FEATUREessWJGIW5', + 'name' => 'AzBalance', + 'in' => 'query', + 'schema' => ['description' => '伸缩组的容量是否在多个可用区间均衡分布(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效),取值范围:'."\n" + ."\n" + .'- true:伸缩组的容量在多个可用区间均衡分布。'."\n" + ."\n" + .'- false:伸缩组的容量不在多个可用区间均衡分布。'."\n" + ."\n" + .'>如果`MultiAZPolicy`参数取值为`COMPOSABLE`策略,并且`AzBalance`参数取值为`true`时,其效果和`MultiAZPolicy`参数取值为`BALANCE`相同。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'AllocationStrategy', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩配置所属的伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'asg-bp14wlu85wrpchm0****', - ], + 'schema' => ['description' => '容量分配策略,决定了伸缩组如何选择可用的实例规格类型满足容量。容量分布策略同时对按量和抢占式容量生效(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。取值范围:'."\n" + ."\n" + .'- priority:按照配置的实例规格的顺序创建实例。'."\n" + ."\n" + .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n" + ."\n" + .'默认值:priority。', 'type' => 'string', 'required' => false, 'example' => 'priority'], ], [ - 'name' => 'ImageId', + 'name' => 'SpotAllocationStrategy', 'in' => 'query', - 'schema' => [ - 'description' => '镜像文件ID,自动创建实例时使用的镜像资源。', - 'type' => 'string', - 'required' => false, - 'example' => 'centos6u5_64_20G_aliaegis****.vhd', - ], + 'schema' => ['description' => '抢占式容量分布策略。您可以通过该参数单独指定抢占式容量的分布策略(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。取值范围:'."\n" + ."\n" + .'- priority:按照配置的实例规格的顺序创建实例。'."\n" + ."\n" + .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n" + ."\n" + .'默认值:priority。', 'type' => 'string', 'required' => false, 'example' => 'lowestPrice'], ], [ - 'name' => 'ImageName', + 'name' => 'SyncAlarmRuleToCms', 'in' => 'query', - 'schema' => [ - 'description' => '镜像文件名称,同一个地域内镜像名称唯一。如果设置了ImageId,ImageName将被忽略。'."\n" - ."\n\n" - .'不支持通过ImageName设置镜像市场镜像。', - 'type' => 'string', - 'required' => false, - 'example' => 'image****', - ], + 'schema' => ['description' => '>该参数暂未开放使用。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'InstanceType', + 'name' => 'MaxInstanceLifetime', 'in' => 'query', - 'schema' => [ - 'description' => 'ECS实例的实例规格,更多信息,请参见实例规格族。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.g6.large', - ], + 'schema' => ['description' => '实例在伸缩组中存活的最大时间。单位为秒。'."\n" + ."\n" + .'取值范围:[86400, Integer.maxValue]。'."\n" + ."\n" + .'默认值:null。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => 'null'], ], [ - 'name' => 'Cpu', + 'name' => 'CustomPolicyARN', 'in' => 'query', - 'schema' => [ - 'description' => 'vCPU个数。单位:核。'."\n" - ."\n" - .'同时指定CPU和Memory可以定义实例规格范围,例如,CPU=2且Memory=16可以定义配置为2 vCPU和16 GiB的所有实例规格。弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。'."\n" - .'>该区间配置效果仅在成本优化模式下且伸缩配置未设置实例规格时生效。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2', - ], + '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' => 'Memory', + 'name' => 'ResourceGroupId', '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。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ds-bp1frxuzdg87zh4pz****', - ], + 'schema' => ['description' => '新创建的伸缩组所属的资源组ID。'."\n" + .'>将新创建的伸缩组归属到指定的资源组中。如果不指定该参数,则归属为默认资源组。', 'type' => 'string', 'required' => false, 'example' => 'rg-123******'], ], [ - 'name' => 'SecurityGroupId', + 'name' => 'LoadBalancerConfigs', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'ECS实例所属的安全组的ID,同一个安全组内的ECS实例可以互相访问。', - 'type' => 'string', + 'description' => '负载均衡配置列表。', + 'type' => 'array', + 'items' => [ + 'description' => '负载均衡CLB(原SLB)配置列表。', + 'type' => 'object', + 'properties' => [ + 'LoadBalancerId' => ['description' => '负载均衡CLB(原SLB)实例的ID。', 'type' => 'string', 'required' => false, 'example' => 'lb-2zen1olhfg9yw3f4q****'], + 'Weight' => ['description' => '弹性伸缩将实例添加到SLB服务器组后,实例作为后端服务器的权重。权重越高,实例将被分配到越多的访问请求。如果权重为0,则实例不会收到访问请求。取值范围:0~100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'sg-280ih****', + 'maxItems' => 20, ], ], [ - 'name' => 'IoOptimized', + 'name' => 'HealthCheckTypes', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '是否为I/O优化实例。取值范围:'."\n" + 'description' => '伸缩组的健康检查方式。'."\n" + .'> 使用此参数可以设置多个值,开启多个健康检查选项。如果设置了`HealthCheckType`参数,则本参数将被忽略。', + 'type' => 'array', + 'items' => ['description' => '伸缩组的健康检查方式列表。取值范围:'."\n" ."\n" - .'none:非I/O优化实例。'."\n" - .'optimized:I/O优化实例。'."\n" + .'- NONE:不做健康检查。'."\n" + .'- ECS:对伸缩组内的实例做健康检查(ECS类型和ECI类型的伸缩组均使用本取值开启实例健康检查)。'."\n" + .'- LOAD_BALANCER: 根据负载均衡(暂不支持负载均衡CLB类型)健康检查结果判断实例健康状态。'."\n" ."\n" - .'已停售的实例规格的实例默认值是none,其他实例规格的实例默认值是optimized。', - 'type' => 'string', + .'默认值:ECS。', 'type' => 'string', 'required' => false, 'example' => 'ECS'], 'required' => false, - 'example' => 'optimized', + 'maxItems' => 100, ], ], [ - 'name' => 'InternetChargeType', + 'name' => 'DBInstances', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '网络计费类型。取值范围:'."\n" - ."\n" - .'- PayByBandwidth:按带宽计费。此时InternetMaxBandwidthOut即为所选的固定带宽值。'."\n" - ."\n" - .'- PayByTraffic:按流量计费。此时InternetMaxBandwidthOut只是一个带宽上限,计费以实际产生的网络流量为依据。'."\n" - ."\n" - .'如果未指定该参数,经典网络下默认值为PayByBandwidth,专有网络VPC下默认值为PayByTraffic。', - 'type' => 'string', + 'description' => '伸缩组关联的数据库列表。', + 'type' => 'array', + 'items' => [ + 'description' => '伸缩组关联的数据库配置信息。', + 'type' => 'object', + 'properties' => [ + 'DBInstanceId' => ['description' => '数据库实例ID。', 'type' => 'string', 'required' => false, 'example' => 'rm-m5eqju85s45mu0***'], + 'Type' => ['description' => '数据库类型。取值范围:'."\n" + .'- RDS。'."\n" + .'- Redis。'."\n" + .'- MongoDB。'."\n" + ."\n" + .'默认值:RDS。', 'type' => 'string', 'required' => false, 'example' => 'RDS'], + 'AttachMode' => ['description' => '伸缩组与数据库关联方式。取值范围:'."\n" + .'- SecurityIp :修改IP白名单模式,通过将扩容实例自动添加到数据库IP白名单(目前仅RDS数据库支持)。'."\n" + .'- SecurityGroup:安全组模式,通过将伸缩配置安全组添加至数据库安全组白名单,实现安全组下实例数据库访问。', 'type' => 'string', 'required' => false, 'example' => 'SecurityIp'], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'PayByTraffic', + 'maxItems' => 5, ], ], [ - 'name' => 'InternetMaxBandwidthIn', + 'name' => 'StopInstanceTimeout', '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', - ], + 'schema' => ['description' => '缩容流程中等待ECS实例停机成功的超时时间,单位为秒。'."\n" + .'取值范围:30~240。'."\n" + ."\n" + .'> - 该参数仅在 ScalingPolicy = release 模式下的缩容流程里生效。 '."\n" + .'> - 如果设置了该参数,系统会最长等待StopInstanceTimeout时间将实例停机成功,超时后无论实例是否成功停机都会继续缩容。 '."\n" + .'> - 如果没有设置该参数,系统会长时间等待实例停机成功,只有实例停机成功后才继续缩容,停机失败时,缩容流程会回滚,缩容失败。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '60'], ], [ - 'name' => 'InternetMaxBandwidthOut', + 'name' => 'CapacityOptions', 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '公网出带宽最大值,单位为 Mbit/s。取值范围:0~100。'."\n" - ."\n" - .'默认值:0。', - 'type' => 'integer', - 'format' => 'int32', + '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" + .'- PricePerUnit:使用每单位容量价格比价。'."\n" + ."\n" + .' 实例在伸缩组中容量大小等于为实例规格设置的权重,默认为1,即一台ECS所占容量为1。'."\n" + ."\n" + .'- PricePerVCpu:使用每单位vCpu价格进行比价。'."\n" + ."\n" + .'默认值:PricePerUnit。', 'type' => 'string', 'required' => false, 'example' => 'PricePerUnit'], + ], 'required' => false, - 'example' => '10', ], ], [ - 'name' => 'SystemDisk.Category', + 'name' => 'BalanceMode', 'in' => 'query', - 'schema' => [ - 'description' => '系统盘的磁盘种类。取值范围:'."\n" - ."\n" - .'- cloud:普通云盘。'."\n" - ."\n" - .'- cloud_efficiency:高效云盘。'."\n" - ."\n" - .'- cloud_ssd:SSD云盘。'."\n" - ."\n" - .'- ephemeral_ssd:本地SSD盘。'."\n" - ."\n" - .'- cloud_essd:ESSD云盘。'."\n" - ."\n" - .'- cloud_auto:ESSD AutoPL云盘。'."\n" - ."\n" - .'该参数不能与`SystemDiskCategories`同时指定。当该参数与`SystemDiskCategories`都未指定时,该参数有默认值:'."\n" - ."\n" - .'- 对于I/O优化实例,默认值为cloud_efficiency。'."\n" - .'- 对于非I/O优化实例,默认值为cloud。', - 'type' => 'string', - 'required' => false, - 'example' => 'cloud_ssd', - ], + 'schema' => ['title' => '负载均衡模式', 'description' => '可用区均衡模式,仅当开启可用区均衡模式时生效。取值范围:'."\n" + .' '."\n" + .'- BalancedBestEffort:'."\n" + .'当某可用区资源创建失败时,会降级至其他可用区,保障资源的尽力交付。'."\n" + ."\n" + .'- BalancedOnly:'."\n" + .'当某可用区资源创建失败时,不会降级至其他可用区,扩容活动部分成功,避免资源在不同可用区过度不均衡。'."\n" + ."\n" + .'默认值:BalancedBestEffort。', 'type' => 'string', 'required' => false, 'example' => 'BalancedBestEffort'], ], [ - 'name' => 'SystemDisk.Size', + 'name' => 'AutoRebalance', 'in' => 'query', + 'schema' => ['title' => '自动重新平衡设置', 'description' => '是否开启伸缩组自动均衡,仅当可用区均衡伸缩组开启了BalancedOnly才生效。取值范围:'."\n" + .'- false:不开启伸缩组自动均衡。'."\n" + .'- true:开启伸缩组自动均衡时,伸缩组会自动检测可用区见容量,当可用区容量不均衡时,会主动进行可用区扩缩,进行可用区容量再均衡。'."\n" + ."\n" + .'默认值: false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + ], + ], + 'responses' => [ + 200 => [ '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', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'ScalingGroupId' => ['description' => '伸缩组ID。', 'type' => 'string', 'example' => 'asg-bp14wlu85wrpchm0****'], + ], + 'description' => '', ], ], - [ - 'name' => 'SystemDisk.DiskName', - 'in' => 'query', - 'schema' => [ - 'description' => '系统盘名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以`http://`或`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cloud_ssdSystem', + ], + 'errorCodes' => [ + 404 => [ + ['errorCode' => 'ResourceNotAvailable.VPCNetwork', 'errorMessage' => 'The specified zone does not support vpc network or sold out.', 'description' => ''], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingGroupId\\": \\"asg-bp14wlu85wrpchm0****\\"\\n}","type":"json"}]', + 'title' => '创建一个伸缩组', + 'description' => '伸缩组是具有相同应用场景的ECS实例的集合。'."\n" + ."\n" + .'一个地域下支持创建的伸缩组数量和弹性伸缩使用情况有关,请前往配额中心查看伸缩组总数对应的配额值。'."\n" + ."\n" + .'伸缩组创建成功后不会立即生效。您需要先调用[EnableScalingGroup](~~25939~~)接口启用伸缩组,伸缩组才能触发伸缩活动和执行伸缩规则。'."\n" + ."\n" + .'伸缩组、关联的传统型负载均衡CLB(原SLB)实例和关联的RDS实例必须在同一个地域。更多信息,请参见[地域与可用区](~~40654~~)。'."\n" + ."\n" + .'如果您为伸缩组关联了CLB实例,伸缩组会自动将加入伸缩组的ECS实例添加到CLB实例的后端服务器组。您可以指定ECS实例需要加入的服务器组,支持以下两种服务器组:'."\n" + ."\n" + .'- 默认服务器组:用来接收前端请求的ECS实例,如果监听没有设置虚拟服务器组或主备服务器组,默认将请求转发至默认服务器组中的ECS实例。'."\n" + ."\n" + .'- 虚拟服务器组:当您需要将不同的请求转发到不同的后端服务器上,或着需要通过域名和URL进行请求转发时,可以选择使用虚拟服务器组。'."\n" + ."\n" + .'> 如果您同时指定了默认服务器组和多个虚拟服务器组,ECS实例会同时添加至这些服务器组中。'."\n" + ."\n" + .'实例在加入CLB实例的后端服务器组后,权重默认为50。CLB实例需要满足以下条件:'."\n" + ."\n" + .'- 该CLB实例的状态必须是active,您可以调用[DescribeLoadBalancers](~~2401696~~)接口查看指定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" + .'如果您为伸缩组关联了RDS实例,伸缩组会自动将加入伸缩组的ECS实例的内网IP添加到RDS实例的访问白名单。RDS实例需要满足以下条件:'."\n" + ."\n" + .'- 该RDS实例的状态必须是Running,您可以调用[DescribeDBInstances](~~610396~~)接口查看指定RDS实例的状态。'."\n" + ."\n" + .'- 该RDS实例访问白名单的IP数不能超过上限值。更多信息,请参见RDS文档[设置白名单](~~43185~~)。'."\n" + ."\n" + .'如果伸缩组的MultiAZPolicy设置为COST_OPTIMIZED:'."\n" + ."\n" + .'- 当指定OnDemandBaseCapacity、OnDemandPercentageAboveBaseCapacity和SpotInstancePools参数时,即指定成本优化策略下的实例分配方式,在扩缩容时将优先满足该实例分配方式。'."\n" + ."\n" + .'- 当不指定OnDemandBaseCapacity、OnDemandPercentageAboveBaseCapacity或SpotInstancePools参数时,成本优化策略下将仅按照成本最低的方式进行实例创建。(在此模式下,不支持通过弹性保障服务或容量预定服务创建实例。)'."\n" + ."\n\n" + .'如果您为伸缩组设置了可传播标签,即`Tags.Propagate`为true时:'."\n" + ."\n" + .'- 伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n" + ."\n" + .'- 如果您在伸缩配置中指定了实例标签,并且选择将伸缩组的标签传播到该实例,则所有标签都会同时存在。'."\n" + ."\n" + .'- 如果伸缩配置中的标签和伸缩组中的可传播标签指定了相同的标签键,则优先使用伸缩配置中的标签值。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateScalingGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/*'], + ], ], ], + ], + ], + 'CreateScalingRule' => [ + 'summary' => '伸缩规则的作用由伸缩规则的类型来决定,可用于触发伸缩活动或者智能设置伸缩组边界值。根据不同业务需求,通过调用API CreateScalingRule创建不同类型的伸缩规则,例如,业务需要只能设置伸缩组边界值,建议您选择预测规则类型。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'SystemDisk.Description', - 'in' => 'query', - 'schema' => [ - 'description' => '系统盘的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。', - 'type' => 'string', - 'required' => false, - 'example' => 'Test system disk.', - ], + 'AK' => [], ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '125334', + 'abilityTreeNodes' => ['FEATUREessRTZKQT'], + ], + 'parameters' => [ [ - 'name' => 'SystemDisk.AutoSnapshotPolicyId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '系统盘使用的自动快照策略ID。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'sp-bp12m37ccmxvbmi5****', - ], + 'schema' => ['description' => '伸缩规则所属伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1ffogfdauy0jw0****'], ], [ - 'name' => 'SystemDisk.PerformanceLevel', + 'name' => 'ScalingRuleName', 'in' => 'query', - 'schema' => [ - 'description' => '当系统盘为ESSD云盘时,设置云盘的性能等级。取值范围:'."\n" - ."\n" - .'- PL0:单盘最高随机读写IOPS 1万。'."\n" - ."\n" - .'- PL1:单盘最高随机读写IOPS 5万。'."\n" - ."\n" - .'- PL2:单盘最高随机读写IOPS 10万。'."\n" - ."\n" - .'- PL3:单盘最高随机读写IOPS 100万。'."\n" - ."\n" - .'默认值:PL1。', - 'type' => 'string', - 'required' => false, - 'example' => 'PL0', - ], + 'schema' => ['description' => '伸缩规则的名称,2~64个英文或中文字符,以数字、大小字母或中文开头,可包含数字、下划线(_)、连字符(-)或点号(.)。'."\n" + ."\n" + .'同一用户账号同一地域同一伸缩组内伸缩规则唯一。'."\n" + ."\n" + .'如果没有指定该参数,默认值为ScalingRuleId的值。', 'type' => 'string', 'required' => false, 'example' => 'scalingrule****'], ], [ - 'name' => 'ScalingConfigurationName', + 'name' => 'Cooldown', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩配置的名称,2~64英文或中文字符,以数字、大小写字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。'."\n" - ."\n" - .'在同一地域下同一伸缩组内伸缩配置名称唯一。如果您没有指定该参数,则默认使用伸缩配置的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'scalingconfig****', - ], + 'schema' => ['description' => '伸缩规则的冷却时间,仅适用于简单规则。取值范围:0~86400,单位:秒。'."\n" + ."\n" + .'默认值:空。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '60'], ], [ - 'name' => 'LoadBalancerWeight', + 'name' => 'MinAdjustmentMagnitude', 'in' => 'query', - 'schema' => [ - 'description' => 'ECS实例作为负载均衡后端服务器时的权重,取值范围:1~100。'."\n" - ."\n" - .'默认值:50。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '50', - ], + 'schema' => ['description' => '伸缩规则最小调整实例数,仅当伸缩规则类型为SimpleScalingRule或StepScalingRule,且AdjustmentType为PercentChangeInCapacity时生效。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'Tags', + 'name' => 'AdjustmentType', '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"}', - ], + 'schema' => ['description' => '伸缩规则的调整方式,适用于简单规则和步进规则,且此时该项必选。取值范围:'."\n" + ."\n" + .'- QuantityChangeInCapacity:增加或减少指定数量的ECS实例。'."\n" + .'- PercentChangeInCapacity:增加或减少指定比例的ECS实例。'."\n" + .'- TotalCapacity:将当前伸缩组的ECS实例数量调整到指定数量。', 'type' => 'string', 'required' => false, 'example' => 'QuantityChangeInCapacity'], ], [ - 'name' => 'UserData', + 'name' => 'AdjustmentValue', 'in' => 'query', - 'schema' => [ - 'description' => 'ECS实例的自定义数据,需要以Base64方式编码,编码前的原始数据最多为32 KB。', - 'type' => 'string', - 'required' => false, - 'example' => 'ZWNobyBoZWxsbyBlY3Mh', - ], + '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' => 'KeyPairName', + 'name' => 'ScalingRuleType', 'in' => 'query', - 'schema' => [ - 'description' => '登录ECS实例时使用的密钥对的名称。 '."\n" - .' '."\n" - .'- 对Windows实例,该参数将被忽略,默认为空。 '."\n" - .'- 对Linux实例,密码登录方式会被初始化成禁止。', - 'type' => 'string', - 'required' => false, - 'example' => 'KeyPairTest', - ], + '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' => 'RamRoleName', + 'name' => 'EstimatedInstanceWarmup', 'in' => 'query', - 'schema' => [ - 'description' => 'ECS实例的RAM角色名称。RAM角色名称由RAM提供和维护,您可调用ListRoles查询可用的RAM角色。', - 'type' => 'string', - 'required' => false, - 'example' => 'ramrole****', - ], + 'schema' => ['description' => '实例预热时间,适用于目标追踪规则和步进规则。处于预热状态的ECS实例将正常的加入伸缩组,但是期间将不会向云监控上报监控数据。'."\n" + ."\n" + .'> 动态计算需要扩缩容的ECS实例数量时,处于预热状态的实例不计入现有实例数量。'."\n" + ."\n" + .'取值范围:0~86400,单位:秒。'."\n" + ."\n" + .'默认值:300。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '300'], ], [ - 'name' => 'SecurityEnhancementStrategy', + 'name' => 'MetricName', 'in' => 'query', - 'schema' => [ - 'description' => '是否开启安全加固。取值范围:'."\n" - ."\n" - .'- Active:启用安全加固,只对公共镜像生效。'."\n" - .'- Deactive:不启用安全加固,对所有镜像类型生效。', - 'type' => 'string', - 'required' => false, - 'example' => 'Active', - ], + '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' => 'InstanceName', + 'name' => 'TargetValue', 'in' => 'query', - 'schema' => [ - 'description' => '使用本伸缩配置自动创建的ECS实例的名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'instance****', - ], + 'schema' => ['description' => '目标值,适用于目标追踪规则和预测规则,且此时该项必选。TargetValue最多保留小数点后三位,且必须大于0。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.125'], ], [ - 'name' => 'HostName', + 'name' => 'DisableScaleIn', 'in' => 'query', - 'schema' => [ - 'description' => '云服务器的主机名。半角句号(.)或短划线(-)不能作为首尾字符,不能连续使用半角句号(.)或短划线(-)。另外,不同类型实例的命名要求如下:'."\n" - ."\n" - .'- Windows实例:主机名长度为2~15,可以包含大小写字母、数字和短划线(-)。不能包含半角句号(.),不能全是数字。'."\n" - .'- 其他类型实例(Linux等):主机名长度为2~64,可以包含多个半角句号(.)。两个半角句号(.)之间为一段,每段可以包含大小写字母、数字和短划线(-)。', - 'type' => 'string', - 'required' => false, - 'example' => 'host****', - ], + 'schema' => ['description' => '是否禁用缩容,仅适用于目标追踪规则。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false'], ], [ - 'name' => 'SpotStrategy', + 'name' => 'ScaleInEvaluationCount', 'in' => 'query', - 'schema' => [ - 'description' => '后付费实例的抢占策略。取值范围:'."\n" - .' '."\n" - .'- NoSpot:普通的按量付费实例。'."\n" - .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n" - .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。'."\n" - ."\n" - .'默认值:NoSpot。', - 'type' => 'string', - 'required' => false, - 'example' => 'NoSpot', - ], + 'schema' => ['description' => '创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的缩容报警任务触发报警时,所需连续满足阈值条件的次数。'."\n" + ."\n" + .'默认值:15。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '15'], ], [ - 'name' => 'PasswordInherit', + 'name' => 'ScaleOutEvaluationCount', 'in' => 'query', - 'schema' => [ - 'description' => '是否使用镜像预设的密码。使用该参数时,您需要确保使用的镜像已经设置了密码。取值范围:'."\n" - ."\n" - .'- true:使用镜像预设密码。'."\n" - .'- false:不使用镜像预设密码。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的扩容报警任务触发报警时,所需连续满足阈值条件的次数。'."\n" + ."\n" + .'默认值:3。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3'], ], [ - 'name' => 'Password', + 'name' => 'PredictiveScalingMode', 'in' => 'query', - 'schema' => [ - 'description' => 'ECS实例的密码。长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号中的三类字符。特殊符号可以是:'."\n" - ."\n" - .'\\`()` ~!@#$%^&*-_+=\\|{}[]:;\'<>,.?/`'."\n" - ."\n" - .'其中,Windows实例不能以斜线号(/)为密码首字符。'."\n" - ."\n" - .'> 如果传入Password参数,建议您使用HTTPS协议发送请求,避免密码泄露。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '123abc****', - ], + 'schema' => ['description' => '预测规则的模式,取值范围:'."\n" + ."\n" + .'- PredictAndScale:产生预测结果并创建预测任务。'."\n" + .'- PredictOnly:产生预测结果,但不会创建预测任务。'."\n" + ."\n" + .'默认值:PredictAndScale。', 'type' => 'string', 'required' => false, 'example' => 'PredictAndScale'], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'PredictiveValueBehavior', 'in' => 'query', - 'schema' => [ - 'description' => 'ECS实例所属资源组的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'rg-resource****', - ], + 'schema' => ['description' => '预测规则最大值处理方式,取值范围:'."\n" + ."\n" + .'- MaxOverridePredictiveValue:初始最大值会覆盖预测值。预测值大于初始最大值时,预测任务的最大值采用初始最大值。'."\n" + .'- PredictiveValueOverrideMax:预测值会覆盖初始最大值。预测值大于初始最大值时,预测任务的最大值采用预测值。'."\n" + .'- PredictiveValueOverrideMaxWithBuffer:预测值会附加一定比例。预测值会按照PredictiveValueBuffer比例增加,当增加后的值大于初始最大值时,会采用增加后的值。'."\n" + ."\n" + .'默认值:MaxOverridePredictiveValue。', 'type' => 'string', 'required' => false, 'example' => 'MaxOverridePredictiveValue'], ], [ - 'name' => 'HpcClusterId', + 'name' => 'PredictiveValueBuffer', 'in' => 'query', - 'schema' => [ - 'description' => 'ECS实例所属的HPC集群的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'hpc-clusterid', - ], + 'schema' => ['description' => '`PredictiveValueBehavior`为`PredictiveValueOverrideMaxWithBuffer`时生效,预测值会按照该比例增加,当增加后的值大于初始最大值时,会采用增加后的值。取值范围:0~100。'."\n" + ."\n" + .'默认值:0。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50'], ], [ - 'name' => 'InstanceDescription', + 'name' => 'PredictiveTaskBufferTime', 'in' => 'query', - 'schema' => [ - 'description' => 'ECS实例的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。', - 'type' => 'string', - 'required' => false, - 'example' => 'Test instance.', - ], + 'schema' => ['description' => '预测规则自动创建的预测任务默认均在整点执行,您可以设置预启动时间提前执行预测任务,预先准备资源。取值范围:0~60,单位:分钟。'."\n" + ."\n" + .'默认值:0。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30'], ], [ - 'name' => 'ClientToken', + 'name' => 'InitialMaxSize', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '伸缩组实例数上限,和`PredictiveValueBehavior`结合使用。'."\n" + ."\n" + .'默认值为伸缩组最大实例数(MaxSize的值)。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], ], [ - 'name' => 'Ipv6AddressCount', + 'name' => 'StepAdjustments', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '为弹性网卡指定随机生成的IPv6地址数量。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', + '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, - 'example' => '1', + 'maxItems' => 20, ], ], [ - 'name' => 'CreditSpecification', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '指定突发性能实例的运行模式。取值范围:'."\n" - ."\n" - .'- Standard:标准模式。'."\n" - ."\n" - .'- Unlimited:无性能约束模式。'."\n" - ."\n" - .'更多信息,请参见[突发性能实例概述](~~59977~~)下的性能模式章节。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Standard', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ImageFamily', + 'name' => 'AlarmDimensions', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '镜像族系名称,通过设置该参数来获取当前镜像族系内最新的可用镜像,用于创建实例。如果已经设置了参数`ImageId`,则不能设置该参数。', - 'type' => 'string', + '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-l1cbirz451yxuxxx'], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'hangzhou-daily-update', + 'maxItems' => 5, ], ], [ - 'name' => 'ZoneId', + 'name' => 'MetricType', 'in' => 'query', - 'schema' => [ - 'description' => 'ECS实例所属的可用区ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou-g', - ], + 'schema' => ['description' => '监控项类型。取值范围:'."\n" + ."\n" + .'- system:使用云监控系统指标。'."\n" + .'- custom:使用上报到云监控的自定义指标。'."\n" + .'- hybrid:使用企业云监控的指标。', 'type' => 'string', 'required' => false, 'example' => 'system'], ], [ - 'name' => 'DedicatedHostId', + 'name' => 'HybridMonitorNamespace', 'in' => 'query', - 'schema' => [ - 'description' => '是否在专有宿主机上创建ECS实例。由于专有宿主机不支持创建抢占式实例,指定DedicatedHostId参数后,会自动忽略请求中的SpotStrategy和SpotPriceLimit设置。'."\n" - ."\n" - .'您可以调用DescribeDedicatedHosts接口查询专有宿主机ID列表。', - 'type' => 'string', - 'required' => false, - 'example' => 'dh-bp67acfmxazb4p****', - ], + 'schema' => ['description' => '企业云监控指标仓库id。'."\n" + ."\n" + .'管理指标仓库,请参见[管理指标仓库](~~217606~~)。', 'type' => 'string', 'required' => false, 'example' => 'aliyun-test'], ], [ - 'name' => 'Affinity', + 'name' => 'HybridMetrics', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '专有宿主机实例是否与专有宿主机关联。取值范围:'."\n" - ."\n" - .'- default:实例不与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,若原专有宿主机可用资源不足,则实例被放置在自动部署资源池的其它专有宿主机上。'."\n" - ."\n" - .'- host:实例与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,仍放置在原专有宿主机上。若原专有宿主机可用资源不足,则实例重启失败。'."\n" - ."\n" - .'默认值:default。', - 'type' => 'string', + '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, - 'example' => 'default', + 'maxItems' => 100, ], ], [ - 'name' => 'Tenancy', + 'name' => 'AlarmOptions', 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '是否在专有宿主机上创建实例。取值范围:'."\n" - ."\n" - .'- default:创建非专有宿主机实例。'."\n" - ."\n" - .'- host:创建专有宿主机实例。若您不指定DedicatedHostId,则由阿里云自动选择专有宿主机放置实例。'."\n" - ."\n" - .'默认值:default。', - 'type' => 'string', + '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, - 'example' => 'default', ], ], - [ - 'name' => 'SchedulerOptions', - 'in' => 'query', - 'style' => 'json', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '调度选项。', 'type' => 'object', - 'required' => false, - 'example' => '["testManagedPrivateSpaceId****"]', + '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****'], + ], + ], + ], + ], + 'title' => '创建一条伸缩规则', + 'description' => '伸缩规则定义了具体的扩张或收缩操作,例如加入或移出N台实例。如果执行伸缩规则会造成伸缩组的ECS或ECI实例数低于MinSize或高于MaxSize,则弹性伸缩会自动调整需要加入或移出的ECS或ECI实例数,使得伸缩组的ECS或ECI实例数调整到MinSize或MaxSize,但伸缩规则的设定值不会变化。示例如下:'."\n" + ."\n" + .'- 某个伸缩组,MaxSize=3,当前实例数Total Capacity=2,伸缩规则指定加3台ECS实例,则在实际执行过程中只会加1台ECS实例,但伸缩规则的设定值仍然为3。'."\n" + .'- 某个伸缩组,MinSize=2,当前实例数Total Capacity =3,伸缩规则指定减去5台ECS实例,则在实际执行过程中只会减1台ECS实例,但伸缩规则的设定值仍然为5。'."\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参数中指定,用户可以定时执行该伸缩规则。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateScalingRule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingRuleAri\\": \\"ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingRuleId\\": \\"asr-bp1dvirgwkoowxk7****\\"\\n}","type":"json"}]', + ], + 'CreateScheduledTask' => [ + 'summary' => '定时任务是一种预设任务,您可以通过调用API CreateScheduledTask创建一个定时任务,在指定时间执行指定伸缩规则,实现计算资源的自动扩张或收缩,来满足业务需求的同时又能控制成本。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '125330', + 'abilityTreeNodes' => ['FEATUREess30IPAO'], + ], + 'parameters' => [ [ - 'name' => 'PrivatePoolOptions.MatchCriteria', + 'name' => 'RegionId', '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', - ], + 'schema' => ['description' => '定时任务所属地域的ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-qingdao'], ], [ - 'name' => 'PrivatePoolOptions.Id', + 'name' => 'ScheduledTaskName', 'in' => 'query', - 'schema' => [ - 'description' => '私有池ID。即弹性保障服务ID或容量预定服务ID。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'eap-bp67acfmxazb4****', - ], + 'schema' => ['description' => '定时任务的名称。2~64个英文或中文字符,以数字、大小字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。同一账号同一地域内唯一。 '."\n" + ."\n" + .'默认值为`ScheduledTaskId`的值。', 'type' => 'string', 'required' => false, 'example' => 'scheduled****'], ], [ - 'name' => 'SpotDuration', + 'name' => 'Description', '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', - ], + 'schema' => ['description' => '定时任务的描述信息,长度为2~200个英文或中文字符。', 'type' => 'string', 'required' => false, 'example' => 'Test scheduled task.'], ], [ - 'name' => 'SpotInterruptionBehavior', + 'name' => 'ScheduledAction', 'in' => 'query', - 'schema' => [ - 'description' => '抢占实例中断模式。目前仅支持terminate(默认)直接释放实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'Terminate', - ], + 'schema' => ['description' => '定时任务触发时需要执行的伸缩规则,填写伸缩规则的唯一标识符。'."\n" + ."\n" + .'指定`ScheduledAction`后,定时任务的伸缩方式为选择已有伸缩规则。不支持同时设置`ScheduledAction`和`ScalingGroupId`。', 'type' => 'string', 'required' => false, 'example' => 'ari:acs:ess:cn-hangzhou:140692647****:scalingrule/asr-bp12tcnol686y1ik****'], ], [ - 'name' => 'InstanceTypes', + 'name' => 'RecurrenceEndTime', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '多实例规格参数。如果使用了InstanceTypes,InstanceType将被忽略。'."\n" - ."\n" - .'当无法根据优先级较高的实例规格创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格来创建实例。', - 'type' => 'array', - 'items' => [ - 'description' => '多实例规格参数。如果使用了InstanceTypes,InstanceType将被忽略。'."\n" - ."\n" - .'当无法根据优先级较高的实例规格创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格来创建实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.g6.large', - ], - 'required' => false, - 'maxItems' => 20, - ], + 'schema' => ['description' => '重复执行定时任务的结束时间。按照ISO8601标准表示,并需要使用UTC时间。'."\n" + ."\n" + .'格式为:YYYY-MM-DDThh:mmZ。不能填写自创建当天起365日后的时间。', 'type' => 'string', 'required' => false, 'example' => '2014-08-17T16:55Z'], ], [ - 'name' => 'InstanceTypeOverrides', + 'name' => 'LaunchTime', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '用于指定的实例规格相关信息。', - 'type' => 'array', - 'items' => [ - 'description' => '用于指定的实例规格相关信息。', - 'type' => 'object', - 'properties' => [ - 'InstanceType' => [ - 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,请同时指定本参数和WeightedCapacity。'."\n" - ."\n" - .'本参数用于指定实例规格,会覆盖启动模板中的实例规格。您可以指定N个本参数,扩展启动模板支持N个实例规格。N的取值范围:1~20。'."\n" - ."\n" - .'> 仅当LaunchTemplateId参数指定了启动模板时,本参数生效。'."\n" - ."\n" - .'InstanceType的取值范围:在售的ECS实例规格。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.c5.xlarge', - ], - 'WeightedCapacity' => [ - 'description' => '当您需要指定伸缩配置中实例规格的容量时,在指定InstanceTypeOverrides.InstanceType后,再指定本参数。'."\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, - ], + 'schema' => ['description' => '定时任务触发的时间点。 按照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' => 'DataDisks', + 'name' => 'RecurrenceType', 'in' => 'query', - 'style' => 'repeatList', + '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" + .'指定`ScalingGroupId`后,定时任务的伸缩方式为设置伸缩组内实例数量,您需要为`MinValue`、`MaxValue`和`DesiredCapacity`中至少一个参数指定数量。不支持同时设置`ScheduledAction`和`ScalingGroupId`。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp18p2yfxow2dloq****'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '数据盘信息的集合。', - 'type' => 'array', - 'items' => [ - 'description' => '数据盘信息的集合。', - 'type' => 'object', - 'properties' => [ - 'PerformanceLevel' => [ - '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', - ], - 'AutoSnapshotPolicyId' => [ - 'description' => '数据盘使用的自动快照策略ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'sp-bp19nq9enxqkomib****', - ], - 'Encrypted' => [ - 'description' => '数据盘是否加密。该参数取值范围:'."\n" - ."\n" - .'- true:加密。'."\n" - .'- false:不加密。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'string', - 'required' => false, - 'example' => 'false', - ], - 'Description' => [ - 'description' => '数据盘的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。', - 'type' => 'string', - 'required' => false, - 'example' => 'Test data disk. '."\n", - ], - 'SnapshotId' => [ - 'description' => '创建数据盘时使用的快照。指定该参数后,DataDisks.Size会被忽略,实际创建的磁盘大小为指定快照的大小。'."\n" - ."\n" - .'如果该快照创建于2013年7月15日或之前,调用会被拒绝,返回参数中会提示InvalidSnapshot.TooOld。', - 'type' => 'string', - 'required' => false, - 'example' => 's-280s7****', - ], - 'Categories' => [ - 'description' => '数据盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。取值范围:'."\n" - .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n" - .'- cloud_efficiency:高效云盘。'."\n" - .'- cloud_ssd:SSD云盘。'."\n" - .'- cloud_essd:ESSD云盘。'."\n" - ."\n" - .'> 指定本参数时,不允许同时指定`DataDisks.Category`。', - 'type' => 'array', - 'items' => [ - 'description' => '数据盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。取值范围:'."\n" - .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n" - .'- cloud_efficiency:高效云盘。'."\n" - .'- cloud_ssd:SSD云盘。'."\n" - .'- cloud_essd:ESSD云盘。'."\n" - ."\n" - .'> 指定本参数时,不允许同时指定`DataDisks.Category`。', - 'type' => 'string', - 'required' => false, - 'example' => 'cloud', - ], - 'required' => false, - 'maxItems' => 10, - ], - 'Size' => [ - 'description' => '数据盘的磁盘大小,内存单位为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' => '数据盘挂载点。如果您没有指定该参数,则默认在自动创建ECS实例时由系统分配,从/dev/xvdb开始,到/dev/xvdz结束。', - 'type' => 'string', - 'required' => false, - 'example' => '/dev/xvdb', - ], - 'DiskName' => [ - 'description' => '系统盘的名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以`http://`和`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。', - 'type' => 'string', - 'required' => false, - 'example' => 'cloud_ssdData', - ], - 'Category' => [ - '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" - .'该参数不能与DataDisk.Categories同时指定。当该参数与DataDisk.Categories都未指定时,该参数默认值:'."\n" - .'- 对于I/O优化实例,默认值为cloud_efficiency。'."\n" - .'- 对于非I/O优化实例,默认值为cloud。', - 'type' => 'string', - 'required' => false, - 'example' => 'cloud_ssd', - ], - 'DeleteWithInstance' => [ - 'description' => '指定数据盘是否随实例释放。该参数取值范围:'."\n" - ."\n" - .'- true:释放实例时,该磁盘随实例一起释放。'."\n" - .'- false:释放实例时,该磁盘保留不释放。'."\n" - ."\n" - .'该参数只可对独立云盘设置(DataDisks.Category为cloud、cloud_efficiency、cloud_ssd或cloud_essd),否则会出现报错。'."\n" - ."\n" - .'默认值:true。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'KMSKeyId' => [ - 'description' => '数据盘对应的KMS密钥的ID。', - '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" - .'> 当`SystemDisk.Category`取值为`cloud_auto`时才支持设置该参数。'."\n" - ."\n" - .'更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。'."\n" - ."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - ], - 'required' => false, + 'type' => 'object', + 'properties' => [ + 'ScheduledTaskId' => ['description' => '定时任务的ID,由系统生成,全局唯一。', 'type' => 'string', 'example' => 'edRtShc57WGXdt8TlPbr****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], + ], + ], + ], + 'title' => '创建一个定时任务', + 'description' => '- 由于伸缩组正在发生伸缩活动或者伸缩组停用等原因,导致定时任务触发执行伸缩规则失败后,在`LaunchExpirationTime`内,定时任务会自动重试触发,否则放弃本次定时触发。'."\n" + .'- 如果多个定时任务在相近的时间内触发执行同一个伸缩组的伸缩规则,则触发的伸缩活动详情如下:'."\n" + .' - **已设置期望实例数的伸缩组**:多个定时任务触发的伸缩活动属于并行伸缩活动。例如,相近时间内,执行多个定时任务后,伸缩组可同时触发多个并行伸缩活动。'."\n" + .' - **未设置期望实例数的伸缩组**: 最早触发的定时任务会先执行伸缩活动。由于同一个伸缩组同一时刻内只能有一个伸缩活动,排在后面的定时任务会在`LaunchExpirationTime`内自动重试定时触发。如果上一个伸缩活动完成之后,排在后面的定时任务还在`LaunchExpirationTime`内重试,则执行该定时任务的伸缩规则并触发相应的伸缩活动。'."\n" + .'- 定时任务支持以下两种伸缩方式:'."\n" + ."\n" + .' - 通过ScheduledAction参数设置需要执行的伸缩规则。'."\n" + .' - 通过ScalingGroupId参数设置伸缩组内实例数量。'."\n" + .' >不支持同时设置ScheduledAction 和 ScalingGroupId。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateScheduledTask', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], - 'required' => false, - 'maxItems' => 16, ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScheduledTaskId\\": \\"edRtShc57WGXdt8TlPbr****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'DeleteAlarm' => [ + 'summary' => '针对具有突发性或时间上不易预测的业务,您可以通过报警任务关联云监控指标进行管理。弹性伸缩会实时统计指标数据,在统计值满足报警条件时触发报警,并在生效周期内自动执行伸缩规则,动态调整伸缩组内的ECS实例或ECI实例数量。如果您不再使用当前的报警任务,您也可以调用API DeleteAlarm直接删除该报警任务。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '125349', + 'abilityTreeNodes' => ['FEATUREessBFLAJQ'], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-qingdao'], + ], [ - 'name' => 'SpotPriceLimits', + 'name' => 'AlarmTaskId', 'in' => 'query', - 'style' => 'repeatList', + 'schema' => ['description' => '报警任务ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '抢占式实例相关的计费信息组成的集合。', - 'type' => 'array', - 'items' => [ - 'description' => '抢占式实例相关的计费信息组成的集合。', - 'type' => 'object', - 'properties' => [ - 'PriceLimit' => [ - 'description' => '抢占式实例对应的出价。SpotStrategy取值为SpotWithPriceLimit时生效。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '0.5', - ], - 'InstanceType' => [ - 'description' => '抢占式实例的实例规格。SpotStrategy取值为SpotWithPriceLimit时生效。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.g6.large', - ], - ], - 'required' => false, + '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****'], + ], + ], + ], + ], + 'title' => '删除一个报警任务', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteAlarm', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], - 'required' => false, - 'maxItems' => 20, ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AlarmTaskId\\": \\"asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****\\",\\n \\"RequestId\\": \\"6EF9BFEE-FE07-4627-B8FB-14326FB9****\\"\\n}","type":"json"}]', + ], + 'DeleteDiagnoseReport' => [ + 'summary' => '删除伸缩组健康诊断报告。', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'SecurityGroupIds', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '221454', + 'abilityTreeNodes' => ['FEATUREessXZ2M1E'], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', 'in' => 'query', - 'style' => 'repeatList', + 'schema' => ['description' => '地域 ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'], + ], + [ + 'name' => 'ReportId', + 'in' => 'query', + 'schema' => ['description' => '诊断报告ID。', 'type' => 'string', 'required' => true, 'example' => 'dr-j6c7wvdzk5103xxxxx'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '将ECS实例同时加入多个安全组。更多详情,请参见[使用限制](~~25412~~)下的安全组章节。'."\n" - ."\n" - .'> 不支持同时指定SecurityGroupId和SecurityGroupIds。', - 'type' => 'array', - 'items' => [ - 'description' => '将ECS实例同时加入多个安全组。更多详情,请参见[使用限制](~~25412~~)下的安全组章节。'."\n" - ."\n" - .'> 不支持同时指定SecurityGroupId和SecurityGroupIds。', - 'type' => 'string', - 'required' => false, - 'example' => 'sg-bp18kz60mefs****', + '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****'], + ], + ], + ], + ], + 'title' => '删除伸缩组健康诊断报告', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteDiagnoseReport', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], ], - 'required' => false, - 'maxItems' => 16, ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'DeleteEciScalingConfiguration' => [ + 'summary' => '当前伸缩配置处于未生效状态,且伸缩组中不存在使用该伸缩配置自动创建的ECI实例,您可以调用API DeleteEciScalingConfiguration删除不再需要的一个ECI类型的伸缩配置,可以有效避免占用伸缩配置的配额。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'InstancePatternInfos', + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '125381', + 'abilityTreeNodes' => ['FEATUREessTZHE2G'], + ], + 'parameters' => [ + [ + 'name' => 'ScalingConfigurationId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。', - 'type' => 'array', - 'items' => [ - 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。', - 'type' => 'object', - 'properties' => [ - 'Cores' => [ - 'description' => '智能配置模式下,实例规格的vCPU内核数目,用于筛选符合要求的实例规格范围。更多信息,请参见[实例规格族](~~25378~~)。'."\n" - ."\n" - .'请注意以下信息:'."\n" - ."\n" - .'- InstancePatternInfos参数仅适用于伸缩组的网络类型为专有网络。'."\n" - ."\n" - .'- InstancePatternInfos参数必须同时配置InstancePatternInfos.Cores和InstancePatternInfos.Memory。'."\n" - ."\n" - .'- 如果您已经通过InstanceType或InstanceTypes参数指定了实例规格,弹性伸缩优先使用您指定的实例规格扩容,当指定的实例规格无库存时,再从符合InstancePatternInfos参数值的实例规格中优先使用价格最低的实例规格扩容。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2', - ], - 'InstanceFamilyLevel' => [ - 'description' => '实例规格族级别,用于筛选符合要求的实例规格范围,当`CostOptimization`开启时生效。取值范围:'."\n" - ."\n" - .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n" - .'- EnterpriseLevel:企业级。性能稳定且资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n" - .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的业务场景。更多信息,请参见[突发性能实例概述](~~59977~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'EnterpriseLevel', - ], - 'MaxPrice' => [ - 'description' => '智能配置模式下,按量付费实例或者抢占式实例可接受的每小时最高价格,用于筛选符合要求的实例规格范围。'."\n" - ."\n" - .'> SpotStrategy设置为SpotWithPriceLimit时,该参数必选。其他情况下,该参数可选。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '2', - ], - 'Memory' => [ - 'description' => '智能配置模式下,实例规格的内存大小,单位为GiB,用于筛选符合要求的实例规格范围。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '4', - ], - 'ExcludedInstanceTypes' => [ - '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', - 'required' => false, - 'example' => 'ecs.n1.small/ecs.n1.*/*7*', - ], - 'required' => false, - 'maxItems' => 100, - ], - 'Architectures' => [ - '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', - ], - '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表示可以设置多个实例分类,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表示可以设置多个规格分类,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" - .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n" - ."\n" - .'- X86。'."\n" - .'- ARM。', - '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' => 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', - ], - '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, - ], + 'schema' => ['description' => '待删除伸缩配置的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asc-bp1bx8mzur534edp****'], ], [ - 'name' => 'SystemDiskCategories', + 'name' => 'RegionId', 'in' => 'query', - 'style' => 'repeatList', + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '系统盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。取值范围:'."\n" - .'- cloud:普通云盘。'."\n" - .'- cloud_efficiency:高效云盘。'."\n" - .'- cloud_ssd:SSD云盘。'."\n" - .'- cloud_essd:ESSD云盘。'."\n" - ."\n" - .'> 指定本参数时,不允许同时指定`SystemDisk.Category`。', - 'type' => 'array', - 'items' => [ - 'description' => '系统盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。取值范围:'."\n" - .'- cloud:普通云盘。'."\n" - .'- cloud_efficiency:高效云盘。'."\n" - .'- cloud_ssd:SSD云盘。'."\n" - .'- cloud_essd:ESSD云盘。'."\n" + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。'."\n" ."\n" - .'> 指定本参数时,不允许同时指定`SystemDisk.Category`。', - 'type' => 'string', - 'required' => false, - 'example' => 'cloud', + .'无论调用接口成功与否,系统都会返回请求ID。', 'type' => 'string', 'example' => '45D5B0AD-3B00-4A9B-9911-6D5303B0****'], ], - 'required' => false, - 'maxItems' => 10, ], ], - [ - 'name' => 'SystemDisk.Encrypted', - 'in' => 'query', - 'schema' => [ - 'description' => '是否加密系统盘。取值范围:'."\n" - ."\n" - .'- true:加密。'."\n" - .'- false:不加密。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', + ], + 'errorCodes' => [ + 403 => [ + ['errorCode' => 'Forbidden.RiskControl', 'errorMessage' => 'Forbidden.RiskControl', 'description' => ''], + ], + ], + 'title' => '删除一个ECI类型伸缩配置', + 'description' => '删除ECI类型伸缩配置前,请注意以下情况不能删除该类型的伸缩配置:'."\n" + ."\n" + .'- 伸缩配置在伸缩组中处于生效(Active)状态。'."\n" + ."\n" + .'- 伸缩组中仍然存在使用该伸缩配置创建的ECI实例。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteEciScalingConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"45D5B0AD-3B00-4A9B-9911-6D5303B0****\\"\\n}","type":"json"}]', + ], + 'DeleteLifecycleHook' => [ + 'summary' => '如果您不再需要一个生命周期挂钩,可以调用API DeleteLifecycleHook删除该生命周期挂钩,以空出挂钩配额。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'SystemDisk.KMSKeyId', - 'in' => 'query', - 'schema' => [ - 'description' => '系统盘使用的KMS密钥ID。', - 'type' => 'string', - 'required' => false, - 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', - ], + 'AK' => [], ], + ], + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '125343', + 'abilityTreeNodes' => ['FEATUREessZQ2TYX'], + ], + 'parameters' => [ [ - 'name' => 'SystemDisk.EncryptAlgorithm', + 'name' => 'LifecycleHookId', 'in' => 'query', - 'schema' => [ - 'description' => '系统盘采用的加密算法。取值范围:'."\n" - ."\n" - .'- AES-256。'."\n" - .'- SM4-128。'."\n" - ."\n" - .'默认值:AES-256。', - 'type' => 'string', - 'required' => false, - 'example' => 'AES-256', - ], + 'schema' => ['description' => '生命周期挂钩的ID。', 'type' => 'string', 'required' => false, 'example' => 'ash-bp14g3ee6bt3sc98****'], ], [ - 'name' => 'SystemDisk.ProvisionedIops', + 'name' => 'ScalingGroupId', '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', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'SystemDisk.BurstingEnabled', + 'name' => 'LifecycleHookName', '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', - ], + 'schema' => ['description' => '生命周期挂钩的名称。', 'type' => 'string', 'required' => false, 'example' => 'lifecyclehook****'], ], [ - 'name' => 'ImageOptions.LoginAsNonRoot', + 'name' => 'RegionId', 'in' => 'query', + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'ECS实例是否使用ecs-user用户登录,更多信息,请参见[管理ECS实例的登录名](~~388447~~)。取值范围:'."\n" - ."\n" - .'- true:是。'."\n" - ."\n" - .'- false:否。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', + 'description' => '删除生命周期挂钩返回信息。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], ], ], - [ - 'name' => 'DeletionProtection', - 'in' => 'query', - 'schema' => [ - 'description' => '实例释放保护属性,指定是否支持通过ECS控制台或API(DeleteInstance)直接释放实例,防止实例被误删除。取值范围:'."\n" - ."\n" - .'- true:开启实例释放保护,无法通过ECS控制台或API(DeleteInstance)直接释放实例。'."\n" - ."\n" - .'- false:关闭实例释放保护,可以通过ECS控制台或API(DeleteInstance)直接释放实例。'."\n" - ."\n" - .'默认值:false。'."\n" - .'>该属性仅适用于按量付费实例,防止弹性伸缩扩容的实例被误删除,不影响正常的缩容活动,开启实例释放保护的实例可以被缩容活动释放掉。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', + ], + 'title' => '删除一个生命周期挂钩', + 'description' => '如果生命周期挂钩已触发伸缩活动等待状态,删除生命周期挂钩时,对应的等待状态会被提前结束。您可以通过以下两种方式删除生命周期挂钩:'."\n" + ."\n" + .'- 指定生命周期挂钩ID(`LifecycleHookId`),此时将忽略`ScalingGroupId`和`LifecycleHookName`参数。'."\n" + .'- 同时指定伸缩组ID(`ScalingGroupId`)与生命周期挂钩名称(`LifecycleHookName`)。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteLifecycleHook', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'DeleteNotificationConfiguration' => [ + 'summary' => '事件通知支持在发生指定类型的事件后,自动发送消息到云监控、MNS主题和MNS队列,以便您及时对事件进行定位和处理。如果当前事件通知不再使用,调用API DeleteNotificationConfiguration删除该条弹性伸缩事件及资源变化通知。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '125346', + 'abilityTreeNodes' => ['FEATUREessJ2FJEV'], + ], + 'parameters' => [ [ - 'name' => 'StorageSetId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '存储集ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'ss-bp67acfmxazb4p****', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'StorageSetPartitionNumber', + 'name' => 'NotificationArn', 'in' => 'query', - 'schema' => [ - 'description' => '存储集中的最大分区数量。取值范围:大于等于2。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2', - ], + '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' => 'CustomPriorities', + 'name' => 'RegionId', 'in' => 'query', - 'style' => 'repeatList', + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'ECS实例规格+交换机的自定义优先级。'."\n" - .'>仅在伸缩组的扩缩容策略为优先级策略时有效。>'."\n" - ."\n" - .'当无法根据优先级较高的实例规格+交换机创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格+交换机组合来创建实例。'."\n" - ."\n" - .'> 如果仅指定了部分实例规格+交换机的自定义优先级,则未指定的部分优先级低于指定的部分,且未指定部分仍会依次按照伸缩组的交换机顺序、伸缩配置的实例规格顺序确定优先级。'."\n" - .'> - 例如:伸缩组的交换机顺序为vsw1、vsw2,伸缩配置的实例规格顺序为type1、type2,自定义优先级顺序为["vsw2+type2", "vsw1+type2"],则最终优先级为:"vsw2+type2" > "vsw1+type2" > "vsw1+type1" > "vsw2+type1"', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'InstanceType' => [ - 'description' => 'ECS 实例的实例规格。'."\n" - ."\n" - .'>必须包含在伸缩配置的实例规格列表中。>', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.g6.large', - ], - 'VswitchId' => [ - 'description' => '虚拟交换机的 ID。'."\n" - ."\n" - .'>必须包含在伸缩组的交换机列表中。>', - 'type' => 'string', - 'required' => false, - 'example' => 'vsw-bp14zolna43z266bq****', - ], - ], - 'required' => false, + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], - 'required' => false, - 'maxItems' => 100, ], ], - [ - 'name' => 'NetworkInterfaces', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '弹性网卡列表。', - 'type' => 'array', - 'items' => [ - 'description' => '弹性网卡。', - 'type' => 'object', - 'properties' => [ - 'InstanceType' => [ - 'description' => '弹性网卡类型。使用此参数时,必须使用NetworkInterfaces设置主网卡,同时不能设置SecurityGroupId或SecurityGroupIds 参数取值范围:'."\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" - ."\n" - .'>RDMA模式的弹性网卡数量不能超过该实例规格族的限制。更多信息,请参见[实例规格族](~~25378~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'HighPerformance', - ], - 'Ipv6AddressCount' => [ - 'description' => '为主网卡指定随机生成的 IPv6 地址数量。'."\n" - .'您需要注意:'."\n" - ."\n" - .'- NetworkInterface.InstanceType取值为Primary时,设置该参数才会生效。如果NetworkInterface.InstanceType取值为Secondary或空值,则不能设置该参数。'."\n" - ."\n" - .'- 设置该参数后,您不能再设置Ipv6AddressCount。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - 'SecurityGroupIds' => [ - 'description' => '弹性网卡所属的一个或多个安全组 ID。', - 'type' => 'array', - 'items' => [ - 'description' => '弹性网卡所属的一个或多个安全组 ID。'."\n" - .'您需要注意:'."\n" - ."\n" - .'- 如果NetworkInterface.InstanceType取值为Primary,则必须设置该参数。此时该参数的作用等同于SecurityGroupIds,但需要注意不能再设置SecurityGroupId、SecurityGroupIds。'."\n" - ."\n" - .'- 如果NetworkInterface.InstanceType取值为Secondary或空值,则该参数为非必填参数。默认值为 ECS 实例所属的安全组,即主网卡的安全组。', - 'type' => 'string', - 'required' => false, - 'example' => 'sg-uf6ij8dwxxxxxx', - ], - 'required' => false, - 'maxItems' => 20, - ], - 'SecondaryPrivateIpAddressCount' => [ - 'description' => '为网卡指定辅助私网 IPv4 地址数量。取值范围:1~49。'."\n" - ."\n" - .'- 取值不能超过该实例规格对于ip 数量的限制。更多信息,请参见[实例规格族](https://help.aliyun.com/zh/ecs/user-guide/overview-of-instance-families)。'."\n" - ."\n" - .'- NetworkInterface.N.SecondaryPrivateIpAddressCount用于为网卡分配辅助私网IPv4 地址数量(不包含该网卡的主私网 IP),系统将从该网卡所在虚拟交换机(NetworkInterface.N.VSwitchId)的可用网段中随机分配。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '6', - ], - ], - 'required' => false, + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + 'title' => '删除一条弹性伸缩事件及资源变化通知', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteNotificationConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], - 'required' => false, - 'maxItems' => 10, ], ], + ], + ], + 'DeleteScalingConfiguration' => [ + 'summary' => '删除一个伸缩配置。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'DedicatedHostClusterId', - 'in' => 'query', - 'schema' => [ - 'description' => '专有宿主机集群ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'dc-2zedxc67zqzt7lb4****', - ], + 'AK' => [], ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '125387', + 'abilityTreeNodes' => ['FEATUREessTZHE2G'], + ], + 'parameters' => [ [ - 'name' => 'SecurityOptions', + 'name' => 'ScalingConfigurationId', 'in' => 'query', - 'style' => 'flat', + 'schema' => ['description' => '待删除伸缩配置的ID。', 'type' => 'string', 'required' => true, 'example' => 'asc-bp1bx8mzur534edp****'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '安全选项。', + 'description' => '请求ID。', 'type' => 'object', 'properties' => [ - 'ConfidentialComputingMode' => [ - 'description' => '机密计算模式。可能值:'."\n" - .'- Enclave:表示ECS实例使用Enclave构建机密计算环境。更多信息,请参见[使用Enclave构建机密计算环境](~~203433~~)。'."\n" - .'- TDX:表示构建TDX机密计算环境。更多信息,请参见[构建TDX机密计算环境](~~479090~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'TDX', - ], + 'RequestId' => ['description' => '请求ID。无论调用接口成功与否,我们都会返回请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], + 'enumValueTitles' => [], + ], + ], + ], + 'title' => '删除一个ECS类型伸缩配置', + 'description' => '以下情况不能删除伸缩配置:'."\n" + ."\n" + .'- 伸缩配置在伸缩组中处于生效状态。'."\n" + .'- 伸缩组中仍然存在使用该伸缩配置创建的ECS实例。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteScalingConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], - 'required' => false, ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'DeleteScalingGroup' => [ + 'summary' => '如果您需要根据业务变动需求与策略自动增加或减少指定类型的实例数量,则可以通过配置伸缩组来自动调整您的业务计算能力(即实例数量)。如果您不再需要某个伸缩组,可以调用API DeleteScalingGroup删除该伸缩组来空出伸缩组配额。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '125373', + 'abilityTreeNodes' => ['FEATUREess909XOL'], + ], + 'parameters' => [ [ - 'name' => 'HttpEndpoint', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '是否启用实例元数据的访问通道。取值范围:'."\n" - .'- enabled:启用。'."\n" - .'- disabled:禁用。'."\n" - ."\n" - .'默认值:enabled。'."\n" - ."\n" - .'> 有关实例元数据的信息,请参见[实例元数据概述](~~108460~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'enabled', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'HttpTokens', + 'name' => 'ForceDelete', 'in' => 'query', - 'schema' => [ - 'description' => '访问实例元数据时是否强制使用加固模式(IMDSv2)。取值范围:'."\n" - ."\n" - .'- optional:不强制使用。'."\n" - .'- required:强制使用。设置该取值后,普通模式无法访问实例元数据。'."\n" - ."\n" - .'默认值:optional。'."\n" - ."\n" - .'> 有关访问实例元数据的模式,请参见[实例元数据访问模式](~~108460~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'optional', - ], + 'schema' => ['description' => '如果伸缩组存在ECS实例或ECI实例,或者存在正在进行伸缩活动,是否强制删除伸缩组并移出和释放ECS实例或ECI实例。取值范围:'."\n" + ."\n" + .'- true:强制删除伸缩组。会先停止伸缩组,拒绝接收新的伸缩活动请求,然后等待已有的伸缩活动完成,最后将伸缩组内所有ECS实例移出伸缩组(手动添加的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' => 'ResourcePoolOptions', + 'name' => 'RegionId', '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, - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '创建伸缩配置相关信息。', 'type' => 'object', 'properties' => [ - 'ScalingConfigurationId' => [ - 'description' => '伸缩配置ID。', - 'type' => 'string', - 'example' => 'asc-bp1ffogfdauy0nu5****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingConfigurationId\\": \\"asc-bp1ffogfdauy0nu5****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '创建一个ECS类型伸缩配置', - 'description' => '伸缩配置用来指定弹性扩张时使用的ECS实例模板,支持以下实例配置方式:'."\n" + 'title' => '删除一个伸缩组', + 'description' => '删除伸缩组需注意以下信息:'."\n" ."\n" - .'- InstancePatternInfos:智能配置模式,无需指定具体的实例规格,只需根据业务需求指定实例的vCPU核数、内存大小、规格族级别以及最高价格,系统会自动筛选符合要求的实例规格,并优先选择价格最低的实例规格创建ECS实例。该模式仅适用于伸缩组的网络类型为专有网络,能够有效降低扩容时实例规格库存不足的情况。'."\n" + .'- 删除伸缩组会删除相关联的伸缩配置、伸缩规则、伸缩活动、伸缩请求的信息。'."\n" ."\n" - .'- InstanceType:指定一种实例规格。'."\n" + .'- 删除伸缩组不会删除定时任务、云监控报警任务、负载均衡实例以及RDS实例。'."\n" ."\n" - .'- InstanceTypes:指定多种实例规格。'."\n" + .'- 如果伸缩组内存在运行中的ECS实例或ECI实例,弹性伸缩会先停止ECS实例或ECI实例,然后移出所有手动添加的ECS实例或ECI实例并释放所有自动创建的ECS实例或ECI实例。'."\n" ."\n" - .'- InstanceTypeOverrides:指定多种实例规格,并为不同的实例规格配置权重。'."\n" + .' >删除伸缩组前,请确保伸缩组未设置开启伸缩组保护功能。如果伸缩组已开启该功能,请先在修改伸缩组页面关闭该保护功能后再删除伸缩组。'."\n" ."\n" - .'- Cpu和Memory:指定CPU和内存定义实例规格的范围,弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。该方式仅适用于伸缩组的扩缩容策略为成本优化策略,且伸缩配置未指定实例规格的场景。'."\n" + .'- 如果创建伸缩组时设置了开启伸缩组保护功能,则您不能在控制台或者通过API删除该伸缩组,可以有效避免误删除伸缩组的操作。'."\n" ."\n" - .'- 支持以下任一方式绑定主网卡,但需要注意一次调用只能选用一种方式配置主网卡,同时使用两种方式将会调用失败并返回错误信息。'."\n" - .' - 通过SecurityGroupId、SecurityGroupIds与Ipv6AddressCount等参数直接设置主网卡的相关配置信息。'."\n" - .' - 通过NetworkInterfaces设置主网卡以及辅助网卡的配置信息。当使用NetworkInterface参数时,必须设置主网卡信息,其中NetworkInterface.InstanceType取值为Primary时,表示设置主网卡;当NetworkInterface.InstanceType取值为Secondary或空值时,表示设置辅助网卡。'."\n" + .'- 创建ECS实例时开启了实例释放保护功能,并加入伸缩组进行托管后,如果您需要删除伸缩组,则手动添加的ECS实例会被强制移出该伸缩组,自动创建的ECS实例也会随该伸缩组一起被自动释放掉。'."\n" ."\n" - .'> InstanceType、InstanceTypes、InstanceTypeOverrides、Cpu和Memory这四种方式不能同时指定,但InstanceType或者InstanceTypes可以与InstancePatternInfos同时指定。与InstancePatternInfos同时指定时,弹性伸缩优先使用您指定的实例规格扩容,当指定的实例规格无库存时,再使用符合InstancePatternInfos配置的实例规格。', - ], - 'DescribeScalingConfigurations' => [ - 'summary' => '调用API DescribeScalingConfigurations查询ECS类型伸缩配置的信息,包括实例规格、镜像等信息,方便您提前了解弹性扩张时使用的ECS实例模板详情。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + .' >删除伸缩组前,为了避免伸缩组中的ECS实例被强制释放,即使您单独为ECS实例开启了实例释放保护功能,仍然需要在伸缩组中设置伸缩组内ECS实例的保护功能,使其在删除伸缩组时不会被强制释放。具体操作,请参见[SetInstancesProtection](~~459342~~)。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteScalingGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'DeleteScalingRule' => [ + 'summary' => '删除一条伸缩规则。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '133422', - 'abilityTreeNodes' => [ - 'FEATUREessVYTHU5', - ], + 'operationType' => 'delete', + 'abilityTreeCode' => '125395', + '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' => [ - 'description' => '伸缩配置所属伸缩组的地域ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-qingdao', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], + ], + ], + ], + 'title' => '删除一条伸缩规则', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteScalingRule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'DeleteScheduledTask' => [ + 'summary' => '针对业务量的变化时间可预测的场景,您可以通过配置定时任务,在业务高峰到达前已准备好充足的计算资源,或者在业务高峰后及时释放空闲的计算资源,满足业务需求的同时又能控制成本。如果当前定时任务不再使用,您也可以调用API DeleteScheduledTask直接删除该定时任务。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'PageNumber', + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '125331', + 'abilityTreeNodes' => ['FEATUREess30IPAO'], + ], + 'parameters' => [ + [ + 'name' => 'ScheduledTaskId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩配置列表的页码,起始值:1。'."\n" - ."\n" - .'默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => '定时任务的ID。由系统生成,全局唯一。', 'type' => 'string', 'required' => true, 'example' => 'edRtShc57WGXdt8TlPbr****'], ], [ - 'name' => 'PageSize', + 'name' => 'RegionId', 'in' => 'query', + 'schema' => ['description' => '定时任务所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '分页查询时设置的每页行数,最大值:50。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '50', - 'example' => '50', - 'default' => '10', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + 'title' => '删除一个定时任务', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteScheduledTask', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + ], + ], + 'DescribeAlarms' => [ + 'summary' => '调用API DescribeAlarms查询报警任务信息,及时了解已有报警任务的配置和监控项数据的变化趋势,帮助您实时发现系统资源异常,确保系统的稳定性和可靠性。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '125355', + '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-bp17pelvl720x3v7****', - ], + 'schema' => ['description' => '报警任务关联的伸缩组的ID。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'ScalingConfigurationIds', + 'name' => 'AlarmTaskId', '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, - 'maxItems' => 10, - ], + 'schema' => ['description' => '报警任务ID。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****'], ], [ - 'name' => 'ScalingConfigurationNames', + 'name' => 'State', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '待查询伸缩配置的名称。'."\n" - ."\n" - .'查询结果会忽略失效的伸缩配置名称,并且不报错。', - 'type' => 'array', - 'items' => [ - 'description' => '待查询伸缩配置的名称。'."\n" - ."\n" - .'查询结果会忽略失效的伸缩配置名称,并且不报错。', - 'type' => 'string', - 'required' => false, - 'example' => 'scalingcon**** '."\n", - ], - 'required' => false, - 'maxItems' => 10, - ], + '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:使用上报到云监控的自定义指标。'."\n" + .'- hybrid:使用企业云监控的指标。', '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' => [ - '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' => [ - 'description' => '伸缩配置信息的集合。', + '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' => [ + 'description' => '报警任务的列表。', 'type' => 'array', 'items' => [ - 'description' => '伸缩配置信息的集合。', + '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,则由阿里云自动选择专有宿主机放置实例。'."\n" - ."\n" - .'默认值:default。', - 'type' => 'string', - 'example' => 'default', - ], - 'SystemDiskSize' => [ - 'description' => '系统盘的磁盘大小。单位为GiB。'."\n" - ."\n", - '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实例的自定义数据。'."\n" - ."\n", - 'type' => 'string', - 'example' => 'echo hello ecs! '."\n", - ], - '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接口查询专有宿主机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" - ."\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查询可用的RAM角色。', - '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获取可用区列表。', - '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_2014****.vhd '."\n", - ], - 'ScalingConfigurationId' => [ - 'description' => '伸缩配置的ID。'."\n" - ."\n", - 'type' => 'string', - 'example' => 'asc-bp1ezrfgoyn5kijl****', - ], - 'CreditSpecification' => [ - 'description' => '突发性能实例的运行模式。可能值:'."\n" - .'- Standard:标准模式,实例性能请参见[什么是突发性能实例](~~59977~~)下的性能约束模式章节。'."\n" - .'- Unlimited:无性能约束模式,实例性能请参见[什么是突发性能实例](~~59977~~)下的无性能约束模式章节。', - 'type' => 'string', - 'example' => 'Standard', - ], - 'SpotInterruptionBehavior' => [ - 'description' => '抢占实例中断模式。', - 'type' => 'string', - 'example' => 'Terminate', - ], - 'CustomPriorities' => [ - 'description' => 'ECS实例规格+交换机的自定义优先级。'."\n" - .'>仅在伸缩组的扩缩容策略为优先级策略时有效。>'."\n" - ."\n" - .'当无法根据优先级较高的实例规格+交换机创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格+交换机组合来创建实例。'."\n" - ."\n" - .'> 如果仅指定了部分实例规格+交换机的自定义优先级,则未指定的部分优先级低于指定的部分,且未指定部分仍会依次按照伸缩组的交换机顺序、伸缩配置的实例规格顺序确定优先级。'."\n" - .'> - 例如:伸缩组的交换机顺序为vsw1、vsw2,伸缩配置的实例规格顺序为type1、type2,自定义优先级顺序为["vsw2+type2", "vsw1+type2"],则最终优先级为:"vsw2+type2" > "vsw1+type2" > "vsw1+type1" > "vsw2+type1"', + '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" + ."\n" + .'- system:使用云监控系统指标。'."\n" + .'- custom:使用上报到云监控的自定义指标。'."\n" + .'- hybrid:使用企业云监控的指标。', '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' => [ + 'description' => '监控项关联的维度信息。', 'type' => 'array', 'items' => [ + 'description' => '监控项关联的维度信息。', 'type' => 'object', 'properties' => [ - 'InstanceType' => [ - 'description' => 'ECS 实例的实例规格。', - 'type' => 'string', - 'example' => 'ecs.c6a.4xlarge', - ], - 'VswitchId' => [ - 'description' => '虚拟交换机的ID。', - 'type' => 'string', - 'example' => 'vsw-bp14zolna43z266bq****'."\n", - ], + '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'], ], ], ], - 'DataDisks' => [ - 'description' => '数据盘信息的集合。', + 'AlarmActions' => [ + '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:不加密。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'string', - 'example' => 'false', - ], - 'Categories' => [ - '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" - .'更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - ], - ], - ], - 'Tags' => [ - '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', - ], - ], - ], + 'items' => ['description' => '报警任务关联伸缩规则的唯一标识符的列表。', 'type' => 'string', 'example' => 'ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp163l21e07uh****'], ], - 'SpotPriceLimits' => [ - 'description' => '抢占式实例信息的集合。', + 'Expressions' => [ + 'description' => '多指标报警规则的相关信息。', 'type' => 'array', 'items' => [ - 'description' => '抢占式实例信息的集合。', + 'description' => '多指标报警规则的相关信息。', 'type' => 'object', 'properties' => [ - 'InstanceType' => [ - 'description' => '抢占式实例的实例规格。', - 'type' => 'string', - 'example' => 'ecs.g6.large '."\n", - ], - 'PriceLimit' => [ - 'description' => '抢占式实例对应的出价。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.125 '."\n", - ], + '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" + .'- 监控项统计值小于阈值。取值:<。', 'type' => 'string', 'example' => '>='], + 'Period' => ['description' => '多指标报警规则中统计监控项数据的周期,单位为秒。可能值:'."\n" + ."\n" + .'- 15。'."\n" + .'- 60。'."\n" + .'- 120。'."\n" + .'- 300。'."\n" + .'- 900。'."\n" + ."\n" + .'>仅当监控ECS类型伸缩组时,使用云监控(Agent开头的监控项)客户端采集的监控项指标,才可以选择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'], ], ], ], - 'InstancePatternInfos' => [ - 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。'."\n" - ."\n", + 'ExpressionsLogicOperator' => ['description' => '多指标报警条件之间的关系。可能值:'."\n" + .'- `&&`:当所有监控指标都符合报警条件时,才能触发报警。即当多指标报警规则下的表达式均为`true`时,才能触发报警。'."\n" + .'- `||`:如果其中一个指标符合报警条件,即可触发报警。', 'type' => 'string', 'example' => '&&'], + 'HybridMonitorNamespace' => ['description' => '企业云监控指标仓库id。'."\n" + ."\n" + .'管理指标仓库,请参见[管理指标仓库](~~217606~~)。', 'type' => 'string', 'example' => 'aliyun-test'], + 'HybridMetrics' => [ + 'description' => '企业云监控指标设置。如何设置,请参见[使用公式运算自定义目标追踪规则](~~2852162~~)。', 'type' => 'array', 'items' => [ - 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。', 'type' => 'object', 'properties' => [ - 'MaxPrice' => [ - 'description' => '按量付费实例或者抢占式实例可接受的每小时最高价格。'."\n" - ."\n", - 'type' => 'number', - 'format' => 'float', - 'example' => '2', - ], - 'Cores' => [ - 'description' => '实例规格的vCPU内核数目。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'Memory' => [ - 'description' => '实例规格的内存大小,单位为GiB。'."\n" - ."\n", - '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' => [ - 'description' => '实例规格所属的架构类型。可能值:'."\n" - ."\n" - .'- X86:X86计算。'."\n" - .'- Heterogeneous:异构计算,例如GPU或FPGA等。'."\n" - .'- BareMental:弹性裸金属服务器。'."\n" - .'- Arm:Arm计算。', - 'type' => 'array', - 'items' => [ - 'description' => '实例规格所属的架构类型。可能值:'."\n" - ."\n" - .'- X86:X86计算。'."\n" - .'- Heterogeneous:异构计算,例如GPU或FPGA等。'."\n" - .'- BareMental:弹性裸金属服务器。'."\n" - .'- Arm:Arm计算。', - 'type' => 'string', - 'example' => 'X86', - ], - ], - 'BurstablePerformance' => [ - 'description' => '是否为性能突发实例规格。可能值:'."\n" - ."\n" - .'- Exclude:不包含性能突发实例规格。'."\n" - .'- Include:包含性能突发实例规格。'."\n" - .'- Required:只包含性能突发实例规格。', - 'type' => 'string', - 'example' => 'Include', - ], - 'ExcludedInstanceTypes' => [ - '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' => [ - '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" - ."\n" - .'> MaximumCpuCoreCount不支持超过MinimumCpuCoreCount的4倍。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4', - ], - 'GpuSpecs' => [ - 'description' => 'GPU类型。', - 'type' => 'array', - 'items' => [ - 'description' => 'GPU类型。', - 'type' => 'string', - 'example' => 'NVIDIA V100', - ], - ], - 'InstanceCategories' => [ - 'description' => '实例分类。可能值:'."\n" - ."\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表示可以设置多个实例分类,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' => [ - 'description' => '实例规格的CPU架构。可能值:'."\n" - ."\n" - .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n" - ."\n" - .'- X86。'."\n" - .'- ARM。', - 'type' => 'array', - 'items' => [ - 'description' => '实例的CPU架构。可能值:'."\n" - ."\n" - .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n" - ."\n" - .'- X86。'."\n" - .'- ARM。', - 'type' => 'string', - 'example' => 'X86', - ], - ], - 'PhysicalProcessorModels' => [ - 'description' => '实例的处理器型号。N表示可以设置多个处理器型号,N的取值范围:1~10。', + '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' => [ + 'description' => '指标纬度。用于指定指标监控的资源。', 'type' => 'array', 'items' => [ - 'description' => '实例的处理器型号。N表示可以设置多个处理器型号,N的取值范围:1~10。', - 'type' => 'string', - 'example' => 'Intel Xeon(Ice Lake) Platinum 8369B', + 'type' => 'object', + 'properties' => [ + 'DimensionKey' => ['description' => '指标维度key。', 'type' => 'string', 'example' => 'queue'], + 'DimensionValue' => ['description' => '指标维度value。', 'type' => 'string', 'example' => 'testQueue'], + ], ], ], - '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' => [ - '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' => [ - 'description' => '对应指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。', - 'type' => 'array', - 'items' => [ - 'description' => '对应指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4', - ], - ], - 'InstanceTypes' => [ - 'description' => 'ECS实例的实例规格的集合。', - 'type' => 'array', - 'items' => [ - 'description' => 'ECS实例的实例规格的集合。'."\n" - ."\n", - 'type' => 'string', - 'example' => 'ecs.g6.large', - ], - ], - 'SecurityGroupIds' => [ - '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', - ], - ], - ], - 'SystemDiskEncrypted' => [ - 'description' => '系统盘是否加密。可能值:'."\n" - ."\n" - .'- true:加密。'."\n" - ."\n" - .'- false:不加密。'."\n" - ."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'SystemDiskKMSKeyId' => [ - 'description' => '系统盘使用的KMS密钥ID。'."\n" - ."\n", - 'type' => 'string', - 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40**** '."\n", - ], - 'SystemDiskEncryptAlgorithm' => [ - 'description' => '系统盘采用的加密算法。可能值:'."\n" - ."\n" - .'- AES-256。'."\n" - ."\n" - .'- SM4-128。', - 'type' => 'string', - 'example' => 'AES-256 '."\n", - ], - 'SystemDiskProvisionedIops' => [ - 'description' => '系统盘预配置的IOPS(Input/Output Operations Per Second)性能指标。'."\n" - ."\n" - .'> IOPS(Input/Output Operations Per Second)指每秒能处理的I/O个数,表示块存储处理读写(输出/输入)的能力,单位为次。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100', - ], - 'SystemDiskBurstingEnabled' => [ - 'description' => '系统盘是否开启Burst(性能突发)。可能值:'."\n" - ."\n" - .'- true:开启。'."\n" - .'- false:未开启。'."\n" - .' '."\n" - .'> 当SystemDisk.Category取值为cloud_auto时才支持设置该参数。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'ImageOptionsLoginAsNonRoot' => [ - 'description' => 'ECS实例是否使用ecs-user用户登录。可能值:'."\n" - ."\n" - .'- true:是。'."\n" - .'- false:否。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'DeletionProtection' => [ - 'description' => '实例释放保护属性,指定是否支持通过ECS控制台或API(DeleteInstance)直接释放实例。可能值:'."\n" - ."\n" - .'- true:开启实例释放保护,无法通过ECS控制台或者或API(DeleteInstance)直接释放实例。'."\n" - ."\n" - .'- false:关闭实例释放保护,可以通过ECS控制台或者或API(DeleteInstance)直接释放实例。'."\n" - ."\n" - .'>该属性仅适用于按量付费实例,防止弹性伸缩扩容的实例被误删除,不影响正常的缩容活动,开启实例释放保护的实例可以被缩容活动释放掉。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'StorageSetId' => [ - 'description' => '存储集ID。', - 'type' => 'string', - 'example' => 'ss-bp67acfmxazb4p****', - ], - 'StorageSetPartitionNumber' => [ - 'description' => '存储集中的最大分区数量。取值为大于等于2的整数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'NetworkInterfaces' => [ - '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' => [ - 'description' => '弹性网卡所属的一个或多个安全组ID。', - 'type' => 'array', - 'items' => [ - 'description' => '弹性网卡所属的一个或多个安全组ID。', - 'type' => 'string', - 'example' => 'sg-2vc3e1v7xxxxx', - ], - ], - 'SecondaryPrivateIpAddressCount' => [ - 'description' => '为网卡指定辅助私网 IPv4 地址数量。取值范围:1~49。'."\n" - ."\n" - .'- 取值不能超过该实例规格对于ip 数量的限制。更多信息,请参见[实例规格族](https://help.aliyun.com/zh/ecs/user-guide/overview-of-instance-families)。'."\n" - ."\n" - .'- NetworkInterface.N.SecondaryPrivateIpAddressCount用于为网卡分配辅助私网IPv4 地址数量(不包含该网卡的主私网 IP),系统将从该网卡所在虚拟交换机(NetworkInterface.N.VSwitchId)的可用网段中随机分配。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - ], - ], - ], - 'DedicatedHostClusterId' => [ - 'description' => '专有宿主机集群ID。', - 'type' => 'string', - 'example' => 'dc-zm04u8r3lohsq****', - ], - 'PasswordSetted' => [ - 'description' => '是否设置实例密码。可能值:'."\n" - ."\n" - .'- true:设置实例密码'."\n" - .'- false:不设置实例密码', - '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" - .'- 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:不使用资源池策略。', - 'type' => 'string', - 'example' => 'PrivatePoolFirst', - ], - 'PrivatePoolIds' => [ - 'description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。', - 'type' => 'array', - 'items' => [ - 'description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。', - 'type' => 'string', - 'example' => 'eap-bp67acfmxazb4****', - ], ], ], ], + '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)'], ], ], ], @@ -10163,4745 +6173,1023 @@ ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 1,\\n \\"ScalingConfigurations\\": [\\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!\\\\t\\\\n\\",\\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_2014****.vhd\\\\t\\\\n\\",\\n \\"ScalingConfigurationId\\": \\"asc-bp1ezrfgoyn5kijl****\\",\\n \\"CreditSpecification\\": \\"Standard\\",\\n \\"SpotInterruptionBehavior\\": \\"Terminate\\",\\n \\"CustomPriorities\\": [\\n {\\n \\"InstanceType\\": \\"ecs.c6a.4xlarge\\",\\n \\"VswitchId\\": \\"vsw-bp14zolna43z266bq****\\\\n\\"\\n }\\n ],\\n \\"DataDisks\\": [\\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 \\"cloud_essd\\"\\n ],\\n \\"ProvisionedIops\\": 100,\\n \\"BurstingEnabled\\": false\\n }\\n ],\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"binary\\",\\n \\"Value\\": \\"alterTable\\"\\n }\\n ],\\n \\"SpotPriceLimits\\": [\\n {\\n \\"InstanceType\\": \\"ecs.g6.large\\\\t\\\\n\\",\\n \\"PriceLimit\\": 0.125\\n }\\n ],\\n \\"InstancePatternInfos\\": [\\n {\\n \\"MaxPrice\\": 2,\\n \\"Cores\\": 2,\\n \\"Memory\\": 4,\\n \\"InstanceFamilyLevel\\": \\"EnterpriseLevel\\",\\n \\"Architectures\\": [\\n \\"X86\\"\\n ],\\n \\"BurstablePerformance\\": \\"Include\\",\\n \\"ExcludedInstanceTypes\\": [\\n \\"ecs.n1.small/ecs.n1.*/*7*\\"\\n ],\\n \\"InstanceTypeFamilies\\": [\\n \\"ecs.g6\\"\\n ],\\n \\"MinimumCpuCoreCount\\": 2,\\n \\"MaximumCpuCoreCount\\": 4,\\n \\"GpuSpecs\\": [\\n \\"NVIDIA V100\\"\\n ],\\n \\"InstanceCategories\\": [\\n \\"Compute-optimized with GPU\\"\\n ],\\n \\"CpuArchitectures\\": [\\n \\"X86\\"\\n ],\\n \\"PhysicalProcessorModels\\": [\\n \\"Intel Xeon(Ice Lake) Platinum 8369B\\"\\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 \\"SystemDiskCategories\\": [\\n \\"cloud\\"\\n ],\\n \\"WeightedCapacities\\": [\\n 4\\n ],\\n \\"InstanceTypes\\": [\\n \\"ecs.g6.large\\"\\n ],\\n \\"SecurityGroupIds\\": [\\n \\"sg-bp18kz60mefs****\\"\\n ],\\n \\"SchedulerOptions\\": {\\n \\"ManagedPrivateSpaceId\\": \\"testManagedPrivateSpaceId\\"\\n },\\n \\"SystemDiskEncrypted\\": false,\\n \\"SystemDiskKMSKeyId\\": \\"0e478b7a-4262-4802-b8cb-00d3fb40****\\\\t\\\\n\\",\\n \\"SystemDiskEncryptAlgorithm\\": \\"AES-256\\\\t\\\\n\\",\\n \\"SystemDiskProvisionedIops\\": 100,\\n \\"SystemDiskBurstingEnabled\\": false,\\n \\"ImageOptionsLoginAsNonRoot\\": false,\\n \\"DeletionProtection\\": false,\\n \\"StorageSetId\\": \\"ss-bp67acfmxazb4p****\\",\\n \\"StorageSetPartitionNumber\\": 2,\\n \\"NetworkInterfaces\\": [\\n {\\n \\"InstanceType\\": \\"Primary\\",\\n \\"NetworkInterfaceTrafficMode\\": \\"HighPerformance\\",\\n \\"Ipv6AddressCount\\": 1,\\n \\"SecurityGroupIds\\": [\\n \\"sg-2vc3e1v7xxxxx\\"\\n ],\\n \\"SecondaryPrivateIpAddressCount\\": 2\\n }\\n ],\\n \\"DedicatedHostClusterId\\": \\"dc-zm04u8r3lohsq****\\",\\n \\"PasswordSetted\\": false,\\n \\"SecurityOptions\\": {\\n \\"ConfidentialComputingMode\\": \\"TDX\\"\\n },\\n \\"HttpEndpoint\\": \\"enabled\\",\\n \\"HttpTokens\\": \\"optional\\",\\n \\"ResourcePoolOptions\\": {\\n \\"Strategy\\": \\"PrivatePoolFirst\\",\\n \\"PrivatePoolIds\\": [\\n \\"eap-bp67acfmxazb4****\\"\\n ]\\n }\\n }\\n ]\\n}","type":"json"}]', - 'title' => '查询ECS类型伸缩配置信息', - ], - 'ModifyScalingConfiguration' => [ - 'summary' => '如果当前的伸缩配置不满足业务需求,您可以通过调用API ModifyScalingConfiguration修改ECS类型的伸缩配置(即待扩容的ECS实例模板)。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '查询报警任务的信息', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeAlarms', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"871C7C53-34A4-45AA-8C14-4B72FA6A****\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"AlarmList\\": [\\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 {\\n \\"DimensionKey\\": \\"device\\",\\n \\"DimensionValue\\": \\"eth0\\"\\n }\\n ],\\n \\"AlarmActions\\": [\\n \\"ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp163l21e07uh****\\"\\n ],\\n \\"Expressions\\": [\\n {\\n \\"MetricName\\": \\"CpuUtilization\\",\\n \\"ComparisonOperator\\": \\">=\\",\\n \\"Period\\": 900,\\n \\"Statistics\\": \\"Average\\",\\n \\"Threshold\\": 40\\n }\\n ],\\n \\"ExpressionsLogicOperator\\": \\"&&\\",\\n \\"HybridMonitorNamespace\\": \\"aliyun-test\\",\\n \\"HybridMetrics\\": [\\n {\\n \\"Id\\": \\"a\\",\\n \\"Expression\\": \\"(a+b)/2\\",\\n \\"MetricName\\": \\"AliyunSmq_NumberOfMessagesVisible\\",\\n \\"Statistic\\": \\"Average\\",\\n \\"Dimensions\\": [\\n {\\n \\"DimensionKey\\": \\"queue\\",\\n \\"DimensionValue\\": \\"testQueue\\"\\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}","type":"json"}]', + ], + 'DescribeAlertConfiguration' => [ + 'summary' => '调用DescribeAlertConfiguration接口,并指定伸缩组的ID、地域的ID,以查询伸缩组中需要发送短信、站内信和邮件通知的伸缩活动状态,例如伸缩活动执行成功、失败、被拒绝。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '125383', - 'abilityTreeNodes' => [ - 'FEATUREessT4M3WE', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '208814', + 'abilityTreeNodes' => ['FEATUREessFY8KDA'], ], 'parameters' => [ [ - 'name' => 'ScalingConfigurationId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '待修改伸缩配置的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'asc-bp16har3jpj6fjbx****', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'IoOptimized', + 'name' => 'RegionId', 'in' => 'query', + 'schema' => ['description' => '伸缩组所属地域的ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '是否为I/O优化实例。可能值:'."\n" - .'- none:非I/O优化实例。'."\n" - .'- optimized:I/O优化实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'none', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'ScaleStatuses' => [ + 'description' => '伸缩组中设置需要发送短信、站内信和邮件通知的伸缩活动类型。', + 'type' => 'array', + 'items' => ['description' => '伸缩组开启需要发送短信、站内信和邮件通知的伸缩活动类型。可能值:'."\n" + .'- ScaleSuccessful:伸缩活动执行成功时发送通知。'."\n" + .'- ScaleRejected:伸缩活动被拒绝时发送通知。'."\n" + .'- ScaleFailed:伸缩活动执行失败时发送通知。', 'type' => 'string', 'example' => 'ScaleSuccessful'], + ], + ], ], ], - [ - 'name' => 'SpotStrategy', - 'in' => 'query', - 'schema' => [ - 'description' => '后付费实例的抢占策略。可能值:'."\n" - .' '."\n" - .'- NoSpot:普通的按量付费实例。'."\n" - .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n" - .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。', - 'type' => 'string', - 'required' => false, - 'example' => 'NoSpot', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScaleStatuses\\": [\\n \\"ScaleSuccessful\\"\\n ]\\n}","type":"json"}]', + 'title' => '查询伸缩组中需要发送消息的伸缩活动状态', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeAlertConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + ], + 'DescribeCandidateInstanceType' => [ + 'summary' => '查询备选规格', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'ScalingConfigurationName', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩配置的名称,2~64个英文或中文字符,以数字、大小写字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。'."\n" - ."\n" - .'在同一地域下同一伸缩组内伸缩配置名称唯一。如果您没有指定该参数,则默认使用伸缩配置的ID。 ', - 'type' => 'string', - 'required' => false, - 'example' => 'test-modify', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREessU7F1S4'], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ [ - 'name' => 'InstanceName', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '使用本伸缩配置自动创建的ECS实例的名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'inst****', - ], + 'schema' => ['description' => '伸缩组所属地域的ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], ], [ - 'name' => 'HostName', + 'name' => 'InstanceTypes', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '云服务器ECS的主机名。半角句号(.)或短划线(-)不能作为首尾字符,不能连续使用半角句号(.)或短划线(-)。另外,不同类型实例的命名要求如下: '."\n" - ."\n" - .'- Windows实例:主机名长度为2~15个字符,可以包含大小写字母、数字和短划线(-)。不能包含半角句号(.),不能全是数字。 '."\n" - .'- 其他类型实例(Linux等):主机名长度为2~64个字符,可以包含多个半角句号(.)。两个半角句号(.)之间为一段,每段可以包含大小写字母、数字和短划线(-)。', - 'type' => 'string', + 'description' => '当前已选的 ECS 实例规格列表。', + 'type' => 'array', + 'items' => ['description' => '当前已选的 ECS 实例规格列表。', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large'], 'required' => false, - 'example' => 'hos****', + 'maxItems' => 20, ], ], [ - 'name' => 'ImageId', + 'name' => 'ZoneIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '镜像文件ID,自动创建实例时使用的镜像资源。'."\n" - ."\n" - .'> 如果伸缩配置之前使用的镜像包括系统盘和数据盘,修改此镜像后,原数据盘信息会被清除。', - 'type' => 'string', + 'description' => '当前已选的可用区列表。', + 'type' => 'array', + 'items' => ['description' => '可用区 ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-b'], 'required' => false, - 'example' => 'centos6u5_64_20G_aliaegis_2014****.vhd', + 'maxItems' => 20, ], ], [ - 'name' => 'ImageName', + 'name' => 'AllowDifferentGeneration', 'in' => 'query', - 'schema' => [ - 'description' => '镜像文件名称,同一个地域内镜像名称唯一。如果设置了ImageId,ImageName将被忽略。'."\n" - ."\n\n" - .'不支持通过ImageName设置镜像市场镜像。', - 'type' => 'string', - 'required' => false, - 'example' => 'suse11sp3_64_20G_aliaegis_2015****.vhd', - ], + 'schema' => ['description' => '是否允许补充其他代系的实例规格。'."\n" + ."\n" + .'- 例如当前规格为ecs.c7.large,开启后可备选 ecs.c6.large 和 ecs.c8.large 等规格。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'Cpu', + 'name' => 'AllowCrossAz', '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', - ], + 'schema' => ['description' => '是否允许补充其他可用区的交换机。'."\n" + .'> 规格不变,仅备选新的可用区。当伸缩组由于库存等问题导致所有已选可用区均无法扩容时,会根据此配置自动增加新的可用区交换机到伸缩组中。'."\n" + .'> 例如,伸缩组配置了cn-hangzhou-h和cn-hangzhou-g可用区,当两个可用区均无法扩容时ESS可能会根据实时库存状况创建一个cn-hangzhou-k的交换机并添加到伸缩组中。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'Memory', + 'name' => 'MaxPrice', 'in' => 'query', - 'schema' => [ - 'description' => '内存大小。单位:GiB。'."\n" - ."\n" - .'同时指定CPU和Memory可以定义实例规格范围,例如,CPU=2且Memory=16可以定义配置为2 vCPU和16 GiB的所有实例规格。弹性伸缩会结合I/O优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。'."\n" - ."\n" - .'>该区间配置效果仅在成本优化模式下且伸缩配置未设置实例规格时生效。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '16', - ], + 'schema' => ['description' => '备选实例规格的价格上限。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '2'], ], [ - 'name' => 'InternetChargeType', + 'name' => 'SpotStrategy', 'in' => 'query', - 'schema' => [ - 'description' => '网络计费类型。可能值:'."\n" - ."\n" - .'- PayByBandwidth:按带宽计费。此时InternetMaxBandwidthOut即为所选的固定带宽值。 '."\n" - .'- PayByTraffic:按流量计费。此时InternetMaxBandwidthOut只是一个带宽上限,计费以实际产生的网络流量为依据。', - 'type' => 'string', - 'required' => false, - 'example' => 'PayByBandwidth', - ], + 'schema' => ['description' => '后付费实例的抢占策略。取值范围:'."\n" + ."\n" + .'- NoSpot:普通的按量付费实例。'."\n" + .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n" + .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。'."\n" + ."\n" + .'默认值:NoSpot。', 'type' => 'string', 'required' => false, 'example' => 'NoSpot'], ], [ - 'name' => 'InternetMaxBandwidthOut', + 'name' => 'SystemDiskCategories', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '公网出带宽最大值,单位为 Mbit/s。取值范围:0~100。'."\n" + 'description' => '系统盘的多磁盘类型。第一个磁盘类型优先级最高,其他磁盘类型的优先级依次递减。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。可能值:cloud:普通云盘。cloud_efficiency:高效云盘。cloud_ssd:SSD云盘。cloud_essd:ESSD云盘。', + 'type' => 'array', + 'items' => ['description' => '系统盘的多磁盘类型。可能值:'."\n" + .'- cloud:普通云盘。'."\n" + .'- cloud_efficiency:高效云盘。'."\n" + .'- cloud_ssd:SSD云盘。'."\n" + .'- cloud_essd:ESSD云盘。'."\n" ."\n" - .'默认值:0。', - 'type' => 'integer', - 'format' => 'int32', + .'> 指定本参数时,不允许同时指定`SystemDisk.Category`。', 'type' => 'string', 'required' => false, 'example' => 'cloud'], 'required' => false, - 'example' => '10', + 'maxItems' => 100, ], ], [ - 'name' => 'SystemDisk.Category', + 'name' => 'DataDiskCategories', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '系统盘的磁盘种类。可能值:'."\n" + 'description' => '数据盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。可能值:cloud:普通云盘。cloud_efficiency:高效云盘。cloud_ssd:SSD云盘。cloud_essd:ESSD云盘。ephemeral_ssd:本地SSD盘。', + 'type' => 'array', + 'items' => ['description' => '数据盘类型。可能值:'."\n" ."\n" .'- cloud:普通云盘。'."\n" .'- cloud_efficiency:高效云盘。'."\n" .'- cloud_ssd:SSD云盘。'."\n" .'- cloud_essd:ESSD云盘。'."\n" - .'- ephemeral_ssd:本地SSD盘。'."\n" - ."\n" - .'该参数不能与`SystemDiskCategories`同时指定。当该参数与`SystemDiskCategories`都未指定时,该参数有默认值。InstanceType为系列I的实例规格且实例属于非I/O优化实例时,默认值:cloud。否则,默认值:cloud_efficiency。', - 'type' => 'string', + .'- ephemeral_ssd:本地SSD盘。', 'type' => 'string', 'required' => false, 'example' => 'cloud_essd'], 'required' => false, - 'example' => 'cloud_efficiency', + 'maxItems' => 100, ], ], [ - 'name' => 'SystemDisk.Size', + 'name' => 'ImageId', '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}。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '50', - ], + 'schema' => ['description' => '镜像文件ID,自动创建实例时使用的镜像资源。'."\n" + ."\n" + .'> 如果伸缩配置之前使用的镜像包括系统盘和数据盘,修改此镜像后,原数据盘信息会被清除。', 'type' => 'string', 'required' => false, 'example' => 'centos6u5_64_20G_aliaegis****.vhd'], ], [ - 'name' => 'SystemDisk.DiskName', + 'name' => 'ImageName', 'in' => 'query', - 'schema' => [ - 'description' => '系统盘的名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以http://和https://开头。可以包含数字、半角冒号(:)、下划线(_)或者连字符(-)。默认值:空', - 'type' => 'string', - 'required' => false, - 'example' => 'cloud_ssdSystem', - ], + 'schema' => ['description' => '镜像文件名称,同一个地域内镜像名称唯一。不支持通过该参数设置镜像市场中的镜像。'."\n" + .'>该参数与`ImageId`参数作用相同,您可以根据实际情况进行二选一设置,即如果设置了`ImageId`参数,则`ImageName`参数将被忽略(非必填项)。', 'type' => 'string', 'required' => false, 'example' => 'centos6u5_64_20G_aliaegis_20140703.vhd'], ], [ - 'name' => 'SystemDisk.Description', + 'name' => 'ImageFamily', 'in' => 'query', - 'schema' => [ - 'description' => '系统盘的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。', - 'type' => 'string', - 'required' => false, - 'example' => 'Test system disk.', - ], + 'schema' => ['description' => '镜像族系名称,通过设置该参数来获取当前镜像族系内最新的可用镜像,用于创建实例。如果已经设置了参数ImageId,则不能设置该参数。'."\n" + .'> 当不指定伸缩组ID时,需要至少指定ImageId、ImageName、ImageFamily中的一个。', 'type' => 'string', 'required' => false, 'example' => 'hangzhou-daily-update'], ], [ - 'name' => 'SystemDisk.AutoSnapshotPolicyId', + 'name' => 'Ipv6AddressCount', 'in' => 'query', + 'schema' => ['description' => 'IPv6地址数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '系统盘使用的自动快照策略ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'sp-bp12m37ccmxvbmi5****', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'CandidateInstanceTypes' => [ + 'description' => '可备选的 ECS 实例规格列表。', + 'type' => 'array', + 'items' => ['description' => '可备选的 ECS 实例规格列表。', 'type' => 'string', 'example' => 'ecs.c7a.2xlarge'], + ], + 'CandidateZoneIds' => [ + 'description' => '可备选的可用区列表。', + 'type' => 'array', + 'items' => ['description' => '可备选的可用区 ID。', 'type' => 'string', 'example' => 'cn-hangzhou-k'], + ], + ], ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => '查询备选的实例规格', + 'changeSet' => [], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"CandidateInstanceTypes\\": [\\n \\"ecs.c7a.2xlarge\\"\\n ],\\n \\"CandidateZoneIds\\": [\\n \\"cn-hangzhou-k\\"\\n ]\\n}","type":"json"}]', + ], + 'DescribeDiagnoseReports' => [ + 'summary' => '查询健康诊断报告列表。', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'SystemDisk.PerformanceLevel', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '221362', + 'abilityTreeNodes' => ['FEATUREessA4Z14P'], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', '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', - ], + 'schema' => ['description' => '伸缩组所属地域的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-shenzhen'], ], [ - 'name' => 'LoadBalancerWeight', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '后端服务器的权重,取值范围:1~100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '50', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-2vcis7yglxtm*****'], ], [ - 'name' => 'UserData', + 'name' => 'ReportIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'ECS实例的自定义数据,需要以Base64方式编码,编码前的原始数据最多为32 KB。', - 'type' => 'string', + 'description' => '诊断报告ID列表。最多支持20个ID。', + 'type' => 'array', + 'items' => ['description' => '诊断报告ID。', 'type' => 'string', 'required' => false, 'example' => 'dr-j6c7wvdzk5103bkm8cx4'], 'required' => false, - 'example' => 'ZWNobyBoZWxsbyBlY3Mh', + 'maxItems' => 20, + 'minItems' => 0, ], ], [ - '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接口查询可用的RAM角色。创建RAM角色的方法,请参见API CreateRole。', - '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', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => 'ECS实例所属的HPC集群的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'hpc-clusterid', - ], + 'schema' => ['description' => '当前页码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'InstanceDescription', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => 'ECS实例的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。', - 'type' => 'string', - 'required' => false, - 'example' => 'Test instance.', - ], + 'schema' => ['description' => '每页行数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], - [ - 'name' => 'Ipv6AddressCount', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '为弹性网卡指定随机生成的IPv6地址数量。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'ECA123C6-107B-5F70-A177-740A7224C996'], + 'Reports' => [ + 'description' => '诊断报告列表。', + 'type' => 'array', + 'items' => [ + 'description' => '报告详情。', + 'type' => 'object', + 'properties' => [ + 'UserId' => ['description' => '伸缩组的用户ID。', 'type' => 'string', 'example' => '161456884*******'], + 'RegionId' => ['description' => '地域ID。', 'type' => 'string', 'example' => 'cn-qingdao'], + 'ScalingGroupId' => ['description' => '伸缩组ID。', 'type' => 'string', 'example' => 'asg-bp124uve5iph3*****'], + 'Details' => [ + 'description' => '诊断报告详情。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DiagnoseType' => ['description' => '诊断项类型。可能值:'."\n" + ."\n" + .'- AccountArrearage:账号欠费,检查用户账号是否欠费。'."\n" + ."\n" + .'- AccountNotEnoughBalance:账号余额不足,检查中国站用户账号余额大于等于100元。'."\n" + ."\n" + .'- ElasticStrength:库存健康度,检查伸缩组配置对应实例类型的库存健康度。'."\n" + ."\n" + .'- VSwitch:交换机状态,检查交换机是否可用,例如:是否被删除。'."\n" + ."\n" + .'- SecurityGroup:安全组状态,检查安全组是否可用,例如:是否被删除。'."\n" + ."\n" + .'- KeyPair: KeyPair状态,检查密钥对是否可用,例如:是否被删除。'."\n" + ."\n" + .'- SlbBackendServerQuota: 伸缩组下SLB实例挂载实例数,检查SLB默认分组和虚拟服务器组后端挂载的ECS数量是否超过配额。'."\n" + ."\n" + .'- AlbBackendServerQuota:伸缩组下ALB实例挂载实例数,检查ALB分组后端挂载的ECS数量是否超过配额。'."\n" + ."\n" + .'- NlbBackendServerQuota:伸缩组下NLB实例挂载实例数,检查NLB分组后端挂载的ECS数量是否超过配额。', 'type' => 'string', 'example' => 'AccountArrearage'], + 'ResourceId' => ['description' => '资源ID。', 'type' => 'string', 'example' => 'sg-280ih****'], + 'Status' => ['description' => '诊断项的诊断状态。可能有以下值:'."\n" + ."\n" + .'- Normal: 诊断结果正常。'."\n" + ."\n" + .'- Warn:诊断结果警告。'."\n" + ."\n" + .'- Critical:诊断结果严重。', 'type' => 'string', 'example' => 'Normal'], + 'ErrorCode' => ['description' => '诊断项的错误码。可能得取值:'."\n" + ."\n" + .'- VSwitchIdNotFound: 交换机不存在。'."\n" + ."\n" + .'- SecurityGroupNotFound:安全组不存在。'."\n" + ."\n" + .'- KeyPairNotFound:KeyPair不存在。'."\n" + ."\n" + .'- SlbBackendServerQuotaExceeded:SLB默认分组和虚拟服务器组后端挂载的ECS数量超过配额。'."\n" + ."\n" + .'- AlbBackendServerQuotaExceeded: ALB分组后端挂载的ECS数量超过配额。'."\n" + ."\n" + .'- NlbBackendServerQuotaExceeded: NLB分组后端挂载的ECS数量超过配额。'."\n" + ."\n" + .'- AccountArrearage: 账号欠费。'."\n" + ."\n" + .'- AccountNotEnoughBalance:账号余额不足(小于100元)。'."\n" + ."\n" + .'- ElasticStrengthAlert:库存健康度差。', 'type' => 'string', 'example' => 'VSwitchIdNotFound'], + ], + ], + ], + 'ReportId' => ['description' => '诊断报告ID。', 'type' => 'string', 'example' => 'dr-bp14p0cjp7wvjob5l6hk'], + 'ProcessStatus' => ['description' => '诊断报告状态,可能得取值:'."\n" + ."\n" + .'- Processing: 进行中。'."\n" + ."\n" + .'- Finished:已完成。', 'type' => 'string', 'example' => 'Finished'], + 'DiagnoseStatus' => ['description' => '诊断状态,结果为诊断详情列表中最严重的项。可能有以下值:'."\n" + ."\n" + .'- Normal: 诊断结果正常。'."\n" + ."\n" + .'- Warn:诊断结果警告。'."\n" + ."\n" + .'- Critical:诊断结果严重。', 'type' => 'string', 'example' => 'Normal'], + 'CreationTime' => ['description' => '诊断报告创建时间。', 'type' => 'string', 'example' => '2024-08-23T02:22:30Z'], + ], + ], + ], + 'PageNumber' => ['description' => '查询起始页数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['description' => '每页行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'TotalCount' => ['description' => '诊断报告总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], + ], ], ], - [ - 'name' => 'CreditSpecification', - 'in' => 'query', - 'schema' => [ - 'description' => '修改突发性能实例的运行模式。可能值:'."\n" - ."\n" - .'- Standard:标准模式,实例性能请参见[什么是突发性能实例](~~59977~~)下的性能约束模式章节。'."\n" - ."\n" - .'- Unlimited:无性能约束模式,实例性能请参见[什么是突发性能实例](~~59977~~)下的无性能约束模式章节。', - 'type' => 'string', - 'required' => false, - 'example' => 'Standard', + ], + 'title' => '查询诊断报告', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeDiagnoseReports', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"ECA123C6-107B-5F70-A177-740A7224C996\\",\\n \\"Reports\\": [\\n {\\n \\"UserId\\": \\"161456884*******\\",\\n \\"RegionId\\": \\"cn-qingdao\\",\\n \\"ScalingGroupId\\": \\"asg-bp124uve5iph3*****\\",\\n \\"Details\\": [\\n {\\n \\"DiagnoseType\\": \\"AccountArrearage\\",\\n \\"ResourceId\\": \\"sg-280ih****\\",\\n \\"Status\\": \\"Normal\\",\\n \\"ErrorCode\\": \\"VSwitchIdNotFound\\"\\n }\\n ],\\n \\"ReportId\\": \\"dr-bp14p0cjp7wvjob5l6hk\\",\\n \\"ProcessStatus\\": \\"Finished\\",\\n \\"DiagnoseStatus\\": \\"Normal\\",\\n \\"CreationTime\\": \\"2024-08-23T02:22:30Z\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 5\\n}","type":"json"}]', + ], + 'DescribeEciScalingConfigurationDetail' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'ImageFamily', - 'in' => 'query', - 'schema' => [ - 'description' => '镜像族系名称,通过设置该参数来获取当前镜像族系内最新的可用镜像,用于创建实例。如果已经设置了参数`ImageId`,则不能设置该参数。', - 'type' => 'string', - 'required' => false, - 'example' => 'hangzhou-daily-update', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '212769', + 'abilityTreeNodes' => ['FEATUREessU7F1S4'], + ], + 'parameters' => [ [ - 'name' => 'ZoneId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'ECS实例所属的可用区ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou-g', - ], + 'schema' => ['description' => '伸缩规则所属伸缩组的地域ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-beijing'], ], [ - 'name' => 'DedicatedHostId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '是否在专有宿主机上创建ECS实例。由于专有宿主机不支持创建抢占式实例,指定DedicatedHostId参数后,会自动忽略请求中的SpotStrategy和SpotPriceLimit设置。'."\n" - ."\n" - .'您可以调用DescribeDedicatedHosts API接口查询专有宿主机ID列表。', - 'type' => 'string', - 'required' => false, - 'example' => 'dh-bp67acfmxazb4p****', - ], + 'schema' => ['description' => '伸缩配置所属的伸缩组的ID。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp1ffogfdauy0jw0****'], ], [ - 'name' => 'Affinity', + 'name' => 'ScalingConfigurationId', 'in' => 'query', - 'schema' => [ - 'description' => '专有宿主机实例是否与专有宿主机关联。可能值:'."\n" - ."\n" - .'- default:实例不与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,若原专有宿主机可用资源不足,则实例被放置在自动部署资源池的其它专有宿主机上。'."\n" - ."\n" - .'- host:实例与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,仍放置在原专有宿主机上。若原专有宿主机可用资源不足,则实例重启失败。', - 'type' => 'string', - 'required' => false, - 'example' => 'default', - ], + 'schema' => ['description' => 'ECI类型伸缩组的伸缩配置ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asc-bp1ffogfdauy0nu5****'], ], [ - 'name' => 'Tenancy', + 'name' => 'OutputFormat', 'in' => 'query', 'schema' => [ - 'description' => '是否在专有宿主机上创建实例。可能值:'."\n" - ."\n" - .'- default:创建非专有宿主机实例。'."\n" - ."\n" - .'- host:创建专有宿主机实例。若您不指定DedicatedHostId,则由阿里云自动选择专有宿主机放置实例。', + 'description' => 'Output输出格式,现仅支持YAML。', 'type' => 'string', 'required' => false, - 'example' => 'default', + 'enumValueTitles' => ['YAML' => 'YAML'], + 'example' => 'YAML', ], ], - [ - 'name' => 'SchedulerOptions', - 'in' => 'query', - 'style' => 'json', + ], + 'responses' => [ + 200 => [ '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:不使用模式。实例启动将不使用私有池容量。', - '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' => 'DataDisks', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '数据盘信息的集合。', - 'type' => 'array', - 'items' => [ - 'description' => '数据盘信息的集合。', - 'type' => 'object', - 'properties' => [ - 'PerformanceLevel' => [ - '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' => 'PL1', - ], - 'AutoSnapshotPolicyId' => [ - 'description' => '数据盘使用的自动快照策略ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'sp-bp19nq9enxqkomib****', - ], - 'Encrypted' => [ - 'description' => '是否加密系统盘。可能值:'."\n" - ."\n" - .'- true:加密。'."\n" - .'- false:不加密。', - 'type' => 'string', - 'required' => false, - 'example' => 'false', - ], - 'Description' => [ - 'description' => '系统盘的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。', - 'type' => 'string', - 'required' => false, - 'example' => 'Test data disk. '."\n", - ], - 'SnapshotId' => [ - 'description' => '创建数据盘时使用的快照。指定该参数后,DataDisk.Size会被忽略,实际创建的磁盘大小为指定快照的大小。'."\n" - ."\n" - .'如果该快照创建于2013年7月15日或之前,调用会被拒绝,返回参数中会提示InvalidSnapshot.TooOld。', - 'type' => 'string', - 'required' => false, - 'example' => 's-snapshot**** '."\n", - ], - 'Categories' => [ - 'description' => '数据盘的多磁盘类型。可能值:'."\n" - .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n" - .'- cloud_efficiency:高效云盘。'."\n" - .'- cloud_ssd:SSD云盘。'."\n" - .'- cloud_essd:ESSD云盘。'."\n" - ."\n" - .'> 指定本参数时,不允许同时指定`DataDisk.Category`。', - 'type' => 'array', - 'items' => [ - 'description' => '数据盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。可能值:'."\n" - .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n" - .'- cloud_efficiency:高效云盘。'."\n" - .'- cloud_ssd:SSD云盘。'."\n" - .'- cloud_essd:ESSD云盘。'."\n" - ."\n" - .'> 指定本参数时,不允许同时指定`DataDisk.Category`。', - 'type' => 'string', - 'required' => false, - 'example' => 'cloud', - ], - 'required' => false, - 'maxItems' => 10, - ], - '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。'."\n" - ."\n" - .'指定该参数后,磁盘大小必须大于等于快照大小(快照通过SnapshotId指定)。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - ], - 'Device' => [ - 'description' => '数据盘挂载点。如果您没有指定该参数,则默认在自动创建ECS实例时由系统分配,从/dev/xvdb开始,到/dev/xvdz结束。', - 'type' => 'string', - 'required' => false, - 'example' => '/dev/xvdd', - ], - 'DiskName' => [ - 'description' => '系统盘的名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以`http://`和`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。', - 'type' => 'string', - 'required' => false, - 'example' => 'cloud_ssdData '."\n", - ], - 'Category' => [ - 'description' => '数据盘的磁盘种类。可能值:'."\n" - .'- cloud:普通云盘。随实例创建的普通云盘的DeleteWithInstance属性为true。'."\n" - .'- cloud_efficiency:高效云盘。'."\n" - .'- cloud_ssd:SSD云盘。'."\n" - .'- ephemeral_ssd:本地SSD盘。'."\n" - .'- cloud_essd:ESSD云盘。'."\n" - ."\n" - .'该参数不能与`DataDisk.Categories`同时指定。当该参数与`DataDisk.Categories`都未指定时,该参数默认值:'."\n" - ."\n" - .'- 对于I/O优化实例,默认值为cloud_efficiency。'."\n" - ."\n" - .'- 对于非I/O优化实例,默认值为cloud。', - 'type' => 'string', - 'required' => false, - 'example' => 'cloud_ssd', - ], - 'DeleteWithInstance' => [ - 'description' => '指定数据盘是否随实例释放。可能值:'."\n" - ."\n" - .'- true:释放实例时,该磁盘随实例一起释放。'."\n" - .'- false:释放实例时,该磁盘保留不释放。'."\n" - ."\n" - .'该参数只可对独立云盘设置(DataDisk.Category为cloud、cloud_efficiency、cloud_ssd、cloud_essd或者cloud_auto),否则会出现报错。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'KMSKeyId' => [ - 'description' => '数据盘对应的KMS密钥的ID。', - '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" - .'> 当`SystemDisk.Category`取值为`cloud_auto`时才支持设置该参数。'."\n" - ."\n" - .'更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 16, - ], - ], - [ - 'name' => 'SpotPriceLimits', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '抢占实例规格的相关信息。', - 'type' => 'array', - 'items' => [ - 'description' => '抢占实例规格的相关信息。', - 'type' => 'object', - 'properties' => [ - 'PriceLimit' => [ - 'description' => '抢占式实例对应的出价。SpotStrategy取值为SpotWithPriceLimit时生效。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '0.125 '."\n", - ], - 'InstanceType' => [ - 'description' => '抢占式实例的实例规格。SpotStrategy取值为SpotWithPriceLimit时生效。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.g6.large '."\n", - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 20, - ], - ], - [ - 'name' => 'InstanceTypes', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '多实例规格参数。如果使用了InstanceTypes,InstanceType将被忽略。'."\n" - ."\n" - .'当无法根据优先级较高的实例规格创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格来创建实例。', - 'type' => 'array', - 'items' => [ - 'description' => '多实例规格参数。如果使用了InstanceTypes,InstanceType将被忽略。'."\n" - ."\n" - .'当无法根据优先级较高的实例规格创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格来创建实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.g6.large', - ], - 'required' => false, - 'maxItems' => 20, - ], - ], - [ - 'name' => 'InstanceTypeOverrides', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '用于指定的实例规格相关信息。', - 'type' => 'array', - 'items' => [ - 'description' => '用于指定的实例规格相关信息。', - 'type' => 'object', - 'properties' => [ - 'InstanceType' => [ - 'description' => '当您需要指定伸缩配置中实例规格的容量时,请同时指定本参数和InstanceTypeOverride.WeightedCapacity。'."\n" - ."\n" - .'本参数用于指定实例规格。您可以指定多个本参数,结合InstanceTypeOverride.WeightedCapacity参数,扩展多实例规格支持自定义权重。'."\n" - ."\n" - .'> 指定本参数时,不允许同时指定instanceTypes。'."\n" - ."\n" - .'InstanceType的取值范围:在售的ECS实例规格。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.c5.xlarge '."\n", - ], - 'WeightedCapacity' => [ - 'description' => '当您需要伸缩组按照实例规格容量进行伸缩时,在指定LaunchTemplateOverride.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' => '所属安全组ID。', - 'type' => 'array', - 'items' => [ - 'description' => '所属安全组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'sg-bp18kz60mefs**** '."\n", - ], - 'required' => false, - 'maxItems' => 16, - ], - ], - [ - 'name' => 'InstancePatternInfos', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。', - 'type' => 'array', - 'items' => [ - 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。', - 'type' => 'object', - 'properties' => [ - 'Cores' => [ - 'description' => '智能配置模式下,实例规格的vCPU内核数目,用于筛选符合要求的实例规格范围。更多信息,请参见[实例规格族](~~25378~~)。'."\n" - ."\n" - .'请注意以下信息:'."\n" - ."\n" - .'- InstancePatternInfo参数仅适用于伸缩组的网络类型为专有网络。'."\n" - ."\n" - .'- InstancePatternInfo参数必须同时配置InstancePatternInfo.Cores和InstancePatternInfo.Memory。'."\n" - ."\n" - .'- 如果您已经通过InstanceType或InstanceTypes参数指定了实例规格,弹性伸缩优先使用您指定的实例规格扩容,当指定的实例规格无库存时,再从符合InstancePatternInfo参数值的实例规格中优先使用价格最低的实例规格扩容。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2', - ], - 'InstanceFamilyLevel' => [ - 'description' => '实例规格族级别,用于筛选符合要求的实例规格范围,当`CostOptimization`开启时生效。可能值:'."\n" - ."\n" - .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n" - .'- EnterpriseLevel:企业级。性能稳定且资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n" - .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的业务场景。更多信息,请参见[突发性能实例概述](~~59977~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'EnterpriseLevel', - ], - 'MaxPrice' => [ - 'description' => '智能配置模式下,按量付费实例或者抢占式实例可接受的每小时最高价格,用于筛选符合要求的实例规格范围。'."\n" - ."\n" - .'> SpotStrategy设置为SpotWithPriceLimit时,该参数必选。其他情况下,该参数可选。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '2', - ], - 'Memory' => [ - 'description' => '智能配置模式下,实例规格的内存大小,单位为GiB,用于筛选符合要求的实例规格范围。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '4', - ], - 'Architectures' => [ - '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" - .'- Exclude:不包含性能突发实例规格。'."\n" - .'- Include:包含性能突发实例规格。'."\n" - .'- Required:只包含性能突发实例规格。'."\n" - ."\n" - .'默认值:Include。', - 'type' => 'string', - 'required' => false, - 'example' => 'Include', - ], - 'ExcludedInstanceTypes' => [ - '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', - 'required' => false, - 'example' => 'ecs.n1.small/ecs.n1.*/*7*', - ], - 'required' => false, - 'maxItems' => 100, - ], - '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" - .'- 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" - .'- 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" - .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n" - ."\n" - .'- X86。'."\n" - .'- ARM。', - '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' => 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', - ], - '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" - .'- cloud:普通云盘。'."\n" - .'- cloud_efficiency:高效云盘。'."\n" - .'- cloud_ssd:SSD云盘。'."\n" - .'- cloud_essd:ESSD云盘。'."\n" - ."\n" - .'> 指定本参数时,不允许同时指定`SystemDisk.Category`。', - 'type' => 'array', - 'items' => [ - 'description' => '系统盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。可能值:'."\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, - '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" - .'更多信息,请参见[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" - ."\n" - .'false:否。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - ], - [ - 'name' => 'DeletionProtection', - 'in' => 'query', - 'schema' => [ - 'description' => '实例释放保护属性,指定是否支持通过ECS控制台或API(DeleteInstance)直接释放实例,防止实例被误删除。可能值:'."\n" - ."\n" - .'- true:开启实例释放保护,无法通过ECS控制台或API(DeleteInstance)直接释放实例。'."\n" - ."\n" - .'- false:关闭实例释放保护,可以通过ECS控制台或API(DeleteInstance)直接释放实例。'."\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" - ."\n" - .'> 如果仅指定了部分实例规格+交换机的自定义优先级,则未指定的部分优先级低于指定的部分,且未指定部分仍会依次按照伸缩组的交换机顺序、伸缩配置的实例规格顺序确定优先级。'."\n" - .'> - 例如:伸缩组的交换机顺序为vsw1、vsw2,伸缩配置的实例规格顺序为type1、type2,自定义优先级顺序为["vsw2+type2", "vsw1+type2"],则最终优先级为:"vsw2+type2" > "vsw1+type2" > "vsw1+type1" > "vsw2+type1"', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'InstanceType' => [ - 'description' => 'ECS实例的实例规格。'."\n" - ."\n" - .'>必须包含在伸缩配置的实例规格列表中。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.c6a.4xlarge', - ], - 'VswitchId' => [ - 'description' => '虚拟交换机的ID。'."\n" - ."\n" - .'>必须包含在伸缩组的交换机列表中。', - '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设置主网卡,同时不能设置SecurityGroupId或SecurityGroupIds参数。可能值:'."\n" - ."\n" - .'- Primary:主网卡。'."\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" - ."\n" - .'>RDMA模式的弹性网卡数量不能超过该实例规格族的限制。更多信息,请参见[实例规格族](~~25378~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'HighPerformance', - ], - 'Ipv6AddressCount' => [ - 'description' => '为主网卡指定随机生成的 IPv6 地址数量。 您需要注意:'."\n" - ."\n" - .'NetworkInterface.InstanceType取值为Primary时,设置该参数才会生效。如果NetworkInterface.InstanceType取值为Secondary或空值,则不能设置该参数。'."\n" - ."\n" - .'设置该参数后,您不能再设置Ipv6AddressCount。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - 'SecurityGroupIds' => [ - 'description' => '弹性网卡所属的一个或多个安全组 ID。', - 'type' => 'array', - 'items' => [ - 'description' => '弹性网卡所属的一个或多个安全组 ID。'."\n" - .'您需要注意:'."\n" - ."\n" - .'- 如果NetworkInterface.InstanceType取值为Primary,则必须设置该参数。此时该参数的作用等同于SecurityGroupIds,但需要注意不能再设置SecurityGroupId、SecurityGroupIds。'."\n" - ."\n" - .'- 如果NetworkInterface.InstanceType取值为Secondary或空值,则该参数为非必填参数。默认值为 ECS 实例所属的安全组,即主网卡的安全组。', - 'type' => 'string', - 'required' => false, - 'example' => 'sg-2ze55shrxxxxx', - ], - 'required' => false, - 'maxItems' => 20, - ], - 'SecondaryPrivateIpAddressCount' => [ - 'description' => '为网卡指定辅助私网 IPv4 地址数量。取值范围:1~49。'."\n" - ."\n" - .'- 取值不能超过该实例规格对于ip 数量的限制。更多信息,请参见[实例规格族](https://help.aliyun.com/zh/ecs/user-guide/overview-of-instance-families)。'."\n" - ."\n" - .'- NetworkInterface.N.SecondaryPrivateIpAddressCount用于为网卡分配辅助私网IPv4 地址数量(不包含该网卡的主私网 IP),系统将从该网卡所在虚拟交换机(NetworkInterface.N.VSwitchId)的可用网段中随机分配。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '6', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 10, - ], - ], - [ - 'name' => 'DedicatedHostClusterId', - 'in' => 'query', - 'schema' => [ - 'description' => '专有宿主机集群ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'dc-zm04u8r3lohsq****', - ], - ], - [ - '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" - .'- 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' => [ - 'description' => '修改伸缩配置后的返回信息。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], - ], - ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '修改一个ECS类型伸缩配置', - 'description' => '- 如果修改伸缩配置的名称,请注意同一伸缩组下不能存在名称相同的伸缩配置。'."\n" - .'- 支持以下任一方式绑定主网卡,但需要注意一次调用只能选用一种方式配置主网卡,同时使用两种方式将会调用失败并返回错误信息。并且修改伸缩配置时,选择一种方式修改网卡配置时,会清空另一种方式设置的网卡配置。'."\n" - ."\n" - .' - 通过SecurityGroupId、SecurityGroupIds与Ipv6AddressCount等参数直接设置主网卡的相关配置信息。'."\n" - ."\n" - .' - 通过NetworkInterfaces设置主网卡以及辅助网卡的配置信息。当使用NetworkInterfaces参数时,必须设置主网卡信息,其中NetworkInterface.InstanceType取值为Primary时,表示设置主网卡;当NetworkInterface.InstanceType取值为Secondary或空值时,表示设置辅助网卡。', - ], - 'DeleteScalingConfiguration' => [ - 'summary' => '删除一个伸缩配置。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '125387', - 'abilityTreeNodes' => [ - 'FEATUREessTZHE2G', - ], - ], - 'parameters' => [ - [ - 'name' => 'ScalingConfigurationId', - 'in' => 'query', - 'schema' => [ - 'description' => '待删除伸缩配置的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asc-bp1bx8mzur534edp****', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '请求ID。', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。无论调用接口成功与否,我们都会返回请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], - 'enumValueTitles' => [], - ], - ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '删除一个ECS类型伸缩配置', - 'description' => '以下情况不能删除伸缩配置:'."\n" - ."\n" - .'- 伸缩配置在伸缩组中处于生效状态。'."\n" - .'- 伸缩组中仍然存在使用该伸缩配置创建的ECS实例。', - ], - 'CreateEciScalingConfiguration' => [ - 'summary' => '创建一个ECI类型的伸缩配置,弹性伸缩会以该伸缩配置作为ECI实例使用的模板,在触发弹性扩容活动时自动创建ECI实例满足您的业务需求。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '125325', - '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' => 'Description', - 'in' => 'query', - 'schema' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'desc', - ], - ], - [ - '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-(AUTO_INCREMENT)[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大小。单位:核。'."\n" - ."\n", - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '1.0', - ], - ], - [ - 'name' => 'Memory', - 'in' => 'query', - 'schema' => [ - 'description' => '实例级别内存大小。单位:GiB。'."\n" - ."\n", - '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" - ."\n" - .'- Default:继承运行环境的DNS设置。', - 'type' => 'string', - 'required' => false, - 'example' => 'Default', - ], - ], - [ - 'name' => 'EnableSls', - 'in' => 'query', - 'schema' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - ], - [ - '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' => '程序的缓冲时间,用于处理关闭之前的操作。单位为秒。'."\n" - ."\n", - '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地址数。'."\n" - ."\n", - '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实例。'."\n" - ."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - ], - [ - 'name' => 'EipBandwidth', - 'in' => 'query', - 'schema' => [ - 'description' => '弹性公网IP的带宽。默认为5 M。'."\n" - ."\n", - '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。'."\n" - ."\n", - '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' => 'Tags', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'ECI实例的标签。标签以键值对方式传入,最多可以使用20组标签。Key和Value的使用要求如下:'."\n" - .' '."\n" - .'- Key最多支持64个字符,不能以aliyun和acs:开头,不能包含`http://`或者`https://`。一旦使用标签,Key不允许为空字符串。'."\n" - .'- Value最多支持128个字符,不能以aliyun和acs:开头,不能包含`http://`或者`https://`。Value可以为空字符串。', - 'type' => 'array', - 'items' => [ - 'description' => 'ECI实例的标签。标签以键值对方式传入,最多可以使用20组标签。Key和Value的使用要求如下: '."\n" - .' '."\n" - .'- Key最多支持64个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。一旦使用标签,Key不允许为空字符串。 '."\n" - .'- Value最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。Value可以为空字符串。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '实例的标签键。'."\n" - ."\n" - .'如果传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', - 'type' => 'string', - 'required' => false, - 'example' => 'version', - ], - 'Value' => [ - 'description' => '实例的标签值。'."\n" - ."\n" - .'如果传入该值,则允许为空字符串。最多支持128个字符,不能以`acs:`开头,不能包含`http://`或者`https://`。', - 'type' => 'string', - 'required' => false, - 'example' => '3', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 21, - ], - ], - [ - 'name' => 'ImageRegistryCredentials', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '镜像仓库的详细信息。', - 'type' => 'array', - 'items' => [ - 'description' => '镜像仓库的详细信息。', - 'type' => 'object', - 'properties' => [ - 'Password' => [ - 'description' => '镜像仓库密码。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'yourpassword '."\n", - ], - 'Server' => [ - 'description' => '镜像仓库注册地址。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'registry-vpc.cn-shanghai.aliyuncs.com', - ], - 'UserName' => [ - 'description' => '镜像仓库用户名。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'yourusername '."\n", - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 11, - ], - ], - [ - 'name' => 'Containers', - '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" - ."\n" - .'- HTTP。'."\n" - .'- HTTPS。', - 'type' => 'string', - 'required' => false, - 'example' => 'HTTP', - ], - 'LivenessProbe.PeriodSeconds' => [ - 'description' => '检查执行的周期,默认值为10秒,最小值为1秒。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '5', - ], - 'Ports' => [ - '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。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '80', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 101, - ], - 'SecurityContext.ReadOnlyRootFilesystem' => [ - 'description' => '容器运行的根文件系统是否为只读,目前仅支持配置为true。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - '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位。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/usr/local/bin '."\n", - ], - 'FieldRefFieldPath' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'required' => false, - 'example' => 'fieldPath', - ], - ], - '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" - .'例如:当Command配置为/bin/bash时,需要配置为true。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - 'WorkingDir' => [ - 'description' => '容器工作目录。', - 'type' => 'string', - 'required' => false, - 'example' => '/usr/local/ '."\n", - ], - '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请求检测的端口号。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '8080', - ], - 'Args' => [ - 'description' => '容器启动命令对应的参数。最多10个。', - 'type' => 'array', - 'items' => [ - 'description' => '容器启动命令对应的参数。最多10个。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '100', - ], - 'required' => false, - 'maxItems' => 101, - ], - 'Gpu' => [ - 'description' => '指定容器使用的GPU个数。'."\n" - ."\n", - '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。'."\n" - ."\n", - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '0.5', - ], - 'Name' => [ - 'description' => '容器镜像名称。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'nginx '."\n", - ], - 'Image' => [ - 'description' => '容器镜像。'."\n" - ."\n", - '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', - ], - 'VolumeMounts' => [ - '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的内容直接覆盖,请您谨慎使用。'."\n" - .'>', - 'type' => 'string', - 'required' => false, - 'example' => '/pod/data', - ], - 'ReadOnly' => [ - 'description' => '数据卷是否只读。取值范围:'."\n" - ."\n" - .'- true:是。'."\n" - ."\n" - .'- false:否。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - 'Name' => [ - 'description' => '数据卷名称。同Volumes中的Name。', - 'type' => 'string', - 'required' => false, - 'example' => 'default-volume1 '."\n", - ], - 'SubPath' => [ - 'description' => '数据卷子路径。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'data2/ '."\n", - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 101, - ], - 'LivenessProbe.FailureThreshold' => [ - 'description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。'."\n" - ."\n" - .'默认为3。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '3', - ], - 'ReadinessProbe.Exec.Commands' => [ - 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', - 'type' => 'array', - 'items' => [ - 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', - 'type' => 'string', - 'required' => false, - 'example' => 'cat/tmp/healthy', - ], - 'required' => false, - 'maxItems' => 20, - ], - 'ReadinessProbe.FailureThreshold' => [ - 'description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。默认值:3。'."\n" - ."\n", - '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核数。'."\n" - ."\n", - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '0.25', - ], - 'LivenessProbe.HttpGet.Port' => [ - 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的端口号。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '8888', - ], - 'LivenessProbe.HttpGet.Path' => [ - 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的路径。', - 'type' => 'string', - 'required' => false, - 'example' => '/healthyz '."\n", - ], - 'LivenessProbe.SuccessThreshold' => [ - 'description' => '从上次检查失败后重新认定检查成功的检查次数阈值(必须是连续成功),默认值为1。当前值必须为1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - 'ReadinessProbe.PeriodSeconds' => [ - 'description' => '检查执行的周期,默认值为10秒,最小值为1秒。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '3', - ], - 'LivenessProbe.TimeoutSeconds' => [ - 'description' => '检查超时的时间,默认值为1秒,最小值为1秒。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - 'Commands' => [ - 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。', - 'type' => 'array', - 'items' => [ - 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'sleep', - ], - 'required' => false, - 'maxItems' => 101, - ], - 'SecurityContext.RunAsUser' => [ - 'description' => '设置运行容器的用户ID。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1000', - ], - 'ReadinessProbe.HttpGet.Path' => [ - 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的路径。', - 'type' => 'string', - 'required' => false, - 'example' => '/healthz '."\n", - ], - 'LivenessProbe.Exec.Commands' => [ - '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', - ], - 'LifecyclePostStartHandlerExecs' => [ - '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', - ], - 'LifecyclePreStopHandlerExecs' => [ - '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, - 'docRequired' => true, - 'maxItems' => 21, - ], - ], - [ - 'name' => 'Volumes', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '数据卷信息。', - 'type' => 'array', - 'items' => [ - 'description' => '数据卷信息。', - 'type' => 'object', - 'properties' => [ - 'Type' => [ - 'description' => '数据卷类型。取值范围:'."\n" - ."\n" - .'- EmptyDirVolume:EmptyDir类型的数据卷,表示空目录。'."\n" - ."\n" - .'- NFSVolume:NFS类型的数据卷,表示网络文件系统。'."\n" - ."\n" - .'- ConfigFileVolume:ConfigFile类型的数据卷,表示配置文件。'."\n" - ."\n" - .'- FlexVolume:使用FlexVolume插件扩展存储类型,支持挂载云盘。'."\n" - ."\n" - .'- HostPathVolume:HostPath类型的数据卷,表示主机节点的文件或目录。'."\n" - ."\n" - .'- DiskVolume(不推荐):云盘数据卷。建议使用FlexVolume挂载云盘。', - 'type' => 'string', - 'required' => false, - 'example' => 'ConfigFileVolume', - ], - 'DiskVolume.DiskSize' => [ - 'description' => 'DiskVolume的大小。单位:GiB。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '15', - ], - 'NFSVolume.Path' => [ - 'description' => 'NFS数据卷路径。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/share '."\n", - ], - 'FlexVolume.FsType' => [ - 'description' => '挂载的文件系统类型,默认取决于FlexVolume的script。', - 'type' => 'string', - 'required' => false, - 'example' => 'ext4 '."\n", - ], - '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" - ."\n" - .'- true:是。'."\n" - ."\n" - .'- false:否。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - 'HostPathVolume.Path' => [ - 'description' => 'Host上的绝对路径。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/xx/xx/path '."\n", - ], - '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的驱动程序名称。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'flexvolume', - ], - 'ConfigFileVolumeDefaultMode' => [ - 'description' => 'ConfigFileVolume默认的权限。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '0644', - ], - 'NFSVolume.Server' => [ - 'description' => 'NFS服务器地址。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '3f9cd4a596-naw76.cn-shanghai.nas.aliyuncs.com', - ], - 'DiskVolume.DiskId' => [ - 'description' => 'DiskVolume的ID。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'd-xx '."\n", - ], - 'Name' => [ - 'description' => '数据卷名称。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'default-volume1 '."\n", - ], - 'EmptyDirVolume.Medium' => [ - 'description' => 'EmptyDirVolume的存储媒介,默认为空,使用node文件系统;支持memory,表示使用内存。', - 'type' => 'string', - 'required' => false, - 'example' => 'memory', - ], - 'ConfigFileVolumeConfigFileToPaths' => [ - 'description' => '配置文件路径列表。', - 'type' => 'array', - 'items' => [ - 'description' => '配置文件路径列表。', - 'type' => 'object', - 'properties' => [ - 'Path' => [ - 'description' => '环境变量名。', - 'type' => 'string', - 'required' => false, - 'example' => 'PATH', - ], - 'Mode' => [ - 'description' => 'ConfigFileVolume目录权限。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '0644', - ], - 'Content' => [ - 'description' => '配置文件内容(32 KB)。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'bGl1bWk= '."\n", - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 90, - ], - 'EmptyDirVolume.SizeLimit' => [ - 'description' => 'EmptyDir数据卷的大小。取值请带上单位,建议使用Gi或Mi。', - 'type' => 'string', - 'required' => false, - 'example' => '256Mi', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 101, - ], - ], - [ - 'name' => 'InitContainers', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'init容器列表。', - 'type' => 'array', - 'items' => [ - 'description' => 'init容器列表。', - 'type' => 'object', - 'properties' => [ - 'InitContainerEnvironmentVars' => [ - 'description' => 'init容器的环境变量信息。', - 'type' => 'array', - 'items' => [ - 'description' => 'init容器的环境变量信息。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '环境变量名。长度为1~128位,格式要求:`[0-9a-zA-Z]`,以及下划线,不能以数字开头。', - 'type' => 'string', - 'required' => false, - 'example' => 'Path '."\n", - ], - 'Value' => [ - 'description' => '环境变量值。长度为0~256位。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/usr/bin/ '."\n", - ], - 'FieldRefFieldPath' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'required' => false, - 'example' => 'path', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 301, - ], - 'SecurityContext.Capability.Adds' => [ - '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', - ], - 'InitContainerPorts' => [ - 'description' => 'init容器端口映射列表。', - 'type' => 'array', - 'items' => [ - 'description' => 'init容器端口映射列表。', - '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' => '1', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 101, - ], - 'InitContainerVolumeMounts' => [ - 'description' => 'init容器的挂载点信息数组。', - 'type' => 'array', - 'items' => [ - 'description' => 'init容器的挂载点信息数组。', - 'type' => 'object', - 'properties' => [ - 'MountPropagation' => [ - 'description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。可能值:'."\n" - ."\n" - .'- None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。'."\n" - ."\n" - .'- HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。'."\n" - ."\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 '."\n", - ], - 'SubPath' => [ - 'description' => '数据卷下的子目录,方便Pod将同一个Volume下不同目录挂载到容器不同目录。', - 'type' => 'string', - 'required' => false, - 'example' => '/usr/sub/', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 101, - ], - 'SecurityContext.ReadOnlyRootFilesystem' => [ - 'description' => '容器运行的根文件系统是否为只读。目前仅支持配置为true。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'ImagePullPolicy' => [ - 'description' => '镜像拉取策略。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Always', - ], - 'Cpu' => [ - 'description' => '容器的vCPU大小。单位:核。'."\n" - ."\n", - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '0.5', - ], - 'WorkingDir' => [ - 'description' => '工作目录。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/usr/local '."\n", - ], - 'Commands' => [ - 'description' => '容器启动指令。', - 'type' => 'array', - 'items' => [ - 'description' => '容器启动指令。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'sleep'."\n", - ], - 'required' => false, - 'maxItems' => 101, - ], - 'Args' => [ - 'description' => '容器启动命令对应的参数。最多10个。', - 'type' => 'array', - 'items' => [ - 'description' => '容器启动命令对应的参数。最多10个。', - 'type' => 'string', - 'required' => false, - 'example' => '100', - ], - 'required' => false, - 'maxItems' => 101, - ], - 'SecurityContext.RunAsUser' => [ - 'description' => '设置运行容器的用户ID。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '587', - ], - 'Gpu' => [ - 'description' => '指定容器使用的GPU个数。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - 'Memory' => [ - 'description' => '内存大小。单位:GiB。'."\n" - ."\n", - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '1.0', - ], - 'Name' => [ - 'description' => '容器名称。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test-init '."\n", - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 21, - ], - ], - [ - 'name' => 'DnsConfigNameServers', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'DNS服务器的IP地址列表。', - 'type' => 'array', - 'items' => [ - 'description' => 'DNS服务器的IP地址列表。', - 'type' => 'string', - 'required' => false, - 'example' => '172.10.*.**'."\n", - ], - 'required' => false, - 'maxItems' => 20, - ], - ], - [ - 'name' => 'DnsConfigSearchs', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'DNS搜索域列表。', - 'type' => 'array', - 'items' => [ - 'description' => 'DNS搜索域列表。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'svc.local.kubenetes'."\n", - ], - 'required' => false, - 'maxItems' => 20, - ], - ], - [ - 'name' => 'DnsConfigOptions', - '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 '."\n", - ], - 'Name' => [ - 'description' => '对象变量名。', - 'type' => 'string', - 'required' => false, - 'example' => 'name', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 20, - ], - ], - [ - 'name' => 'HostAliases', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '自定义实例内一个容器的Hostname映射。'."\n", - 'type' => 'array', - 'items' => [ - 'description' => '自定义实例内一个容器的Hostname映射。'."\n", - 'type' => 'object', - 'properties' => [ - 'Ip' => [ - 'description' => '添加IP。', - 'type' => 'string', - 'required' => false, - 'example' => '1.1.1.1'."\n", - ], - 'Hostnames' => [ - 'description' => '添加主机名。', - 'type' => 'array', - 'items' => [ - 'description' => '添加主机名。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'hehe.com', - ], - 'required' => false, - 'maxItems' => 51, - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 101, - ], - ], - [ - 'name' => 'SecurityContextSysctls', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '实例运行的安全上下文系统信息。', - 'type' => 'array', - 'items' => [ - 'description' => '实例运行的安全上下文系统信息。', - 'type' => 'object', - 'properties' => [ - 'Value' => [ - 'description' => '实例运行的安全上下文的变量值。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '65536', - ], - 'Name' => [ - 'description' => '实例运行的安全上下文系统名称。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'kernel.msgmax'."\n", - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 11, - ], - ], - [ - 'name' => 'NtpServers', - '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' => 'AcrRegistryInfos', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'ACR企业版实例的信息。', - 'type' => 'array', - 'items' => [ - 'description' => 'ACR企业版实例的信息。', - 'type' => 'object', - 'properties' => [ - 'Domains' => [ - 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。', - 'type' => 'array', - 'items' => [ - 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。', - 'type' => 'string', - 'required' => false, - 'example' => '*****-****-registry.cn-beijing.cr.aliyuncs.com '."\n", - ], - 'required' => false, - 'maxItems' => 100, - ], - 'InstanceName' => [ - 'description' => 'ACR企业版实例的名称。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acr-test'."\n", - ], - 'InstanceId' => [ - 'description' => 'ACR企业版实例ID。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cri-nwj395hgf6f3**** '."\n", - ], - 'RegionId' => [ - 'description' => 'ACR企业版实例所属地域。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing '."\n", - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 21, - ], - ], - [ - 'name' => 'CostOptimization', - 'in' => 'query', - 'schema' => [ - 'description' => '是否开启成本优化开关。可能值:'."\n" - .'- true:开启。'."\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' => 'InstanceTypes', - '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" - .'>关于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', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '创建伸缩配置后的返回信息。', - 'type' => 'object', - 'properties' => [ - 'ScalingConfigurationId' => [ - 'description' => '实例ID,即容器组ID。', - 'type' => 'string', - 'example' => 'eci-uf6fonnghi50u374****', - ], - 'RequestId' => [ - 'description' => '请求ID,唯一标识。', - 'type' => 'string', - 'example' => '89945DD3-9072-47D0-A318-353284CF****', - ], - ], - ], - ], - ], - 'errorCodes' => [ - 403 => [ - [ - 'errorCode' => 'Forbidden.RiskControl', - 'errorMessage' => 'Forbidden.RiskControl', - ], - ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingConfigurationId\\": \\"eci-uf6fonnghi50u374****\\",\\n \\"RequestId\\": \\"89945DD3-9072-47D0-A318-353284CF****\\"\\n}","type":"json"}]', - 'title' => '创建一个ECI类型伸缩配置', - 'description' => '伸缩配置用来指定弹性扩张时使用的ECI实例模板。'."\n" - ."\n" - .'参数Cpu和Memory用于指定CPU和内存定义实例规格的范围,弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。该方式仅适用于伸缩组的扩缩容策略为成本优化策略,且伸缩配置未指定实例规格的场景。', - ], - 'DescribeEciScalingConfigurations' => [ - 'summary' => '通过调用DescribeEciScalingConfigurations,并指定伸缩组的ID、伸缩配置的ID或名称等参数查询ECI类型的伸缩配置信息,例如实例的抢占策略、容器组的实例规格、容器镜像的拉取策略、ECI实例作为后端服务器时的权重等。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '125390', - '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' => 'ScalingConfigurationIds', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '待查询伸缩配置的ID列表,ID数量取值范围:1~10。'."\n" - ."\n" - .'查询结果包括生效和未生效的伸缩配置,并通过返回参数`LifecycleState`进行标识。', - 'type' => 'array', - 'items' => [ - 'description' => '待查询伸缩配置的ID。'."\n" - ."\n" - .'查询结果包括生效和未生效的伸缩配置,并通过返回参数LifecycleState进行标识。', - 'type' => 'string', - 'required' => false, - 'example' => ' asc-bp17pelvl720x5ub****', - ], - 'required' => false, - 'maxItems' => 10, - ], - ], - [ - 'name' => 'ScalingConfigurationNames', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '待查询伸缩配置的名称列表,名称数量的取值范围:1~10。'."\n" - ."\n" - .'查询结果会忽略失效的伸缩配置名称,并且不报错。', - 'type' => 'array', - 'items' => [ - 'description' => '待查询伸缩配置的名称。'."\n" - ."\n" - .'查询结果会忽略失效的伸缩配置名称,并且不报错。', - 'type' => 'string', - 'required' => false, - 'example' => 'scalingcon**** '."\n", - ], - 'required' => false, - 'maxItems' => 10, - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '伸缩配置相关信息。', - '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-A3DC0DE3C83E', - ], - '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' => '伸缩配置的名称。'."\n" - ."\n", - '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', - ], - 'Description' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'example' => 'This is an example.', - ], - '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" - .'默认值: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', - ], - 'SlsEnable' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'boolean', - 'example' => 'False', - ], - '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' => 'TcpSocket的端口号。', - '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:未开启。'."\n" - ."\n" - .'例如:当Command配置为/bin/bash时,需要配置为true。'."\n" - ."\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。默认为false。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Memory' => [ - 'description' => '容器内存大小。', - 'type' => 'number', - 'format' => 'float', - 'example' => '2.0', - ], - 'Name' => [ - 'description' => '自定义的容器名称。', - 'type' => 'string', - 'example' => 'nginx', - ], - 'SecurityContextReadOnlyRootFilesystem' => [ - 'description' => '是否只读根文件系统,目前仅支持true。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'LivenessProbeHttpGetPath' => [ - 'description' => 'HttpGet检测的路径。', - 'type' => 'string', - 'example' => '/usr/nginx/', - ], - 'Image' => [ - 'description' => '容器镜像。', - 'type' => 'string', - 'example' => 'mysql', - ], - 'ReadinessProbeTcpSocketPort' => [ - 'description' => 'TcpSocket的端口号。', - '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" - .'- Alway:总是拉取。每次都拉取镜像。'."\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" - ."\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的所有容器。'."\n" - ."\n" - .'默认值:None。', - 'type' => 'string', - 'example' => 'None', - ], - 'MountPath' => [ - 'description' => '容器挂载数据卷的目录。'."\n" - ."\n" - .'>容器挂载目录下的内容会被Volume的内容直接覆盖,请您谨慎使用。'."\n" - .'>', - '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/', - ], - 'FieldRefFieldPath' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'example' => 'path', - ], - ], - ], - ], - '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" - ."\n" - .'> NET_RAW默认不支持,需提交工单申请。', - 'type' => 'array', - 'items' => [ - 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n" - ."\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' => '使用 TCPSocket 方式设置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'."\n", - ], - '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"]', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6EF9BFEE-FE07-4627-B8FB-14326FB9****'], + 'ScalingConfiguration' => [ + 'description' => '伸缩配置信息。', + 'type' => 'object', + 'properties' => [ + 'CreationTime' => ['description' => '伸缩配置的创建时间。', 'type' => 'string', 'example' => '2023-05-10T02:39:15Z'], + 'ScalingConfigurationName' => ['description' => '伸缩配置的名称。', 'type' => 'string', 'example' => 'scalingconfi****'], + 'SecurityGroupId' => ['description' => 'ECI实例所属的安全组的ID,同一个安全组内的ECI实例可以互相访问。', 'type' => 'string', 'example' => 'sg-bp18kz60mefs****'], + 'ActiveDeadlineSeconds' => ['description' => '有效期限。单位为秒。', 'type' => 'integer', 'format' => 'int32', 'example' => '60'], + '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-bp1frlu04fq4zv65b1bh'], + 'EphemeralStorage' => ['description' => '临时存储空间大小。单位:GiB。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], + 'Ipv6AddressCount' => ['description' => 'IPv6地址数。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'Description' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'example' => 'This is an example.'], + 'EipBandwidth' => ['description' => '弹性公网IP的带宽。默认为5 M。', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], + 'ImageSnapshotId' => ['description' => '镜像缓存ID。', 'type' => 'string', 'example' => 'imc-2zebxkiifuyzzlhl****'], + 'Memory' => ['description' => '内存大小。单位:GiB。'."\n" + ."\n" + .'同时指定CPU和Memory可以定义实例规格范围。例如,CPU=2且Memory=16可以定义配置为2 vCPU和16 GiB的所有实例规格。弹性伸缩会结合IO优化、可用区等因素确定可用实例规格集合,并根据价格排序为您创建价格最低的实例。'."\n" + ."\n" + .'>该区间配置效果仅在成本优化模式下且伸缩配置未设置实例规格时生效。', 'type' => 'number', 'format' => 'float', 'example' => '4'], + 'RestartPolicy' => ['description' => '容器组的重启策略。可能值:'."\n" + ."\n" + .'- Never:不重启。'."\n" + .'- Always:始终重启。'."\n" + .'- OnFailure:失败时重启。', 'type' => 'string', 'example' => 'Always'], + '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。'."\n" + ."\n" + .'默认值:50。', 'type' => 'integer', 'format' => 'int32', 'example' => '50'], + 'DnsPolicy' => ['description' => 'DNS策略。', 'type' => 'string', 'example' => 'Default'], + 'HostName' => ['description' => '主机名。', 'type' => 'string', 'example' => 'hostname'], + 'EgressBandwidth' => ['description' => '出方向带宽限制。单位:Byte。', 'type' => 'integer', 'format' => 'int64', 'example' => '10485760'], + 'RegionId' => ['description' => '伸缩规则所属伸缩组的地域ID。', 'type' => 'string', 'example' => 'cn-shanghai'], + 'RamRoleName' => ['description' => '实例RAM角色名称,ECI与ECS共用实例RAM角色,具体操作,请参见[通过API使用实例RAM角色](~~61178~~)。', 'type' => 'string', 'example' => 'ram:PassRole'."\n"], + 'Cpu' => ['description' => '实例级别vCPU大小。单位:核。', 'type' => 'number', 'format' => 'float', 'example' => '2.0'], + 'AutoMatchImageCache' => ['description' => '是否自动匹配镜像缓存。'."\n" + .'默认值:false。', 'type' => 'boolean', 'example' => 'true'], + 'ResourceGroupId' => ['description' => '资源组ID', 'type' => 'string', 'example' => 'rg-acfmwozpmmksakq'], + 'ContainerGroupName' => ['description' => '容器组实例名称。', 'type' => 'string', 'example' => 'test'], + 'ScalingConfigurationId' => ['description' => '伸缩配置的ID。', 'type' => 'string', 'example' => 'asc-2zec39vg84usxdocme6a'], + 'CpuOptionsCore' => ['description' => 'CPU物理核心数。仅部分规格支持自定义设置。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'SlsEnable' => ['description' => '开启用户日志收集,默认为**false**。', 'type' => 'boolean', 'example' => 'false'], + 'Containers' => [ + 'description' => '实例包含的容器列表。', + 'type' => 'array', + 'items' => [ + 'description' => '实例包含的容器列表。', + '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' => 'TcpSocket的端口号。', '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:未开启。'."\n" + ."\n" + .'例如:当Command配置为/bin/bash时,需要配置为true。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'example' => 'true'], + 'LivenessProbeHttpGetPort' => ['description' => 'HttpGet检测的端口。', 'type' => 'integer', 'format' => 'int32', 'example' => '8080'], + 'Gpu' => ['description' => 'GPU个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'ReadinessProbeInitialDelaySeconds' => ['description' => '检查开始执行的时间,以容器启动完成为起点计算。', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], + 'Stdin' => ['description' => '此容器是否应在容器运行时为标准输入分配缓冲区。如果未设置,则容器中标准输入的读取值将导致EOF。默认为false。', 'type' => 'boolean', 'example' => 'true'], + 'Memory' => ['description' => '内存大小。', 'type' => 'number', 'format' => 'float', 'example' => '2.0'], + 'Name' => ['description' => '容器名称。', 'type' => 'string', 'example' => 'nginx'], + 'SecurityContextReadOnlyRootFilesystem' => ['description' => '是否只读根文件系统,目前仅支持true。', 'type' => 'boolean', 'example' => 'true'], + 'LivenessProbeHttpGetPath' => ['description' => 'HttpGet检测的路径。', 'type' => 'string', 'example' => '/usr/nginx/'."\n"], + 'Image' => ['description' => '容器镜像。'."\n" + ."\n", 'type' => 'string', 'example' => 'registry-vpc.aliyuncs.com/eci_open/alpine:3.5'], + 'ReadinessProbeTcpSocketPort' => ['description' => 'TcpSocket的端口号。', 'type' => 'integer', 'format' => 'int32', 'example' => '80'], + 'ReadinessProbeHttpGetScheme' => ['description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求对应的协议类型,取值范围:'."\n" + .'- HTTP。'."\n" + .'- HTTPS。', 'type' => 'string', 'example' => 'HTTP'], + 'ReadinessProbeHttpGetPort' => ['description' => 'HttpGet检测的路径。', 'type' => 'integer', 'format' => 'int32', 'example' => '80'], + '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' => '5'], + 'ImagePullPolicy' => ['description' => '镜像拉取策略。', 'type' => 'string', 'example' => 'Always'], + 'StdinOnce' => ['description' => '当标准输入为true时,标准输入流将在多个附加会话中保持开启状态。'."\n" + ."\n" + .'如果StdinOnce设为true,标准输入在容器开启时被打开,在首个客户端附加到标准输入之前都为空,然后会一直保持开启状态,接收数据,直到客户端连接断开,此时标准输入被关闭,在容器重启前一直保持关闭状态。', 'type' => 'boolean', 'example' => 'true'], + 'Cpu' => ['description' => '实例级别vCPU大小。', 'type' => 'number', 'format' => 'float', 'example' => '2'], + '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' => '8083'], + 'Protocol' => ['description' => '协议类型。取值范围:'."\n" + .'- TCP。'."\n" + .'- UDP。', 'type' => 'string', 'example' => 'TCP'], ], ], - 'LifecyclePreStopHandlerTcpSocketHost' => [ - 'description' => '使用TCP Socket方式设置preStop回调函数时,TCP Socket检测的主机地址。', - 'type' => 'string', - 'example' => '10.0.XX.XX', - ], - 'LifecyclePreStopHandlerTcpSocketPort' => [ - 'description' => '使用TCPSocket方式设置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', - ], - 'FieldRefFieldPath' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'example' => 'path', - ], - ], - ], - ], - 'InitContainerPorts' => [ - 'description' => 'init容器端口信息的集合。', - 'type' => 'array', - 'items' => [ - 'description' => 'init容器端口信息的集合。', - 'type' => 'object', - 'properties' => [ - 'Port' => [ - 'description' => '端口号。取值范围:1~65535。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Protocol' => [ - 'description' => '协议类型。取值范围:'."\n" - ."\n" - .'- TCP。'."\n" - .'- UDP。', - 'type' => 'string', - 'example' => 'TCP', - ], - ], - ], - ], - '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的所有容器。'."\n" - ."\n" - .'默认值:None。', - 'type' => 'string', - 'example' => 'None', - ], - 'MountPath' => [ - 'description' => '挂载目录,容器的挂载目录下的内容被volume的内容直接覆盖,所以要慎用。', - 'type' => 'string', - 'example' => '/usr/share/', - ], - ], - ], - ], - 'SecurityContextCapabilityAdds' => [ - 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n" - ."\n" - .'> NET_RAW默认不支持,需提交工单申请。', - 'type' => 'array', - 'items' => [ - 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n" + 'VolumeMounts' => [ + 'description' => '挂载数据卷。', + 'type' => 'array', + 'items' => [ + 'description' => '挂载数据卷。', + 'type' => 'object', + 'properties' => [ + 'ReadOnly' => ['description' => '数据卷是否只读。'."\n" ."\n" - .'> 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' => '3f9cd4a596-naw76.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=', - ], - ], + .'默认值:false。', 'type' => 'boolean', 'example' => 'true'], + 'SubPath' => ['description' => '数据卷子路径。', 'type' => 'string', 'example' => 'data2/'."\n"], + 'Name' => ['description' => '挂载数据卷的名称。', 'type' => 'string', 'example' => 'default-volume1'], + 'MountPropagation' => ['description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。可能值:'."\n" + ."\n" + .'- None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。'."\n" + .'- HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。'."\n" + .'- Bidirectional:和HostToCotainer类似,能感知挂载操作。另外,该卷将被传播回主机和使用同一卷的所有Pod的所有容器。'."\n" + ."\n" + .'默认值:None。', 'type' => 'string', 'example' => 'None'], + 'MountPath' => ['description' => '容器挂载数据卷的目录。'."\n" + ."\n" + .'>容器挂载目录下的内容会被Volume的内容直接覆盖,请您谨慎使用。'."\n" + .'>', 'type' => 'string', 'example' => '/pod/data'], ], ], - 'EmptyDirVolumeSizeLimit' => [ - 'description' => 'EmptyDir数据卷的大小。', - 'type' => 'string', - 'example' => '256Mi', - ], - 'HostPathVolumeType' => [ - 'description' => 'HostPath Volume的类型。', - 'type' => 'string', - 'enumValueTitles' => [], - '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' => '镜像仓库用户名。'."\n" - ."\n", - 'type' => 'string', - 'example' => 'yourusername '."\n", + 'EnvironmentVars' => [ + 'description' => '环境变量的信息。', + 'type' => 'array', + 'items' => [ + 'description' => '环境变量的信息。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '环境变量名。', 'type' => 'string', 'example' => 'PATH'], + 'Value' => ['description' => '环境变量值。', 'type' => 'string', 'example' => '/usr/bin/'."\n"], + 'FieldRefFieldPath' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'example' => 'fieldPath'], + ], ], ], + 'Commands' => [ + 'description' => '容器启动指令。'."\n" + ."\n", + 'type' => 'array', + 'items' => ['description' => '容器启动指令。'."\n" + ."\n", 'type' => 'string', 'example' => 'sleep'], + ], + 'LivenessProbeExecCommands' => [ + 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', + 'type' => 'array', + 'items' => ['description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', 'type' => 'string', 'example' => 'cat /tmp/healthy'], + ], + 'Args' => [ + 'description' => '容器启动参数。'."\n" + ."\n", + 'type' => 'array', + 'items' => ['description' => '容器启动参数。'."\n" + ."\n", 'type' => 'string', 'example' => '100'], + ], + 'ReadinessProbeExecCommands' => [ + 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', + 'type' => 'array', + 'items' => ['description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', 'type' => 'string', 'example' => 'cat /tmp/healthy'."\n"], + ], + 'SecurityContextCapabilityAdds' => [ + 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。', + 'type' => 'array', + 'items' => ['description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和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'."\n"], + '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'."\n"], + 'LifecyclePostStartHandlerTcpSocketPort' => ['description' => '使用 TCPSocket 方式设置postStart回调函数时,TCP Socket检测的端口。', 'type' => 'integer', 'format' => 'int32', 'example' => '80'], + 'LifecyclePreStopHandlerHttpGetHost' => ['description' => '使用HTTP请求方式设置preStop回调函数时,接收HTTP Get请求的主机地址。', 'type' => 'string', 'example' => '10.0.XX.XX'."\n"], + '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' => '使用TCPSocket方式设置preStop回调函数时,TCP Socket检测的端口。', 'type' => 'integer', 'format' => 'int32', 'example' => '80'], ], ], - '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', + ], + 'InitContainers' => [ + 'description' => 'init容器列表。', + 'type' => 'array', + 'items' => [ + 'description' => 'init容器列表。', + 'type' => 'object', + 'properties' => [ + 'SecurityContextReadOnlyRootFilesystem' => ['description' => '是否只读根文件系统,目前仅支持true。', 'type' => 'boolean'], + 'ImagePullPolicy' => ['description' => '镜像拉取策略。'."\n" + ."\n", 'type' => 'string', 'example' => 'Always'], + 'WorkingDir' => ['description' => '工作目录。', 'type' => 'string', 'example' => '/www'], + 'Cpu' => ['description' => '容器CPU核数。', 'type' => 'number', 'format' => 'float', 'example' => '0.5'], + 'Image' => ['description' => '容器镜像。', 'type' => 'string', 'example' => 'registry-vpc.cn-hongkong.aliyuncs.com/eci_open/nginx:alpine'], + 'Gpu' => ['description' => '指定容器使用的GPU个数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'SecurityContextRunAsUser' => ['description' => '设置运行容器的用户ID。', 'type' => 'string', 'example' => '1000'], + 'Memory' => ['description' => '内存大小。', 'type' => 'number', 'format' => 'float', 'example' => '1.0'], + 'Name' => ['description' => '容器名称。', 'type' => 'string', 'example' => 'test-init'."\n"], + 'InitContainerEnvironmentVars' => [ + 'description' => 'init容器的环境变量信息。', + 'type' => 'array', + 'items' => [ + 'description' => 'init容器的环境变量信息。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '环境变量名。', 'type' => 'string', 'example' => 'PATH'], + 'Value' => ['description' => '环境变量值。', 'type' => 'string', 'example' => '/usr/local/bin'."\n"], + 'FieldRefFieldPath' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'example' => 'path'], + ], ], ], - ], - ], - 'HostAliases' => [ - 'description' => '自定义实例内一个容器的Hostname映射。'."\n", - 'type' => 'array', - 'items' => [ - 'description' => '自定义实例内一个容器的Hostname映射。'."\n", - 'type' => 'object', - 'properties' => [ - 'Ip' => [ - 'description' => '添加IP地址。', - 'type' => 'string', - 'example' => '192.0.XX.XX', + 'InitContainerPorts' => [ + 'description' => 'init容器端口信息。', + 'type' => 'array', + 'items' => [ + 'description' => 'init容器端口信息。', + 'type' => 'object', + 'properties' => [ + 'Port' => ['description' => '端口号。取值范围:1~65535。', 'type' => 'integer', 'format' => 'int32', 'example' => '1024'], + 'Protocol' => ['description' => '协议类型。取值范围:'."\n" + .'- TCP。'."\n" + .'- UDP。', 'type' => 'string', 'example' => 'UDP'], + ], ], - 'Hostnames' => [ - 'description' => '添加主机名。', - 'type' => 'array', - 'items' => [ - 'description' => '添加主机名。', - 'type' => 'string', - 'example' => '[\'hehe.com\', \'haha.com\']', + ], + 'InitContainerVolumeMounts' => [ + 'description' => 'init容器的挂载点信息数组。', + 'type' => 'array', + 'items' => [ + 'description' => '数据卷挂载。', + 'type' => 'object', + 'properties' => [ + 'ReadOnly' => ['description' => '挂载路径是否只读。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'example' => 'false'], + 'SubPath' => ['description' => '数据卷子路径。', 'type' => 'string', 'example' => '/usr/sub/'], + 'Name' => ['description' => '挂载数据卷的名称。', 'type' => 'string', 'example' => 'test-empty'."\n"], + 'MountPropagation' => ['description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。可能值:'."\n" + ."\n" + .'- None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。'."\n" + .'- HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。'."\n" + .'- Bidirectional:和HostToCotainer类似,能感知挂载操作。另外,该卷将被传播回主机和使用同一卷的所有Pod的所有容器。'."\n" + ."\n" + .'默认值:None。', 'type' => 'string', 'example' => 'None'], + 'MountPath' => ['description' => '容器挂载数据卷的目录。 '."\n" + ."\n" + .'> 容器挂载目录下的内容会被Volume的内容直接覆盖,请谨慎使用。', 'type' => 'string', 'example' => '/usr/share/'."\n"], ], ], ], + 'SecurityContextCapabilityAdds' => [ + 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。', + 'type' => 'array', + 'items' => ['description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n" + ."\n" + .'> 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'], + ], ], ], - 'SecurityContextSysCtls' => [ - 'description' => '实例运行的安全上下文的系统信息。', - 'type' => 'array', - 'items' => [ - 'description' => '实例运行的安全上下文的系统信息。', - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'description' => '实例运行的安全上下文系统名称。', - 'type' => 'string', - 'example' => 'kernel.msgmax', - ], - 'Value' => [ - 'description' => '实例运行的安全上下文的变量值。', - 'type' => 'string', - 'example' => '65536', - ], - ], + ], + 'Tags' => [ + 'description' => '实例的标签键值对。', + 'type' => 'array', + 'items' => [ + 'description' => '实例的标签键值对。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键', 'type' => 'string', 'example' => 'version'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'example' => '3'], ], ], - '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', + ], + '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的ID。', 'type' => 'string', 'example' => 'd-xx'], + 'DiskVolumeFsType' => ['description' => 'DiskVolume的系统类型。', 'type' => 'string', 'example' => 'xfs'], + 'EmptyDirVolumeMedium' => ['description' => 'EmptyDirVolume的存储媒介,默认为空,使用node文件系统。支持memory,表示使用内存。', 'type' => 'string', 'example' => 'memory'], + 'NFSVolumePath' => ['description' => 'NFS数据卷路径。', 'type' => 'string', 'example' => '/share'."\n"], + '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对象选项列表。', 'type' => 'string', 'example' => '{"volumeId":"d-2zehdahrwoa7srg****","performanceLevel": "PL2"}'."\n"], + 'NFSVolumeServer' => ['description' => 'NFS服务器地址。', 'type' => 'string', 'example' => '3f9cd4a596-naw76.cn-shanghai.nas.aliyuncs.com'."\n"], + 'Name' => ['description' => '数据卷名称。'."\n" + ."\n", 'type' => 'string', 'example' => 'default-volume1'."\n"], + 'ConfigFileVolumeConfigFileToPaths' => [ + 'description' => '配置文件路径列表。', + 'type' => 'array', + 'items' => [ + 'description' => '配置文件路径列表。', + 'type' => 'object', + 'properties' => [ + 'Path' => ['description' => '路径', 'type' => 'string', 'example' => '/usr/bin/'."\n"], + 'Mode' => ['description' => 'ConfigFileVolume目录权限。', 'type' => 'integer', 'format' => 'int32', 'example' => '0644'], + 'Content' => ['description' => '配置文件内容。', 'type' => 'string', 'example' => 'bGl1bWk='."\n"], ], ], ], + 'EmptyDirVolumeSizeLimit' => ['description' => 'EmptyDir数据卷的大小。', 'type' => 'string', 'example' => '256Mi'], + 'HostPathVolumeType' => ['description' => 'HostPath Volume的类型。', 'type' => 'string', 'example' => 'Directory'], + 'HostPathVolumePath' => ['description' => 'HostPath Volume在主机上的目录路径。', 'type' => 'string', 'example' => '/pod/data'."\n"], ], ], - 'DnsConfigNameServers' => [ - 'description' => 'DNS服务器的IP地址列表。', - 'type' => 'array', - 'items' => [ - 'description' => 'DNS服务器的IP地址列表。', - 'type' => 'string', - 'example' => '172.10.*.**', + ], + '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'."\n"], + 'UserName' => ['description' => '镜像仓库用户名。', 'type' => 'string', 'example' => 'yourusername'], ], ], - 'DnsConfigSearches' => [ - 'description' => 'DNS搜索域列表。', - 'type' => 'array', - 'items' => [ - 'description' => 'DNS搜索域列表。', - 'type' => 'string', - 'example' => 'svc.local.kubenetes', + ], + 'DnsConfigOptions' => [ + 'description' => 'DNS配置选项。', + 'type' => 'array', + 'items' => [ + 'description' => 'DNS配置选项。', + 'type' => 'object', + 'properties' => [ + 'Name' => ['description' => '对象的变量名。', 'type' => 'string', 'example' => 'name'], + 'Value' => ['description' => '对象变量值。', 'type' => 'string', 'example' => 'value'], ], ], - 'NtpServers' => [ - 'description' => 'NTP服务器。', - 'type' => 'array', - 'items' => [ - 'description' => 'NTP服务器。', - 'type' => 'string', - 'example' => 'ntp.cloud.aliyuncs.com', + ], + 'HostAliases' => [ + 'description' => '自定义实例内一个容器的Hostname映射。', + 'type' => 'array', + 'items' => [ + 'description' => '自定义实例内一个容器的Hostname映射。', + 'type' => 'object', + 'properties' => [ + 'Ip' => ['description' => '添加IP地址。', 'type' => 'string', 'example' => '192.0.XX.XX'."\n"], + 'Hostnames' => [ + 'description' => '添加主机名。', + 'type' => 'array', + 'items' => ['description' => '添加主机名。', 'type' => 'string', 'example' => '[\'hehe.com\', \'haha.com\']'."\n"], + ], ], ], - 'LifecycleState' => [ - 'description' => '伸缩配置在伸缩组中的状态。可能值:'."\n" - ."\n" - .'- Active:生效状态。伸缩组会使用处于生效状态的伸缩配置自动创建ECS实例。'."\n" - .'- Inacitve:未生效状态。处于未生效状态的伸缩配置存在于伸缩组中,但伸缩组不会使用此类伸缩配置自动创建ECS实例。', - 'type' => 'string', - 'example' => 'Active', - ], - 'CostOptimization' => [ - 'description' => '是否开启成本优化开关。可能值:'."\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', + ], + 'SecurityContextSysCtls' => [ + 'description' => '实例运行的安全上下文的系统信息。', + 'type' => 'array', + 'items' => [ + 'description' => '实例运行的安全上下文的变量值。', + 'type' => 'object', + 'properties' => [ + 'Name' => ['description' => '实例运行的安全上下文系统名称。', 'type' => 'string', 'example' => 'kernel.msgmax'."\n"], + 'Value' => ['description' => '实例运行的安全上下文的变量值。', 'type' => 'string', 'example' => '65536'], ], ], - '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" - ."\n" - .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '40000', - ], - 'DataCacheBurstingEnabled' => [ - 'description' => '数据缓存使用ESSD AutoPL云盘时,是否开启Burst(性能突发)。可能值:'."\n" - ."\n" - .'- true:开启。'."\n" - .'- false:未开启。'."\n" - .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'GpuDriverVersion' => [ - 'description' => '指定 GPU 驱动版本。', - 'type' => 'string', - 'example' => 'tesla=470.82.01', + ], + 'AcrRegistryInfos' => [ + 'description' => 'ACR企业版实例的信息。', + 'type' => 'array', + 'items' => [ + 'description' => 'ACR企业版实例的信息。', + 'type' => 'object', + 'properties' => [ + 'InstanceId' => ['description' => 'ACR企业版实例ID。', 'type' => 'string', 'example' => 'cri-nwj395hgf6f3****'."\n"], + 'InstanceName' => ['description' => 'ACR企业版实例的名称。', 'type' => 'string', 'example' => 'acr-test'."\n"], + 'RegionId' => ['description' => 'ACR企业版实例所属地域。', 'type' => 'string', 'example' => 'cn-hangzhou'."\n"], + 'Domains' => [ + 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。', + 'type' => 'array', + 'items' => ['description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。', 'type' => 'string', 'example' => '*****-****-registry.cn-beijing.cr.aliyuncs.com'."\n"], + ], + ], ], ], + 'DnsConfigNameServers' => [ + 'description' => 'DNS服务器的IP地址列表。', + 'type' => 'array', + 'items' => ['description' => 'DNS服务器的IP地址列表。', 'type' => 'string', 'example' => '172.10.*.**'."\n"], + ], + 'DnsConfigSearches' => [ + 'description' => 'DNS搜索域列表。', + 'type' => 'array', + 'items' => ['description' => 'DNS搜索域列表。', 'type' => 'string', 'example' => 'svc.local.kubenetes'."\n"], + ], + 'NtpServers' => [ + 'description' => 'NTP服务器。', + 'type' => 'array', + 'items' => ['description' => 'NTP服务器。', 'type' => 'string', 'example' => 'ntp.cloud.aliyuncs.com'."\n"], + ], + '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'."\n"], + ], + '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'."\n"], + 'DataCacheProvisionedIops' => ['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', 'example' => '40000'], + 'DataCacheBurstingEnabled' => ['description' => '数据缓存使用ESSD AutoPL云盘时,是否开启Burst(性能突发)。取值范围:'."\n" + ."\n" + .'- true:开启。'."\n" + .'- false:未开启。'."\n" + ."\n" + .'默认值:false。'."\n" + ."\n" + .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~122389~~)。', 'type' => 'boolean', 'example' => 'false'], + 'EipPublicIpAddressPoolId' => ['description' => 'IP地址池ID。', 'type' => 'string', 'example' => 'pippool-bp187arfugi543y1s****'], + 'EipCommonBandwidthPackage' => ['description' => '绑定已有的共享带宽包。', 'type' => 'string', 'example' => 'cbwp-bp1rxai1z4b1an454xl8m'], + 'EipISP' => ['description' => '设置EIP的线路类型。取值范围:'."\n" + ."\n" + .'- BGP(默认值):BGP(多线)线路'."\n" + .'- BGP_PRO:BGP(多线)精品线路', 'type' => 'string', 'example' => 'BGP'], + 'ComputeCategory' => [ + 'description' => '算力类别。取值为economy时,表示查询经济型规格的实例。', + 'type' => 'array', + 'items' => ['description' => '指定算力类别。', 'type' => 'string', 'example' => 'economy'], + ], ], ], + 'Output' => ['description' => '伸缩配置YAML输出内容。', 'type' => 'string', 'example' => 'apiVersion: apps/v1'."\n" + .'kind: Deployment'."\n" + .'metadata:'."\n" + .' name: nginx-deployment'."\n" + .' labels:'."\n" + .' app: nginx'."\n" + .' spec:'."\n" + .' replicas: 3'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: nginx'."\n" + .' template:'."\n" + .' metadata:'."\n" + .' labels:'."\n" + .' app: nginx'."\n" + .' annotations:'."\n" + .' k8s.aliyun.com/eip-bandwidth: 10'."\n" + .' k8s.aliyun.com/eci-with-eip: true'."\n" + .' spec:'."\n" + .' containers:'."\n" + .' - name: nginx'."\n" + .' image: nginx:1.14.2'."\n" + .' ports:'."\n" + .' - containerPort: 80'], ], ], ], ], 'errorCodes' => [ 403 => [ - [ - 'errorCode' => 'Forbidden.RiskControl', - 'errorMessage' => 'Forbidden.RiskControl', + ['errorCode' => 'Forbidden.RiskControl', 'errorMessage' => 'Forbidden.RiskControl', 'description' => ''], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6EF9BFEE-FE07-4627-B8FB-14326FB9****\\",\\n \\"ScalingConfiguration\\": {\\n \\"CreationTime\\": \\"2023-05-10T02:39:15Z\\",\\n \\"ScalingConfigurationName\\": \\"scalingconfi****\\",\\n \\"SecurityGroupId\\": \\"sg-bp18kz60mefs****\\",\\n \\"ActiveDeadlineSeconds\\": 60,\\n \\"SpotStrategy\\": \\"NoSpot\\",\\n \\"AutoCreateEip\\": true,\\n \\"ScalingGroupId\\": \\"asg-bp1frlu04fq4zv65b1bh\\",\\n \\"EphemeralStorage\\": 20,\\n \\"Ipv6AddressCount\\": 1,\\n \\"Description\\": \\"This is an example.\\",\\n \\"EipBandwidth\\": 5,\\n \\"ImageSnapshotId\\": \\"imc-2zebxkiifuyzzlhl****\\",\\n \\"Memory\\": 4,\\n \\"RestartPolicy\\": \\"Always\\",\\n \\"SpotPriceLimit\\": 0.025,\\n \\"IngressBandwidth\\": 1024000,\\n \\"CpuOptionsThreadsPerCore\\": 2,\\n \\"TerminationGracePeriodSeconds\\": 60,\\n \\"LoadBalancerWeight\\": 50,\\n \\"DnsPolicy\\": \\"Default\\",\\n \\"HostName\\": \\"hostname\\",\\n \\"EgressBandwidth\\": 10485760,\\n \\"RegionId\\": \\"cn-shanghai\\",\\n \\"RamRoleName\\": \\"ram:PassRole\\\\n\\",\\n \\"Cpu\\": 2,\\n \\"AutoMatchImageCache\\": true,\\n \\"ResourceGroupId\\": \\"rg-acfmwozpmmksakq\\",\\n \\"ContainerGroupName\\": \\"test\\",\\n \\"ScalingConfigurationId\\": \\"asc-2zec39vg84usxdocme6a\\",\\n \\"CpuOptionsCore\\": 2,\\n \\"SlsEnable\\": false,\\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\\": true,\\n \\"LivenessProbeHttpGetPort\\": 8080,\\n \\"Gpu\\": 2,\\n \\"ReadinessProbeInitialDelaySeconds\\": 5,\\n \\"Stdin\\": true,\\n \\"Memory\\": 2,\\n \\"Name\\": \\"nginx\\",\\n \\"SecurityContextReadOnlyRootFilesystem\\": true,\\n \\"LivenessProbeHttpGetPath\\": \\"/usr/nginx/\\\\n\\",\\n \\"Image\\": \\"registry-vpc.aliyuncs.com/eci_open/alpine:3.5\\",\\n \\"ReadinessProbeTcpSocketPort\\": 80,\\n \\"ReadinessProbeHttpGetScheme\\": \\"HTTP\\",\\n \\"ReadinessProbeHttpGetPort\\": 80,\\n \\"LivenessProbeSuccessThreshold\\": 1,\\n \\"ReadinessProbeTimeoutSeconds\\": 5,\\n \\"SecurityContextRunAsUser\\": 1000,\\n \\"LivenessProbeInitialDelaySeconds\\": 10,\\n \\"ReadinessProbePeriodSeconds\\": 5,\\n \\"ImagePullPolicy\\": \\"Always\\",\\n \\"StdinOnce\\": true,\\n \\"Cpu\\": 2,\\n \\"LivenessProbeTimeoutSeconds\\": 10,\\n \\"ReadinessProbeFailureThreshold\\": 3,\\n \\"LivenessProbeFailureThreshold\\": 3,\\n \\"Ports\\": [\\n {\\n \\"Port\\": 8083,\\n \\"Protocol\\": \\"TCP\\"\\n }\\n ],\\n \\"VolumeMounts\\": [\\n {\\n \\"ReadOnly\\": true,\\n \\"SubPath\\": \\"data2/\\\\n\\",\\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 \\"FieldRefFieldPath\\": \\"fieldPath\\"\\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 ],\\n \\"SecurityContextCapabilityAdds\\": [\\n \\"NET_ADMIN\\"\\n ],\\n \\"LifecyclePostStartHandlerHttpGetHost\\": \\"10.0.XX.XX\\",\\n \\"LifecyclePostStartHandlerHttpGetPort\\": 80,\\n \\"LifecyclePostStartHandlerHttpGetPath\\": \\"/healthyz\\\\n\\",\\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\\",\\n \\"LifecyclePostStartHandlerTcpSocketPort\\": 80,\\n \\"LifecyclePreStopHandlerHttpGetHost\\": \\"10.0.XX.XX\\\\n\\",\\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\\": \\"/www\\",\\n \\"Cpu\\": 0.5,\\n \\"Image\\": \\"registry-vpc.cn-hongkong.aliyuncs.com/eci_open/nginx:alpine\\",\\n \\"Gpu\\": 1,\\n \\"SecurityContextRunAsUser\\": \\"1000\\",\\n \\"Memory\\": 1,\\n \\"Name\\": \\"test-init\\\\n\\",\\n \\"InitContainerEnvironmentVars\\": [\\n {\\n \\"Key\\": \\"PATH\\",\\n \\"Value\\": \\"/usr/local/bin\\\\n\\",\\n \\"FieldRefFieldPath\\": \\"path\\"\\n }\\n ],\\n \\"InitContainerPorts\\": [\\n {\\n \\"Port\\": 1024,\\n \\"Protocol\\": \\"UDP\\"\\n }\\n ],\\n \\"InitContainerVolumeMounts\\": [\\n {\\n \\"ReadOnly\\": false,\\n \\"SubPath\\": \\"/usr/sub/\\",\\n \\"Name\\": \\"test-empty\\\\n\\",\\n \\"MountPropagation\\": \\"None\\",\\n \\"MountPath\\": \\"/usr/share/\\\\n\\"\\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\\": \\"d-xx\\",\\n \\"DiskVolumeFsType\\": \\"xfs\\",\\n \\"EmptyDirVolumeMedium\\": \\"memory\\",\\n \\"NFSVolumePath\\": \\"/share\\\\n\\",\\n \\"DiskVolumeDiskSize\\": 15,\\n \\"NFSVolumeReadOnly\\": false,\\n \\"FlexVolumeFsType\\": \\"ext4\\",\\n \\"ConfigFileVolumeDefaultMode\\": 644,\\n \\"FlexVolumeDriver\\": \\"flexvolume\\",\\n \\"FlexVolumeOptions\\": \\"{\\\\\\"volumeId\\\\\\":\\\\\\"d-2zehdahrwoa7srg****\\\\\\",\\\\\\"performanceLevel\\\\\\": \\\\\\"PL2\\\\\\"}\\\\n\\",\\n \\"NFSVolumeServer\\": \\"3f9cd4a596-naw76.cn-shanghai.nas.aliyuncs.com\\\\n\\",\\n \\"Name\\": \\"default-volume1\\\\n\\",\\n \\"ConfigFileVolumeConfigFileToPaths\\": [\\n {\\n \\"Path\\": \\"/usr/bin/\\\\n\\",\\n \\"Mode\\": 644,\\n \\"Content\\": \\"bGl1bWk=\\\\n\\"\\n }\\n ],\\n \\"EmptyDirVolumeSizeLimit\\": \\"256Mi\\",\\n \\"HostPathVolumeType\\": \\"Directory\\",\\n \\"HostPathVolumePath\\": \\"/pod/data\\\\n\\"\\n }\\n ],\\n \\"ImageRegistryCredentials\\": [\\n {\\n \\"Password\\": \\"yourpaasword\\",\\n \\"Server\\": \\"registry-vpc.cn-shanghai.aliyuncs.com\\\\n\\",\\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\\",\\n \\"Hostnames\\": [\\n \\"[\'hehe.com\', \'haha.com\']\\\\n\\"\\n ]\\n }\\n ],\\n \\"SecurityContextSysCtls\\": [\\n {\\n \\"Name\\": \\"kernel.msgmax\\\\n\\",\\n \\"Value\\": \\"65536\\"\\n }\\n ],\\n \\"AcrRegistryInfos\\": [\\n {\\n \\"InstanceId\\": \\"cri-nwj395hgf6f3****\\\\n\\",\\n \\"InstanceName\\": \\"acr-test\\\\n\\",\\n \\"RegionId\\": \\"cn-hangzhou\\\\n\\",\\n \\"Domains\\": [\\n \\"*****-****-registry.cn-beijing.cr.aliyuncs.com\\\\n\\"\\n ]\\n }\\n ],\\n \\"DnsConfigNameServers\\": [\\n \\"172.10.*.**\\\\n\\"\\n ],\\n \\"DnsConfigSearches\\": [\\n \\"svc.local.kubenetes\\\\n\\"\\n ],\\n \\"NtpServers\\": [\\n \\"ntp.cloud.aliyuncs.com\\\\n\\"\\n ],\\n \\"LifecycleState\\": \\"Active\\",\\n \\"CostOptimization\\": false,\\n \\"InstanceFamilyLevel\\": \\"EnterpriseLevel\\",\\n \\"InstanceTypes\\": [\\n \\"ecs.g6.large\\\\n\\"\\n ],\\n \\"DataCacheBucket\\": \\"default\\",\\n \\"DataCachePL\\": \\"PL1\\\\n\\",\\n \\"DataCacheProvisionedIops\\": 40000,\\n \\"DataCacheBurstingEnabled\\": false,\\n \\"EipPublicIpAddressPoolId\\": \\"pippool-bp187arfugi543y1s****\\",\\n \\"EipCommonBandwidthPackage\\": \\"cbwp-bp1rxai1z4b1an454xl8m\\",\\n \\"EipISP\\": \\"BGP\\",\\n \\"ComputeCategory\\": [\\n \\"economy\\"\\n ]\\n },\\n \\"Output\\": \\"apiVersion: apps/v1\\\\nkind: Deployment\\\\nmetadata:\\\\n name: nginx-deployment\\\\n labels:\\\\n app: nginx\\\\n spec:\\\\n replicas: 3\\\\n selector:\\\\n matchLabels:\\\\n app: nginx\\\\n template:\\\\n metadata:\\\\n labels:\\\\n app: nginx\\\\n annotations:\\\\n k8s.aliyun.com/eip-bandwidth: 10\\\\n k8s.aliyun.com/eci-with-eip: true\\\\n spec:\\\\n containers:\\\\n - name: nginx\\\\n image: nginx:1.14.2\\\\n ports:\\\\n - containerPort: 80\\"\\n}","type":"json"}]', + 'title' => '查询ECI类型伸缩配置信息', + 'summary' => '调用API DescribeEciScalingConfigurationDetail,通过伸缩组的伸缩配置ID查询对应的伸缩配置信息(例如临时存储空间大小、IPv6地址数、弹性公网IP的带宽等),支持输出为YAML格式。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeEciScalingConfigurationDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\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 \\"Description\\": \\"This is an example.\\",\\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 \\"SlsEnable\\": true,\\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 \\"SecurityContextReadOnlyRootFilesystem\\": true,\\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 \\"FieldRefFieldPath\\": \\"path\\"\\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\\",\\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 \\"FieldRefFieldPath\\": \\"path\\"\\n }\\n ],\\n \\"InitContainerPorts\\": [\\n {\\n \\"Port\\": 1,\\n \\"Protocol\\": \\"TCP\\"\\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\\": \\"3f9cd4a596-naw76.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\\": \\"256Mi\\",\\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\\\\t\\\\n\\"\\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}","type":"json"}]', - 'title' => '查询ECI类型伸缩组的伸缩配置信息', ], - 'DescribeEciScalingConfigurationDetail' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeEciScalingConfigurations' => [ + 'summary' => '通过调用DescribeEciScalingConfigurations,并指定伸缩组的ID、伸缩配置的ID或名称等参数查询ECI类型的伸缩配置信息,例如实例的抢占策略、容器组的实例规格、容器镜像的拉取策略、ECI实例作为后端服务器时的权重等。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -14911,3280 +7199,1664 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'abilityTreeCode' => '212769', - 'abilityTreeNodes' => [ - 'FEATUREessU7F1S4', - ], + 'abilityTreeCode' => '125390', + 'abilityTreeNodes' => ['FEATUREessU7F1S4'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩规则所属伸缩组的地域ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-beijing', - ], + '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-bp1ffogfdauy0jw0****', - ], + 'schema' => ['description' => '伸缩组的ID,您可以查询该伸缩组下所有的伸缩配置。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp17pelvl720x3v7****'], ], [ - 'name' => 'ScalingConfigurationId', + 'name' => 'ScalingConfigurationIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'ECI类型伸缩组的伸缩配置ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'asc-bp1ffogfdauy0nu5****', + 'description' => '待查询伸缩配置的ID列表,ID数量取值范围:1~10。'."\n" + ."\n" + .'查询结果包括生效和未生效的伸缩配置,并通过返回参数`LifecycleState`进行标识。', + 'type' => 'array', + 'items' => ['description' => '待查询伸缩配置的ID。'."\n" + ."\n" + .'查询结果包括生效和未生效的伸缩配置,并通过返回参数LifecycleState进行标识。', 'type' => 'string', 'required' => false, 'example' => ' asc-bp17pelvl720x5ub****'], + 'required' => false, + 'maxItems' => 10, ], ], [ - 'name' => 'OutputFormat', + 'name' => 'ScalingConfigurationNames', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'Output输出格式,现仅支持YAML。', - 'type' => 'string', + 'description' => '待查询伸缩配置的名称列表,名称数量的取值范围:1~10。'."\n" + ."\n" + .'查询结果会忽略失效的伸缩配置名称,并且不报错。', + 'type' => 'array', + 'items' => ['description' => '待查询伸缩配置的名称。'."\n" + ."\n" + .'查询结果会忽略失效的伸缩配置名称,并且不报错。', 'type' => 'string', 'required' => false, 'example' => 'scalingcon**** '."\n"], 'required' => false, - 'enumValueTitles' => [ - 'YAML' => 'YAML', - ], - 'example' => 'YAML', + 'maxItems' => 10, ], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '伸缩配置相关信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '6EF9BFEE-FE07-4627-B8FB-14326FB9****', - ], - 'ScalingConfiguration' => [ - 'description' => '伸缩配置信息。', - 'type' => 'object', - 'properties' => [ - 'CreationTime' => [ - 'description' => '伸缩配置的创建时间。', - 'type' => 'string', - 'example' => '2023-05-10T02:39:15Z', - ], - 'ScalingConfigurationName' => [ - 'description' => '伸缩配置的名称。', - 'type' => 'string', - 'example' => 'scalingconfi****', - ], - 'SecurityGroupId' => [ - 'description' => 'ECI实例所属的安全组的ID,同一个安全组内的ECI实例可以互相访问。', - 'type' => 'string', - 'example' => 'sg-bp18kz60mefs****', - ], - 'ActiveDeadlineSeconds' => [ - 'description' => '有效期限。单位为秒。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '60', - ], - 'SpotStrategy' => [ - 'description' => '实例的抢占策略。可能值:'."\n" + '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-A3DC0DE3C83E'], + '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' => '伸缩配置的名称。'."\n" + ."\n", '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-bp1frlu04fq4zv65b1bh', - ], - 'EphemeralStorage' => [ - 'description' => '临时存储空间大小。单位:GiB。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - 'Ipv6AddressCount' => [ - 'description' => 'IPv6地址数。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Description' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'example' => 'This is an example.', - ], - 'EipBandwidth' => [ - 'description' => '弹性公网IP的带宽。默认为5 M。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'ImageSnapshotId' => [ - 'description' => '镜像缓存ID。', - 'type' => 'string', - 'example' => 'imc-2zebxkiifuyzzlhl****', - ], - 'Memory' => [ - 'description' => '内存大小。单位:GiB。'."\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'], + 'Description' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'example' => 'This is an example.'], + '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' => '4', - ], - 'RestartPolicy' => [ - 'description' => '容器组的重启策略。可能值:'."\n" + .'> 该区间配置效果仅在成本优化模式下且伸缩配置未设置实例规格时生效。', 'type' => 'number', 'format' => 'float', 'example' => '16'], + 'RestartPolicy' => ['description' => '容器组的重启策略。可能值:'."\n" ."\n" .'- Never:不重启。'."\n" .'- Always:始终重启。'."\n" - .'- OnFailure:失败时重启。', - 'type' => 'string', - 'example' => 'Always', - ], - '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。'."\n" + .'- OnFailure:失败时重启。', 'type' => 'string', 'example' => 'Never'], + 'SpotPriceLimit' => ['description' => '抢占式实例的每小时最高价格。'."\n" ."\n" - .'默认值:50。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '50', - ], - 'DnsPolicy' => [ - 'description' => 'DNS策略。', - 'type' => 'string', - 'example' => 'Default', - ], - 'HostName' => [ - 'description' => '主机名。', - 'type' => 'string', - 'example' => 'hostname', - ], - 'EgressBandwidth' => [ - 'description' => '出方向带宽限制。单位:Byte。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10485760', - ], - 'RegionId' => [ - 'description' => '伸缩规则所属伸缩组的地域ID。', - 'type' => 'string', - 'example' => 'cn-shanghai', - ], - 'RamRoleName' => [ - 'description' => '实例RAM角色名称,ECI与ECS共用实例RAM角色,具体操作,请参见[通过API使用实例RAM角色](~~61178~~)。', - 'type' => 'string', - 'example' => 'ram:PassRole'."\n", - ], - 'Cpu' => [ - 'description' => '实例级别vCPU大小。单位:核。', - 'type' => 'number', - 'format' => 'float', - 'example' => '2.0', - ], - 'AutoMatchImageCache' => [ - 'description' => '是否自动匹配镜像缓存。'."\n" - .'默认值:false。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'ResourceGroupId' => [ - 'description' => '资源组ID', - 'type' => 'string', - 'example' => 'rg-acfmwozpmmksakq', - ], - 'ContainerGroupName' => [ - 'description' => '容器组实例名称。', - 'type' => 'string', - 'example' => 'test', - ], - 'ScalingConfigurationId' => [ - 'description' => '伸缩配置的ID。', - 'type' => 'string', - 'example' => 'asc-2zec39vg84usxdocme6a', - ], - 'CpuOptionsCore' => [ - 'description' => 'CPU物理核心数。仅部分规格支持自定义设置。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'SlsEnable' => [ - 'description' => '开启用户日志收集,默认为**false**。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'Containers' => [ - 'description' => '实例包含的容器列表。', - 'type' => 'array', - 'items' => [ - 'description' => '实例包含的容器列表。', - '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' => 'TcpSocket的端口号。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '80', - ], - 'LivenessProbeHttpGetScheme' => [ - 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求对应的协议类型,取值范围:'."\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" + .'默认值: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'], + 'SlsEnable' => ['description' => '>该参数未开放使用。', 'type' => 'boolean', 'example' => 'False'], + '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' => 'TcpSocket的端口号。', '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" + .'- HTTPS。', 'type' => 'string', 'example' => 'HTTP'], + 'WorkingDir' => ['description' => '容器内工作目录', 'type' => 'string', 'example' => '/usr/local/nginx'], + 'Tty' => ['description' => '是否开启交互。取值范围:'."\n" .'- true:开启。'."\n" .'- false:未开启。'."\n" ."\n" .'例如:当Command配置为/bin/bash时,需要配置为true。'."\n" ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'LivenessProbeHttpGetPort' => [ - 'description' => 'HttpGet检测的端口。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '8080', - ], - 'Gpu' => [ - 'description' => 'GPU个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'ReadinessProbeInitialDelaySeconds' => [ - 'description' => '检查开始执行的时间,以容器启动完成为起点计算。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'Stdin' => [ - 'description' => '此容器是否应在容器运行时为标准输入分配缓冲区。如果未设置,则容器中标准输入的读取值将导致EOF。默认为false。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Memory' => [ - 'description' => '内存大小。', - 'type' => 'number', - 'format' => 'float', - 'example' => '2.0', - ], - 'Name' => [ - 'description' => '容器名称。', - 'type' => 'string', - 'example' => 'nginx', - ], - 'SecurityContextReadOnlyRootFilesystem' => [ - 'description' => '是否只读根文件系统,目前仅支持true。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'LivenessProbeHttpGetPath' => [ - 'description' => 'HttpGet检测的路径。', - 'type' => 'string', - 'example' => '/usr/nginx/'."\n", - ], - 'Image' => [ - 'description' => '容器镜像。'."\n" - ."\n", - 'type' => 'string', - 'example' => 'registry-vpc.aliyuncs.com/eci_open/alpine:3.5', - ], - 'ReadinessProbeTcpSocketPort' => [ - 'description' => 'TcpSocket的端口号。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '80', - ], - 'ReadinessProbeHttpGetScheme' => [ - 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求对应的协议类型,取值范围:'."\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。默认为false。', 'type' => 'boolean', 'example' => 'true'], + 'Memory' => ['description' => '容器内存大小。', 'type' => 'number', 'format' => 'float', 'example' => '2.0'], + 'Name' => ['description' => '自定义的容器名称。', 'type' => 'string', 'example' => 'nginx'], + 'SecurityContextReadOnlyRootFilesystem' => ['description' => '是否只读根文件系统,目前仅支持true。', 'type' => 'boolean', 'example' => 'true'], + 'LivenessProbeHttpGetPath' => ['description' => 'HttpGet检测的路径。', 'type' => 'string', 'example' => '/usr/nginx/'], + 'Image' => ['description' => '容器镜像。', 'type' => 'string', 'example' => 'mysql'], + 'ReadinessProbeTcpSocketPort' => ['description' => 'TcpSocket的端口号。', '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' => '80', - ], - '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' => '5', - ], - 'ImagePullPolicy' => [ - 'description' => '镜像拉取策略。', - 'type' => 'string', - 'example' => 'Always', - ], - 'StdinOnce' => [ - 'description' => '当标准输入为true时,标准输入流将在多个附加会话中保持开启状态。'."\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" - .'如果StdinOnce设为true,标准输入在容器开启时被打开,在首个客户端附加到标准输入之前都为空,然后会一直保持开启状态,接收数据,直到客户端连接断开,此时标准输入被关闭,在容器重启前一直保持关闭状态。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Cpu' => [ - 'description' => '实例级别vCPU大小。', - 'type' => 'number', - 'format' => 'float', - 'example' => '2', - ], - 'LivenessProbeTimeoutSeconds' => [ - 'description' => '检查超时的时间,默认为1秒,最小值为1秒。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'ReadinessProbeFailureThreshold' => [ - 'description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。'."\n" + .'- Alway:总是拉取。每次都拉取镜像。'."\n" + .'- IfNotPresent:按需拉取。优先使用本地镜像,本地没有镜像时则拉取镜像。'."\n" + .'- Never:从不拉取。使用本地镜像,不拉取镜像。', 'type' => 'string', 'example' => 'Always'], + 'StdinOnce' => ['description' => '当标准输入为true时,标准输入流将在多个附加会话中保持开启状态。'."\n" ."\n" - .'默认值:3。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'LivenessProbeFailureThreshold' => [ - 'description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。'."\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', - ], - 'Ports' => [ - 'description' => '暴露端口和协议。', - 'type' => 'array', - 'items' => [ - 'description' => '暴露端口和协议。', - 'type' => 'object', - 'properties' => [ - 'Port' => [ - 'description' => '端口号。可能值:1~65535。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '8083', - ], - 'Protocol' => [ - 'description' => '协议类型。取值范围:'."\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', + .'- UDP。', 'type' => 'string', 'example' => 'TCP'], ], ], ], - ], - 'VolumeMounts' => [ - 'description' => '挂载数据卷。', - 'type' => 'array', - 'items' => [ - 'description' => '挂载数据卷。', - 'type' => 'object', - 'properties' => [ - 'ReadOnly' => [ - 'description' => '数据卷是否只读。'."\n" + 'VolumeMounts' => [ + 'description' => '挂载数据卷列表。', + 'type' => 'array', + 'items' => [ + 'description' => '挂载数据卷。', + 'type' => 'object', + 'properties' => [ + 'ReadOnly' => ['description' => '数据卷是否只读。'."\n" ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'SubPath' => [ - 'description' => '数据卷子路径。', - 'type' => 'string', - 'example' => 'data2/'."\n", - ], - 'Name' => [ - 'description' => '挂载数据卷的名称。', - 'type' => 'string', - 'example' => 'default-volume1', - ], - 'MountPropagation' => [ - 'description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。可能值:'."\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的所有容器。'."\n" ."\n" - .'默认值:None。', - 'type' => 'string', - 'example' => 'None', - ], - 'MountPath' => [ - 'description' => '容器挂载数据卷的目录。'."\n" + .'默认值:None。', 'type' => 'string', 'example' => 'None'], + 'MountPath' => ['description' => '容器挂载数据卷的目录。'."\n" ."\n" .'>容器挂载目录下的内容会被Volume的内容直接覆盖,请您谨慎使用。'."\n" - .'>', - 'type' => 'string', - 'example' => '/pod/data', + .'>', '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/'."\n", - ], - 'FieldRefFieldPath' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'example' => 'fieldPath', + 'EnvironmentVars' => [ + 'description' => '环境变量的信息列表。', + 'type' => 'array', + 'items' => [ + 'description' => '环境变量的信息。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '环境变量名。', 'type' => 'string', 'example' => 'PATH'], + 'Value' => ['description' => '环境变量值。', 'type' => 'string', 'example' => '/usr/bin/'], + 'FieldRefFieldPath' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'example' => 'path'], ], ], ], - ], - 'Commands' => [ - 'description' => '容器启动指令。'."\n" - ."\n", - 'type' => 'array', - 'items' => [ - 'description' => '容器启动指令。'."\n" - ."\n", - 'type' => 'string', - 'example' => 'sleep', - ], - ], - 'LivenessProbeExecCommands' => [ - 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', - 'type' => 'array', - 'items' => [ - 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', - 'type' => 'string', - 'example' => 'cat /tmp/healthy', + 'Commands' => [ + 'description' => '容器启动命令列表。最多20个。每个命令最多包含256个字符。', + 'type' => 'array', + 'items' => ['description' => '容器启动命令。最多20个。每个命令最多包含256个字符。', 'type' => 'string', 'example' => 'sleep'], ], - ], - 'Args' => [ - 'description' => '容器启动参数。'."\n" - ."\n", - 'type' => 'array', - 'items' => [ - 'description' => '容器启动参数。'."\n" - ."\n", - 'type' => 'string', - 'example' => '100', + 'LivenessProbeExecCommands' => [ + 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令列表。', + 'type' => 'array', + 'items' => ['description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', 'type' => 'string', 'example' => 'cat/tmp/healthy'], ], - ], - 'ReadinessProbeExecCommands' => [ - 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', - 'type' => 'array', - 'items' => [ - 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', - 'type' => 'string', - 'example' => 'cat /tmp/healthy'."\n", + 'Args' => [ + 'description' => '容器启动命令对应的参数列表。最多10个。', + 'type' => 'array', + 'items' => ['description' => '容器启动命令对应的参数。最多10个。', 'type' => 'string', 'example' => '100'], ], - ], - 'SecurityContextCapabilityAdds' => [ - 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。', - 'type' => 'array', - 'items' => [ - 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。', - 'type' => 'string', - 'example' => 'NET_ADMIN', + 'ReadinessProbeExecCommands' => [ + 'description' => '使用命令行方式进行健康检查时,在容器内执行的命令列表。', + 'type' => 'array', + 'items' => ['description' => '使用命令行方式进行健康检查时,在容器内执行的命令。', 'type' => 'string', 'example' => 'cat/tmp/healthy'], ], - ], - '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'."\n", - ], - 'LifecyclePostStartHandlerHttpGetScheme' => [ - 'description' => '使用HTTP请求方式设置postStart回调函数时,HTTP Get请求对应的协议类型。', - 'type' => 'string', - 'example' => 'HTTP', - ], - 'LifecyclePostStartHandlerExecs' => [ - 'description' => '使用命令行方式设置postStart回调函数时,在容器内执行的命令。', - 'type' => 'array', - 'items' => [ + 'SecurityContextCapabilityAdds' => [ + 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n" + ."\n" + .'> NET_RAW默认不支持,需提交工单申请。', + 'type' => 'array', + 'items' => ['description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n" + ."\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' => 'string', - 'example' => '["/bin/sh", "-c","echo Hello from the preStop handler > /usr/share/message"]', + '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'."\n", - ], - 'LifecyclePostStartHandlerTcpSocketPort' => [ - 'description' => '使用 TCPSocket 方式设置postStart回调函数时,TCP Socket检测的端口。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '80', - ], - 'LifecyclePreStopHandlerHttpGetHost' => [ - 'description' => '使用HTTP请求方式设置preStop回调函数时,接收HTTP Get请求的主机地址。', - 'type' => 'string', - 'example' => '10.0.XX.XX'."\n", - ], - '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' => [ + 'LifecyclePostStartHandlerTcpSocketHost' => ['description' => '使用TCP Socket方式设置postStart回调函数时,TCP Socket检测的主机地址。', 'type' => 'string', 'example' => '10.0.XX.XX'], + 'LifecyclePostStartHandlerTcpSocketPort' => ['description' => '使用 TCPSocket 方式设置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'."\n"], + 'LifecyclePreStopHandlerHttpGetScheme' => ['description' => '使用HTTP请求方式设置preStop回调函数时,HTTP Get请求对应的协议类型。', 'type' => 'string', 'example' => 'HTTP'], + 'LifecyclePreStopHandlerExecs' => [ 'description' => '使用命令行方式设置preStop回调函数时,在容器内执行的命令。', - 'type' => 'string', - 'example' => '["/bin/sh", "-c","echo Hello from the preStop handler > /usr/share/message"]', + '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' => '使用TCPSocket方式设置preStop回调函数时,TCP Socket检测的端口。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '80', + 'LifecyclePreStopHandlerTcpSocketHost' => ['description' => '使用TCP Socket方式设置preStop回调函数时,TCP Socket检测的主机地址。', 'type' => 'string', 'example' => '10.0.XX.XX'], + 'LifecyclePreStopHandlerTcpSocketPort' => ['description' => '使用TCPSocket方式设置preStop回调函数时,TCP Socket检测的端口。', 'type' => 'integer', 'format' => 'int32', 'example' => '80'], ], ], ], - ], - 'InitContainers' => [ - 'description' => 'init容器列表。', - 'type' => 'array', - 'items' => [ + 'InitContainers' => [ 'description' => 'init容器列表。', - 'type' => 'object', - 'properties' => [ - 'SecurityContextReadOnlyRootFilesystem' => [ - 'description' => '是否只读根文件系统,目前仅支持true。', - 'type' => 'boolean', - ], - 'ImagePullPolicy' => [ - 'description' => '镜像拉取策略。'."\n" - ."\n", - 'type' => 'string', - 'example' => 'Always', - ], - 'WorkingDir' => [ - 'description' => '工作目录。', - 'type' => 'string', - 'example' => '/www', - ], - 'Cpu' => [ - 'description' => '容器CPU核数。', - 'type' => 'number', - 'format' => 'float', - 'example' => '0.5', - ], - 'Image' => [ - 'description' => '容器镜像。', - 'type' => 'string', - 'example' => 'registry-vpc.cn-hongkong.aliyuncs.com/eci_open/nginx:alpine', - ], - 'Gpu' => [ - 'description' => '指定容器使用的GPU个数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'SecurityContextRunAsUser' => [ - 'description' => '设置运行容器的用户ID。', - 'type' => 'string', - 'example' => '1000', - ], - 'Memory' => [ - 'description' => '内存大小。', - 'type' => 'number', - 'format' => 'float', - 'example' => '1.0', - ], - 'Name' => [ - 'description' => '容器名称。', - 'type' => 'string', - 'example' => 'test-init'."\n", - ], - 'InitContainerEnvironmentVars' => [ - 'description' => 'init容器的环境变量信息。', - 'type' => 'array', - 'items' => [ - 'description' => 'init容器的环境变量信息。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '环境变量名。', - 'type' => 'string', - 'example' => 'PATH', - ], - 'Value' => [ - 'description' => '环境变量值。', - 'type' => 'string', - 'example' => '/usr/local/bin'."\n", - ], - 'FieldRefFieldPath' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'example' => 'path', + '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'], + 'FieldRefFieldPath' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'example' => 'path'], ], ], ], - ], - 'InitContainerPorts' => [ - 'description' => 'init容器端口信息。', - 'type' => 'array', - 'items' => [ - 'description' => 'init容器端口信息。', - 'type' => 'object', - 'properties' => [ - 'Port' => [ - 'description' => '端口号。取值范围:1~65535。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1024', - ], - 'Protocol' => [ - 'description' => '协议类型。取值范围:'."\n" + 'InitContainerPorts' => [ + 'description' => 'init容器端口信息的集合。', + 'type' => 'array', + 'items' => [ + 'description' => 'init容器端口信息的集合。', + 'type' => 'object', + 'properties' => [ + 'Port' => ['description' => '端口号。取值范围:1~65535。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'Protocol' => ['description' => '协议类型。取值范围:'."\n" + ."\n" .'- TCP。'."\n" - .'- UDP。', - 'type' => 'string', - 'example' => 'UDP', + .'- UDP。', 'type' => 'string', 'example' => 'TCP'], ], ], ], - ], - 'InitContainerVolumeMounts' => [ - 'description' => 'init容器的挂载点信息数组。', - 'type' => 'array', - 'items' => [ + 'InitContainerVolumeMounts' => [ 'description' => '数据卷挂载。', - 'type' => 'object', - 'properties' => [ - 'ReadOnly' => [ - 'description' => '挂载路径是否只读。'."\n" + 'type' => 'array', + 'items' => [ + 'description' => '数据卷挂载。', + 'type' => 'object', + 'properties' => [ + 'ReadOnly' => ['description' => '挂载路径是否只读。'."\n" ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'SubPath' => [ - 'description' => '数据卷子路径。', - 'type' => 'string', - 'example' => '/usr/sub/', - ], - 'Name' => [ - 'description' => '挂载数据卷的名称。', - 'type' => 'string', - 'example' => 'test-empty'."\n", - ], - 'MountPropagation' => [ - 'description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。可能值:'."\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的所有容器。'."\n" ."\n" - .'默认值:None。', - 'type' => 'string', - 'example' => 'None', - ], - 'MountPath' => [ - 'description' => '容器挂载数据卷的目录。 '."\n" - ."\n" - .'> 容器挂载目录下的内容会被Volume的内容直接覆盖,请谨慎使用。', - 'type' => 'string', - 'example' => '/usr/share/'."\n", + .'默认值:None。', 'type' => 'string', 'example' => 'None'], + 'MountPath' => ['description' => '挂载目录,容器的挂载目录下的内容被volume的内容直接覆盖,所以要慎用。', 'type' => 'string', 'example' => '/usr/share/'], ], ], ], - ], - 'SecurityContextCapabilityAdds' => [ - 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。', - 'type' => 'array', - 'items' => [ + 'SecurityContextCapabilityAdds' => [ 'description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n" ."\n" .'> NET_RAW默认不支持,需提交工单申请。', - 'type' => 'string', - 'example' => 'NET_ADMIN', + 'type' => 'array', + 'items' => ['description' => '为容器内的进程授予某些特定的权限。目前仅支持配置为NET_ADMIN和NET_RAW。'."\n" + ."\n" + .'> NET_RAW默认不支持,需提交工单申请。', 'type' => 'string', 'example' => 'NET_ADMIN'], ], - ], - 'InitContainerCommands' => [ - 'description' => '容器启动指令。', - 'type' => 'array', - 'items' => [ + 'InitContainerCommands' => [ 'description' => '容器启动指令。', - 'type' => 'string', - 'example' => 'sleep', + 'type' => 'array', + 'items' => ['description' => '容器启动指令。', 'type' => 'string', 'example' => 'sleep'], ], - ], - 'InitContainerArgs' => [ - 'description' => '容器启动参数。', - 'type' => 'array', - 'items' => [ + 'InitContainerArgs' => [ 'description' => '容器启动参数。', - 'type' => 'string', - 'example' => '10', + 'type' => 'array', + 'items' => ['description' => '容器启动参数。', 'type' => 'string', 'example' => '10'], ], ], ], ], - ], - 'Tags' => [ - 'description' => '实例的标签键值对。', - 'type' => 'array', - 'items' => [ + 'Tags' => [ 'description' => '实例的标签键值对。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键', - 'type' => 'string', - 'example' => 'version', - ], - 'Value' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => '3', + 'type' => 'array', + 'items' => [ + 'description' => '实例的标签键值对。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。', 'type' => 'string', 'example' => 'version'], + 'Value' => ['description' => '标签值。', 'type' => 'string', 'example' => '3'], ], ], ], - ], - 'Volumes' => [ - 'description' => '数据卷信息。', - 'type' => 'array', - 'items' => [ + 'Volumes' => [ 'description' => '数据卷信息。', - 'type' => 'object', - 'properties' => [ - 'Type' => [ - 'description' => '数据卷类型,可能值:'."\n" + 'type' => 'array', + 'items' => [ + 'description' => '数据卷信息。', + 'type' => 'object', + 'properties' => [ + 'Type' => ['description' => '数据卷类型,可能值:'."\n" .'- EmptyDirVolume。'."\n" .'- NFSVolume。'."\n" .'- ConfigFileVolume。'."\n" - .'- FlexVolume。', - 'type' => 'string', - 'example' => 'EmptyDirVolume', - ], - 'DiskVolumeDiskId' => [ - 'description' => 'DiskVolume的ID。', - 'type' => 'string', - 'example' => 'd-xx', - ], - 'DiskVolumeFsType' => [ - 'description' => 'DiskVolume的系统类型。', - 'type' => 'string', - 'example' => 'xfs', - ], - 'EmptyDirVolumeMedium' => [ - 'description' => 'EmptyDirVolume的存储媒介,默认为空,使用node文件系统。支持memory,表示使用内存。', - 'type' => 'string', - 'example' => 'memory', - ], - 'NFSVolumePath' => [ - 'description' => 'NFS数据卷路径。', - 'type' => 'string', - 'example' => '/share'."\n", - ], - 'DiskVolumeDiskSize' => [ - 'description' => 'DiskVolume的大小。单位为GiB。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '15', - ], - 'NFSVolumeReadOnly' => [ - 'description' => 'NFS数据卷是否只读。'."\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对象选项列表。', - 'type' => 'string', - 'example' => '{"volumeId":"d-2zehdahrwoa7srg****","performanceLevel": "PL2"}'."\n", - ], - 'NFSVolumeServer' => [ - 'description' => 'NFS服务器地址。', - 'type' => 'string', - 'example' => '3f9cd4a596-naw76.cn-shanghai.nas.aliyuncs.com'."\n", - ], - 'Name' => [ - 'description' => '数据卷名称。'."\n" - ."\n", - 'type' => 'string', - 'example' => 'default-volume1'."\n", - ], - 'ConfigFileVolumeConfigFileToPaths' => [ - 'description' => '配置文件路径列表。', - 'type' => 'array', - 'items' => [ + .'默认值: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' => '3f9cd4a596-naw76.cn-shanghai.nas.aliyuncs.com'], + 'Name' => ['description' => '数据卷名称。', 'type' => 'string', 'example' => 'default-volume1'], + 'ConfigFileVolumeConfigFileToPaths' => [ 'description' => '配置文件路径列表。', - 'type' => 'object', - 'properties' => [ - 'Path' => [ - 'description' => '路径', - 'type' => 'string', - 'example' => '/usr/bin/'."\n", - ], - 'Mode' => [ - 'description' => 'ConfigFileVolume目录权限。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0644', - ], - 'Content' => [ - 'description' => '配置文件内容。', - 'type' => 'string', - 'example' => 'bGl1bWk='."\n", + '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' => '256Mi', - ], - 'HostPathVolumeType' => [ - 'description' => 'HostPath Volume的类型。', - 'type' => 'string', - 'example' => 'Directory', - ], - 'HostPathVolumePath' => [ - 'description' => 'HostPath Volume在主机上的目录路径。', - 'type' => 'string', - 'example' => '/pod/data'."\n", + 'EmptyDirVolumeSizeLimit' => ['description' => 'EmptyDir数据卷的大小。', 'type' => 'string', 'example' => '256Mi'], + 'HostPathVolumeType' => [ + 'description' => 'HostPath Volume的类型。', + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => 'Directory', + ], + 'HostPathVolumePath' => ['description' => 'HostPath Volume在主机上的目录路径。', 'type' => 'string', 'example' => '/pod/data'], ], ], ], - ], - 'ImageRegistryCredentials' => [ - 'description' => '镜像仓库信息。', - 'type' => 'array', - 'items' => [ + 'ImageRegistryCredentials' => [ 'description' => '镜像仓库信息。', - 'type' => 'object', - 'properties' => [ - 'Password' => [ - 'description' => '镜像仓库密码。', - 'type' => 'string', - 'example' => 'yourpaasword', - ], - 'Server' => [ - 'description' => '镜像仓库注册地址。', - 'type' => 'string', - 'example' => 'registry-vpc.cn-shanghai.aliyuncs.com'."\n", - ], - 'UserName' => [ - 'description' => '镜像仓库用户名。', - 'type' => 'string', - 'example' => 'yourusername', - ], - ], - ], - ], - 'DnsConfigOptions' => [ - 'description' => 'DNS配置选项。', - 'type' => 'array', - 'items' => [ - 'description' => 'DNS配置选项。', - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'description' => '对象的变量名。', - 'type' => 'string', - 'example' => 'name', - ], - 'Value' => [ - 'description' => '对象变量值。', - 'type' => 'string', - 'example' => 'value', + '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' => '镜像仓库用户名。'."\n" + ."\n", 'type' => 'string', 'example' => 'yourusername '."\n"], ], ], ], - ], - 'HostAliases' => [ - 'description' => '自定义实例内一个容器的Hostname映射。', - 'type' => 'array', - 'items' => [ - 'description' => '自定义实例内一个容器的Hostname映射。', - 'type' => 'object', - 'properties' => [ - 'Ip' => [ - 'description' => '添加IP地址。', - 'type' => 'string', - 'example' => '192.0.XX.XX'."\n", - ], - 'Hostnames' => [ - 'description' => '添加主机名。', - 'type' => 'array', - 'items' => [ + '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映射。'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '自定义实例内一个容器的Hostname映射。'."\n", + 'type' => 'object', + 'properties' => [ + 'Ip' => ['description' => '添加IP地址。', 'type' => 'string', 'example' => '192.0.XX.XX'], + 'Hostnames' => [ 'description' => '添加主机名。', - 'type' => 'string', - 'example' => '[\'hehe.com\', \'haha.com\']'."\n", + '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'."\n", - ], - 'Value' => [ - 'description' => '实例运行的安全上下文的变量值。', - 'type' => 'string', - 'example' => '65536', + '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' => [ + 'AcrRegistryInfos' => [ 'description' => 'ACR企业版实例的信息。', - 'type' => 'object', - 'properties' => [ - 'InstanceId' => [ - 'description' => 'ACR企业版实例ID。', - 'type' => 'string', - 'example' => 'cri-nwj395hgf6f3****'."\n", - ], - 'InstanceName' => [ - 'description' => 'ACR企业版实例的名称。', - 'type' => 'string', - 'example' => 'acr-test'."\n", - ], - 'RegionId' => [ - 'description' => 'ACR企业版实例所属地域。', - 'type' => 'string', - 'example' => 'cn-hangzhou'."\n", - ], - 'Domains' => [ - 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。', - 'type' => 'array', - 'items' => [ + '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' => 'string', - 'example' => '*****-****-registry.cn-beijing.cr.aliyuncs.com'."\n", + 'type' => 'array', + 'items' => ['description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。', 'type' => 'string', 'example' => '*****-****-registry.cn-beijing.cr.aliyuncs.com'], ], ], ], ], - ], - 'DnsConfigNameServers' => [ - 'description' => 'DNS服务器的IP地址列表。', - 'type' => 'array', - 'items' => [ + 'DnsConfigNameServers' => [ 'description' => 'DNS服务器的IP地址列表。', - 'type' => 'string', - 'example' => '172.10.*.**'."\n", + 'type' => 'array', + 'items' => ['description' => 'DNS服务器的IP地址列表。', 'type' => 'string', 'example' => '172.10.*.**'], ], - ], - 'DnsConfigSearches' => [ - 'description' => 'DNS搜索域列表。', - 'type' => 'array', - 'items' => [ + 'DnsConfigSearches' => [ 'description' => 'DNS搜索域列表。', - 'type' => 'string', - 'example' => 'svc.local.kubenetes'."\n", + 'type' => 'array', + 'items' => ['description' => 'DNS搜索域列表。', 'type' => 'string', 'example' => 'svc.local.kubenetes'], ], - ], - 'NtpServers' => [ - 'description' => 'NTP服务器。', - 'type' => 'array', - 'items' => [ + 'NtpServers' => [ 'description' => 'NTP服务器。', - 'type' => 'string', - 'example' => 'ntp.cloud.aliyuncs.com'."\n", + '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" + 'LifecycleState' => ['description' => '伸缩配置在伸缩组中的状态。可能值:'."\n" ."\n" + .'- Active:生效状态。伸缩组会使用处于生效状态的伸缩配置自动创建ECS实例。'."\n" + .'- Inacitve:未生效状态。处于未生效状态的伸缩配置存在于伸缩组中,但伸缩组不会使用此类伸缩配置自动创建ECS实例。', 'type' => 'string', 'example' => 'Active'], + 'CostOptimization' => ['description' => '是否开启成本优化开关。可能值:'."\n" .'- true:开启。'."\n" - .'- false:未开启。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'InstanceFamilyLevel' => [ - 'description' => '实例规格族级别,用于筛选符合要求的实例规格范围,当`CostOptimization`开启时生效。可能值:'."\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'."\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" + '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'."\n", - ], - 'DataCacheProvisionedIops' => [ - 'description' => '数据缓存使用ESSD AutoPL云盘时,ESSD AutoPL云盘预配置的读写IOPS。可能值:0~min{50000, 1000*容量-基准性能},其中,基准性能=min{1800+50*容量, 50000}。'."\n" + .'>关于ESSD云盘的更多信息,请参见[ESSD云盘](~~122389~~)。', 'type' => 'string', 'example' => 'PL1'], + 'DataCacheProvisionedIops' => ['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', - 'example' => '40000', - ], - 'DataCacheBurstingEnabled' => [ - 'description' => '数据缓存使用ESSD AutoPL云盘时,是否开启Burst(性能突发)。取值范围:'."\n" + .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。', 'type' => 'integer', 'format' => 'int32', 'example' => '40000'], + 'DataCacheBurstingEnabled' => ['description' => '数据缓存使用ESSD AutoPL云盘时,是否开启Burst(性能突发)。可能值:'."\n" ."\n" .'- true:开启。'."\n" .'- false:未开启。'."\n" - ."\n" - .'默认值:false。'."\n" - ."\n" - .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~122389~~)。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'EipPublicIpAddressPoolId' => [ - 'description' => 'IP地址池ID。', - 'type' => 'string', - 'example' => 'pippool-bp187arfugi543y1s****', - ], - 'EipCommonBandwidthPackage' => [ - 'description' => '绑定已有的共享带宽包。', - 'type' => 'string', - 'example' => 'cbwp-bp1rxai1z4b1an454xl8m', - ], - 'EipISP' => [ - 'description' => '设置EIP的线路类型。取值范围:'."\n" - ."\n" - .'- BGP(默认值):BGP(多线)线路'."\n" - .'- BGP_PRO:BGP(多线)精品线路', - 'type' => 'string', - 'example' => 'BGP', - ], - 'ComputeCategory' => [ - 'description' => '算力类别。取值为economy时,表示查询经济型规格的实例。', - 'type' => 'array', - 'items' => [ - 'description' => '指定算力类别。', - 'type' => 'string', - 'example' => 'economy', - ], + .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。', 'type' => 'boolean', 'example' => 'false'], + 'GpuDriverVersion' => ['description' => '指定 GPU 驱动版本。', 'type' => 'string', 'example' => 'tesla=470.82.01'], ], ], ], - 'Output' => [ - 'description' => '伸缩配置YAML输出内容。', - 'type' => 'string', - 'example' => 'apiVersion: apps/v1'."\n" - .'kind: Deployment'."\n" - .'metadata:'."\n" - .' name: nginx-deployment'."\n" - .' labels:'."\n" - .' app: nginx'."\n" - .' spec:'."\n" - .' replicas: 3'."\n" - .' selector:'."\n" - .' matchLabels:'."\n" - .' app: nginx'."\n" - .' template:'."\n" - .' metadata:'."\n" - .' labels:'."\n" - .' app: nginx'."\n" - .' annotations:'."\n" - .' k8s.aliyun.com/eip-bandwidth: 10'."\n" - .' k8s.aliyun.com/eci-with-eip: true'."\n" - .' spec:'."\n" - .' containers:'."\n" - .' - name: nginx'."\n" - .' image: nginx:1.14.2'."\n" - .' ports:'."\n" - .' - containerPort: 80', - ], ], ], ], ], 'errorCodes' => [ 403 => [ - [ - 'errorCode' => 'Forbidden.RiskControl', - 'errorMessage' => 'Forbidden.RiskControl', - ], - ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6EF9BFEE-FE07-4627-B8FB-14326FB9****\\",\\n \\"ScalingConfiguration\\": {\\n \\"CreationTime\\": \\"2023-05-10T02:39:15Z\\",\\n \\"ScalingConfigurationName\\": \\"scalingconfi****\\",\\n \\"SecurityGroupId\\": \\"sg-bp18kz60mefs****\\",\\n \\"ActiveDeadlineSeconds\\": 60,\\n \\"SpotStrategy\\": \\"NoSpot\\",\\n \\"AutoCreateEip\\": true,\\n \\"ScalingGroupId\\": \\"asg-bp1frlu04fq4zv65b1bh\\",\\n \\"EphemeralStorage\\": 20,\\n \\"Ipv6AddressCount\\": 1,\\n \\"Description\\": \\"This is an example.\\",\\n \\"EipBandwidth\\": 5,\\n \\"ImageSnapshotId\\": \\"imc-2zebxkiifuyzzlhl****\\",\\n \\"Memory\\": 4,\\n \\"RestartPolicy\\": \\"Always\\",\\n \\"SpotPriceLimit\\": 0.025,\\n \\"IngressBandwidth\\": 1024000,\\n \\"CpuOptionsThreadsPerCore\\": 2,\\n \\"TerminationGracePeriodSeconds\\": 60,\\n \\"LoadBalancerWeight\\": 50,\\n \\"DnsPolicy\\": \\"Default\\",\\n \\"HostName\\": \\"hostname\\",\\n \\"EgressBandwidth\\": 10485760,\\n \\"RegionId\\": \\"cn-shanghai\\",\\n \\"RamRoleName\\": \\"ram:PassRole\\\\n\\",\\n \\"Cpu\\": 2,\\n \\"AutoMatchImageCache\\": true,\\n \\"ResourceGroupId\\": \\"rg-acfmwozpmmksakq\\",\\n \\"ContainerGroupName\\": \\"test\\",\\n \\"ScalingConfigurationId\\": \\"asc-2zec39vg84usxdocme6a\\",\\n \\"CpuOptionsCore\\": 2,\\n \\"SlsEnable\\": false,\\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\\": true,\\n \\"LivenessProbeHttpGetPort\\": 8080,\\n \\"Gpu\\": 2,\\n \\"ReadinessProbeInitialDelaySeconds\\": 5,\\n \\"Stdin\\": true,\\n \\"Memory\\": 2,\\n \\"Name\\": \\"nginx\\",\\n \\"SecurityContextReadOnlyRootFilesystem\\": true,\\n \\"LivenessProbeHttpGetPath\\": \\"/usr/nginx/\\\\n\\",\\n \\"Image\\": \\"registry-vpc.aliyuncs.com/eci_open/alpine:3.5\\",\\n \\"ReadinessProbeTcpSocketPort\\": 80,\\n \\"ReadinessProbeHttpGetScheme\\": \\"HTTP\\",\\n \\"ReadinessProbeHttpGetPort\\": 80,\\n \\"LivenessProbeSuccessThreshold\\": 1,\\n \\"ReadinessProbeTimeoutSeconds\\": 5,\\n \\"SecurityContextRunAsUser\\": 1000,\\n \\"LivenessProbeInitialDelaySeconds\\": 10,\\n \\"ReadinessProbePeriodSeconds\\": 5,\\n \\"ImagePullPolicy\\": \\"Always\\",\\n \\"StdinOnce\\": true,\\n \\"Cpu\\": 2,\\n \\"LivenessProbeTimeoutSeconds\\": 10,\\n \\"ReadinessProbeFailureThreshold\\": 3,\\n \\"LivenessProbeFailureThreshold\\": 3,\\n \\"Ports\\": [\\n {\\n \\"Port\\": 8083,\\n \\"Protocol\\": \\"TCP\\"\\n }\\n ],\\n \\"VolumeMounts\\": [\\n {\\n \\"ReadOnly\\": true,\\n \\"SubPath\\": \\"data2/\\\\n\\",\\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 \\"FieldRefFieldPath\\": \\"fieldPath\\"\\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 ],\\n \\"SecurityContextCapabilityAdds\\": [\\n \\"NET_ADMIN\\"\\n ],\\n \\"LifecyclePostStartHandlerHttpGetHost\\": \\"10.0.XX.XX\\",\\n \\"LifecyclePostStartHandlerHttpGetPort\\": 80,\\n \\"LifecyclePostStartHandlerHttpGetPath\\": \\"/healthyz\\\\n\\",\\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\\",\\n \\"LifecyclePostStartHandlerTcpSocketPort\\": 80,\\n \\"LifecyclePreStopHandlerHttpGetHost\\": \\"10.0.XX.XX\\\\n\\",\\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\\": \\"/www\\",\\n \\"Cpu\\": 0.5,\\n \\"Image\\": \\"registry-vpc.cn-hongkong.aliyuncs.com/eci_open/nginx:alpine\\",\\n \\"Gpu\\": 1,\\n \\"SecurityContextRunAsUser\\": \\"1000\\",\\n \\"Memory\\": 1,\\n \\"Name\\": \\"test-init\\\\n\\",\\n \\"InitContainerEnvironmentVars\\": [\\n {\\n \\"Key\\": \\"PATH\\",\\n \\"Value\\": \\"/usr/local/bin\\\\n\\",\\n \\"FieldRefFieldPath\\": \\"path\\"\\n }\\n ],\\n \\"InitContainerPorts\\": [\\n {\\n \\"Port\\": 1024,\\n \\"Protocol\\": \\"UDP\\"\\n }\\n ],\\n \\"InitContainerVolumeMounts\\": [\\n {\\n \\"ReadOnly\\": false,\\n \\"SubPath\\": \\"/usr/sub/\\",\\n \\"Name\\": \\"test-empty\\\\n\\",\\n \\"MountPropagation\\": \\"None\\",\\n \\"MountPath\\": \\"/usr/share/\\\\n\\"\\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\\": \\"d-xx\\",\\n \\"DiskVolumeFsType\\": \\"xfs\\",\\n \\"EmptyDirVolumeMedium\\": \\"memory\\",\\n \\"NFSVolumePath\\": \\"/share\\\\n\\",\\n \\"DiskVolumeDiskSize\\": 15,\\n \\"NFSVolumeReadOnly\\": false,\\n \\"FlexVolumeFsType\\": \\"ext4\\",\\n \\"ConfigFileVolumeDefaultMode\\": 644,\\n \\"FlexVolumeDriver\\": \\"flexvolume\\",\\n \\"FlexVolumeOptions\\": \\"{\\\\\\"volumeId\\\\\\":\\\\\\"d-2zehdahrwoa7srg****\\\\\\",\\\\\\"performanceLevel\\\\\\": \\\\\\"PL2\\\\\\"}\\\\n\\",\\n \\"NFSVolumeServer\\": \\"3f9cd4a596-naw76.cn-shanghai.nas.aliyuncs.com\\\\n\\",\\n \\"Name\\": \\"default-volume1\\\\n\\",\\n \\"ConfigFileVolumeConfigFileToPaths\\": [\\n {\\n \\"Path\\": \\"/usr/bin/\\\\n\\",\\n \\"Mode\\": 644,\\n \\"Content\\": \\"bGl1bWk=\\\\n\\"\\n }\\n ],\\n \\"EmptyDirVolumeSizeLimit\\": \\"256Mi\\",\\n \\"HostPathVolumeType\\": \\"Directory\\",\\n \\"HostPathVolumePath\\": \\"/pod/data\\\\n\\"\\n }\\n ],\\n \\"ImageRegistryCredentials\\": [\\n {\\n \\"Password\\": \\"yourpaasword\\",\\n \\"Server\\": \\"registry-vpc.cn-shanghai.aliyuncs.com\\\\n\\",\\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\\",\\n \\"Hostnames\\": [\\n \\"[\'hehe.com\', \'haha.com\']\\\\n\\"\\n ]\\n }\\n ],\\n \\"SecurityContextSysCtls\\": [\\n {\\n \\"Name\\": \\"kernel.msgmax\\\\n\\",\\n \\"Value\\": \\"65536\\"\\n }\\n ],\\n \\"AcrRegistryInfos\\": [\\n {\\n \\"InstanceId\\": \\"cri-nwj395hgf6f3****\\\\n\\",\\n \\"InstanceName\\": \\"acr-test\\\\n\\",\\n \\"RegionId\\": \\"cn-hangzhou\\\\n\\",\\n \\"Domains\\": [\\n \\"*****-****-registry.cn-beijing.cr.aliyuncs.com\\\\n\\"\\n ]\\n }\\n ],\\n \\"DnsConfigNameServers\\": [\\n \\"172.10.*.**\\\\n\\"\\n ],\\n \\"DnsConfigSearches\\": [\\n \\"svc.local.kubenetes\\\\n\\"\\n ],\\n \\"NtpServers\\": [\\n \\"ntp.cloud.aliyuncs.com\\\\n\\"\\n ],\\n \\"LifecycleState\\": \\"Active\\",\\n \\"CostOptimization\\": false,\\n \\"InstanceFamilyLevel\\": \\"EnterpriseLevel\\",\\n \\"InstanceTypes\\": [\\n \\"ecs.g6.large\\\\n\\"\\n ],\\n \\"DataCacheBucket\\": \\"default\\",\\n \\"DataCachePL\\": \\"PL1\\\\n\\",\\n \\"DataCacheProvisionedIops\\": 40000,\\n \\"DataCacheBurstingEnabled\\": false,\\n \\"EipPublicIpAddressPoolId\\": \\"pippool-bp187arfugi543y1s****\\",\\n \\"EipCommonBandwidthPackage\\": \\"cbwp-bp1rxai1z4b1an454xl8m\\",\\n \\"EipISP\\": \\"BGP\\",\\n \\"ComputeCategory\\": [\\n \\"economy\\"\\n ]\\n },\\n \\"Output\\": \\"apiVersion: apps/v1\\\\nkind: Deployment\\\\nmetadata:\\\\n name: nginx-deployment\\\\n labels:\\\\n app: nginx\\\\n spec:\\\\n replicas: 3\\\\n selector:\\\\n matchLabels:\\\\n app: nginx\\\\n template:\\\\n metadata:\\\\n labels:\\\\n app: nginx\\\\n annotations:\\\\n k8s.aliyun.com/eip-bandwidth: 10\\\\n k8s.aliyun.com/eci-with-eip: true\\\\n spec:\\\\n containers:\\\\n - name: nginx\\\\n image: nginx:1.14.2\\\\n ports:\\\\n - containerPort: 80\\"\\n}","type":"json"}]', - 'title' => '查询ECI类型伸缩配置信息', - 'summary' => '调用API DescribeEciScalingConfigurationDetail,通过伸缩组的伸缩配置ID查询对应的伸缩配置信息(例如临时存储空间大小、IPv6地址数、弹性公网IP的带宽等),支持输出为YAML格式。', - ], - 'ModifyEciScalingConfiguration' => [ - 'summary' => '调用ModifyEciScalingConfiguration,并可以指定待修改伸缩配置的ID、伸缩配置的名称、ECI实例的属性等参数,修改伸缩配置,例如实例重启策略、实例的抢占策略、弹性公网 IP 的带宽等信息。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'readAndWrite', - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '125345', - 'abilityTreeNodes' => [ - 'FEATUREessT4M3WE', + ['errorCode' => 'Forbidden.RiskControl', 'errorMessage' => 'Forbidden.RiskControl', 'description' => ''], ], ], - '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' => false, - 'example' => 'test-modify', - ], - ], - [ - 'name' => 'Description', - 'in' => 'query', - 'schema' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'desc', - ], - ], - [ - 'name' => 'SecurityGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => 'ECI实例所属的安全组ID。同一个安全组内的ECI实例之间可以互相访问。'."\n" - ."\n" - .'如果没有指定安全组,系统将自动使用您选择的地域下的默认安全组,您需要确保该安全组的入方向规则中包含容器需要暴露的协议和端口。如果您在该地域下没有默认安全组,系统将自动创建一个默认安全组,并将您声明的容器协议和端口添加到该安全组的入方向规则中。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'sg-uf66jeqopgqa9hdn****', - ], - ], - [ - 'name' => 'ContainerGroupName', - 'in' => 'query', - 'schema' => [ - 'description' => 'ECI实例名称,即容器组名称。格式要求如下:'."\n" - ."\n" - .'- 长度为2~128个字符。'."\n" - .'- 支持英文小写字母、数字或者短划线(-),不能以短划线(-)开头或者结尾。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - '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" - ."\n" - .'- Default:继承运行环境的DNS设置。', - 'type' => 'string', - 'required' => false, - 'example' => 'Default', - ], - ], - [ - 'name' => 'EnableSls', - 'in' => 'query', - 'schema' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - ], - [ - '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" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - ], - [ - 'name' => 'Ipv6AddressCount', - 'in' => 'query', - 'schema' => [ - 'description' => 'IPv6地址数。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', + 'title' => '查询ECI类型伸缩组的伸缩配置信息', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeEciScalingConfigurations', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\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 \\"Description\\": \\"This is an example.\\",\\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 \\"SlsEnable\\": true,\\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 \\"SecurityContextReadOnlyRootFilesystem\\": true,\\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 \\"FieldRefFieldPath\\": \\"path\\"\\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\\",\\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 \\"FieldRefFieldPath\\": \\"path\\"\\n }\\n ],\\n \\"InitContainerPorts\\": [\\n {\\n \\"Port\\": 1,\\n \\"Protocol\\": \\"TCP\\"\\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\\": \\"3f9cd4a596-naw76.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\\": \\"256Mi\\",\\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\\\\t\\\\n\\"\\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}","type":"json"}]', + ], + 'DescribeElasticStrength' => [ + 'summary' => '伸缩组配置的有效性很大程度决定了扩容过程的成功率。弹性伸缩通过弹性强度描述伸缩配置的有效性,让配置的优良程度量化,帮助用户针对性的优化伸缩配置。', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'ActiveDeadlineSeconds', - 'in' => 'query', - 'schema' => [ - 'description' => '有效期限。单位为秒。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1000', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221692', + 'abilityTreeNodes' => ['FEATUREess7569XW'], + ], + 'parameters' => [ [ - 'name' => 'SpotStrategy', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '实例的抢占策略。取值范围:'."\n" - ."\n" - .'- NoSpot:正常按量付费实例。'."\n" - .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n" - .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格的抢占式实例。'."\n" - ."\n" - .'默认值:NoSpot。', - 'type' => 'string', - 'required' => false, - 'example' => 'SpotPriceLimit', - ], + 'schema' => ['description' => '伸缩组所属地域的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-qingdao'], ], [ - 'name' => 'SpotPriceLimit', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '设置抢占式实例的每小时最高价格,最多精确到小数点后3位。'."\n" - ."\n" - .'当SpotStrategy取值为SpotWithPriceLimit时,必须设置SpotPriceLimit。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '0.025', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'AutoCreateEip', + 'name' => 'InstanceTypes', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '是否自动创建弹性公网IP,并绑定ECI实例。', - 'type' => 'boolean', + 'description' => 'ECS实例的实例规格的集合。 传入时,覆盖伸缩配置中的实例规格。', + 'type' => 'array', + 'items' => ['description' => 'ECS实例规格。', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large'], 'required' => false, - 'example' => 'true', + 'maxItems' => 50, ], ], [ - 'name' => 'EipBandwidth', + 'name' => 'PriorityStrategy', 'in' => 'query', - 'schema' => [ - 'description' => '弹性公网IP的带宽。'."\n" - ."\n" - .'默认值:5 Mbit/s。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '1000000', - 'minimum' => '0', - 'example' => '5', - ], + 'schema' => ['description' => '>此字段已废弃,请使用SpotStrategy。>'."\n" + .'后付费实例的抢占策略。传入时覆盖伸缩组配置的抢占策略,取值范围:'."\n" + ."\n" + .'- NoSpot:普通的按量付费实例。'."\n" + .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n" + .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。'."\n" + ."\n" + .'默认值:NoSpot。', 'type' => 'string', 'required' => false, 'example' => 'NoSpot'], ], [ - 'name' => 'HostName', + 'name' => 'SystemDiskCategories', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '主机名称,即容器组名称。', - 'type' => 'string', + 'description' => '多个系统盘类型。 传入时,覆盖伸缩配置中的系统盘类型。取值范围:'."\n" + ."\n" + .'- cloud:普通云盘。'."\n" + .'- cloud_efficiency:高效云盘。'."\n" + .'- cloud_ssd:SSD云盘。'."\n" + .'- cloud_essd:ESSD云盘。'."\n" + .'> 当不指定伸缩组ID时,需要传入此参数。', + 'type' => 'array', + 'items' => ['description' => '系统盘的多磁盘类型。取值范围:'."\n" + ."\n" + .'- cloud:普通云盘。'."\n" + .'- cloud_efficiency:高效云盘。'."\n" + .'- cloud_ssd:SSD云盘。'."\n" + .'- cloud_essd:ESSD云盘。', 'type' => 'string', 'required' => false, 'example' => 'cloud'], 'required' => false, - 'example' => 'test', + 'maxItems' => 50, ], ], [ - 'name' => 'IngressBandwidth', + 'name' => 'ScalingGroupIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '入方向带宽限制。单位:Byte。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int64', + 'description' => '批量查询时的查询伸缩组的ID列表。', + 'type' => 'array', + 'items' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp14wlu85wrpchm0****'], 'required' => false, - 'docRequired' => false, - 'maximum' => '9223372036854775807', - 'minimum' => '0', - 'example' => '1024000', + 'maxItems' => 50, ], ], [ - 'name' => 'EgressBandwidth', + 'name' => 'SpotStrategy', 'in' => 'query', - 'schema' => [ - 'description' => '出方向带宽限制。单位:Byte。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'docRequired' => false, - 'maximum' => '9223372036854775807', - 'minimum' => '0', - 'example' => '1024000', - ], + 'schema' => ['description' => '实例的抢占策略。取值范围:'."\n" + ."\n" + .'- NoSpot:正常按量付费实例。'."\n" + .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n" + .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格的抢占式实例。'."\n" + ."\n" + .'默认值:NoSpot。', 'type' => 'string', 'required' => false, 'example' => 'NoSpot'], ], [ - 'name' => 'CpuOptionsCore', + 'name' => 'VSwitchIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'CPU物理核心数。仅部分规格支持自定义设置。更多信息,请参见[自定义CPU选项](~~197781~~)。', - 'type' => 'integer', - 'format' => 'int32', + 'description' => '指定多个交换机ID。'."\n" + .'> 当不指定伸缩组ID时,需要传入此参数。', + 'type' => 'array', + 'items' => ['description' => '交换机ID。', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1whw2u46cn8zubm****'], 'required' => false, - 'maximum' => '1000', - 'minimum' => '0', - 'example' => '2', + 'maxItems' => 10, ], ], [ - 'name' => 'CpuOptionsThreadsPerCore', + 'name' => 'ImageId', 'in' => 'query', - 'schema' => [ - 'description' => '每核线程数。仅部分规格支持自定义设置。配置为1时表示关闭超线程。更多信息,请参见[自定义cpu选项](~~197781~~)。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2', - ], + 'schema' => ['description' => '镜像文件ID,自动创建实例时使用的镜像资源。'."\n" + .'> 当不指定伸缩组ID时,需要至少指定ImageId、ImageName、ImageFamily中的一个。', 'type' => 'string', 'required' => false, 'example' => 'centos6u5_64_20G_aliaegis****.vhd'], ], [ - 'name' => 'EphemeralStorage', + 'name' => 'ImageName', 'in' => 'query', - 'schema' => [ - 'description' => '临时存储空间大小,默认使用ESSD PL1类型的云盘。单位:GiB。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '5000', - 'minimum' => '0', - 'example' => '20', - ], + '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' => 'LoadBalancerWeight', + 'name' => 'ImageFamily', 'in' => 'query', - 'schema' => [ - 'description' => '后端服务器的权重,取值范围:1~100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '50', - ], + 'schema' => ['description' => '镜像族系名称,通过设置该参数来获取当前镜像族系内最新的可用镜像,用于创建实例。如果已经设置了参数ImageId,则不能设置该参数。'."\n" + .'> 当不指定伸缩组ID时,需要至少指定ImageId、ImageName、ImageFamily中的一个。', 'type' => 'string', 'required' => false, 'example' => 'CentOS7'], ], [ - 'name' => 'Tags', + 'name' => 'DataDiskCategories', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '标签信息的集合。', + 'description' => '查询指定了多种数据盘类型时的弹性强度,当存在数据盘类型不匹配时,查询结果中会返回具体的不匹配磁盘类型。'."\n" + .'> 当不指定伸缩组ID时,可以传入此参数。', 'type' => 'array', - 'items' => [ - 'description' => '标签信息的集合。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '标签键。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'version', - ], - 'Value' => [ - 'description' => '标签值。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '3', - ], - ], - 'required' => false, - ], + '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' => 21, + 'maxItems' => 50, ], ], [ - 'name' => 'ImageRegistryCredentials', + 'name' => 'Ipv6AddressCount', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '镜像仓库的详细信息。', - 'type' => 'array', - 'items' => [ - 'description' => '镜像仓库的详细信息。', - 'type' => 'object', - 'properties' => [ - 'Password' => [ - 'description' => '镜像仓库密码。', - 'type' => 'string', - 'required' => false, - 'example' => 'yourpaasword', - ], - 'Server' => [ - 'description' => '镜像仓库注册地址。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'registry-vpc.cn-shanghai.aliyuncs.com', - ], - 'UserName' => [ - 'description' => '镜像仓库用户名。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'yourusername', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 11, - ], + 'schema' => ['description' => 'IPv6地址数。当实例规格不满足IPv6地址数量要求时,会导致弹性强度差。'."\n" + .'> 当不指定伸缩组ID时,可以传入此参数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], - [ - 'name' => 'Containers', - '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.Adds' => [ - '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_RAW', - ], - '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', - ], - 'Ports' => [ - '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', - ], - '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 '."\n", - ], - 'FieldRef.FieldPath' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'required' => false, - 'example' => 'path', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 301, - ], - 'LivenessProbe.TcpSocket.Port' => [ - 'description' => '使用TCP Socket方式进行健康检查时,TCP Socket检测的端口。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - 'Tty' => [ - 'description' => '是否开启交互。默认为false。'."\n" - ."\n" - .'当Command为/bin/bash命令时,需要设置为true。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - 'WorkingDir' => [ - 'description' => '容器工作目录。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/usr/local/ '."\n", - ], - 'LivenessProbe.HttpGet.Scheme' => [ - 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求对应的协议类型,取值范围:'."\n" - .'- HTTP。'."\n" - .'- HTTPS。', - 'type' => 'string', - 'required' => false, - 'example' => 'HTTP', - ], - 'ReadinessProbe.HttpGet.Port' => [ - 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的端口号。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '8080', - ], - 'Args' => [ - 'description' => '容器启动命令对应的参数。最多10个。', - 'type' => 'array', - 'items' => [ - 'description' => '容器启动命令对应的参数。最多10个。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '100', - ], - 'required' => false, - 'maxItems' => 101, - ], - 'Gpu' => [ - 'description' => '指定容器使用的GPU个数。'."\n" - ."\n", - '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。'."\n" - ."\n", - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '0.5', - ], - 'Name' => [ - 'description' => '容器镜像名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'nginx', - ], - 'Image' => [ - 'description' => '容器镜像。'."\n" - ."\n", - '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', - ], - 'VolumeMounts' => [ - 'description' => '容器挂载的数据卷信息。', - 'type' => 'array', - 'items' => [ - 'description' => '容器挂载的数据卷信息。', - 'type' => 'object', - 'properties' => [ - 'MountPropagation' => [ - 'description' => '数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。可能值:'."\n" + ], + '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" + .'>该字段已废弃。>', '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' => 'IMG_NOT_SUPPORTED'], + 'Msg' => ['description' => '弹性强度为0时的原因(错误描述)。', 'type' => 'string', 'example' => 'The instanceType does not support the image in the configuration.'], + 'Status' => ['description' => '资源池是否可用。可能值:'."\n" + ."\n" + .'- Available: 可用。'."\n" + .'- Unavailable: 不可用。约束不通过、规格未部署、规格无库存等会导致规格不可用。', 'type' => 'string', 'example' => 'Available'], + 'InventoryHealth' => [ + 'description' => '库存健康度。', + 'type' => 'object', + 'properties' => [ + 'HealthScore' => ['description' => '库存健康分。'."\n" ."\n" - .'- None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。'."\n" - .'- HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。'."\n" - .'- Bidirectional:和HostToCotainer类似,能感知挂载操作。另外,该卷将被传播回主机和使用同一卷的所有Pod的所有容器。', - 'type' => 'string', - 'required' => false, - 'example' => 'None', - ], - 'MountPath' => [ - 'description' => '容器挂载数据卷的目录。'."\n" + .'- 5~6分:表示供应确定性很高。'."\n" + .'- 1~4分:表示确定性没有保障,建议按需选择预定。'."\n" + .'- -3~0分:表示供应健康出现预警,建议更换规格。'."\n" ."\n" - .'> 容器挂载目录下的内容会被Volume的内容直接覆盖,请谨慎使用。', - 'type' => 'string', - 'required' => false, - 'example' => '/pod/data '."\n", - ], - 'ReadOnly' => [ - 'description' => '数据卷是否只读。'."\n" + .'计算公式:`HealthScore`(库存健康分) = `AdequacyScore`(充足度) + `SupplyScore`(补货能力) - `HotScore`(热度)。', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], + 'AdequacyScore' => ['description' => '充足度。'."\n" ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - 'Name' => [ - 'description' => '数据卷名称。同Volume中的Name。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'default-volume1 '."\n", - ], - 'SubPath' => [ - 'description' => '数据卷子路径。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'data2/ '."\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'], ], ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 101, - ], - 'LivenessProbe.FailureThreshold' => [ - 'description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。'."\n" - ."\n" - .'默认值:3。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '3', - ], - 'ReadinessProbe.Exec.Commands' => [ - '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" - .'- 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' => '容器的VCPU大小。单位:核。'."\n" - ."\n", - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '0.25 '."\n", - ], - '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 '."\n", - ], - 'LivenessProbe.SuccessThreshold' => [ - 'description' => '从上次检查失败后重新认定检查成功的检查次数阈值(必须是连续成功),默认值为1。当前值必须为1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - 'ReadinessProbe.PeriodSeconds' => [ - 'description' => '检查执行的周期,默认值为10秒,最小值为1秒。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '3', - ], - 'LivenessProbe.TimeoutSeconds' => [ - 'description' => '检查超时的时间,默认值为1秒,最小值为1秒。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - 'Commands' => [ - 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。', - 'type' => 'array', - 'items' => [ - 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'sleep', - ], - 'required' => false, - 'maxItems' => 101, - ], - 'SecurityContext.RunAsUser' => [ - 'description' => '设置运行容器的用户ID。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1000', - ], - 'ReadinessProbe.HttpGet.Path' => [ - 'description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的路径。', - 'type' => 'string', - 'required' => false, - 'example' => '/healthz '."\n", - ], - 'LivenessProbe.Exec.Commands' => [ - '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', - ], - 'LifecyclePostStartHandlerExecs' => [ - 'description' => '使用命令行方式设置postStart回调函数时,在容器内执行的命令。', - 'type' => 'array', - 'items' => [ - 'description' => '使用命令行方式设置postStart回调函数时,在容器内执行的命令。', - 'type' => 'string', - 'required' => false, - 'example' => '["/bin/sh", "-c", "echo Hello from the postStart handler > /usr/share/message"]', + 'ElasticStrength' => ['description' => '当前资源池的弹性强度,综合考虑了当前资源池的库存健康度和库存现状。可能值:'."\n" + ."\n" + .'- Strong:弹性强度高。'."\n" + .'- Medium:弹性强度中。'."\n" + .'- Weak:弹性强度弱。', 'type' => 'string', 'example' => 'Medium'], ], - 'required' => false, - 'maxItems' => 20, + 'description' => '', ], - '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', - ], - 'LifecyclePreStopHandlerExecs' => [ - 'description' => '使用命令行方式设置preStop回调函数时,在容器内执行的命令。', - 'type' => 'array', - 'items' => [ - 'description' => '使用命令行方式设置preStop回调函数时,在容器内执行的命令。', - 'type' => 'string', - 'required' => false, - 'example' => '["/bin/sh", "-c","echo Hello from the preStop handler > /usr/share/message"]', + ], + '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" + .'>该字段已废弃。>', 'type' => 'number', 'format' => 'double', 'example' => '1.5'], + 'ResourcePools' => [ + 'description' => '每个资源池的弹性强度信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceType' => ['description' => '资源池的实例规格。', 'type' => 'string', 'example' => 'ecs.r7.large'], + 'Strength' => ['description' => '资源池的弹性强度。'."\n" + .'>该字段已废弃。>', '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-2ze6e8p4******'], + ], + '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'], + ], + ], + 'ElasticStrength' => ['description' => '当前资源池的弹性强度,综合考虑了当前资源池的库存健康度和库存现状。可能值:'."\n" + ."\n" + .'- Strong:弹性强度高。'."\n" + .'- Medium:弹性强度中。'."\n" + .'- Weak:弹性强度弱。', 'type' => 'string', 'example' => 'Strong'], + ], + 'description' => '', + ], + ], ], - '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' => '80', + 'description' => '', ], ], - 'required' => false, ], - 'required' => false, - 'maxItems' => 21, ], ], + ], + 'responseDemo' => '[{"errorExample":"","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\\": \\"IMG_NOT_SUPPORTED\\",\\n \\"Msg\\": \\"The instanceType does not support the image in the configuration.\\",\\n \\"Status\\": \\"Available\\",\\n \\"InventoryHealth\\": {\\n \\"HealthScore\\": 3,\\n \\"AdequacyScore\\": 3,\\n \\"SupplyScore\\": 3,\\n \\"HotScore\\": 3\\n },\\n \\"ElasticStrength\\": \\"Medium\\"\\n }\\n ],\\n \\"ElasticStrengthModels\\": [\\n {\\n \\"ScalingGroupId\\": \\"asg-wz98mnj7nblv9gc****\\",\\n \\"ElasticStrength\\": \\"Strong\\",\\n \\"TotalStrength\\": 1.5,\\n \\"ResourcePools\\": [\\n {\\n \\"InstanceType\\": \\"ecs.r7.large\\",\\n \\"Strength\\": 0.6,\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-2ze6e8p4******\\"\\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 \\"ElasticStrength\\": \\"Strong\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', + 'title' => '查询伸缩组的弹性强度', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeElasticStrength', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + ], + 'DescribeInstanceCreateAndDeleteStatistics' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'Volumes', + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '221449', + 'abilityTreeNodes' => ['FEATUREessJ54CHK'], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '数据卷信息。', - 'type' => 'array', - 'items' => [ - 'description' => '数据卷信息。', - 'type' => 'object', - 'properties' => [ - 'Type' => [ - 'description' => '数据卷类型,可能值:'."\n" - .'- EmptyDirVolume。'."\n" - .'- NFSVolume。'."\n" - .'- ConfigFileVolume。'."\n" - .'- FlexVolume。', - 'type' => 'string', - 'required' => false, - 'example' => 'EmptyDirVolume', - ], - 'DiskVolume.DiskSize' => [ - 'description' => 'DiskVolume的大小。单位:GiB。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '15', - ], - 'NFSVolume.Path' => [ - 'description' => 'NFS数据卷路径。'."\n" - ."\n", - '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" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - 'HostPathVolume.Path' => [ - 'description' => 'Host上的绝对路径。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/xx/xx/name '."\n", - ], - '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的驱动程序名称。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'flexvolume', - ], - 'ConfigFileVolumeDefaultMode' => [ - 'description' => 'ConfigFileVolume默认的权限。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '0644', - ], - 'NFSVolume.Server' => [ - 'description' => 'NFS服务器地址。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '3f9cd4a596-n****.cn-shanghai.nas.aliyuncs.com', - ], - 'DiskVolume.DiskId' => [ - 'description' => 'DiskVolume的ID。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'd-xx '."\n", - ], - 'Name' => [ - 'description' => '数据卷名称。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'default-volume1'."\n", - ], - 'EmptyDirVolume.Medium' => [ - 'description' => 'EmptyDirVolume的存储媒介,默认为空,使用node文件系统;支持memory,表示使用内存。', - 'type' => 'string', - 'required' => false, - 'example' => 'memory '."\n", - ], - 'ConfigFileVolumeConfigFileToPath' => [ - 'description' => '配置文件路径列表。', - 'type' => 'array', - 'items' => [ - 'description' => '配置文件路径列表。', - 'type' => 'object', - 'properties' => [ - 'Path' => [ - 'description' => '相对文件路径。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/usr/bin/ '."\n", - ], - 'Mode' => [ - 'description' => 'ConfigFileVolume目录权限。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '0644', - ], - 'Content' => [ - 'description' => '配置文件内容(32 KB)。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'bGl1bWk= '."\n", + '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-2ze4057nqfbxxxxxxxx'], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => ['description' => '统计区间开始时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。', 'type' => 'string', 'required' => true, 'example' => '2025-12-15T08:00Z'."\n"], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => ['description' => '统计区间结束时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。', 'type' => 'string', 'required' => true, 'example' => '2025-12-18T08:00Z'], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '086EFCD4-C76F-4DC6-9EE9-0D9B711E****'], + 'InstanceCreateAndDeleteStatistics' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Statistic' => [ + 'description' => '实例创建和删除统计指标。', + 'type' => 'array', + 'items' => [ + 'description' => '实例创建和删除统计指标。', + 'type' => 'object', + 'properties' => [ + 'DestroyedVmCount' => ['description' => '释放的实例数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '34'], + 'CreatedVmCount' => ['description' => '新建的实例数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], + 'Time' => ['description' => '统计数据生成的时间点(UTC时间),格式:yyyyMMddHH。', 'type' => 'string', 'example' => '2025121623'], + 'StoppedVmCount' => ['description' => '进入停机不收费状态的实例数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'StartedVmCount' => ['description' => '从停机不收费状态启动的实例数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], ], ], - 'required' => false, ], - 'required' => false, - 'maxItems' => 90, - ], - 'EmptyDirVolume.SizeLimit' => [ - 'description' => 'EmptyDir数据卷的大小。取值请带上单位,建议使用Gi或Mi。', - 'type' => 'string', - 'required' => false, - 'example' => '256Mi', ], + 'description' => '', ], - 'required' => false, ], - 'required' => false, - 'maxItems' => 101, + 'description' => '', + ], + ], + ], + 'title' => '实例创建和删除统计', + 'summary' => '实例创建和删除统计。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeInstanceCreateAndDeleteStatistics', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"086EFCD4-C76F-4DC6-9EE9-0D9B711E****\\",\\n \\"InstanceCreateAndDeleteStatistics\\": {\\n \\"Statistic\\": [\\n {\\n \\"DestroyedVmCount\\": 34,\\n \\"CreatedVmCount\\": 12,\\n \\"Time\\": \\"2025121623\\",\\n \\"StoppedVmCount\\": 10,\\n \\"StartedVmCount\\": 5\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'DescribeInstanceRefreshes' => [ + 'summary' => '如果您需要查看实例刷新任务的基本信息、 实例刷新任务的进度等信息,您可以调用DescribeInstanceRefreshes查询该伸缩组的实例刷新任务。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'InitContainers', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '234886', + '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。'."\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和InstanceRefreshTaskIds参数必须二选一进行配置,如果两个参数同时都不配置,则会报错。'."\n" + .'>', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'asg-bp1ffogfdauy0jw0****'], + ], + [ + 'name' => 'InstanceRefreshTaskIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'init容器列表。', + 'description' => '待查询实例刷新任务的 ID。', 'type' => 'array', - 'items' => [ - 'description' => 'init容器列表。', - 'type' => 'object', - 'properties' => [ - 'InitContainerEnvironmentVars' => [ - 'description' => 'init容器的环境变量信息。', - 'type' => 'array', - 'items' => [ - 'description' => 'init容器的环境变量信息。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '环境变量名。长度为1~128个字符。格式要求:`[0-9a-zA-Z]`,以及下划线(_),不能以数字开头。', - 'type' => 'string', - 'required' => false, - 'example' => 'Path', - ], - 'Value' => [ - 'description' => '环境变量值。长度为0~256位。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/usr/bin/ '."\n", - ], - 'FieldRef.FieldPath' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'string', - 'required' => false, - 'example' => 'path', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 301, - ], - 'SecurityContext.Capability.Adds' => [ - '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_RAW', - ], - 'required' => false, - 'maxItems' => 100, - ], - 'Image' => [ - 'description' => '容器使用的镜像。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'nginx', - ], - 'InitContainerPorts' => [ - 'description' => 'init容器端口信息。', - 'type' => 'array', - 'items' => [ - 'description' => 'init容器端口信息。', - 'type' => 'object', - 'properties' => [ - 'Protocol' => [ - 'description' => '协议类型。取值范围:'."\n" + 'items' => ['description' => '待查询实例刷新任务的 ID。', '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' => [ + 'description' => '实例刷新任务列表。', + 'type' => 'array', + 'items' => [ + 'description' => '实例刷新任务。', + 'type' => 'object', + 'properties' => [ + 'ScalingGroupId' => ['description' => '伸缩组ID。', 'type' => 'string', 'example' => 'asg-bp16pbfcr8j9*****'], + 'InstanceRefreshTaskId' => ['description' => '实例刷新任务ID。', 'type' => 'string', 'example' => 'ir-1adfa123****'], + '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" + .'- 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" - .'- TCP。'."\n" - .'- UDP。', - 'type' => 'string', - 'required' => false, - 'example' => 'TCP', - ], - 'Port' => [ - 'description' => '端口号。取值范围:1~65535。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', + .'- 固定的模板版本号。'."\n" + .'- Default:始终使用模板默认版本。'."\n" + .'- Latest:始终使用模板最新版本。', 'type' => 'string', 'example' => 'Latest'], + 'LaunchTemplateOverrides' => [ + 'description' => '扩展启动模板的实例规格信息。', + 'type' => 'array', + 'items' => [ + 'description' => '扩展启动模板的实例规格信息。', + 'type' => 'object', + 'properties' => [ + 'InstanceType' => ['description' => '指定的实例规格,会覆盖启动模板中的实例规格。', 'type' => 'string', 'example' => 'ecs.sn1ne.large'], + ], + ], + ], + 'Containers' => [ + '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' => [ + 'description' => '容器启动命令。', + 'type' => 'array', + 'items' => ['description' => '容器启动命令。', 'type' => 'string', 'example' => 'sleep'], + ], + 'Args' => [ + 'description' => '容器启动命令对应的参数。', + 'type' => 'array', + 'items' => ['description' => '容器启动命令对应的参数。', 'type' => 'string', 'example' => '100'], + ], + 'EnvironmentVars' => [ + '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'], + ], + ], + ], + ], + ], + ], ], ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 101, - ], - 'InitContainerVolumeMounts' => [ - 'description' => 'init容器的挂载点信息数组。', - 'type' => 'array', - 'items' => [ - 'description' => 'init容器的挂载点信息数组。', - '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' => '/usr/share/'."\n", - ], - 'ReadOnly' => [ - 'description' => '挂载路径是否只读。'."\n" - ."\n" - .'默认值:false。'."\n" - ."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false '."\n", - ], - 'Name' => [ - 'description' => '挂载数据卷的名称。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test-empty '."\n", - ], - 'SubPath' => [ - 'description' => '数据卷下的子目录,方便Pod将同一个Volume下不同目录挂载到容器不同目录。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Always', + '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' => [ + 'description' => '刷新任务检查点:指定在实例刷新过程中,当新实例占比达到设定值时自动暂停任务CheckpointPauseTime分钟。', + 'type' => 'array', + 'items' => [ + 'description' => '刷新任务检查点:指定在实例刷新过程中,当新实例占比达到设定值时自动暂停任务CheckpointPauseTime分钟。', + 'type' => 'object', + 'properties' => [ + 'Percentage' => ['description' => '伸缩组中新实例占总实例的占比,到达该占比时任务自动暂停。', 'type' => 'integer', 'format' => 'int32', 'example' => '60'], + ], ], ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 101, - ], - 'SecurityContext.ReadOnlyRootFilesystem' => [ - 'description' => '>该参数未开放使用。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - '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' => '工作目录。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/usr/local '."\n", - ], - 'Commands' => [ - 'description' => '容器启动指令。', - 'type' => 'array', - 'items' => [ - 'description' => '容器启动指令。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'sleep', - ], - 'required' => false, - 'maxItems' => 101, - ], - 'Args' => [ - 'description' => '容器启动参数。', - 'type' => 'array', - 'items' => [ - 'description' => '容器启动参数。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '10', + 'Strategy' => ['description' => '实例刷新任务的运行策略,可能值:'."\n" + ."\n" + .'- Rolling:实例刷新任务通过创建新实例,释放旧实例的方式进行实例刷新。'."\n" + ."\n" + .'- ReplaceSystemDisk:在原有实例基础上更新系统盘。', 'type' => 'string', 'example' => 'Rolling'], ], - 'required' => false, - 'maxItems' => 101, - ], - 'SecurityContext.RunAsUser' => [ - 'description' => '设置运行容器的用户ID。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '587', - ], - 'Gpu' => [ - 'description' => '指定容器使用的GPU个数。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - 'Memory' => [ - 'description' => '内存大小。单位:GiB。'."\n" - ."\n", - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '1.0', - ], - 'Name' => [ - 'description' => '容器名称。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test-init', ], ], - 'required' => false, ], - 'required' => false, - 'maxItems' => 21, + 'description' => '', ], ], - [ - 'name' => 'DnsConfigNameServers', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'DNS服务器的IP地址列表。', - 'type' => 'array', - 'items' => [ - 'description' => 'DNS服务器的IP地址列表。', - 'type' => 'string', - 'required' => false, - 'example' => '172.10.*.** '."\n", + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f****\\",\\n \\"MaxResults\\": 50,\\n \\"TotalCount\\": 100,\\n \\"InstanceRefreshTasks\\": [\\n {\\n \\"ScalingGroupId\\": \\"asg-bp16pbfcr8j9*****\\",\\n \\"InstanceRefreshTaskId\\": \\"ir-1adfa123****\\",\\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 {\\n \\"InstanceType\\": \\"ecs.sn1ne.large\\"\\n }\\n ],\\n \\"Containers\\": [\\n {\\n \\"Name\\": \\"name\\",\\n \\"Image\\": \\"registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:latest\\",\\n \\"Commands\\": [\\n \\"sleep\\"\\n ],\\n \\"Args\\": [\\n \\"100\\"\\n ],\\n \\"EnvironmentVars\\": [\\n {\\n \\"Key\\": \\"PATH\\",\\n \\"Value\\": \\"/usr/local/bin\\",\\n \\"FieldRefFieldPath\\": \\"fieldPath\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"FinishedUpdateCapacity\\": 10,\\n \\"TotalNeedUpdateCapacity\\": 20,\\n \\"SkipMatching\\": true,\\n \\"CheckpointPauseTime\\": 30,\\n \\"Checkpoints\\": [\\n {\\n \\"Percentage\\": 60\\n }\\n ],\\n \\"Strategy\\": \\"Rolling\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => '查询实例刷新任务列表', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeInstanceRefreshes', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], - 'required' => false, - 'maxItems' => 20, ], ], + ], + ], + 'DescribeLifecycleActions' => [ + 'summary' => '调用DescribeLifecycleActions,通过指定伸缩活动的ID、查询凭证、MaxResults等配置参数,查看伸缩活动发生时,生命周期挂钩执行操作的状态、标识符、挂起的ECS实例的ID等信息。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'DnsConfigSearchs', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'DNS搜索域列表。', - 'type' => 'array', - 'items' => [ - 'description' => 'DNS搜索域列表。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'svc.local.kubenetes '."\n", - ], - 'required' => false, - 'maxItems' => 20, - ], + 'AK' => [], ], + ], + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '125398', + 'abilityTreeNodes' => ['FEATUREess54US0Q'], + ], + 'parameters' => [ [ - 'name' => 'DnsConfigOptions', + 'name' => 'ScalingActivityId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '对象选项列表,每个对象由Name和Value(可选)构成。', - 'type' => 'array', - 'items' => [ - 'description' => '对象选项列表,每个对象由Name和Value(可选)构成。', - 'type' => 'object', - 'properties' => [ - 'Value' => [ - 'description' => '对象变量值。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'value', - ], - 'Name' => [ - 'description' => '对象变量名。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'name '."\n", - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 20, - ], + 'schema' => ['description' => '伸缩活动的ID。', 'type' => 'string', 'required' => true, 'example' => 'asa-bp17mug9t0pegagw****'], ], [ - 'name' => 'HostAliases', + 'name' => 'LifecycleActionStatus', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '主机相关信息。', - 'type' => 'array', - 'items' => [ - 'description' => '主机相关信息。', - 'type' => 'object', - 'properties' => [ - 'Ip' => [ - 'description' => '添加IP地址。', - 'type' => 'string', - 'required' => false, - 'example' => '192.0.XX.XX '."\n", - ], - 'Hostnames' => [ - 'description' => '添加主机名。', - 'type' => 'array', - 'items' => [ - 'description' => '添加主机名。', - 'type' => 'string', - 'required' => false, - 'example' => '[\'hehe.com\', \'haha.com\'] '."\n", - ], - 'required' => false, - 'maxItems' => 51, - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 101, - ], + 'schema' => ['description' => '生命周期操作的状态。取值范围:'."\n" + ."\n" + .'- Pending:挂起中。表示ECS实例仍处于挂起中状态。'."\n" + .'- Timeout:已超时。表示已到达生命周期挂钩的超时时间,自动结束ECS实例的挂起中状态。'."\n" + .'- Completed:已处理。表示您手动提前结束了ECS实例的挂起中状态。', 'type' => 'string', 'required' => false, 'example' => 'Pending'], ], [ - 'name' => 'SecurityContextSysCtls', + 'name' => 'NextToken', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '实例运行的安全上下文的系统信息。', - 'type' => 'array', - 'items' => [ - 'description' => '实例运行的安全上下文的系统信息。', - 'type' => 'object', - 'properties' => [ - 'Value' => [ - 'description' => '实例运行的安全上下文的变量值。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => '65536', - ], - 'Name' => [ - 'description' => '实例运行的安全上下文系统名称。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'kernel.msgmax '."\n", - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 11, - ], + 'schema' => ['description' => '查询凭证,用于指定开始查询的位置。'."\n" + ."\n" + .'例如上次查询10条生命周期操作后,本次从第11条生命周期操作开始查询。取值为上次调用本接口返回的NextToken参数值,如果不填写取值则表示从头开始查询。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAcSz4VTb1Nq****'], ], [ - 'name' => 'NtpServers', + 'name' => 'MaxResults', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'NTP服务器。', - 'type' => 'array', - 'items' => [ - 'description' => 'NTP服务器。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ntp.cloud.aliyuncs.com '."\n", - ], - 'required' => false, - 'maxItems' => 21, - ], + 'schema' => ['description' => '设置单页查询的最大条目数。取值范围:1~50。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'AcrRegistryInfos', + 'name' => 'RegionId', 'in' => 'query', - 'style' => 'repeatList', + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'ACR企业版实例的信息。', - 'type' => 'array', - 'items' => [ - 'description' => 'ACR企业版实例的信息。', - 'type' => 'object', - 'properties' => [ - 'Domains' => [ - 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。', - 'type' => 'array', - 'items' => [ - 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。', - 'type' => 'string', - 'required' => false, - 'example' => '*****-****-registry.cn-beijing.cr.aliyuncs.com', + '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' => [ + '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' => [ + 'description' => '该生命周期挂钩挂起的ECS实例的ID列表。', + 'type' => 'array', + 'items' => ['description' => '该生命周期挂钩挂起的ECS实例的ID。', 'type' => 'string', 'example' => '["i-bp11m3fzlqrgk5vh****","i-bp11m3fzlqrgk5vh****"]'], + ], ], - 'required' => false, - 'maxItems' => 100, - ], - 'InstanceName' => [ - 'description' => 'ACR企业版实例的名称。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acr-test '."\n", - ], - 'InstanceId' => [ - 'description' => 'ACR企业版实例ID。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cri-nwj395hgf6f3**** '."\n", - ], - 'RegionId' => [ - 'description' => 'ACR企业版实例所属地域。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou '."\n", ], ], - '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', - 'schema' => [ - 'title' => 'containers 参数更新方式控制 '."\n" - .'RenewUpdate:全量更新,以更新请求中containers参数为准,覆盖原有containers参数配置。'."\n" - .'IncrementalUpdate:增量更新,根据container.name进行container匹配,仅更新设置请求参数中设置参数,未设置参数不进行更新。'."\n" - .'默认值:RenewUpdate', - 'description' => 'Containers参数更新方式控制参数。取值范围:'."\n" - ."\n" - .'- RenewUpdate:全量更新,以更新请求中Containers参数为准,覆盖原有Containers参数配置。'."\n" - .'- IncrementalUpdate:增量更新,根据Container.name进行Container匹配,仅更新请求参数中已设置参数,未设置参数不进行更新。'."\n" - ."\n" - .'默认值:RenewUpdate。', - 'type' => 'string', - 'required' => false, - 'example' => 'RenewUpdate', ], ], - [ - 'name' => 'InstanceTypes', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '指定的ECS实例规格,支持指定多个规格(最多支持5个)。', - 'type' => 'array', - 'items' => [ - 'description' => '指定的ECS实例规格。支持指定多个规格(最多支持5个),更多信息,请参见[指定ECS规格创建实例](~~114664~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.g6.large', + ], + 'title' => '查看伸缩活动对应的生命周期操作详情', + 'description' => '如果发生了和生命周期挂钩适用类型一致的伸缩活动,每个生命周期挂钩都会触发一次生命周期操作,生命周期操作有三种状态:'."\n" + ."\n" + .'- Pending:挂起中。表示ECS实例仍处于挂起中状态。'."\n" + ."\n" + .'- Timeout:已超时。表示已超过生命周期挂钩的超时时间,自动结束了ECS实例的挂起中状态。'."\n" + ."\n" + .'- Completed:已处理。表示您手动提前结束了ECS实例的挂起中状态。'."\n" + ."\n" + .'如果在创建生命周期挂钩时没有设置后续动作,例如在结束挂起后触发执行指定的OOS模板。您可以调用本接口获取当前伸缩活动对应生命周期操作的标识符,以便自行定制后续动作。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeLifecycleActions', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], - 'required' => false, - 'maxItems' => 10, ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAcSz4VTb1Nq****\\",\\n \\"RequestId\\": \\"42A742EB-FCF3-459E-9C62-E107048C17E3\\",\\n \\"TotalCount\\": 3,\\n \\"MaxResults\\": 3,\\n \\"LifecycleActions\\": [\\n {\\n \\"LifecycleHookId\\": \\"ash-bp18uoft0deax0f7****\\",\\n \\"LifecycleActionToken\\": \\"9C2E9DA7-F794-449A-ACF6-CEE24444****\\",\\n \\"LifecycleActionStatus\\": \\"Pending\\",\\n \\"LifecycleActionResult\\": \\"CONTINUE\\",\\n \\"InstanceIds\\": [\\n \\"[\\\\\\"i-bp11m3fzlqrgk5vh****\\\\\\",\\\\\\"i-bp11m3fzlqrgk5vh****\\\\\\"]\\"\\n ]\\n }\\n ]\\n}","type":"json"}]', + ], + 'DescribeLifecycleHooks' => [ + 'summary' => '调用DescribeLifecycleHooks通过指定生命周期挂钩ID或伸缩组ID来查询生命周期挂钩的信息,包括等待状态结束后的下一步动作、生命周期挂钩对应的伸缩活动类型、通知对象标识符、挂起等待时间等。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'DataCacheBucket', - 'in' => 'query', - 'schema' => [ - 'description' => '数据缓存Bucket。', - 'type' => 'string', - 'required' => false, - 'example' => 'default', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '125347', + 'abilityTreeNodes' => ['FEATUREess54US0Q'], + ], + 'parameters' => [ [ - 'name' => 'DataCachePL', + 'name' => 'ScalingGroupId', '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" - ."\n" - .'>关于ESSD云盘的更多信息,请参见[ESSD云盘](~~122389~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'PL1', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp1igpak5ft1flyp****'], ], [ - 'name' => 'DataCacheProvisionedIops', + 'name' => 'LifecycleHookName', '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', - ], + 'schema' => ['description' => '生命周期挂钩名称。', 'type' => 'string', 'required' => false, 'example' => 'lifecyclehook****'], ], [ - 'name' => 'DataCacheBurstingEnabled', - 'in' => 'query', - 'schema' => [ - 'description' => '数据缓存使用ESSD AutoPL云盘时,是否开启Burst(性能突发)。取值范围:'."\n" - ."\n" - .'- true:开启。'."\n" - .'- false:未开启。'."\n" - ."\n" - .'默认值:false。'."\n" - ."\n" - .'>关于ESSD AutoPL云盘的更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => ['description' => '实例状态列表的页码,起始值:1。'."\n" + ."\n" + .'默认值:1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'GpuDriverVersion', + 'name' => 'PageSize', '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', - ], + 'schema' => ['description' => '分页查询时设置的每页行数,最大值:50。'."\n" + ."\n" + .'默认值:50。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50'], ], [ - 'name' => 'Override', + 'name' => 'LifecycleHookIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'title' => '是否覆盖。取值范围:'."\n" - ."\n" - .'true:覆盖。'."\n" - .'false:不覆盖。', - 'description' => '是否覆盖。取值范围:'."\n" - ."\n" - .'- true:覆盖。'."\n" - .'- false:不覆盖。', - 'type' => 'boolean', + 'description' => '生命周期挂钩的ID列表。', + 'type' => 'array', + 'items' => ['description' => '生命周期挂钩的ID。', 'type' => 'string', 'required' => false, 'example' => 'ash-bp1at9ufhmcf9cmy****'], 'required' => false, - 'example' => 'false', + 'maxItems' => 100, ], ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '伸缩组所属地域的ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing'], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '修改伸缩配置返回信息。', + 'description' => '查询生命周期挂钩返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID,唯一标识。'."\n" - ."\n", - 'type' => 'string', - 'example' => '89945DD3-9072-47D0-A318-353284CF****', + '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' => [ + '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'], + ], + ], ], ], ], ], ], - 'errorCodes' => [ - 403 => [ - [ - 'errorCode' => 'Forbidden.RiskControl', - 'errorMessage' => 'Forbidden.RiskControl', + 'title' => '查询生命周期挂钩详情', + 'description' => '您可以通过以下三种方式查询生命周期挂钩:'."\n" + .'- 指定一个生命周期挂钩ID列表(LifecycleHookIds),此时将忽略伸缩组ID(ScalingGroupId)和生命周期挂钩名称(LifecycleHookName)参数。'."\n" + ."\n" + .'- 指定伸缩组ID(ScalingGroupId)。'."\n" + ."\n" + .'- 同时指定伸缩组ID(ScalingGroupId)和生命周期挂钩名称(LifecycleHookName)。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeLifecycleHooks', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"89945DD3-9072-47D0-A318-353284CF****\\"\\n}","type":"json"}]', - 'title' => '修改一个ECI类型伸缩配置', - 'description' => '- 如果修改伸缩配置的名称,请注意同一伸缩组下不能存在名称相同的伸缩配置。'."\n" - ."\n" - .'- 可以调用[DescribeEciScalingConfigurations](~~459374~~)查询并验证修改结果。', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 1,\\n \\"LifecycleHooks\\": [\\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}","type":"json"}]', ], - 'ApplyEciScalingConfiguration' => [ - 'summary' => '如果您需要通过配置文件方式快速创建和管理ECI类型的伸缩配置,则可以通过调用API ApplyEciScalingConfiguration来创建或更新ECI类型的伸缩配置。', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], + 'DescribeLimitation' => [ + 'summary' => '调用API DescribeLimitation查询资源配额限制。例如查询支持创建定时任务的最大值、支持关联负载均衡实例的最大数量、支持设置伸缩组内最大实例数以及伸缩配置最大数量等。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '212847', - 'abilityTreeNodes' => [ - 'FEATUREessWJGIW5', - 'FEATUREessT4M3WE', - ], + 'abilityTreeNodes' => ['FEATUREessZ1KWHS'], + 'tenantRelevance' => 'publicInformation', ], - 'parameters' => [ - [ - 'name' => 'Content', - 'in' => 'query', - 'allowEmptyValue' => false, + 'parameters' => [], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '配置文件内容。', - 'type' => 'string', - 'required' => true, - 'example' => 'apiVersion: apps/v1'."\n" - .'kind: Deployment'."\n" - .'metadata:'."\n" - .' name: nginx-deployment'."\n" - .' labels:'."\n" - .' app: nginx'."\n" - .' spec:'."\n" - .' replicas: 3'."\n" - .' selector:'."\n" - .' matchLabels:'."\n" - .' app: nginx'."\n" - .' template:'."\n" - .' metadata:'."\n" - .' labels:'."\n" - .' app: nginx'."\n" - .' annotations:'."\n" - .' k8s.aliyun.com/eip-bandwidth: 10'."\n" - .' k8s.aliyun.com/eci-with-eip: true'."\n" - .' spec:'."\n" - .' containers:'."\n" - .' - name: nginx'."\n" - .' image: nginx:1.14.2'."\n" - .' ports:'."\n" - .' - containerPort: 80', + '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'], + ], ], ], - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '所属地域的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-qingdao', + ], + 'title' => '查询资源配额限制', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeLimitation', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]', + ], + 'DescribeNotificationConfigurations' => [ + 'summary' => '调用API DescribeNotificationConfiguration,通过伸缩组ID查询该伸缩组的弹性伸缩事件及资源变化通知,包括事件通知类型和通知方式等。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '125360', + 'abilityTreeNodes' => ['FEATUREess6E26FJ', 'FEATUREessFY8KDA'], + ], + 'parameters' => [ [ 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'asg-bp1igpak5ft1flyp****', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1igpak5ft1flyp****'], ], [ - 'name' => 'ScalingConfigurationId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '待修改伸缩配置的ID。'."\n" - ."\n" - .'当基于Content配置信息更新ECI类型的伸缩配置时,指定`ScalingConfigurationId`;当未指定`ScalingConfigurationId`时,基于Content配置信息会新建ECI类型的伸缩配置。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'asc-bp1i65jd06v04vdh****', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing'], ], ], '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****', - ], - 'ScalingConfigurationId' => [ - 'description' => '伸缩配置ID。', - 'type' => 'string', - 'example' => 'asc-bp16har3jpj6fjbx****', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'NotificationConfigurationModels' => [ + 'description' => '弹性伸缩事件及资源变化通知的集合。', + 'type' => 'array', + 'items' => [ + 'description' => '弹性伸缩事件及资源变化通知的集合。', + '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' => [ + 'description' => '弹性伸缩事件及资源变化通知类型列表。', + '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' => '消息通知内容的编码方式。', 'type' => 'string', 'example' => 'PlainText'], + ], + ], ], ], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"NotificationConfigurationModels\\": [\\n {\\n \\"NotificationArn\\": \\"acs:mns:cn-beijing:161456884340****:topic/modifyLifecycleHo****\\",\\n \\"ScalingGroupId\\": \\"asg-bp1igpak5ft1flyp****\\",\\n \\"NotificationTypes\\": [\\n \\"AUTOSCALING:SCALE_IN_SUCCESS\\"\\n ],\\n \\"TimeZone\\": \\"UTC+8\\",\\n \\"MessageEncoding\\": \\"PlainText\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => '查询弹性伸缩事件及资源变化通知', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeNotificationConfigurations', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingConfigurationId\\": \\"asc-bp16har3jpj6fjbx****\\"\\n}","type":"json"}]', - 'title' => '基于配置文件管理伸缩配置', - 'description' => '基于YAML配置文件管理ECI类型的伸缩配置时,您需要注意以下事项:'."\n" - ."\n" - .'- 如果指定ECI类型的伸缩配置ID时,系统会基于YAML配置文件更新ECI类型的伸缩配置。'."\n" - .'- 如果未指定ECI类型的伸缩配置ID时,系统会基于YAML配置文件创建对应ECI类型的伸缩配置。', ], - 'DeleteEciScalingConfiguration' => [ - 'summary' => '当前伸缩配置处于未生效状态,且伸缩组中不存在使用该伸缩配置自动创建的ECI实例,您可以调用API DeleteEciScalingConfiguration删除不再需要的一个ECI类型的伸缩配置,可以有效避免占用伸缩配置的配额。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeNotificationTypes' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, + 'operationType' => 'read', 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '125381', - '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', - ], - ], + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '125339', + 'abilityTreeNodes' => ['FEATUREessFY8KDA'], + 'tenantRelevance' => 'publicInformation', ], + 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。'."\n" - ."\n" - .'无论调用接口成功与否,系统都会返回请求ID。', - 'type' => 'string', - 'example' => '45D5B0AD-3B00-4A9B-9911-6D5303B0****', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'NotificationTypes' => [ + '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'], ], ], ], ], ], - 'errorCodes' => [ - 403 => [ - [ - 'errorCode' => 'Forbidden.RiskControl', - 'errorMessage' => 'Forbidden.RiskControl', + 'title' => '查询弹性伸缩事件及资源变化通知的类型', + 'summary' => '调用DescribeNotificationTypes接口,查询弹性伸缩组的弹性伸缩事件及资源变化通知的类型,例如:扩容伸缩活动成功,缩容伸缩活动成功,定时任务到期提醒,弹性扩容活动部分成功等。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeNotificationTypes', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"45D5B0AD-3B00-4A9B-9911-6D5303B0****\\"\\n}","type":"json"}]', - 'title' => '删除一个ECI类型伸缩配置', - 'description' => '删除ECI类型伸缩配置前,请注意以下情况不能删除该类型的伸缩配置:'."\n" - ."\n" - .'- 伸缩配置在伸缩组中处于生效(Active)状态。'."\n" - ."\n" - .'- 伸缩组中仍然存在使用该伸缩配置创建的ECI实例。', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"NotificationTypes\\": [\\n \\"AUTOSCALING:SCALE_OUT_SUCCESS\\"\\n ]\\n}","type":"json"}]', ], 'DescribePatternTypes' => [ 'summary' => '调用DescribePatternTypes接口,并可以指定交换机的ID、实例的vCPU核数、内存大小、规格族级别以及可接受的最高价格等参数,筛选出符合要求的实例规格。', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -18195,21 +8867,13 @@ 'systemTags' => [ 'operationType' => 'list', 'abilityTreeCode' => '221452', - 'abilityTreeNodes' => [ - 'FEATUREessWJGIW5', - ], + 'abilityTreeNodes' => ['FEATUREessWJGIW5'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '所属地域的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '所属地域的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'VSwitchId', @@ -18218,12 +8882,7 @@ 'schema' => [ 'description' => '交换机的ID列表。', 'type' => 'array', - 'items' => [ - 'description' => '交换机的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'vsw-bp14zolna43z266bq****', - ], + 'items' => ['description' => '交换机的ID。', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp14zolna43z266bq****'], 'required' => false, 'maxItems' => 100, ], @@ -18235,12 +8894,7 @@ 'schema' => [ 'description' => '可用区ID列表。当传入交换机ID时,此参数无效。', 'type' => 'array', - 'items' => [ - 'description' => '可用区ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou-g', - ], + 'items' => ['description' => '可用区ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-g'], 'required' => false, 'maxItems' => 100, ], @@ -18248,66 +8902,38 @@ [ 'name' => 'SpotStrategy', 'in' => 'query', - 'schema' => [ - 'description' => '后付费实例的抢占策略。取值范围:'."\n" - .' '."\n" - .'- NoSpot:普通的按量付费实例。'."\n" - .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n" - .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。'."\n" - ."\n" - .'默认值:NoSpot。', - 'type' => 'string', - 'required' => false, - 'example' => 'NoSpot', - ], + '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', - ], + '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', - ], + 'schema' => ['description' => '实例规格的内存大小,单位为GiB。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '4'], ], [ 'name' => 'MaxPrice', 'in' => 'query', - 'schema' => [ - 'description' => '按量付费实例或者抢占式实例可接受的每小时最高价格。'."\n" - ."\n", - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '2', - ], + 'schema' => ['description' => '按量付费实例或者抢占式实例可接受的每小时最高价格。'."\n" + ."\n", 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '2'], ], [ 'name' => 'InstanceFamilyLevel', 'in' => 'query', - 'schema' => [ - 'description' => '实例规格族级别。取值范围:'."\n" - ."\n" - .'- EntryLevel:入门级。'."\n" - .'- EnterpriseLevel:企业级。'."\n" - .'- CreditEntryLevel:积分入门级。详情请参见[突发性能实例](~~59977~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'EnterpriseLevel', - ], + 'schema' => ['description' => '实例规格族级别。取值范围:'."\n" + ."\n" + .'- EntryLevel:入门级。'."\n" + .'- EnterpriseLevel:企业级。'."\n" + .'- CreditEntryLevel:积分入门级。详情请参见[突发性能实例](~~59977~~)。', 'type' => 'string', 'required' => false, 'example' => 'EnterpriseLevel'], ], [ 'name' => 'ExcludedInstanceType', @@ -18321,17 +8947,12 @@ ."\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', - ], + '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, ], @@ -18350,38 +8971,28 @@ ."\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' => 100, - ], - ], - [ - 'name' => 'BurstablePerformance', - 'in' => 'query', - 'schema' => [ - 'description' => '是否为性能突发实例规格。取值范围:'."\n" - ."\n" - .'- Exclude:不包含性能突发实例规格。'."\n" - .'- Include:包含性能突发实例规格。'."\n" - .'- Required:只包含性能突发实例规格。'."\n" + 'items' => ['description' => '实例规格所属的架构类型。取值范围:'."\n" + .'- X86:X86计算。'."\n" + .'- Heterogeneous:异构计算,例如GPU或FPGA等。'."\n" + .'- BareMetal:弹性裸金属服务器。'."\n" + .'- Arm:Arm计算。'."\n" ."\n" - .'默认值:Include。', - 'type' => 'string', + .'默认值:包含所有架构类型。', 'type' => 'string', 'required' => false, 'example' => 'X86'], 'required' => false, - 'example' => 'Include', + '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', @@ -18389,13 +9000,7 @@ 'schema' => [ 'description' => '实例规格的vCPU内核数目,可以指定多个。', 'type' => 'array', - 'items' => [ - 'description' => '实例规格的vCPU内核数目,可以指定多个。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2', - ], + 'items' => ['description' => '实例规格的vCPU内核数目,可以指定多个。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2'], 'required' => false, 'maxItems' => 10, ], @@ -18407,13 +9012,7 @@ 'schema' => [ 'description' => '实例规格的内存大小,单位为GiB,可以指定多个。', 'type' => 'array', - 'items' => [ - 'description' => '实例规格的内存大小,单位为GiB,可以指定多个。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '4', - ], + 'items' => ['description' => '实例规格的内存大小,单位为GiB,可以指定多个。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '4'], 'required' => false, 'maxItems' => 10, ], @@ -18421,13 +9020,7 @@ [ 'name' => 'ChannelId', 'in' => 'query', - 'schema' => [ - 'description' => '渠道ID,内部保留参数。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '79425074', - ], + 'schema' => ['description' => '渠道ID,内部保留参数。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '79425074'], ], [ 'name' => 'InstanceTypeFamilies', @@ -18436,12 +9029,7 @@ 'schema' => [ 'description' => '指定查询的实例规格族。N 表示可以设置多个实例规格族,N 的取值范围:1~10。', 'type' => 'array', - 'items' => [ - 'description' => '指定查询的实例规格族。N 表示可以设置多个实例规格族,N 的取值范围:1~10。', - 'type' => 'string', - 'required' => false, - 'example' => '["ecs.g6", "ecs.c6", … "ecs.r6"]', - ], + 'items' => ['description' => '指定查询的实例规格族。N 表示可以设置多个实例规格族,N 的取值范围:1~10。', 'type' => 'string', 'required' => false, 'example' => '["ecs.g6", "ecs.c6", … "ecs.r6"]'], 'required' => false, 'maxItems' => 100, ], @@ -18449,24 +9037,12 @@ [ 'name' => 'MinimumCpuCoreCount', 'in' => 'query', - 'schema' => [ - 'description' => '实例规格的最小vCPU内核数目。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2', - ], + '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', - ], + 'schema' => ['description' => '实例规格的最大vCPU内核数目。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '4'], ], [ 'name' => 'GpuSpecs', @@ -18475,12 +9051,7 @@ 'schema' => [ 'description' => 'GPU 类型。', 'type' => 'array', - 'items' => [ - 'description' => 'GPU 类型。', - 'type' => 'string', - 'required' => false, - 'example' => '["NVIDIA V100"]', - ], + 'items' => ['description' => 'GPU 类型。', 'type' => 'string', 'required' => false, 'example' => '["NVIDIA V100"]'], 'required' => false, 'maxItems' => 100, ], @@ -18508,28 +9079,23 @@ .'- 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"]', - ], + '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, ], @@ -18546,17 +9112,12 @@ .'- X86。'."\n" .'- ARM。', 'type' => 'array', - 'items' => [ - 'description' => '实例规格的CPU架构。取值范围:'."\n" - ."\n" - .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n" - ."\n" - .'- X86。'."\n" - .'- ARM。', - 'type' => 'string', - 'required' => false, - 'example' => '["X86", "ARM"]', - ], + 'items' => ['description' => '实例规格的CPU架构。取值范围:'."\n" + ."\n" + .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n" + ."\n" + .'- X86。'."\n" + .'- ARM。', 'type' => 'string', 'required' => false, 'example' => '["X86", "ARM"]'], 'required' => false, 'maxItems' => 100, ], @@ -18568,12 +9129,7 @@ '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", "Intel Xeon(Skylake) Platinum 8163", … "Intel Xeon(Cascade Lake) Platinum 8269CY"]', - ], + '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' => 100, ], @@ -18581,152 +9137,367 @@ [ 'name' => 'MinimumEniQuantity', 'in' => 'query', - 'schema' => [ - 'description' => '实例最小支持挂载的弹性网卡上限。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2', - ], + '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', - ], + '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', - ], + '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', - ], + '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', - ], + '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', - ], + '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' => [ - 'description' => '实例最大内存。单位:GiB。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '4', + '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' => [ + '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' => '[{"errorExample":"","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}","type":"json"}]', + 'title' => '根据实例属性查询实例规格', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'ess:DescribePatternTypes', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + ], + 'DescribeRegions' => [ + 'summary' => '在使用弹性伸缩前,您可以先通过调用API DescribeRegions查询可以在哪些地域使用弹性伸缩服务,方便您选择最适合的地域和可用区来使用弹性伸缩服务,确保在所选地域内获得良好的访问性能。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'MinimumGpuAmount', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '125375', + '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' => [ - 'description' => '实例最小 GPU 数目。取值范围:正整数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '2', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '73469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'Regions' => [ + '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'], + ], + ], + ], + ], + ], + ], + ], + 'title' => '查询可以使用弹性伸缩服务的地域', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeRegions', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"73469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"Regions\\": [\\n {\\n \\"ClassicUnavailable\\": false,\\n \\"RegionEndpoint\\": \\"ess.aliyuncs.com\\",\\n \\"LocalName\\": \\"华北2(北京)\\",\\n \\"VpcUnavailable\\": false,\\n \\"RegionId\\": \\"cn-beijing\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'DescribeScalingActivities' => [ + 'summary' => '通过API DescribeScalingActivities查看伸缩活动的详情,了解通过定时任务、报警任务或手动执行伸缩规则等方式触发伸缩活动的结果。例如,您可以在伸缩活动详情页查看到伸缩活动的状态、活动起因、变化后总实例数等信息。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '125358', + 'abilityTreeNodes' => ['FEATUREessACRSW1'], + ], + 'parameters' => [ [ - 'name' => 'MaximumGpuAmount', + '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" + ."\n" + .'> 调用该API时,`ScalingGroupId`和`ScalingActivityIds`参数必须二选一进行配置,如果两个参数同时都不配置,则会报错。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'asg-bp18p2yfxow2dloq****'], + ], + [ + 'name' => 'StatusCode', + 'in' => 'query', + 'schema' => ['description' => '伸缩活动的状态。取值范围:'."\n" + .' '."\n" + .'- Successful:执行成功的伸缩活动。 '."\n" + .'- Warning:部分执行成功的伸缩活动。 '."\n" + .'- Failed:执行失败的伸缩活动。 '."\n" + .'- InProgress:正在执行的伸缩活动。 '."\n" + .'- Rejected:执行伸缩活动请求被拒绝。 '."\n" + .' ', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Successful'], + ], + [ + 'name' => 'ScalingActivityIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '实例最大 GPU 数目。取值范围:正整数。', - 'type' => 'integer', - 'format' => 'int32', + 'description' => '待查询伸缩活动的ID。'."\n" + ."\n" + .'> 调用该API时,`ScalingGroupId`和`ScalingActivityIds`参数必须二选一进行配置,如果两个参数同时都不配置,则会报错。', + 'type' => 'array', + 'items' => ['description' => '待查询伸缩活动的ID。'."\n" + ."\n" + .'> 调用该API时,`ScalingGroupId`和`ScalingActivityIds`参数必须二选一进行配置,如果两个参数同时都不配置,则会报错。', 'type' => 'string', 'required' => false, 'example' => 'asa-bp161xudmuxdzofe****'], 'required' => false, - 'example' => '2', + 'maxItems' => 20, ], ], + [ + 'name' => 'InstanceRefreshTaskId', + 'in' => 'query', + 'schema' => ['description' => '实例刷新任务ID,可以设置此参数查询实例刷新任务相关的伸缩活动列表。', 'type' => 'string', 'required' => false, 'example' => 'ir-a12ds234fasd*****'], + ], ], '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' => '符合条件的实例规格。', + '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' => [ + 'description' => '伸缩活动信息组成的集合。', 'type' => 'array', 'items' => [ + 'description' => '伸缩活动信息组成的集合。', 'type' => 'object', 'properties' => [ - 'InstanceType' => [ - 'description' => '实例规格名称。', - 'type' => 'string', - 'example' => 'ecs.c7.xlarge', + 'Progress' => ['description' => '伸缩活动的运行进度。', 'type' => 'integer', 'format' => 'int32', 'example' => '100'], + 'ScalingInstanceNumber' => ['description' => '- 如果伸缩活动类型为扩容,该参数表示本次伸缩活动中被创建或从停机回收状态启动的实例的个数。'."\n" + ."\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" + .' '."\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' => [ + 'description' => '当前伸缩活动新建实例列表。', + 'type' => 'array', + 'items' => ['description' => '当前伸缩活动新建实例列表。', 'type' => 'string', 'example' => '["i-abc1","i-abc2"]'], ], - 'InstanceFamilyLevel' => [ - 'description' => '实例规格族级别。'."\n" - ."\n" - .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n" - .'- EnterpriseLevel:企业级。性能稳定,资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n" - .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的情况。更多信息,请参见[突发性能实例](~~59977~~)。', - 'type' => 'string', - 'example' => 'EnterpriseLevel', + 'DestroyedInstances' => [ + 'description' => '当前伸缩活动释放实例列表。', + 'type' => 'array', + 'items' => ['description' => '当前伸缩活动释放实例列表。', 'type' => 'string', 'example' => '['."\n" + .' "i-abc1",'."\n" + .' "i-abc2"'."\n" + .']'], ], - 'InstanceTypeFamily' => [ - 'description' => '实例规格族。', - 'type' => 'string', - 'example' => 'ecs.c7', + 'StartedInstances' => [ + 'description' => '当前伸缩活动启动的停机不收费实例列表。', + 'type' => 'array', + 'items' => ['description' => '当前伸缩活动启动的停机不收费实例列表。', 'type' => 'string', 'example' => '['."\n" + .' "i-abc1",'."\n" + .' "i-abc2"'."\n" + .']'], ], - 'Cores' => [ - 'description' => '实例规格的 vCPU 核数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4', + 'StoppedInstances' => [ + 'description' => '当前伸缩活动进入停机不收费状态实例列表。', + 'type' => 'array', + 'items' => ['description' => '当前伸缩活动进入停机不收费状态实例列表。', 'type' => 'string', 'example' => '['."\n" + .' "i-abc1",'."\n" + .' "i-abc2"'."\n" + .']'], + ], + '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" + .'- Cms:通过报警任务触发伸缩活动。'."\n" + .'- Api:用户通过API方式触发伸缩活动。'."\n" + .'- Ess:系统任务触发伸缩活动。', 'type' => 'string', 'example' => 'Api'], + 'TriggerSourceId' => ['description' => '伸缩活动触发源ID。可能值:'."\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' => [ + 'description' => '伸缩活动禁用的生命周期挂钩ID列表。', + 'type' => 'array', + 'items' => ['description' => '伸缩活动禁用的生命周期挂钩ID列表。', 'type' => 'string', 'example' => 'ash-bp14zolna43z266bq***'."\n"], + ], + ], ], - 'Memory' => [ - 'description' => '实例规格的内存大小,单位为GiB。', - 'type' => 'number', - 'format' => 'float', - 'example' => '8', + 'ActivityMetadata' => ['description' => '伸缩活动的元数据。', 'type' => 'string', 'example' => '{\\"goatscaler.io/managed\\":\\"true\\"}'], + 'InstanceRefreshTaskId' => ['description' => '实例刷新任务ID。', 'type' => 'string', 'example' => 'ir-asdf12adsxg*****'], + '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' => [ + 'description' => '失败的实例ID列表。', + 'type' => 'array', + 'items' => ['description' => '实例ID。', 'type' => 'string', 'example' => 'i-8vbedazhjj6a6******'], + ], + ], + ], ], ], ], @@ -18735,19 +9506,32 @@ ], ], ], - 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]', - 'title' => '根据实例属性查询实例规格', + 'title' => '查询伸缩活动', + 'description' => '- 查询时可以指定伸缩组ID来查询该伸缩组下的所有伸缩活动。'."\n" + ."\n" + .'- 查询时可以通过伸缩活动的状态来过滤查询结果。'."\n" + ."\n" + .'- 可以查询30日内的伸缩活动。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingActivities', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CC107349-57B7-4405-B1BF-9BF5AF7F****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"ScalingActivities\\": [\\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 \\"[\\\\\\"i-abc1\\\\\\",\\\\\\"i-abc2\\\\\\"]\\"\\n ],\\n \\"DestroyedInstances\\": [\\n \\"[\\\\n \\\\\\"i-abc1\\\\\\",\\\\n \\\\\\"i-abc2\\\\\\"\\\\n]\\"\\n ],\\n \\"StartedInstances\\": [\\n \\"[\\\\n \\\\\\"i-abc1\\\\\\",\\\\n \\\\\\"i-abc2\\\\\\"\\\\n]\\"\\n ],\\n \\"StoppedInstances\\": [\\n \\"[\\\\n \\\\\\"i-abc1\\\\\\",\\\\n \\\\\\"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 \\"ash-bp14zolna43z266bq***\\\\n\\"\\n ]\\n },\\n \\"ActivityMetadata\\": \\"{\\\\\\\\\\\\\\"goatscaler.io/managed\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"true\\\\\\\\\\\\\\"}\\",\\n \\"InstanceRefreshTaskId\\": \\"ir-asdf12adsxg*****\\",\\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 \\"i-8vbedazhjj6a6******\\"\\n ]\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', ], - 'CreateScalingRule' => [ - 'summary' => '伸缩规则的作用由伸缩规则的类型来决定,可用于触发伸缩活动或者智能设置伸缩组边界值。根据不同业务需求,通过调用API CreateScalingRule创建不同类型的伸缩规则,例如,业务需要只能设置伸缩组边界值,建议您选择预测规则类型。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeScalingActivityDetail' => [ + 'summary' => '调用DescribeScalingActivityDetail接口,通过伸缩组中伸缩活动ID查询伸缩活动的详细信息,包括伸缩活动状态,错误码和错误信息等,根据错误信息进行故障排查与性能分析。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -18755,981 +9539,1299 @@ ], 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '125334', - 'abilityTreeNodes' => [ - 'FEATUREessRTZKQT', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '125351', + 'abilityTreeNodes' => ['FEATUREessACRSW1'], ], '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', + 'name' => 'ScalingActivityId', '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', - ], + 'schema' => ['description' => '待查询伸缩活动的ID。您可以通过调用DescribeScalingActivities查询伸缩活动ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asa-bp1c9djwrgxjyk31****'], ], - [ - 'name' => 'ScalingRuleType', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ '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', + '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.'], + ], ], ], - [ - 'name' => 'EstimatedInstanceWarmup', - 'in' => 'query', - 'schema' => [ - 'description' => '实例预热时间,适用于目标追踪规则和步进规则。处于预热状态的ECS实例将正常的加入伸缩组,但是期间将不会向云监控上报监控数据。'."\n" - ."\n" - .'> 动态计算需要扩缩容的ECS实例数量时,处于预热状态的实例不计入现有实例数量。'."\n" - ."\n" - .'取值范围:0~86400,单位:秒。'."\n" - ."\n" - .'默认值:300。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '300', + ], + 'title' => '查询一个伸缩活动的详细信息', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingActivityDetail', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + '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":"\\n B13527BF-1FBD-4334-A512-20F5E9D3FB4D\\n asa-bp1c9djwrgxjyk31****\\n new ECS instances \\\\\\"i-bp16t2cgmiiymeqv****\\\\\\" are created.\\n","errorExample":""}]', + ], + 'DescribeScalingActivityStatistics' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - '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', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221448', + 'abilityTreeNodes' => ['FEATUREessL0GZCK'], + ], + 'parameters' => [ [ - 'name' => 'TargetValue', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '目标值,适用于目标追踪规则和预测规则,且此时该项必选。TargetValue最多保留小数点后三位,且必须大于0。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '0.125', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'DisableScaleIn', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '是否禁用缩容,仅适用于目标追踪规则。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => false, 'example' => 'asg-8vbje5pofxxxxxxxx'], ], [ - 'name' => 'ScaleInEvaluationCount', + 'name' => 'StartTime', 'in' => 'query', - 'schema' => [ - 'description' => '创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的缩容报警任务触发报警时,所需连续满足阈值条件的次数。'."\n" - ."\n" - .'默认值:15。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '15', - ], + 'schema' => ['description' => '统计区间开始时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。', 'type' => 'string', 'required' => true, 'example' => '2025-12-15T08:00Z'], ], [ - 'name' => 'ScaleOutEvaluationCount', + 'name' => 'EndTime', 'in' => 'query', - 'schema' => [ - 'description' => '创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的扩容报警任务触发报警时,所需连续满足阈值条件的次数。'."\n" - ."\n" - .'默认值:3。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '3', - ], + 'schema' => ['description' => '统计区间结束时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。', 'type' => 'string', 'required' => true, 'example' => '2025-12-18T08:00Z'], ], [ - 'name' => 'PredictiveScalingMode', + 'name' => 'MetricType', 'in' => 'query', - 'schema' => [ - 'description' => '预测规则的模式,取值范围:'."\n" - ."\n" - .'- PredictAndScale:产生预测结果并创建预测任务。'."\n" - .'- PredictOnly:产生预测结果,但不会创建预测任务。'."\n" - ."\n" - .'默认值:PredictAndScale。', - 'type' => 'string', - 'required' => false, - 'example' => 'PredictAndScale', - ], + 'schema' => ['description' => '伸缩活动统计的指标名称,取值范围:'."\n" + ."\n" + .'- ScalingActivityStatus:统计区间内不同状态的伸缩活动分布。'."\n" + ."\n" + .'- ScalingActivityErrorCodes:统计区间内失败的伸缩活动中,不同错误码的分布。'."\n" + ."\n" + .'默认值:ScalingActivityStatus。', 'type' => 'string', 'required' => false, 'example' => 'ScalingActivityStatus'], ], - [ - 'name' => 'PredictiveValueBehavior', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '预测规则最大值处理方式,取值范围:'."\n" - ."\n" - .'- MaxOverridePredictiveValue:初始最大值会覆盖预测值。预测值大于初始最大值时,预测任务的最大值采用初始最大值。'."\n" - .'- PredictiveValueOverrideMax:预测值会覆盖初始最大值。预测值大于初始最大值时,预测任务的最大值采用预测值。'."\n" - .'- PredictiveValueOverrideMaxWithBuffer:预测值会附加一定比例。预测值会按照PredictiveValueBuffer比例增加,当增加后的值大于初始最大值时,会采用增加后的值。'."\n" - ."\n" - .'默认值:MaxOverridePredictiveValue。', - 'type' => 'string', - 'required' => false, - 'example' => 'MaxOverridePredictiveValue', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'A8F44B4D-BAB4-5176-8705-5984xxxxx'], + 'ScalingActivityStatusStatistics' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Statistic' => [ + 'description' => '伸缩活动状态统计指标。', + 'type' => 'array', + 'items' => [ + 'description' => '伸缩活动状态统计指标。', + 'type' => 'object', + 'properties' => [ + 'Time' => ['description' => '统计数据生成的时间点(UTC时间),格式:yyyyMMddHH。', 'type' => 'string', 'example' => '2025121623'], + 'SuccessActivityCount' => ['description' => '成功的伸缩活动数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'FailedActivityCount' => ['description' => '失败的伸缩活动数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'WarningActivityCount' => ['description' => '部分执行成功的伸缩活动数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + ], + ], + ], + ], + 'description' => '', + ], + 'ScalingActivityErrorCodeStatistics' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'ErrorStatistic' => [ + 'description' => '伸缩活动错误信息统计指标。', + 'type' => 'array', + 'items' => [ + 'description' => '伸缩活动错误信息统计指标。', + 'type' => 'object', + 'properties' => [ + 'ErrorCode' => ['description' => '伸缩活动错误码', 'type' => 'string', 'example' => 'QuotaExceeded.PrivateIpAddress'], + 'Count' => ['description' => '失败的伸缩活动数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '4'], + 'Time' => ['description' => '统计数据生成的时间点(UTC时间),格式:yyyyMMddHH。', 'type' => 'string', 'example' => '2025121623'], + ], + ], + ], + ], + 'description' => '', + ], + ], + 'description' => '', ], ], - [ - 'name' => 'PredictiveValueBuffer', - 'in' => 'query', - 'schema' => [ - 'description' => '`PredictiveValueBehavior`为`PredictiveValueOverrideMaxWithBuffer`时生效,预测值会按照该比例增加,当增加后的值大于初始最大值时,会采用增加后的值。取值范围:0~100。'."\n" - ."\n" - .'默认值:0。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '50', + ], + 'title' => '伸缩活动统计', + 'summary' => '统计一段时间内不同状态的伸缩活动分布。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingActivityStatistics', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A8F44B4D-BAB4-5176-8705-5984xxxxx\\",\\n \\"ScalingActivityStatusStatistics\\": {\\n \\"Statistic\\": [\\n {\\n \\"Time\\": \\"2025121623\\",\\n \\"SuccessActivityCount\\": 10,\\n \\"FailedActivityCount\\": 1,\\n \\"WarningActivityCount\\": 2\\n }\\n ]\\n },\\n \\"ScalingActivityErrorCodeStatistics\\": {\\n \\"ErrorStatistic\\": [\\n {\\n \\"ErrorCode\\": \\"QuotaExceeded.PrivateIpAddress\\",\\n \\"Count\\": 4,\\n \\"Time\\": \\"2025121623\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'DescribeScalingConfigurations' => [ + 'summary' => '调用API DescribeScalingConfigurations查询ECS类型伸缩配置的信息,包括实例规格、镜像等信息,方便您提前了解弹性扩张时使用的ECS实例模板详情。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'PredictiveTaskBufferTime', - 'in' => 'query', - 'schema' => [ - 'description' => '预测规则自动创建的预测任务默认均在整点执行,您可以设置预启动时间提前执行预测任务,预先准备资源。取值范围:0~60,单位:分钟。'."\n" - ."\n" - .'默认值:0。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '30', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '133422', + 'abilityTreeNodes' => ['FEATUREessVYTHU5'], + ], + 'parameters' => [ [ - 'name' => 'InitialMaxSize', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组实例数上限,和`PredictiveValueBehavior`结合使用。'."\n" - ."\n" - .'默认值为伸缩组最大实例数(MaxSize的值)。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - ], + 'schema' => ['description' => '伸缩配置所属伸缩组的地域ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-qingdao'], ], [ - 'name' => 'StepAdjustments', + 'name' => 'PageNumber', '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, - ], + 'schema' => ['description' => '伸缩配置列表的页码,起始值:1。'."\n" + ."\n" + .'默认值:1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'default' => '1'], ], - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => '分页查询时设置的每页行数,最大值:50。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'example' => '50', 'default' => '10'], ], [ - 'name' => 'AlarmDimensions', + 'name' => 'ScalingGroupId', '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-l1cbirz451yxuxxx', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 5, - ], + 'schema' => ['description' => '伸缩组的ID,您可以查询该伸缩组下所有的伸缩配置。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp17pelvl720x3v7****'], ], [ - 'name' => 'MetricType', + 'name' => 'ScalingConfigurationIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '监控项类型。取值范围:'."\n" + 'description' => '待查询伸缩配置的ID。'."\n" ."\n" - .'- system:使用云监控系统指标。'."\n" - .'- custom:使用上报到云监控的自定义指标。'."\n" - .'- hybrid:使用企业云监控的指标。', - 'type' => 'string', + .'查询结果包括生效和未生效的伸缩配置,并通过返回参数`LifecycleState`进行标识。', + 'type' => 'array', + 'items' => ['description' => '待查询伸缩配置的ID。'."\n" + ."\n" + .'查询结果包括生效和未生效的伸缩配置,并通过返回参数`LifecycleState`进行标识。', 'type' => 'string', 'required' => false, 'example' => 'asc-bp17pelvl720x5ub****'], 'required' => false, - 'example' => 'system', + 'maxItems' => 10, ], ], [ - 'name' => 'HybridMonitorNamespace', + 'name' => 'ScalingConfigurationNames', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '企业云监控指标仓库id。'."\n" + 'description' => '待查询伸缩配置的名称。'."\n" ."\n" - .'管理指标仓库,请参见[管理指标仓库](~~217606~~)。', - 'type' => 'string', + .'查询结果会忽略失效的伸缩配置名称,并且不报错。', + 'type' => 'array', + 'items' => ['description' => '待查询伸缩配置的名称。'."\n" + ."\n" + .'查询结果会忽略失效的伸缩配置名称,并且不报错。', 'type' => 'string', 'required' => false, 'example' => 'scalingcon**** '."\n"], 'required' => false, - 'example' => 'aliyun-test', + 'maxItems' => 10, ], ], - [ - 'name' => 'HybridMetrics', - 'in' => 'query', - 'style' => 'repeatList', + ], + 'responses' => [ + 200 => [ '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', + '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' => [ + '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,则由阿里云自动选择专有宿主机放置实例。'."\n" + ."\n" + .'默认值:default。', 'type' => 'string', 'example' => 'default'], + 'SystemDiskSize' => ['description' => '系统盘的磁盘大小。单位为GiB。'."\n" + ."\n", '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实例的自定义数据。'."\n" + ."\n", 'type' => 'string', 'example' => 'echo hello ecs! '."\n"], + '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接口查询专有宿主机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" + ."\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查询可用的RAM角色。', '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获取可用区列表。', '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_2014****.vhd '."\n"], + 'ScalingConfigurationId' => ['description' => '伸缩配置的ID。'."\n" + ."\n", 'type' => 'string', 'example' => 'asc-bp1ezrfgoyn5kijl****'], + 'CreditSpecification' => ['description' => '突发性能实例的运行模式。可能值:'."\n" + .'- Standard:标准模式,实例性能请参见[什么是突发性能实例](~~59977~~)下的性能约束模式章节。'."\n" + .'- Unlimited:无性能约束模式,实例性能请参见[什么是突发性能实例](~~59977~~)下的无性能约束模式章节。', 'type' => 'string', 'example' => 'Standard'], + 'SpotInterruptionBehavior' => ['description' => '抢占实例中断模式。', 'type' => 'string', 'example' => 'Terminate'], + 'CustomPriorities' => [ + 'description' => 'ECS实例规格+交换机的自定义优先级。'."\n" + .'>仅在伸缩组的扩缩容策略为优先级策略时有效。>'."\n" + ."\n" + .'当无法根据优先级较高的实例规格+交换机创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格+交换机组合来创建实例。'."\n" + ."\n" + .'> 如果仅指定了部分实例规格+交换机的自定义优先级,则未指定的部分优先级低于指定的部分,且未指定部分仍会依次按照伸缩组的交换机顺序、伸缩配置的实例规格顺序确定优先级。'."\n" + .'> - 例如:伸缩组的交换机顺序为vsw1、vsw2,伸缩配置的实例规格顺序为type1、type2,自定义优先级顺序为["vsw2+type2", "vsw1+type2"],则最终优先级为:"vsw2+type2" > "vsw1+type2" > "vsw1+type1" > "vsw2+type1"', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceType' => ['description' => 'ECS 实例的实例规格。', 'type' => 'string', 'example' => 'ecs.c6a.4xlarge'], + 'VswitchId' => ['description' => '虚拟交换机的ID。', 'type' => 'string', 'example' => 'vsw-bp14zolna43z266bq****'."\n"], + ], + 'description' => '', + ], + ], + 'DataDisks' => [ + '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云盘。'."\n" + .'- cloud_regional_disk_auto:ESSD 同城冗余云盘。', '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:不加密。'."\n" + ."\n" + .'默认值:false。', 'type' => 'string', 'example' => 'false'], + 'Categories' => [ + 'description' => '数据盘的多磁盘类型。第一个磁盘类型优先级最高,其他磁盘类型的优先级依次递减。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。可能值:'."\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" + .'- cloud_regional_disk_auto:ESSD 同城冗余云盘。', + 'type' => 'array', + 'items' => ['description' => '数据盘的多磁盘类型。第一个磁盘类型优先级最高,其他磁盘类型的优先级依次递减。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。可能值:'."\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" + .'- cloud_regional_disk_auto: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" + .'更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。'."\n", 'type' => 'boolean', 'example' => 'false'], + ], + ], + ], + 'Tags' => [ + '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'], + ], + ], + ], + 'SpotPriceLimits' => [ + 'description' => '抢占式实例信息的集合。', + 'type' => 'array', + 'items' => [ + 'description' => '抢占式实例信息的集合。', + 'type' => 'object', + 'properties' => [ + 'InstanceType' => ['description' => '抢占式实例的实例规格。', 'type' => 'string', 'example' => 'ecs.g6.large '."\n"], + 'PriceLimit' => ['description' => '抢占式实例对应的出价。', 'type' => 'number', 'format' => 'float', 'example' => '0.125 '."\n"], + ], + ], + ], + 'InstancePatternInfos' => [ + 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。'."\n" + ."\n", + 'type' => 'array', + 'items' => [ + 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。', + 'type' => 'object', + 'properties' => [ + 'MaxPrice' => ['description' => '按量付费实例或者抢占式实例可接受的每小时最高价格。'."\n" + ."\n", 'type' => 'number', 'format' => 'float', 'example' => '2'], + 'Cores' => ['description' => '实例规格的vCPU内核数目。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'Memory' => ['description' => '实例规格的内存大小,单位为GiB。'."\n" + ."\n", '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' => [ + 'description' => '实例规格所属的架构类型。可能值:'."\n" + ."\n" + .'- X86:X86计算。'."\n" + .'- Heterogeneous:异构计算,例如GPU或FPGA等。'."\n" + .'- BareMental:弹性裸金属服务器。'."\n" + .'- Arm:Arm计算。', + 'type' => 'array', + 'items' => ['description' => '实例规格所属的架构类型。可能值:'."\n" + ."\n" + .'- X86:X86计算。'."\n" + .'- Heterogeneous:异构计算,例如GPU或FPGA等。'."\n" + .'- BareMental:弹性裸金属服务器。'."\n" + .'- Arm:Arm计算。', 'type' => 'string', 'example' => 'X86'], + ], + 'BurstablePerformance' => ['description' => '是否为性能突发实例规格。可能值:'."\n" + ."\n" + .'- Exclude:不包含性能突发实例规格。'."\n" + .'- Include:包含性能突发实例规格。'."\n" + .'- Required:只包含性能突发实例规格。', 'type' => 'string', 'example' => 'Include'], + 'ExcludedInstanceTypes' => [ + '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' => [ + '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" + ."\n" + .'> MaximumCpuCoreCount不支持超过MinimumCpuCoreCount的4倍。', 'type' => 'integer', 'format' => 'int32', 'example' => '4'], + 'GpuSpecs' => [ + 'description' => 'GPU类型。', + 'type' => 'array', + 'items' => ['description' => 'GPU类型。', 'type' => 'string', 'example' => 'NVIDIA V100'], + ], + 'InstanceCategories' => [ + 'description' => '实例分类。可能值:'."\n" + ."\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表示可以设置多个实例分类,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' => [ + 'description' => '实例规格的CPU架构。可能值:'."\n" + ."\n" + .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n" + ."\n" + .'- X86。'."\n" + .'- ARM。', + 'type' => 'array', + 'items' => ['description' => '实例的CPU架构。可能值:'."\n" + ."\n" + .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n" + ."\n" + .'- X86。'."\n" + .'- ARM。', 'type' => 'string', 'example' => 'X86'], + ], + 'PhysicalProcessorModels' => [ + 'description' => '实例的处理器型号。N表示可以设置多个处理器型号,N的取值范围:1~10。', + 'type' => 'array', + 'items' => ['description' => '实例的处理器型号。N表示可以设置多个处理器型号,N的取值范围:1~10。', 'type' => 'string', 'example' => 'Intel Xeon(Ice Lake) Platinum 8369B'], + ], + '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'], + ], ], - 'DimensionValue' => [ - 'description' => '指标维度value。', - 'type' => 'string', - 'required' => false, - 'example' => 'testQueue', + ], + 'SystemDiskCategories' => [ + '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' => [ + 'description' => '对应指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。', + 'type' => 'array', + 'items' => ['description' => '对应指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。', 'type' => 'integer', 'format' => 'int32', 'example' => '4'], + ], + 'InstanceTypes' => [ + 'description' => 'ECS实例的实例规格的集合。', + 'type' => 'array', + 'items' => ['description' => 'ECS实例的实例规格的集合。'."\n" + ."\n", 'type' => 'string', 'example' => 'ecs.g6.large'], + ], + 'SecurityGroupIds' => [ + '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'], ], ], - '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' => '[{"errorExample":"","example":"{\\n \\"ScalingRuleAri\\": \\"ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingRuleId\\": \\"asr-bp1dvirgwkoowxk7****\\"\\n}","type":"json"}]', - 'title' => '创建一条伸缩规则', - 'description' => '伸缩规则定义了具体的扩张或收缩操作,例如加入或移出N台实例。如果执行伸缩规则会造成伸缩组的ECS或ECI实例数低于MinSize或高于MaxSize,则弹性伸缩会自动调整需要加入或移出的ECS或ECI实例数,使得伸缩组的ECS或ECI实例数调整到MinSize或MaxSize,但伸缩规则的设定值不会变化。示例如下:'."\n" - ."\n" - .'- 某个伸缩组,MaxSize=3,当前实例数Total Capacity=2,伸缩规则指定加3台ECS实例,则在实际执行过程中只会加1台ECS实例,但伸缩规则的设定值仍然为3。'."\n" - .'- 某个伸缩组,MinSize=2,当前实例数Total Capacity =3,伸缩规则指定减去5台ECS实例,则在实际执行过程中只会减1台ECS实例,但伸缩规则的设定值仍然为5。'."\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参数中指定,用户可以定时执行该伸缩规则。', - ], - 'ModifyScalingRule' => [ - 'summary' => '创建伸缩规则后,如果当前伸缩规则不再满足需求,您可以调用API ModifyScalingRule修改一项或多项伸缩规则属性,无需重新创建新的伸缩规则,避免不必要的重复操作,节约时间和资源成本。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125391', - 'abilityTreeNodes' => [ - 'FEATUREessRTZKQT', - ], - ], - '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', + 'SystemDiskEncrypted' => ['description' => '系统盘是否加密。可能值:'."\n" + ."\n" + .'- true:加密。'."\n" + ."\n" + .'- false:不加密。'."\n" + ."\n", 'type' => 'boolean', 'example' => 'false'], + 'SystemDiskKMSKeyId' => ['description' => '系统盘使用的KMS密钥ID。'."\n" + ."\n", 'type' => 'string', 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40**** '."\n"], + 'SystemDiskEncryptAlgorithm' => ['description' => '系统盘采用的加密算法。可能值:'."\n" + ."\n" + .'- AES-256。'."\n" + ."\n" + .'- SM4-128。', 'type' => 'string', 'example' => 'AES-256 '."\n"], + 'SystemDiskProvisionedIops' => ['description' => '系统盘预配置的IOPS(Input/Output Operations Per Second)性能指标。'."\n" + ."\n" + .'> IOPS(Input/Output Operations Per Second)指每秒能处理的I/O个数,表示块存储处理读写(输出/输入)的能力,单位为次。', 'type' => 'integer', 'format' => 'int64', 'example' => '100'], + 'SystemDiskBurstingEnabled' => ['description' => '系统盘是否开启Burst(性能突发)。可能值:'."\n" + ."\n" + .'- true:开启。'."\n" + .'- false:未开启。'."\n" + .' '."\n" + .'> 当SystemDisk.Category取值为cloud_auto时才支持设置该参数。', 'type' => 'boolean', 'example' => 'false'], + 'ImageOptionsLoginAsNonRoot' => ['description' => 'ECS实例是否使用ecs-user用户登录。可能值:'."\n" + ."\n" + .'- true:是。'."\n" + .'- false:否。', 'type' => 'boolean', 'example' => 'false'], + 'DeletionProtection' => ['description' => '实例释放保护属性,指定是否支持通过ECS控制台或API(DeleteInstance)直接释放实例。可能值:'."\n" + ."\n" + .'- true:开启实例释放保护,无法通过ECS控制台或者或API(DeleteInstance)直接释放实例。'."\n" + ."\n" + .'- false:关闭实例释放保护,可以通过ECS控制台或者或API(DeleteInstance)直接释放实例。'."\n" + ."\n" + .'>该属性仅适用于按量付费实例,防止弹性伸缩扩容的实例被误删除,不影响正常的缩容活动,开启实例释放保护的实例可以被缩容活动释放掉。', 'type' => 'boolean', 'example' => 'false'], + 'StorageSetId' => ['description' => '存储集ID。', 'type' => 'string', 'example' => 'ss-bp67acfmxazb4p****'], + 'StorageSetPartitionNumber' => ['description' => '存储集中的最大分区数量。取值为大于等于2的整数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'NetworkInterfaces' => [ + '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' => [ + 'description' => '弹性网卡所属的一个或多个安全组ID。', + 'type' => 'array', + 'items' => ['description' => '弹性网卡所属的一个或多个安全组ID。', 'type' => 'string', 'example' => 'sg-2vc3e1v7xxxxx'], + ], + 'SecondaryPrivateIpAddressCount' => ['description' => '为网卡指定辅助私网 IPv4 地址数量。取值范围:1~49。'."\n" + ."\n" + .'- 取值不能超过该实例规格对于ip 数量的限制。更多信息,请参见[实例规格族](https://help.aliyun.com/zh/ecs/user-guide/overview-of-instance-families)。'."\n" + ."\n" + .'- NetworkInterface.N.SecondaryPrivateIpAddressCount用于为网卡分配辅助私网IPv4 地址数量(不包含该网卡的主私网 IP),系统将从该网卡所在虚拟交换机(NetworkInterface.N.VSwitchId)的可用网段中随机分配。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + ], + ], + ], + 'DedicatedHostClusterId' => ['description' => '专有宿主机集群ID。', 'type' => 'string', 'example' => 'dc-zm04u8r3lohsq****'], + 'PasswordSetted' => ['description' => '是否设置实例密码。可能值:'."\n" + ."\n" + .'- true:设置实例密码'."\n" + .'- false:不设置实例密码', '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" + .'- 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或满足PrivatePoolTags条件,优先使用对应的私有池。如果未指定私有池或指定的私有池容量不足,将自动匹配开放类型的私有池。如果没有符合条件的私有池,则使用公共池创建实例。'."\n" + ."\n" + .'- PrivatePoolOnly:仅限私有池。选择此种策略时,必须指定ResourcePoolOptions.PrivatePoolIds。如果指定的私有池容量不足,则实例会启动失败。'."\n" + ."\n" + .'- PublicPoolFirst:公有池资源优先。优先使用公共池创建实例,当公有池资源不足时,采用私有池资源进行补充。优先自动匹配开放类型的私有池,如果没有符合条件的私有池,则使用指定的 ResourcePoolOptions.PrivatePoolIds或满足PrivatePoolTags条件的Target类型私有池。'."\n" + .'- None:不使用资源池策略。', 'type' => 'string', 'example' => 'PrivatePoolFirst'], + 'PrivatePoolIds' => [ + 'description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。', + 'type' => 'array', + 'items' => ['description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。', 'type' => 'string', 'example' => 'eap-bp67acfmxazb4****'], + ], + 'PrivatePoolTags' => [ + 'description' => '按标签筛选可用的 Target 私有池。', + 'type' => 'array', + 'items' => [ + 'description' => '按标签筛选可用的 Target 私有池。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '私有池的标签键。', 'type' => 'string', 'example' => 'TestKey'], + 'Value' => ['description' => '私有池的标签值。', 'type' => 'string', 'example' => 'TestValue'], + ], + ], + ], + ], + ], + 'InstanceTypeCandidateOptions' => [ + 'description' => '设置备选模式后,当遇到库存不足等问题时,会根据当前已选的实例规格补充相同大小的近似规格,或者创建备选可用区的交换机并添加到伸缩组。', + 'type' => 'object', + 'properties' => [ + 'Enabled' => ['description' => '是否开启备选模式', 'type' => 'boolean', 'example' => 'true'], + 'MaxPrice' => ['description' => '备选实例规格的价格上限。', 'type' => 'number', 'format' => 'float', 'example' => '2'], + 'AllowDifferentGeneration' => ['description' => '是否允许补充其他代系的实例规格。'."\n" + ."\n" + .'- 例如当前规格为ecs.c7.large,开启后可备选ecs.c6.large和ecs.c8.large等规格。', 'type' => 'boolean', 'example' => 'true'], + 'AllowCrossAz' => ['description' => '是否允许补充其他可用区的交换机。'."\n" + .'> 规格不变,仅备选新的可用区。当伸缩组由于库存等问题导致所有已选可用区均无法扩容时,会根据此配置自动增加新的可用区交换机到伸缩组中。'."\n" + .'> 例如,伸缩组配置了cn-hangzhou-h和cn-hangzhou-g可用区,当两个可用区均无法扩容时ESS可能会根据实时库存状况创建一个cn-hangzhou-k的交换机并添加到伸缩组中。', 'type' => 'boolean', 'example' => 'true'], + 'AllowCidrBlocks' => [ + 'description' => '允许补充其他可用区交换机时,需要指定可选的交换机的网段。', + 'type' => 'array', + 'items' => ['description' => '允许补充其他可用区交换机时,需要指定可选的交换机的网段。', 'type' => 'string', 'example' => '172.16.0.0/24'."\n"], + ], + ], + ], + 'CpuOptions' => [ + 'description' => 'CPU选项。', + 'type' => 'object', + 'properties' => [ + 'NestedVirtualization' => ['description' => '嵌套虚拟化,是否开启基于硬件实现的嵌套虚拟化功能。可能值:'."\n" + ."\n" + .'* enabled(开启)'."\n" + .'* disabled(不开启)。', 'type' => 'string', 'example' => 'enabled'], + ], + ], + ], + ], + ], + ], + 'description' => '', ], ], - [ - 'name' => 'PredictiveValueBehavior', - 'in' => 'query', - 'schema' => [ - 'description' => '预测规则最大值处理方式。取值范围:'."\n" - ."\n" - .'- MaxOverridePredictiveValue:初始最大值会覆盖预测值。预测值大于初始最大值时,预测任务的最大值采用初始最大值。'."\n" - .'- PredictiveValueOverrideMax:预测值会覆盖初始最大值。预测值大于初始最大值时, 预测任务的最大值采用预测值。'."\n" - .'- PredictiveValueOverrideMaxWithBuffer:预测值会附加一定比例。预测值会按照PredictiveValueBuffer比例增加,当增加后的值大于初始最大值时,会采用增加后的值。', - 'type' => 'string', - 'required' => false, - 'example' => 'MaxOverridePredictiveValue', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 1,\\n \\"ScalingConfigurations\\": [\\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!\\\\t\\\\n\\",\\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_2014****.vhd\\\\t\\\\n\\",\\n \\"ScalingConfigurationId\\": \\"asc-bp1ezrfgoyn5kijl****\\",\\n \\"CreditSpecification\\": \\"Standard\\",\\n \\"SpotInterruptionBehavior\\": \\"Terminate\\",\\n \\"CustomPriorities\\": [\\n {\\n \\"InstanceType\\": \\"ecs.c6a.4xlarge\\",\\n \\"VswitchId\\": \\"vsw-bp14zolna43z266bq****\\\\n\\"\\n }\\n ],\\n \\"DataDisks\\": [\\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 \\"cloud_essd\\"\\n ],\\n \\"ProvisionedIops\\": 100,\\n \\"BurstingEnabled\\": false\\n }\\n ],\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"binary\\",\\n \\"Value\\": \\"alterTable\\"\\n }\\n ],\\n \\"SpotPriceLimits\\": [\\n {\\n \\"InstanceType\\": \\"ecs.g6.large\\\\t\\\\n\\",\\n \\"PriceLimit\\": 0.125\\n }\\n ],\\n \\"InstancePatternInfos\\": [\\n {\\n \\"MaxPrice\\": 2,\\n \\"Cores\\": 2,\\n \\"Memory\\": 4,\\n \\"InstanceFamilyLevel\\": \\"EnterpriseLevel\\",\\n \\"Architectures\\": [\\n \\"X86\\"\\n ],\\n \\"BurstablePerformance\\": \\"Include\\",\\n \\"ExcludedInstanceTypes\\": [\\n \\"ecs.n1.small/ecs.n1.*/*7*\\"\\n ],\\n \\"InstanceTypeFamilies\\": [\\n \\"ecs.g6\\"\\n ],\\n \\"MinimumCpuCoreCount\\": 2,\\n \\"MaximumCpuCoreCount\\": 4,\\n \\"GpuSpecs\\": [\\n \\"NVIDIA V100\\"\\n ],\\n \\"InstanceCategories\\": [\\n \\"Compute-optimized with GPU\\"\\n ],\\n \\"CpuArchitectures\\": [\\n \\"X86\\"\\n ],\\n \\"PhysicalProcessorModels\\": [\\n \\"Intel Xeon(Ice Lake) Platinum 8369B\\"\\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 \\"SystemDiskCategories\\": [\\n \\"cloud\\"\\n ],\\n \\"WeightedCapacities\\": [\\n 4\\n ],\\n \\"InstanceTypes\\": [\\n \\"ecs.g6.large\\"\\n ],\\n \\"SecurityGroupIds\\": [\\n \\"sg-bp18kz60mefs****\\"\\n ],\\n \\"SchedulerOptions\\": {\\n \\"ManagedPrivateSpaceId\\": \\"testManagedPrivateSpaceId\\"\\n },\\n \\"SystemDiskEncrypted\\": false,\\n \\"SystemDiskKMSKeyId\\": \\"0e478b7a-4262-4802-b8cb-00d3fb40****\\\\t\\\\n\\",\\n \\"SystemDiskEncryptAlgorithm\\": \\"AES-256\\\\t\\\\n\\",\\n \\"SystemDiskProvisionedIops\\": 100,\\n \\"SystemDiskBurstingEnabled\\": false,\\n \\"ImageOptionsLoginAsNonRoot\\": false,\\n \\"DeletionProtection\\": false,\\n \\"StorageSetId\\": \\"ss-bp67acfmxazb4p****\\",\\n \\"StorageSetPartitionNumber\\": 2,\\n \\"NetworkInterfaces\\": [\\n {\\n \\"InstanceType\\": \\"Primary\\",\\n \\"NetworkInterfaceTrafficMode\\": \\"HighPerformance\\",\\n \\"Ipv6AddressCount\\": 1,\\n \\"SecurityGroupIds\\": [\\n \\"sg-2vc3e1v7xxxxx\\"\\n ],\\n \\"SecondaryPrivateIpAddressCount\\": 2\\n }\\n ],\\n \\"DedicatedHostClusterId\\": \\"dc-zm04u8r3lohsq****\\",\\n \\"PasswordSetted\\": false,\\n \\"SecurityOptions\\": {\\n \\"ConfidentialComputingMode\\": \\"TDX\\"\\n },\\n \\"HttpEndpoint\\": \\"enabled\\",\\n \\"HttpTokens\\": \\"optional\\",\\n \\"ResourcePoolOptions\\": {\\n \\"Strategy\\": \\"PrivatePoolFirst\\",\\n \\"PrivatePoolIds\\": [\\n \\"eap-bp67acfmxazb4****\\"\\n ],\\n \\"PrivatePoolTags\\": [\\n {\\n \\"Key\\": \\"TestKey\\",\\n \\"Value\\": \\"TestValue\\"\\n }\\n ]\\n },\\n \\"InstanceTypeCandidateOptions\\": {\\n \\"Enabled\\": true,\\n \\"MaxPrice\\": 2,\\n \\"AllowDifferentGeneration\\": true,\\n \\"AllowCrossAz\\": true,\\n \\"AllowCidrBlocks\\": [\\n \\"172.16.0.0/24\\\\n\\"\\n ]\\n },\\n \\"CpuOptions\\": {\\n \\"NestedVirtualization\\": \\"enabled\\"\\n }\\n }\\n ]\\n}","type":"json"}]', + 'gatewayOptions' => [ + 'gatewayProtocols' => [], + ], + 'title' => '查询ECS类型伸缩配置信息', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingConfigurations', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + ], + 'DescribeScalingGroupDetail' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'PredictiveValueBuffer', - 'in' => 'query', - 'schema' => [ - 'description' => '`PredictiveValueBehavior`为`PredictiveValueOverrideMaxWithBuffer`时生效,预测值会按照该比例增加,当增加后的值大于初始最大值时,会采用增加后的值。取值范围:0~100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '50', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '212843', + 'abilityTreeNodes' => ['FEATUREess7569XW'], + ], + 'parameters' => [ [ - 'name' => 'PredictiveTaskBufferTime', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '预测规则自动创建的预测任务默认均在整点执行,您可以设置预启动时间提前执行预测任务,预先准备资源。取值范围:0~60。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '30', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。更多信息,请参见[地域与可用区](~~40654~~)。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'InitialMaxSize', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组实例数上限,和`PredictiveValueBehavior`结合使用。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - ], + 'allowEmptyValue' => false, + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'StepAdjustments', + 'name' => 'OutputFormat', '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, - ], + 'schema' => ['description' => 'Output输出格式,现仅支持YAML格式。', 'type' => 'string', 'required' => false, 'example' => 'YAML'], ], - [ - 'name' => 'AlarmDimensions', - 'in' => 'query', - 'style' => 'repeatList', + ], + 'responses' => [ + 200 => [ '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-l1cbirz451yxu2dxxx', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'ScalingGroup' => [ + 'description' => '弹性伸缩组。', + 'type' => 'object', + 'properties' => [ + 'VpcId' => ['description' => '专有网络(VPC)ID。', 'type' => 'string', 'example' => 'vpc-wz9fcq97y1vqkd8bijcq6'], + 'CreationTime' => ['description' => '伸缩组的创建时间。', 'type' => 'string', 'example' => '2014-08-14T10:58Z'."\n"], + 'TotalInstanceCount' => ['description' => '伸缩组内所有ECS实例的数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'ScalingGroupName' => ['description' => '伸缩组的名称,同一地域下伸缩组名称唯一。'."\n" + ."\n" + .'长度为2~64个字符,以数字、大小英文字母或中文开头,可以包含数字、下划线(_)、短划线(-)和半角句号(.)。', 'type' => 'string', 'example' => 'dyrSuvBOtO1dEdIlIbp****'."\n"], + 'SpotInstancePools' => ['description' => '指定可用实例规格的个数,伸缩组将按成本最低的多个规格均衡创建抢占式实例。取值范围:0~10。', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], + 'StoppedCapacity' => ['description' => '伸缩组中处于节省停机效果的实例数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'OnDemandPercentageAboveBaseCapacity' => ['description' => '伸缩组满足最小按量实例数(ondemandbasecapacity)要求后,超出的实例中按量实例应占的比例,取值范围:0~100。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], + 'ModificationTime' => ['description' => '修改时间。', 'type' => 'string', 'example' => '2014-08-14T10:58Z'."\n"], + 'MinSize' => ['description' => '伸缩组最小实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'ScalingGroupId' => ['description' => '伸缩组的ID。', 'type' => 'string', 'example' => 'asg-bp14wlu85wrpchm0****'."\n"], + '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" + .'- forcerecycle:伸缩组的回收模式为强制停机回收模式。'."\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。即当伸缩组内按量实例个数少于该最小值时,系统将优先创建按量实例。', '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****'."\n"], + 'GroupType' => ['description' => '伸缩组管理的实例类型。可能值:'."\n" + ."\n" + .'- ECS:伸缩组内管理的伸缩实例为ECS实例。'."\n" + ."\n" + .'- ECI:伸缩组内管理的伸缩实例为ECI实例。', 'type' => 'string', 'example' => 'ECS'], + 'MultiAZPolicy' => ['description' => '多可用区伸缩组ECS实例扩缩容策略。可能值:'."\n" + .' '."\n" + .'- PRIORITY:根据您定义的虚拟交换机(VSwitchIds)扩缩容。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动使用下一优先级的虚拟交换机创建ECS实例。'."\n" + ."\n" + .'- COST_OPTIMIZED:按vCPU单价从低到高进行尝试创建。当伸缩配置设置了抢占式计费方式的多实例规格时,优先创建对应抢占式实例。您可以继续通过CompensateWithOnDemand参数指定当抢占式实例由于库存等原因无法创建时,是否自动尝试以按量付费的方式创建。'."\n" + .' > COST_OPTIMIZED仅在伸缩配置设置了多实例规格或者选用了抢占式实例的情况下生效。'."\n" + ."\n" + .'- BALANCE:在伸缩组指定的多可用区之间均匀分配ECS实例。如果由于库存不足等原因可用区之间变得不平衡,您可以通过API RebalanceInstance平衡资源。', 'type' => 'string', 'example' => 'PRIORITY'], + 'RemovingCapacity' => ['description' => '正在移出伸缩组的ECS实例的数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'PendingWaitCapacity' => ['description' => '伸缩组中处于加入挂起状态的ECS实例的数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'StandbyCapacity' => ['description' => '伸缩组中处于备用状态的实例数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'CurrentHostName' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'example' => 'hostname'], + 'PendingCapacity' => ['description' => '正在加入伸缩组,还未完成相关配置的ECS实例的数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'LaunchTemplateId' => ['description' => '伸缩组使用的实例启动模板的ID。', 'type' => 'string', 'example' => 'lt-m5e3ofjr1zn1aw7****'."\n"], + 'TotalCapacity' => ['description' => '当伸缩组设置了实例规格权重,表示伸缩组内所有实例的加权容量总和。否则,表示伸缩组内所有实例的数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'DesiredCapacity' => ['description' => '伸缩组内实例的期望数量,伸缩组会自动将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-shenzhen'], + 'VSwitchId' => ['description' => '伸缩组关联虚拟交换机的ID。', 'type' => 'string', 'example' => 'vsw-bp1whw2u46cn8zubm****'."\n"], + 'MaxSize' => ['description' => '伸缩组最大实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'DefaultCooldown' => ['description' => '冷却时间,单位秒。', 'type' => 'integer', 'format' => 'int32', 'example' => '60'], + 'VServerGroups' => [ + 'description' => '后端服务器组列表。', + 'type' => 'array', + 'items' => [ + 'description' => '后端服务器组列表。', + 'type' => 'object', + 'properties' => [ + 'LoadBalancerId' => ['description' => '虚拟服务器组所属传统型负载均衡CLB(原SLB)实例的ID。'."\n" + ."\n", 'type' => 'string', 'example' => '147b46d767c-cn-qingdao-cm5****'."\n"], + 'VServerGroupAttributes' => [ + 'description' => '后端服务器组属性。', + 'type' => 'array', + 'items' => [ + 'description' => '后端服务器组属性。', + 'type' => 'object', + 'properties' => [ + 'VServerGroupId' => ['description' => '后端服务器组的ID。', 'type' => 'string', 'example' => 'rsp-bp12bjrny****'."\n"], + 'Weight' => ['description' => '后端服务器组的权重。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'Port' => ['description' => '后端服务器端口。', 'type' => 'integer', 'format' => 'int32', 'example' => '80'], + ], + ], + ], + ], + ], + ], + 'LaunchTemplateOverrides' => [ + 'description' => '扩展启动模板的实例规格信息。', + 'type' => 'array', + 'items' => [ + 'description' => '扩展启动模板的实例规格信息。', + 'type' => 'object', + 'properties' => [ + 'WeightedCapacity' => ['description' => '指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。', 'type' => 'integer', 'format' => 'int32', 'example' => '4'], + 'InstanceType' => ['description' => '指定的实例规格,会覆盖启动模板中的实例规格。', 'type' => 'string', 'example' => 'ecs.c5.xlarge'."\n"], + 'SpotPriceLimit' => ['description' => '本参数用于指定实例启动模板覆盖规格(即`LaunchTemplateOverride.InstanceType`)的竞价价格上限。'."\n" + .'>仅当`LaunchTemplateId`参数指定了启动模板时,该参数才生效。', 'type' => 'number', 'format' => 'float', 'example' => '0.025'], + ], + ], + ], + 'AlbServerGroups' => [ + 'description' => 'ALB服务器组的相关信息集合。', + 'type' => 'array', + 'items' => [ + 'description' => 'ALB服务器组的相关信息集合。', + 'type' => 'object', + 'properties' => [ + 'AlbServerGroupId' => ['description' => 'ALB服务器组的ID。', 'type' => 'string', 'example' => 'sgp-ddwb0y0g6y9bjm****'."\n"], + 'Weight' => ['description' => '弹性伸缩将实例添加到ALB服务器组后,实例作为后端服务器的权重。', 'type' => 'integer', 'format' => 'int32', 'example' => '100'], + 'Port' => ['description' => '弹性伸缩将实例添加到ALB服务器组后,实例使用的端口号。', 'type' => 'integer', 'format' => 'int32', 'example' => '80'], + ], + ], + ], + 'ServerGroups' => [ + 'description' => '负载均衡服务器组的相关信息集合。'."\n" + ."\n" + .'> 您可以通过此参数获取伸缩组关联的ALB类型服务组、NLB类型服务器组和GWLB类型服务组的相关信息集合。'."\n" + .'>', + 'type' => 'array', + 'items' => [ + 'description' => '负载均衡服务器组的相关信息集合。', + 'type' => 'object', + 'properties' => [ + 'ServerGroupId' => ['description' => '服务器组的ID。', 'type' => 'string', 'example' => 'sgp-i9ouakeaerr*****'."\n"], + 'Type' => ['description' => '负载均衡服务器组类型,可能值:'."\n" + ."\n" + .'- ALB:应用型负载均衡 ALB(Application Load Balancer)。'."\n" + .'- NLB:网络型负载均衡 NLB(Network Load Balancer)。'."\n" + .'- GWLB:网关型负载均衡 GWLB(Gateway Load Balancer)。', 'type' => 'string', 'example' => 'ALB'], + 'Weight' => ['description' => '弹性伸缩将实例添加到服务器组后,实例作为后端服务器的权重。', 'type' => 'integer', 'format' => 'int32', 'example' => '100'], + 'Port' => ['description' => '弹性伸缩将实例添加到服务器组后,实例使用的端口号。', 'type' => 'integer', 'format' => 'int32', 'example' => '80'], + ], + ], + ], + 'RemovalPolicies' => [ + 'description' => '实例移出伸缩组的策略的集合。', + 'type' => 'array', + 'items' => ['description' => 'ECS实例移出伸缩组的策略的集合。可能值:'."\n" + .'- OldestInstance:移出最早创建的实例。'."\n" + .'- NewestInstance:移出最新创建的实例。'."\n" + .'- OldestScalingConfiguration:移出最早由伸缩配置创建的实例。', 'type' => 'string', 'example' => 'OldestScalingConfiguration'], + ], + 'DBInstanceIds' => [ + 'description' => '伸缩组关联RDS实例的ID。', + 'type' => 'array', + 'items' => ['description' => '伸缩组关联RDS实例的ID。', 'type' => 'string', 'example' => 'rm-bp15556qzebg1****'."\n"], + ], + 'LoadBalancerIds' => [ + 'description' => '伸缩组关联的负载均衡实例的ID列表。', + 'type' => 'array', + 'items' => ['description' => '伸缩组关联的负载均衡实例的ID列表。', 'type' => 'string', 'example' => 'lb-bp19byhscefk3x0li****'."\n"], + ], + 'VSwitchIds' => [ + 'description' => '伸缩组关联虚拟交换机的ID集合。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。'."\n" + ."\n", + 'type' => 'array', + 'items' => ['description' => '伸缩组关联虚拟交换机的ID集合。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。', 'type' => 'string', 'example' => 'vsw-bp1whw2u46cn8zubm****'."\n"], + ], + 'SuspendedProcesses' => [ + '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:执行伸缩组内的伸缩活动。', 'type' => 'boolean', 'example' => 'true'], + 'IsElasticStrengthInAlarm' => ['description' => '>该参数未开放使用。', 'type' => 'boolean', 'example' => 'false'], + 'MonitorGroupId' => ['description' => '伸缩组关联的云监控应用分组ID。', 'type' => 'string', 'example' => '1497****'."\n"], + 'AzBalance' => ['description' => '伸缩组的容量是否在多个可用区间均衡分布(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效),可能值:'."\n" + ."\n" + .'- true:伸缩组的容量在多个可用区间均衡分布。'."\n" + .'- false:伸缩组的容量不在多个可用区间均衡分布。', 'type' => 'boolean', 'example' => 'false'], + 'AllocationStrategy' => ['description' => '容量分配策略,决定了伸缩组如何选择可用的实例规格类型满足容量。容量分布策略同时对按量和抢占式容量生效(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。可能值:'."\n" + ."\n" + .'- priority:按照配置的实例规格的顺序创建实例。'."\n" + .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。', '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' => 'null'], + 'InitCapacity' => ['description' => '伸缩组中处于实例扩容前初始化状态的实例数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'ResourceGroupId' => ['description' => '新创建的伸缩组所属的资源组ID。'."\n" + .'>将新创建的伸缩组归属到指定的资源组中。如果不指定该参数,则归属为默认资源组。', 'type' => 'string', 'example' => 'rg-aek2epf32c4uyji'], + 'LoadBalancerConfigs' => [ + 'description' => '负载均衡配置列表。', + 'type' => 'array', + 'items' => [ + 'description' => '负载均衡配置列表。', + 'type' => 'object', + 'properties' => [ + 'LoadBalancerId' => ['description' => '负载均衡CLB(原SLB)实例的ID。', 'type' => 'string', 'example' => 'lb-2zein3ytoeq49cmkbyxr0'], + 'Weight' => ['description' => '后端服务器的权重。', 'type' => 'integer', 'format' => 'int32', 'example' => '100'], + ], + ], + ], + 'EnableDesiredCapacity' => ['description' => '是否开启期望实例数标识。可能值:'."\n" + .'- true:已开启期望实例数'."\n" + .'- false:未开启期望实例数', 'type' => 'boolean', 'example' => 'true'], + 'Tags' => [ + 'description' => '伸缩组的标签信息集合。', + 'type' => 'array', + 'items' => [ + 'description' => '伸缩组的标签信息集合。', + 'type' => 'object', + 'properties' => [ + 'TagKey' => ['description' => '伸缩组的标签键。', 'type' => 'string', 'example' => 'Department'], + 'TagValue' => ['description' => '伸缩组的标签值。', 'type' => 'string', 'example' => 'Finance'], + 'Propagate' => ['description' => '标识该标签是否为可传播标签,可能值:'."\n" + .'- true:伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n" + .'- false:伸缩组上的标签不会传播到实例上。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'example' => 'false'], + ], + ], + ], + 'HealthCheckTypes' => [ + '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'], + ], ], ], - 'required' => false, + 'Output' => ['description' => 'ECI伸缩组输出详情。目前仅支持Kubernetes Deployment YAML格式输出。', 'type' => 'string', 'example' => 'apiVersion: apps/v1'."\n" + .'kind: Deployment'."\n" + .'metadata:'."\n" + .' name: nginx-deployment'."\n" + .' labels:'."\n" + .' app: nginx'."\n" + .' spec:'."\n" + .' replicas: 3'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: nginx'."\n" + .' template:'."\n" + .' metadata:'."\n" + .' labels:'."\n" + .' app: nginx'."\n" + .' annotations:'."\n" + .' k8s.aliyun.com/eip-bandwidth: 10'."\n" + .' k8s.aliyun.com/eci-with-eip: true'."\n" + .' spec:'."\n" + .' containers:'."\n" + .' - name: nginx'."\n" + .' image: nginx:1.14.2'."\n" + .' ports:'."\n" + .' - containerPort: 80'], ], - 'required' => false, - 'maxItems' => 5, + 'description' => '', ], ], - [ - 'name' => 'MetricType', - 'in' => 'query', - 'schema' => [ - 'description' => '监控项类型。取值范围:'."\n" - ."\n" - .'- system:使用云监控系统指标。'."\n" - .'- custom:使用上报到云监控的自定义指标。'."\n" - .'- hybrid:使用企业云监控的指标。', - 'type' => 'string', - 'required' => false, - 'example' => 'system', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingGroup\\": {\\n \\"VpcId\\": \\"vpc-wz9fcq97y1vqkd8bijcq6\\",\\n \\"CreationTime\\": \\"2014-08-14T10:58Z\\\\n\\",\\n \\"TotalInstanceCount\\": 1,\\n \\"ScalingGroupName\\": \\"dyrSuvBOtO1dEdIlIbp****\\\\n\\",\\n \\"SpotInstancePools\\": 5,\\n \\"StoppedCapacity\\": 1,\\n \\"OnDemandPercentageAboveBaseCapacity\\": 20,\\n \\"ModificationTime\\": \\"2014-08-14T10:58Z\\\\n\\",\\n \\"MinSize\\": 1,\\n \\"ScalingGroupId\\": \\"asg-bp14wlu85wrpchm0****\\\\n\\",\\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\\",\\n \\"GroupType\\": \\"ECS\\",\\n \\"MultiAZPolicy\\": \\"PRIORITY\\",\\n \\"RemovingCapacity\\": 0,\\n \\"PendingWaitCapacity\\": 0,\\n \\"StandbyCapacity\\": 1,\\n \\"CurrentHostName\\": \\"hostname\\",\\n \\"PendingCapacity\\": 0,\\n \\"LaunchTemplateId\\": \\"lt-m5e3ofjr1zn1aw7****\\\\n\\",\\n \\"TotalCapacity\\": 1,\\n \\"DesiredCapacity\\": 5,\\n \\"SpotInstanceRemedy\\": true,\\n \\"LaunchTemplateVersion\\": \\"Default\\",\\n \\"RegionId\\": \\"cn-shenzhen\\",\\n \\"VSwitchId\\": \\"vsw-bp1whw2u46cn8zubm****\\\\n\\",\\n \\"MaxSize\\": 2,\\n \\"DefaultCooldown\\": 60,\\n \\"VServerGroups\\": [\\n {\\n \\"LoadBalancerId\\": \\"147b46d767c-cn-qingdao-cm5****\\\\n\\",\\n \\"VServerGroupAttributes\\": [\\n {\\n \\"VServerGroupId\\": \\"rsp-bp12bjrny****\\\\n\\",\\n \\"Weight\\": 1,\\n \\"Port\\": 80\\n }\\n ]\\n }\\n ],\\n \\"LaunchTemplateOverrides\\": [\\n {\\n \\"WeightedCapacity\\": 4,\\n \\"InstanceType\\": \\"ecs.c5.xlarge\\\\n\\",\\n \\"SpotPriceLimit\\": 0.025\\n }\\n ],\\n \\"AlbServerGroups\\": [\\n {\\n \\"AlbServerGroupId\\": \\"sgp-ddwb0y0g6y9bjm****\\\\n\\",\\n \\"Weight\\": 100,\\n \\"Port\\": 80\\n }\\n ],\\n \\"ServerGroups\\": [\\n {\\n \\"ServerGroupId\\": \\"sgp-i9ouakeaerr*****\\\\n\\",\\n \\"Type\\": \\"ALB\\",\\n \\"Weight\\": 100,\\n \\"Port\\": 80\\n }\\n ],\\n \\"RemovalPolicies\\": [\\n \\"OldestScalingConfiguration\\"\\n ],\\n \\"DBInstanceIds\\": [\\n \\"rm-bp15556qzebg1****\\\\n\\"\\n ],\\n \\"LoadBalancerIds\\": [\\n \\"lb-bp19byhscefk3x0li****\\\\n\\"\\n ],\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1whw2u46cn8zubm****\\\\n\\"\\n ],\\n \\"SuspendedProcesses\\": [\\n \\"ScaleIn\\"\\n ],\\n \\"SystemSuspended\\": true,\\n \\"IsElasticStrengthInAlarm\\": false,\\n \\"MonitorGroupId\\": \\"1497****\\\\n\\",\\n \\"AzBalance\\": false,\\n \\"AllocationStrategy\\": \\"priority\\",\\n \\"SpotAllocationStrategy\\": \\"lowestPrice\\",\\n \\"MaxInstanceLifetime\\": 0,\\n \\"CustomPolicyARN\\": \\"null\\",\\n \\"InitCapacity\\": 0,\\n \\"ResourceGroupId\\": \\"rg-aek2epf32c4uyji\\",\\n \\"LoadBalancerConfigs\\": [\\n {\\n \\"LoadBalancerId\\": \\"lb-2zein3ytoeq49cmkbyxr0\\",\\n \\"Weight\\": 100\\n }\\n ],\\n \\"EnableDesiredCapacity\\": true,\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"Department\\",\\n \\"TagValue\\": \\"Finance\\",\\n \\"Propagate\\": false\\n }\\n ],\\n \\"HealthCheckTypes\\": [\\n \\"ECS\\"\\n ]\\n },\\n \\"Output\\": \\"apiVersion: apps/v1\\\\nkind: Deployment\\\\nmetadata:\\\\n name: nginx-deployment\\\\n labels:\\\\n app: nginx\\\\n spec:\\\\n replicas: 3\\\\n selector:\\\\n matchLabels:\\\\n app: nginx\\\\n template:\\\\n metadata:\\\\n labels:\\\\n app: nginx\\\\n annotations:\\\\n k8s.aliyun.com/eip-bandwidth: 10\\\\n k8s.aliyun.com/eci-with-eip: true\\\\n spec:\\\\n containers:\\\\n - name: nginx\\\\n image: nginx:1.14.2\\\\n ports:\\\\n - containerPort: 80\\"\\n}","type":"json"}]', + 'title' => '查询指定伸缩组详情', + 'summary' => '您可以通过调用API DescribeScalingGroupDetail查询该伸缩组详情,例如,查看指定伸缩组的基本信息、伸缩组内实例、伸缩配置等信息。当ECI类型的伸缩组指定OutputFormat参数为YAML时,可以输出Kubernetes Deployment YAML格式内容。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingGroupDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + ], + 'DescribeScalingGroupDiagnoseDetails' => [ + 'summary' => '查询伸缩组最近的一次诊断详情,只有当存在诊断结果异常时才会返回结果。', + 'methods' => ['get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'HybridMonitorNamespace', - 'in' => 'query', - 'schema' => [ - 'description' => '企业云监控指标仓库id。'."\n" - ."\n" - .'管理指标仓库,请参见[管理指标仓库](~~217606~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'aliyun-test', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '221455', + 'abilityTreeNodes' => ['FEATUREessA4Z14P'], + ], + 'parameters' => [ [ - 'name' => 'HybridMetrics', + 'name' => 'RegionId', '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, - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-qingdao'], ], [ - 'name' => 'AlarmOptions', + 'name' => 'ScalingGroupId', '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, - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '修改伸缩规则的返回信息。', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '688B18B8-FB1E-42EB-A1ED-7F55B090****'], + 'Details' => [ + 'description' => '诊断报告详情。', + 'type' => 'array', + 'items' => [ + 'description' => '诊断报告详情。', + 'type' => 'object', + 'properties' => [ + 'DiagnoseType' => ['description' => '诊断项类型。可能值:'."\n" + ."\n" + .'- AccountArrearage:检查用户账号是否欠费。'."\n" + ."\n" + .'- AccountNotEnoughBalance:检查账号余额大于等于100元。AccountNotEnoughBalance:检查账号余额。'."\n" + ."\n" + .'- ElasticStrength:检查伸缩组配置对应实例类型的库存健康度。'."\n" + ."\n" + .'- VSwitch:检查交换机是否可用,例如:是否被删除。'."\n" + ."\n" + .'- SecurityGroup:检查安全组是否可用,例如:是否被删除。'."\n" + ."\n" + .'- KeyPair: 检查密钥对是否可用,例如:是否被删除。'."\n" + ."\n" + .'- SlbBackendServerQuota: 检查SLB默认分组和虚拟服务器组后端挂载的ECS数量是否超过配额。'."\n" + ."\n" + .'- AlbBackendServerQuota:检查ALB分组后端挂载的ECS数量是否超过配额。'."\n" + ."\n" + .'- NlbBackendServerQuota:检查NLB分组后端挂载的ECS数量是否超过配额。', 'type' => 'string', 'example' => 'SecurityGroup'], + 'ResourceId' => ['description' => '诊断结果对应的资源ID。', 'type' => 'string', 'example' => 'sg-280ih****'], + 'Status' => ['description' => '诊断项的诊断状态。可能有以下值:'."\n" + ."\n" + .'- Normal: 诊断结果正常。'."\n" + ."\n" + .'- Warn:诊断结果警告。'."\n" + ."\n" + .'- Critical:诊断结果严重。', 'type' => 'string', 'example' => 'Normal'], + 'ErrorCode' => ['description' => '诊断项的错误码。可能得取值:'."\n" + ."\n" + .'- VSwitchIdNotFound: 交换机不存在。'."\n" + ."\n" + .'- SecurityGroupNotFound:安全组不存在。'."\n" + ."\n" + .'- KeyPairNotFound:KeyPair不存在。'."\n" + ."\n" + .'- SlbBackendServerQuotaExceeded:SLB默认分组和虚拟服务器组后端挂载的ECS数量超过配额。'."\n" + ."\n" + .'- AlbBackendServerQuotaExceeded: ALB分组后端挂载的ECS数量超过配额。'."\n" + ."\n" + .'- NlbBackendServerQuotaExceeded: NLB分组后端挂载的ECS数量超过配额。'."\n" + ."\n" + .'- AccountArrearage: 账号欠费。'."\n" + ."\n" + .'- AccountNotEnoughBalance:账号余额不足(小于100元)。AccountNotEnoughBalance:账号余额不足。'."\n" + ."\n" + .'- ElasticStrengthAlert:库存健康度差。', 'type' => 'string', 'example' => 'AccountArrearage'], + ], + ], ], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '修改一条伸缩规则', - ], - 'DescribeScalingRules' => [ - 'summary' => '调用DescribeScalingRules并指定伸缩规则ID、伸缩规则名称、伸缩规则唯一标识符等参数,查询伸缩规则及其详细信息。例如,伸缩规则的调整方式、实例预热时间、伸缩规则关联的报警任务信息等。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '查询伸缩组最近的一次诊断详情', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingGroupDiagnoseDetails', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"688B18B8-FB1E-42EB-A1ED-7F55B090****\\",\\n \\"Details\\": [\\n {\\n \\"DiagnoseType\\": \\"SecurityGroup\\",\\n \\"ResourceId\\": \\"sg-280ih****\\",\\n \\"Status\\": \\"Normal\\",\\n \\"ErrorCode\\": \\"AccountArrearage\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'DescribeScalingGroups' => [ + 'summary' => '如果您需要查看伸缩组的基本信息、伸缩组内实例、伸缩配置等信息,您可以通过调用API DescribeScalingGroups查询该伸缩组。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -19739,529 +10841,443 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'abilityTreeCode' => '125364', - 'abilityTreeNodes' => [ - 'FEATUREessRL7GKO', - ], + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '125357', + 'abilityTreeNodes' => ['FEATUREess7569XW'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩规则所属伸缩组的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-qingdao', - ], + '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', - ], + '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', - 'example' => '50', - 'default' => '10', - ], + 'schema' => ['description' => '分页查询时设置的每页行数。最大值:50。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'example' => '10', 'default' => '10'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'GroupType', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asg-bp1ffogfdauy0jw0****', - ], + 'schema' => ['description' => '伸缩组管理的实例类型。可能值:'."\n" + ."\n" + .'- ECS:伸缩组内管理的伸缩实例为ECS实例。'."\n" + ."\n" + .'- ECI:伸缩组内管理的伸缩实例为ECI实例。', 'type' => 'string', 'required' => false, 'example' => 'ECS'], ], [ - 'name' => 'ScalingRuleType', + 'name' => 'ScalingGroupIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩规则的类型。取值范围: '."\n" + 'description' => '待查询伸缩组的ID。'."\n" ."\n" - .'- SimpleScalingRule:简单规则。根据调整方式(AdjustmentType)和调整值(AdjustmentValue)调整ECS实例数量。'."\n" - .'- TargetTrackingScalingRule:目标追踪规则。根据预定义监控(MetricName)项动态计算需要扩缩容的ECS实例数量,尽量将预定义监控项的指标值维持在目标值(TargetValue)附近。'."\n" - .'- StepScalingRule:步进规则,根据阈值和指标值提供分步扩展方式。'."\n" - .'- PredictiveScalingRule:预测规则,基于机器学习能力分析伸缩组的历史监控数据预测未来监控指标值,并支持自动创建定时任务设置伸缩组边界。', - 'type' => 'string', + .'查询结果会忽略失效的伸缩组ID,并且不报错。', + 'type' => 'array', + 'items' => ['description' => '待查询伸缩组的ID。'."\n" + ."\n" + .'查询结果会忽略失效的伸缩组ID,并且不报错。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp14wlu85wrpchm0****'], 'required' => false, - 'example' => 'SimpleScalingRule', + 'maxItems' => 20, ], ], [ - 'name' => 'ShowAlarmRules', + 'name' => 'ScalingGroupNames', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '是否返回伸缩规则关联的云监控报警任务。取值范围:'."\n" + 'description' => '待查询的伸缩组的名称。'."\n" ."\n" - .'- true:返回伸缩规则关联的云监控报警任务。'."\n" - .'- false:不返回伸缩规则关联的云监控报警任务。'."\n" + .'查询结果会忽略失效的伸缩组名称,并且不报错。', + 'type' => 'array', + 'items' => ['description' => '待查询的伸缩组的名称。'."\n" ."\n" - .'默认值:false。', - 'type' => 'boolean', + .'查询结果会忽略失效的伸缩组名称,并且不报错。', 'type' => 'string', 'required' => false, 'example' => 'scalinggroup**** '."\n"], 'required' => false, - 'example' => 'false', - 'default' => 'false', + 'maxItems' => 20, ], ], [ - 'name' => 'ScalingRuleIds', + 'name' => 'ScalingGroupName', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '待查询伸缩规则的ID。', - 'type' => 'array', - 'items' => [ - 'description' => '待查询伸缩规则的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asr-bp1dvirgwkoowxk7****', - ], - 'required' => false, - 'maxItems' => 10, - ], + 'schema' => ['description' => '伸缩组的名称。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'scalinggroup****'], ], [ - 'name' => 'ScalingRuleNames', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '待查询伸缩规则的名称。', - 'type' => 'array', - 'items' => [ - 'description' => '待查询伸缩规则的名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'scalingrule****', - ], - 'required' => false, - 'maxItems' => 10, - ], + 'schema' => ['description' => '待查询的伸缩组所属的资源组ID。'."\n" + ."\n" + .'>当没有伸缩组属于当前资源组下时,查询结果为空,并且不会报错。', 'type' => 'string', 'required' => false, 'example' => 'rg-123******'], ], [ - 'name' => 'ScalingRuleAris', + 'name' => 'Tags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '待查询伸缩规则的唯一标识符。', + 'description' => '伸缩组的标签信息集合。', 'type' => 'array', 'items' => [ - 'description' => '待查询伸缩规则的唯一标识符。', - 'type' => 'string', + 'description' => '伸缩组的标签信息集合。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '伸缩组的标签键。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'Department'], + 'Value' => ['description' => '伸缩组的标签值。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'Finance '."\n"], + ], 'required' => false, - 'example' => 'ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****', ], 'required' => false, - 'maxItems' => 10, + 'maxItems' => 20, ], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '伸缩组列表详情。', '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' => [ - 'description' => '伸缩规则信息组成的集合。', + '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' => [ + 'description' => '伸缩组信息的集合。', 'type' => 'array', 'items' => [ - 'description' => '伸缩规则信息组成的集合。', + 'description' => '伸缩组信息的集合。', 'type' => 'object', 'properties' => [ - 'MetricName' => [ - 'description' => '伸缩规则关联的报警任务监控项名称。', - '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' => [ - 'description' => '伸缩规则关联的云监控报警任务。仅在ShowAlarmRules参数为true时返回伸缩规则关联的云监控报警任务,否则返回空列表。 ', + '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。', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], + 'StoppedCapacity' => ['description' => '伸缩组中处于节省停机效果的实例数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'OnDemandPercentageAboveBaseCapacity' => ['description' => '伸缩组满足最小按量实例数(ondemandbasecapacity)要求后,超出的实例中按量实例应占的比例,取值范围:0~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。即当伸缩组内按量实例个数少于该最小值时,系统将优先创建按量实例。', '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' => '伸缩组管理的实例类型。'."\n" + ."\n", 'type' => 'string', 'example' => 'ECS'], + 'MultiAZPolicy' => ['description' => '多可用区伸缩组ECS实例扩缩容策略。可能值:'."\n" + .' '."\n" + .'- PRIORITY:根据您定义的虚拟交换机(VSwitchIds)扩缩容。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动使用下一优先级的虚拟交换机创建ECS实例。'."\n" + ."\n" + .'- COST_OPTIMIZED:按vCPU单价从低到高进行尝试创建。当伸缩配置设置了抢占式计费方式的多实例规格时,优先创建对应抢占式实例。您可以继续通过CompensateWithOnDemand参数指定当抢占式实例由于库存等原因无法创建时,是否自动尝试以按量付费的方式创建。'."\n" + .' > COST_OPTIMIZED仅在伸缩配置设置了多实例规格或者选用了抢占式实例的情况下生效。'."\n" + ."\n" + .'- BALANCE:在伸缩组指定的多可用区之间均匀分配ECS实例。如果由于库存不足等原因可用区之间变得不平衡,您可以通过API RebalanceInstance平衡资源。', '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'], + 'CurrentHostName' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'example' => 'hostname'], + '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。'."\n" + ."\n", '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' => [ + 'description' => '后端服务器组列表。', 'type' => 'array', 'items' => [ - 'description' => '伸缩规则关联的云监控报警任务。仅在ShowAlarmRules参数为true时返回伸缩规则关联的云监控报警任务,否则返回空列表。 ', + 'description' => '后端服务器组列表。', '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' => [ - 'description' => '伸缩规则关联的报警任务的维度信息。', + 'LoadBalancerId' => ['description' => '后端服务器组所属的负载均衡实例的ID。', 'type' => 'string', 'example' => '147b46d767c-cn-qingdao-cm5****'], + 'VServerGroupAttributes' => [ + 'description' => '后端服务器组属性。', 'type' => 'array', 'items' => [ - 'description' => '伸缩规则关联的报警任务的维度信息。', + '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****', - ], + 'VServerGroupId' => ['description' => '后端服务器组属性。'."\n" + ."\n", 'type' => 'string', 'example' => 'rsp-bp12bjrny****'], + 'Weight' => ['description' => '后端服务器组的权重。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'Port' => ['description' => '负载均衡实例对外提供服务的端口号。', 'type' => 'integer', 'format' => 'int32', 'example' => '22'], ], ], ], - 'Period' => [ - 'description' => '目标追踪规则中统计监控项数据的周期。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '60', - ], ], ], ], - 'StepAdjustments' => [ - 'description' => '步进规则的分步步骤。', + 'LaunchTemplateOverrides' => [ + 'description' => '扩展启动模板的实例规格信息。', 'type' => 'array', 'items' => [ - 'description' => '步进规则的分步步骤。', + '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', - ], + 'WeightedCapacity' => ['description' => '指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。', 'type' => 'integer', 'format' => 'int32', 'example' => '4'], + 'InstanceType' => ['description' => '指定的实例规格,会覆盖启动模板中的实例规格。', 'type' => 'string', 'example' => 'ecs.c5.xlarge'], + 'SpotPriceLimit' => ['description' => '本参数用于指定实例启动模板覆盖规格(即`LaunchTemplateOverride.InstanceType`)的竞价价格上限。'."\n" + .'>仅当`LaunchTemplateId`参数指定了启动模板时,该参数才生效。', 'type' => 'number', 'format' => 'float', 'example' => '0.025'], ], ], ], - 'AlarmDimensions' => [ - 'description' => '监控项维度信息值,适用于目标追踪规则,当监控项需额外维度信息时设置,例如LoadBalancerRealServerAverageQps监控项需指定rulePool维度信息。', + 'AlbServerGroups' => [ + 'description' => 'ALB服务器组的相关信息集合。', 'type' => 'array', 'items' => [ + 'description' => 'ALB服务器组的相关信息集合。', 'type' => 'object', 'properties' => [ - 'DimensionKey' => [ - 'description' => '监控项关联的维度信息键。', - 'type' => 'string', - 'example' => 'rulePool', - ], - 'DimensionValue' => [ - 'description' => '监控项关联的维度信息值。', - 'type' => 'string', - 'example' => 'sgp-l1cbirz451yxu2****', - ], + 'AlbServerGroupId' => ['description' => 'ALB服务器组的ID。'."\n" + ."\n", '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'], ], ], ], - 'MetricType' => [ - 'description' => '监控项类型。可能值:'."\n" + 'ServerGroups' => [ + 'description' => '负载均衡服务器组的相关信息集合。'."\n" ."\n" - .'- system:使用云监控系统指标。'."\n" - .'- custom:使用上报到云监控的自定义指标。'."\n" - .'- hybrid:使用企业云监控的指标。', - 'type' => 'string', - 'example' => 'system', + .'> 您可以通过此参数获取伸缩组关联的ALB类型服务组、NLB类型服务器组和GWLB类型服务组的相关信息集合。'."\n" + .'>', + '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' => [ + 'description' => 'ECS实例移出伸缩组的策略的集合。可能值:'."\n" + .'- OldestInstance:移出最早创建的ECS实例。'."\n" + .'- NewestInstance:移出最新创建的ECS实例。'."\n" + .'- OldestScalingConfiguration:移出最早由伸缩配置创建的ECS实例。', + 'type' => 'array', + 'items' => ['description' => 'ECS实例移出伸缩组的策略的集合。可能值:'."\n" + .'- OldestInstance:移出最早创建的ECS实例。'."\n" + .'- NewestInstance:移出最新创建的ECS实例。'."\n" + .'- OldestScalingConfiguration:移出最早由伸缩配置创建的ECS实例。', 'type' => 'string', 'example' => 'OldestScalingConfiguration'], + ], + 'DBInstanceIds' => [ + 'description' => '伸缩组关联RDS实例的ID。', + 'type' => 'array', + 'items' => ['description' => '伸缩组关联RDS实例的ID。', 'type' => 'string', 'example' => 'rm-bp15556qzebg1****'], ], - 'HybridMonitorNamespace' => [ - 'description' => '企业云监控指标仓库id。'."\n" + 'LoadBalancerIds' => [ + 'description' => '伸缩组关联的负载均衡实例的ID列表。', + 'type' => 'array', + 'items' => ['description' => '伸缩组关联的负载均衡实例的ID列表。', 'type' => 'string', 'example' => 'lb-bp19byhscefk3x0li****'], + ], + 'VSwitchIds' => [ + 'description' => '伸缩组关联虚拟交换机的ID集合。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。', + 'type' => 'array', + 'items' => ['description' => '伸缩组关联虚拟交换机的ID集合。如果您使用了VSwitchIds参数,VSwitchId参数将被忽略。'."\n" + ."\n", 'type' => 'string', 'example' => 'vsw-bp1whw2u46cn8zubm****'], + ], + 'SuspendedProcesses' => [ + 'description' => '暂停中的流程,如果没有,则返回值为空。可能值:'."\n" + ."\n" + .'- ScaleIn:缩容流程。'."\n" + .'- ScaleOut:扩容流程。'."\n" + .'- HealthCheck:健康检查。'."\n" + .'- AlarmNotification:报警任务。'."\n" + .'- ScheduledAction:定时任务。', + 'type' => 'array', + 'items' => ['description' => '暂停中的流程,如果没有,则返回值为空。可能值:'."\n" ."\n" - .'管理指标仓库,请参见[管理指标仓库](~~217606~~)。', - 'type' => 'string', - 'example' => 'aliyun-test', + .'- ScaleIn:缩容流程。'."\n" + .'- ScaleOut:扩容流程。'."\n" + .'- HealthCheck:健康检查。'."\n" + .'- AlarmNotification:报警任务。'."\n" + .'- ScheduledAction:定时任务。', 'type' => 'string', 'example' => 'ScaleIn'], ], - 'HybridMetrics' => [ - 'description' => '企业云监控指标设置。如何设置,请参见[使用公式运算自定义目标追踪规则](~~2852162~~)。', + 'SystemSuspended' => ['description' => '弹性伸缩是否停止执行伸缩组内的伸缩活动。可能值:'."\n" + ."\n" + .'- true:停止执行伸缩组内的伸缩活动,说明该伸缩组已经连续扩缩容失败超过7天。您需要修改伸缩组或者伸缩配置,来恢复伸缩活动的执行。'."\n" + ."\n" + .'- false:执行伸缩组内的伸缩活动。'."\n" + ."\n", 'type' => 'boolean', 'example' => 'true'], + 'IsElasticStrengthInAlarm' => ['description' => '>该参数未开放使用。', 'type' => 'boolean', 'example' => 'false'], + 'MonitorGroupId' => ['description' => '伸缩组关联的云监控应用分组ID。', 'type' => 'string', 'example' => '1497****'], + 'AzBalance' => ['description' => '伸缩组的容量是否在多个可用区间均衡分布(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效),可能值:'."\n" + ."\n" + .'- true:伸缩组的容量在多个可用区间均衡分布。'."\n" + .'- false:伸缩组的容量不在多个可用区间均衡分布。', 'type' => 'boolean', 'example' => 'false'], + 'AllocationStrategy' => ['description' => '容量分配策略,决定了伸缩组如何选择可用的实例规格类型满足容量。容量分布策略同时对按量和抢占式容量生效(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。可能值:'."\n" + ."\n" + .'- priority:按照配置的实例规格的顺序创建实例。'."\n" + .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。', 'type' => 'string', 'example' => 'priority'], + 'SpotAllocationStrategy' => ['description' => '抢占式容量分布策略。您可以通过该参数单独指定抢占式容量的分布策略(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。可能值:'."\n" + ."\n" + .'- priority:按照配置的实例规格的顺序创建实例。'."\n" + .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n" + ."\n" + .'默认值:priority。', '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' => [ + 'description' => '负载均衡配置列表。', 'type' => 'array', 'items' => [ + 'description' => '负载均衡配置列表。', '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' => [ - 'description' => '指标纬度。用于指定指标监控的资源。', + 'LoadBalancerId' => ['description' => '负载均衡CLB(原SLB)实例的ID。', 'type' => 'string', 'example' => 'lb-2zep8alpq5zq1a2xwyxxx'], + 'Weight' => ['description' => '弹性伸缩将ECS实例添加到SLB服务器组后,ECS实例作为后端服务器的权重。权重越高,ECS实例将被分配到越多的访问请求。如果权重为0,则ECS实例不会收到访问请求。取值范围:0~100。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + ], + ], + ], + 'EnableDesiredCapacity' => ['description' => '是否开启期望实例数标识。可能值:'."\n" + .'- true:已开启期望实例数。'."\n" + .'- false:未开启期望实例数。', 'type' => 'boolean', 'example' => 'false'], + 'Tags' => [ + 'description' => '伸缩组的标签信息集合。', + 'type' => 'array', + 'items' => [ + 'description' => '伸缩组的标签信息集合。', + 'type' => 'object', + 'properties' => [ + 'TagKey' => ['description' => '伸缩组的标签键。', 'type' => 'string', 'example' => 'Department'], + 'TagValue' => ['description' => '伸缩组的标签值。', 'type' => 'string', 'example' => 'Finance'], + 'Propagate' => ['description' => '标识该标签是否为可传播标签,可能值:'."\n" + .'- true:伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n" + .'- false:伸缩组上的标签不会传播到实例上。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'example' => 'false'], + ], + ], + ], + 'HealthCheckTypes' => [ + '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' => [ + 'description' => '伸缩组关联的数据库列表。', + 'type' => 'array', + 'items' => [ + 'description' => '伸缩组关联的数据库配置信息。', + 'type' => 'object', + 'properties' => [ + 'DBInstanceId' => ['description' => '数据库实例ID。', 'type' => 'string', 'example' => 'rm-m5eqju85s45mu0***'."\n"], + 'Type' => ['description' => '数据库类型。可能值:'."\n" + .'- RDS。'."\n" + .'- Redis。'."\n" + .'- MongoDB。', 'type' => 'string', 'example' => 'RDS'], + 'SecurityGroupIds' => [ + 'description' => '伸缩组向数据库添加的安全组白名单列表。', 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'DimensionKey' => [ - 'description' => '指标维度key。', - 'type' => 'string', - 'example' => 'queue', - ], - 'DimensionValue' => [ - 'description' => '指标维度value。', - 'type' => 'string', - 'example' => 'testQueue', - ], - ], - ], + 'items' => ['description' => '伸缩组向数据库添加的安全组白名单。'."\n" + ."\n" + .'当DetachDBInstances接口中的`RemoveSecurityGroup`参数取值为`true`时,将从数据库安全组白名单中移除此列表中的安全组。', '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" + .'- PricePerUnit:使用每单位容量价格比价。'."\n" + ."\n" + .' 实例在伸缩组中容量大小等于为实例规格设置的权重,默认为1,即一台ECS所占容量为1。'."\n" + ."\n" + .'- PricePerVCpu:使用每单位vCpu价格进行比价。', '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'], ], ], ], @@ -20269,149 +11285,159 @@ ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 1,\\n \\"ScalingRules\\": [\\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 {\\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 {\\n \\"DimensionKey\\": \\"scaling_group\\",\\n \\"DimensionValue\\": \\"asg-bp18p2yfxow2dloq****\\"\\n }\\n ],\\n \\"Period\\": 60\\n }\\n ],\\n \\"StepAdjustments\\": [\\n {\\n \\"MetricIntervalUpperBound\\": 5,\\n \\"ScalingAdjustment\\": 1,\\n \\"MetricIntervalLowerBound\\": 1\\n }\\n ],\\n \\"AlarmDimensions\\": [\\n {\\n \\"DimensionKey\\": \\"rulePool\\",\\n \\"DimensionValue\\": \\"sgp-l1cbirz451yxu2****\\"\\n }\\n ],\\n \\"MetricType\\": \\"system\\",\\n \\"HybridMonitorNamespace\\": \\"aliyun-test\\",\\n \\"HybridMetrics\\": [\\n {\\n \\"Id\\": \\"a\\",\\n \\"Expression\\": \\"(a+b)/2\\",\\n \\"MetricName\\": \\"AliyunSmq_NumberOfMessagesVisible\\",\\n \\"Statistic\\": \\"Average\\",\\n \\"Dimensions\\": [\\n {\\n \\"DimensionKey\\": \\"queue\\",\\n \\"DimensionValue\\": \\"testQueue\\"\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', - 'title' => '查询伸缩规则', - ], - 'DeleteScalingRule' => [ - 'summary' => '删除一条伸缩规则。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '125395', - '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' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"ScalingGroups\\": [\\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 \\"CurrentHostName\\": \\"hostname\\",\\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 {\\n \\"LoadBalancerId\\": \\"147b46d767c-cn-qingdao-cm5****\\",\\n \\"VServerGroupAttributes\\": [\\n {\\n \\"VServerGroupId\\": \\"rsp-bp12bjrny****\\",\\n \\"Weight\\": 1,\\n \\"Port\\": 22\\n }\\n ]\\n }\\n ],\\n \\"LaunchTemplateOverrides\\": [\\n {\\n \\"WeightedCapacity\\": 4,\\n \\"InstanceType\\": \\"ecs.c5.xlarge\\",\\n \\"SpotPriceLimit\\": 0.025\\n }\\n ],\\n \\"AlbServerGroups\\": [\\n {\\n \\"AlbServerGroupId\\": \\"sgp-ddwb0y0g6y9bjm****\\",\\n \\"Weight\\": 100,\\n \\"Port\\": 80\\n }\\n ],\\n \\"ServerGroups\\": [\\n {\\n \\"ServerGroupId\\": \\"sgp-i9ouakeaerr*****\\",\\n \\"Type\\": \\"ALB\\",\\n \\"Weight\\": 100,\\n \\"Port\\": 80\\n }\\n ],\\n \\"RemovalPolicies\\": [\\n \\"OldestScalingConfiguration\\"\\n ],\\n \\"DBInstanceIds\\": [\\n \\"rm-bp15556qzebg1****\\"\\n ],\\n \\"LoadBalancerIds\\": [\\n \\"lb-bp19byhscefk3x0li****\\"\\n ],\\n \\"VSwitchIds\\": [\\n \\"vsw-bp1whw2u46cn8zubm****\\"\\n ],\\n \\"SuspendedProcesses\\": [\\n \\"ScaleIn\\"\\n ],\\n \\"SystemSuspended\\": true,\\n \\"IsElasticStrengthInAlarm\\": false,\\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 {\\n \\"LoadBalancerId\\": \\"lb-2zep8alpq5zq1a2xwyxxx\\",\\n \\"Weight\\": 10\\n }\\n ],\\n \\"EnableDesiredCapacity\\": false,\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"Department\\",\\n \\"TagValue\\": \\"Finance\\",\\n \\"Propagate\\": false\\n }\\n ],\\n \\"HealthCheckTypes\\": [\\n \\"ECS\\"\\n ],\\n \\"DBInstances\\": [\\n {\\n \\"DBInstanceId\\": \\"rm-m5eqju85s45mu0***\\\\n\\",\\n \\"Type\\": \\"RDS\\",\\n \\"SecurityGroupIds\\": [\\n \\"sg-uf65zt66cf2a0q47***\\"\\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}","type":"json"}]', + 'title' => '查询伸缩组列表', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], - ], - ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '删除一条伸缩规则', - ], - 'ExecuteScalingRule' => [ - 'summary' => '执行伸缩规则可以实现手动或自动调整ECS实例或ECI实例资源。其中,对于简单规则和步进规则,您才可以调用API ExecuteScalingRule执行一条伸缩规则,而对于目标追踪规则和预测规则,弹性伸缩会自动执行伸缩规则。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + ], + ], ], + ], + 'DescribeScalingInstances' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'deprecated' => false, + 'operationType' => 'read', 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125340', - 'abilityTreeNodes' => [ - 'FEATUREessKCZYL8', - ], + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '125341', + 'abilityTreeNodes' => ['FEATUREessPMOEEX'], ], 'parameters' => [ [ - 'name' => 'ScalingRuleAri', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩规则唯一标识符。'."\n" - ."\n" - .'> 调用API执行伸缩规则时,只支持执行简单规则和步进规则,且执行步进规则时必须同时指定`BreachThreshold`和`MetricValue`。', - 'type' => 'string', - 'required' => true, - 'example' => 'ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****', - ], + 'schema' => ['description' => '伸缩组所属地域的ID。'."\n" + ."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ClientToken', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '用于保证请求的幂等性。'."\n" - ."\n" - .'由客户端生成该参数值,要保证在不同请求间唯一,最大不超过64个ASCII字符。详情请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-426655440000', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp1igpak5ft1flyp****'], ], [ - 'name' => 'BreachThreshold', + 'name' => 'ScalingConfigurationId', + 'in' => 'query', + 'schema' => ['description' => '关联伸缩配置的ID。', 'type' => 'string', 'required' => false, 'example' => 'asc-bp1i65jd06v04vdh****'], + ], + [ + 'name' => 'HealthStatus', + 'in' => 'query', + 'schema' => ['description' => 'ECS实例在伸缩组中的健康状态,未处于运行中(Running)状态的ECS实例会被判定为不健康的ECS实例,取值范围: '."\n" + ."\n" + .'- Healthy:健康的ECS实例。 '."\n" + .'- Unhealthy:不健康的ECS实例。 '."\n" + ."\n" + .'弹性伸缩会自动移出伸缩组中不健康的ECS实例,并释放自动创建的ECS实例。'."\n" + ."\n" + .'是否释放手动添加的ECS实例由其托管状态决定。如果实例生命周期未托管给伸缩组,只移出实例但不释放。如果实例生命周期托管给伸缩组,移出并释放实例。'."\n" + ."\n" + .'> 请确保账号可用额度充足。如果账号欠费,所有后付费的ECS实例(包括按量付费实例和抢占式实例)都会停机,甚至被释放。欠费后伸缩组内ECS实例状态变化,请参见[欠费说明](~~170589~~)。', 'type' => 'string', 'required' => false, 'example' => 'Healthy'], + ], + [ + 'name' => 'LifecycleState', + 'in' => 'query', + 'schema' => ['description' => 'ECS实例在伸缩组中的生命周期状态,取值范围:'."\n" + .' '."\n" + .'- InService:已成功加入伸缩组并正常提供服务。 '."\n" + .'- Pending:加入中。ECS实例加入伸缩组时包括加入负载均衡实例的后端服务器、RDS实例的访问白名单等过程。'."\n" + .'- Pending:Wait:加入挂起中。如果伸缩组内创建了适用于弹性扩张活动的生命周期挂钩,ECS实例在加入伸缩组时被挂起并等待挂钩超时时间结束。'."\n" + .'- Protected:保护中。ECS实例正常提供服务,但弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n" + .'- Standby:备用中。ECS实例不提供服务,负载均衡权重被置为零,且弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n" + .'- Stopped:停用中。ECS实例已停机,不提供服务。'."\n" + .'- Removing:移出中。ECS实例移出伸缩组时包括移出负载均衡实例的后端服务器、RDS实例的访问白名单等过程。 '."\n" + .'- Removing:Wait:移出挂起中。如果伸缩组内创建了适用于弹性收缩活动的生命周期挂钩,ECS实例在移出伸缩组时被挂起并等待挂钩超时时间结束。', 'type' => 'string', 'required' => false, 'example' => 'InService'], + ], + [ + 'name' => 'CreationType', + 'in' => 'query', + 'schema' => ['description' => '伸缩组中实例的创建方式,取值范围: '."\n" + ."\n" + .'- AutoCreated:弹性伸缩根据实例配置信息来源自动创建的ECS实例。 '."\n" + .'- Attached:不是通过弹性伸缩服务创建,而是由您手动添加到伸缩组中的ECS实例。'."\n" + .'- Managed:不是通过弹性伸缩服务创建,而是由您手动添加到伸缩组中的托管实例。', 'type' => 'string', 'required' => false, 'example' => 'AutoCreated'], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => ['description' => 'ECS实例列表的页码,起始值: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' => '100', 'example' => '10', 'default' => '10'], + ], + [ + 'name' => 'ScalingActivityId', + 'in' => 'query', + 'schema' => ['description' => '伸缩活动的ID。', 'type' => 'string', 'required' => false, 'example' => 'asa-bp1c9djwrgxjyk31****'], + ], + [ + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '执行步进伸缩规则时指定的当前阈值,取值范围:-9.999999E18~9.999999E18。', - 'type' => 'number', - 'format' => 'float', + 'description' => 'ECS实例的ID。'."\n" + ."\n" + .'返回查询结果时忽略失效的InstanceId,并且不报错。', + 'type' => 'array', + 'items' => ['description' => 'ECS实例的ID。'."\n" + ."\n" + .'返回查询结果时忽略失效的InstanceId,并且不报错。', 'type' => 'string', 'required' => false, 'example' => 'i-bp109k5j3dum1ce6****'], 'required' => false, - 'example' => '1.0', + 'maxItems' => 200, ], ], [ - 'name' => 'MetricValue', + 'name' => 'CreationTypes', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '执行步进伸缩规则时指定的当前指标值,取值范围:-9.999999E18~9.999999E18。', - 'type' => 'number', - 'format' => 'float', + 'description' => '伸缩组中实例的创建方式,此参数和CreationType参数只能同时传入一个。', + 'type' => 'array', + 'items' => ['description' => '伸缩组中实例的创建方式,可分为AutoCreated、Attached、Managed。', 'type' => 'string', 'required' => false, 'example' => 'AutoCreated'], 'required' => false, - 'example' => '1.0', + 'maxItems' => 10, ], ], [ - 'name' => 'RegionId', + 'name' => 'LifecycleStates', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩组所属地域的ID。', - 'type' => 'string', + 'description' => 'ECS实例在伸缩组中的生命周期状态列表,此参数和LifecycleState参数只能同时传入一个,建议您使用此参数。', + 'type' => 'array', + 'items' => ['description' => 'ECS实例在伸缩组中的生命周期状态,取值范围:'."\n" + .' '."\n" + .'- InService:已成功加入伸缩组并正常提供服务。 '."\n" + .'- Pending:加入中。ECS实例加入伸缩组时包括加入负载均衡实例的后端服务器、RDS实例的访问白名单等过程。'."\n" + .'- Pending:Wait:加入挂起中。如果伸缩组内创建了适用于弹性扩张活动的生命周期挂钩,ECS实例在加入伸缩组时被挂起并等待挂钩超时时间结束。'."\n" + .'- Protected:保护中。ECS实例正常提供服务,但弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n" + .'- Standby:备用中。ECS实例不提供服务,负载均衡权重被置为零,且弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n" + .'- Stopped:停用中。ECS实例已停机,不提供服务。'."\n" + .'- Removing:移出中。ECS实例移出伸缩组时包括移出负载均衡实例的后端服务器、RDS实例的访问白名单等过程。 '."\n" + .'- Removing:Wait:移出挂起中。如果伸缩组内创建了适用于弹性收缩活动的生命周期挂钩,ECS实例在移出伸缩组时被挂起并等待挂钩超时时间结束。', 'type' => 'string', 'required' => false, 'example' => 'InService'], 'required' => false, - 'example' => 'cn-qingdao', + 'maxItems' => 10, ], ], ], @@ -20420,325 +11446,192 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'ScalingActivityId' => [ - 'description' => '伸缩活动的ID。', - 'type' => 'string', - 'example' => 'asa-bp13o672yeautiil****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', + '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' => 'ECS实例的总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'ScalingInstances' => [ + 'description' => 'ECS实例信息组成的集合。', + 'type' => 'array', + 'items' => [ + 'description' => 'ECS实例信息组成的集合。', + 'type' => 'object', + 'properties' => [ + 'CreationTime' => ['description' => 'ECS实例加入伸缩组的时间,精确到分钟。', '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' => 'ECS实例的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实例在伸缩组中的健康状态,未处于运行中(Running)状态的ECS实例会被判定为不健康的ECS实例,可能值: '."\n" + ."\n" + .'- Healthy:健康的ECS实例。 '."\n" + .'- Unhealthy:不健康的ECS实例。 '."\n" + ."\n" + .'弹性伸缩会自动移出伸缩组中不健康的ECS实例,并释放自动创建的ECS实例。'."\n" + ."\n" + .'是否释放手动添加的ECS实例由其托管状态决定。如果实例生命周期未托管给伸缩组,只移出实例但不释放。如果实例生命周期托管给伸缩组,移出并释放实例。'."\n" + ."\n" + .'> 请确保账号可用额度充足。如果账号欠费,所有后付费的ECS实例(包括按量付费实例和抢占式实例)都会停机,甚至被释放。欠费后伸缩组内ECS实例状态变化,请参见[欠费说明](~~170589~~)。', 'type' => 'string', 'example' => 'Healthy'], + 'ScalingGroupId' => ['description' => '所属伸缩组的ID。', 'type' => 'string', 'example' => 'asg-bp1igpak5ft1flyp****'], + 'WarmupState' => ['description' => 'ECS实例的预热状态,可能值: '."\n" + .' '."\n" + .'- NoNeedWarmup:不需要预热。'."\n" + .'- WaitingForInstanceWarmup:等待预热结束。'."\n" + .'- InstanceWarmupFinish:预热结束。'."\n" + .' ', 'type' => 'string', 'example' => 'NoNeedWarmup'], + 'LifecycleState' => ['description' => 'ECS实例在伸缩组中的生命周期状态,可能值:'."\n" + .' '."\n" + .'- InService:已成功加入伸缩组并正常提供服务。 '."\n" + .'- Pending:加入中。ECS实例加入伸缩组时包括加入负载均衡实例的后端服务器、RDS实例的访问白名单等过程。'."\n" + .'- Pending:Wait:加入挂起中。如果伸缩组内创建了适用于弹性扩张活动的生命周期挂钩,ECS实例在加入伸缩组时被挂起并等待挂钩超时时间结束。'."\n" + .'- Protected:保护中。ECS实例正常提供服务,但弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n" + .'- Standby:备用中。ECS实例不提供服务,负载均衡权重被置为零,且弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。'."\n" + .'- Stopped:停用中。ECS实例已停机,不提供服务。'."\n" + .'- Removing:移出中。ECS实例移出伸缩组时包括移出负载均衡实例的后端服务器、RDS实例的访问白名单等过程。 '."\n" + .'- Removing:Wait:移出挂起中。如果伸缩组内创建了适用于弹性收缩活动的生命周期挂钩,ECS实例在移出伸缩组时被挂起并等待挂钩超时时间结束。', 'type' => 'string', 'example' => 'InService'], + 'CreationType' => ['description' => 'ECS实例的创建方式,可能值: '."\n" + ."\n" + .'- AutoCreated:弹性伸缩根据实例配置信息来源自动创建的ECS实例。 '."\n" + .'- Attached:不是通过弹性伸缩服务创建,而是由您手动添加到伸缩组中的ECS实例。', 'type' => 'string', 'example' => 'AutoCreated'], + 'ZoneId' => ['description' => 'ECS实例所属的可用区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' => 'ECS实例加入伸缩组的时间,精确到秒。'."\n" + ."\n", 'type' => 'string', 'example' => '2020-05-18T03:11:39Z'], + 'ScalingActivityId' => ['description' => 'ECS实例加入伸缩组时,伸缩活动的ID。', 'type' => 'string', 'example' => 'asa-bp1c9djwrgxjyk31****'], + 'ScalingInstanceId' => ['description' => '伸缩组内的实例标识,与ECS实例或ECI实例的ID一一对应。', 'type' => 'string', 'example' => 'asi-j6cj1gcte640ekhb****'], + 'PrivateIpAddress' => ['description' => '伸缩组中实例的内网IP地址。', 'type' => 'string', 'example' => '1**.2*.1**.2**'], + 'ReplaceStatus' => ['type' => 'string'], + ], + ], ], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp13o672yeautiil****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '执行一条伸缩规则', - 'description' => '调用该接口前请确保满足以下条件:'."\n" - .'- 伸缩组处于Active状态。'."\n" - .'- 伸缩组没有执行中的伸缩活动。'."\n" - ."\n" - .'当伸缩组没有执行中的伸缩活动时,该接口可以绕过冷却时间(Cooldown)直接执行伸缩活动。'."\n" - ."\n" - .'调用该接口返回成功,只是表示弹性伸缩服务接受了该接口的调用请求,可以执行伸缩活动,但不代表伸缩活动能够执行成功。您需要通过返回的ScalingActivityId查看该伸缩活动的执行状态。'."\n" - ."\n" - .'如果伸缩规则需要增加的ECS实例数加上当前伸缩组的实例数(Total Capacity)大于MaxSize,则按Total Capacity = MaxSize执行伸缩活动。'."\n" - ."\n" - .'如果当前伸缩组的实例数(Total Capacity)减去伸缩规则需要减少的ECS实例数小于MinSize,则按Total Capacity = MinSize执行伸缩活动。'."\n" - ."\n" - .'单次调整的ECS实例台数存在限制,请参见CreateScalingRule中的AdjustmentValue参数说明。', - ], - 'ScaleWithAdjustment' => [ - 'summary' => '区别于ExecuteScalingRule接口,您无需提前创建伸缩规则,直接调用API ScaleWithAdjustment接口快速基于指定调整规则触发弹性扩缩容。', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '查询伸缩组内ECS实例列表', + 'summary' => '调用DescribeScalingInstances,通过伸缩组ID查询该伸缩组内的ECS实例列表及实例信息,包括当前伸缩组中,运行状态的抢占式实例总数、ECS实例总数、ECS实例的预热状态、生命周期状态等。同时也支持指定实例健康状态、生命周期状态、创建方式等筛选符合要求的ECS实例。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B13527BF-1FBD-4334-A512-20F5E9D3****\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"TotalSpotCount\\": 4,\\n \\"TotalCount\\": 1,\\n \\"ScalingInstances\\": [\\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 \\"ScalingInstanceId\\": \\"asi-j6cj1gcte640ekhb****\\",\\n \\"PrivateIpAddress\\": \\"1**.2*.1**.2**\\",\\n \\"ReplaceStatus\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'DescribeScalingRules' => [ + 'summary' => '调用DescribeScalingRules并指定伸缩规则ID、伸缩规则名称、伸缩规则唯一标识符等参数,查询伸缩规则及其详细信息。例如,伸缩规则的调整方式、实例预热时间、伸缩规则关联的报警任务信息等。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '125372', - 'abilityTreeNodes' => [ - 'FEATUREessSQIS9M', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '125364', + 'abilityTreeNodes' => ['FEATUREessRL7GKO'], ], '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', + 'name' => 'RegionId', '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, - ], + 'schema' => ['description' => '伸缩规则所属伸缩组的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-qingdao'], ], [ - 'name' => 'MinAdjustmentMagnitude', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩活动最小调整实例数,仅当`AdjustmentType`为`PercentChangeInCapacity`时生效。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '伸缩规则列表的页码,起始值:1。'."\n" + ."\n" + .'默认值:1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'default' => '1'], ], [ - 'name' => 'ClientToken', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => '用于保证请求的幂等性,防止重复提交请求。由客户端生成该参数值,要保证在不同请求间唯一,最大值不超过64个ASCII字符,且该参数值中不能包含非ASCII字符。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '分页查询时设置的每页行数,最大值:50。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'example' => '50', 'default' => '10'], ], [ - 'name' => 'SyncActivity', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩活动同步执行开关,仅对具有期望实例数配置项的伸缩组有效。取值范围:'."\n" - ."\n" - .'- true:同步流程,即执行伸缩规则时会直接触发伸缩组的扩缩容活动。'."\n" - .'- false:异步流程,即修改伸缩组内的期望实例数时,不会立刻触发伸缩组的实际扩缩容活动,需等待期望实例数变化后,系统自动检测期望实例数与伸缩组内当前实例数不一致,才会触发扩缩容活动。'."\n" - ."\n" - .'> 关于期望实例数的更多信息,请参见[期望实例数](~~146231~~)。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp1ffogfdauy0jw0****'], ], [ - 'name' => 'ParallelTask', + 'name' => 'ScalingRuleType', 'in' => 'query', - 'schema' => [ - 'description' => '当前扩缩容任务是否支持并发。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '伸缩规则的类型。取值范围: '."\n" + ."\n" + .'- SimpleScalingRule:简单规则。根据调整方式(AdjustmentType)和调整值(AdjustmentValue)调整ECS实例数量。'."\n" + .'- TargetTrackingScalingRule:目标追踪规则。根据预定义监控(MetricName)项动态计算需要扩缩容的ECS实例数量,尽量将预定义监控项的指标值维持在目标值(TargetValue)附近。'."\n" + .'- StepScalingRule:步进规则,根据阈值和指标值提供分步扩展方式。'."\n" + .'- PredictiveScalingRule:预测规则,基于机器学习能力分析伸缩组的历史监控数据预测未来监控指标值,并支持自动创建定时任务设置伸缩组边界。', 'type' => 'string', 'required' => false, 'example' => 'SimpleScalingRule'], ], [ - 'name' => 'Overrides', + 'name' => 'ShowAlarmRules', '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', - ], - 'ContainerOverrides' => [ - 'description' => '覆写容器列表参数。', - 'type' => 'array', - 'items' => [ - 'description' => '覆写容器列表参数。', - 'type' => 'object', - 'properties' => [ - 'Name' => [ - 'description' => '容器名称。当需要覆写容器参数时,必须指定容器名称,容器名称与伸缩配置容器名称相匹配时,方可覆写容器参数。', - 'type' => 'string', - 'required' => false, - 'example' => 'container-1', - ], - 'Args' => [ - 'description' => '容器启动命令对应的参数。最多10个。', - 'type' => 'array', - 'items' => [ - 'description' => '容器启动命令对应的参数。最多10个。', - 'type' => 'string', - 'required' => false, - 'example' => 'arg', - ], - 'required' => false, - ], - 'Commands' => [ - 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。', - 'type' => 'array', - 'items' => [ - 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'sleep', - ], - '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/tomcat', - ], - ], - 'required' => false, - ], - 'required' => false, - ], - 'Cpu' => [ - 'description' => '容器vCPU核数。单位:核。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '2', - ], - 'Memory' => [ - 'description' => '容器内存大小。单位:GiB。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '4', - ], - ], - 'required' => false, - ], - 'required' => false, - ], - 'UserData' => [ - 'description' => 'ECS 实例的自定义数据,需要以 Base64 方式编码,编码前的原始数据最多为 32 KB。', - 'type' => 'string', - 'required' => false, - 'example' => 'ZWNobyBoZWxsbyBlY3Mh', - ], - ], - 'required' => false, - ], + 'schema' => ['description' => '是否返回伸缩规则关联的云监控报警任务。取值范围:'."\n" + ."\n" + .'- true:返回伸缩规则关联的云监控报警任务。'."\n" + .'- false:不返回伸缩规则关联的云监控报警任务。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false'], ], [ - 'name' => 'LifecycleHookContext', + 'name' => 'ScalingRuleIds', 'in' => 'query', - 'style' => 'json', + 'style' => 'repeatList', '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, - ], - ], + 'description' => '待查询伸缩规则的ID。', + 'type' => 'array', + 'items' => ['description' => '待查询伸缩规则的ID。', 'type' => 'string', 'required' => false, 'example' => 'asr-bp1dvirgwkoowxk7****'], 'required' => false, + 'maxItems' => 10, ], ], [ - 'name' => 'ActivityMetadata', + 'name' => 'ScalingRuleNames', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩活动的元数据。', - 'type' => 'string', + 'description' => '待查询伸缩规则的名称。', + 'type' => 'array', + 'items' => ['description' => '待查询伸缩规则的名称。', 'type' => 'string', 'required' => false, 'example' => 'scalingrule****'], 'required' => false, - 'example' => '{"key":"value"}', + 'maxItems' => 10, ], ], [ - 'name' => 'ExecutionMode', + 'name' => 'ScalingRuleAris', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '执行模式'."\n" - .'可选值:'."\n" - ."\n" - .'- None:未指定,正常扩缩容。'."\n" - .'- PlanOnly:不触发扩缩容,仅执行弹性规划,在PlanResult中返回规划的结果,包括实例规格、可用区ID、付费类型和创建的实例数量等信息。'."\n" - ."\n" - .'默认为None。', - 'type' => 'string', + 'description' => '待查询伸缩规则的唯一标识符。', + 'type' => 'array', + 'items' => ['description' => '待查询伸缩规则的唯一标识符。', 'type' => 'string', 'required' => false, 'example' => 'ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****'], 'required' => false, - 'example' => 'PlanOnly', + 'maxItems' => 10, ], ], ], @@ -20747,66 +11640,162 @@ 'schema' => [ '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" + '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' => [ + 'description' => '伸缩规则信息组成的集合。', + 'type' => 'array', + 'items' => [ + 'description' => '伸缩规则信息组成的集合。', + 'type' => 'object', + 'properties' => [ + 'MetricName' => ['description' => '伸缩规则关联的报警任务监控项名称。', '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' => [ + '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" - .'- NoSpot:正常按量付费实例。'."\n" - .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n" - .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格的抢占式实例。', - 'type' => 'string', - 'example' => 'NoSpot', + .'- Average:统计平均值。'."\n" + .'- Maximum:统计最大值。'."\n" + .'- Minimum:统计最小值。', 'type' => 'string', 'example' => 'Average'], + 'Dimensions' => [ + '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' => [ + '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'], ], - 'Amount' => [ - 'description' => '实例数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', + ], + ], + 'AlarmDimensions' => [ + 'description' => '监控项维度信息值,适用于目标追踪规则,当监控项需额外维度信息时设置,例如LoadBalancerRealServerAverageQps监控项需指定rulePool维度信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DimensionKey' => ['description' => '监控项关联的维度信息键。', 'type' => 'string', 'example' => 'rulePool'], + 'DimensionValue' => ['description' => '监控项关联的维度信息值。', 'type' => 'string', 'example' => 'sgp-l1cbirz451yxu2****'], ], - 'InstanceChargeType' => [ - 'description' => '付费类型,返回值如下:'."\n" - .'* **Prepaid**:包年包月'."\n" - .'* **Postpaid**:按量付费', - 'type' => 'string', - 'example' => 'PostPaid', + ], + ], + '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' => [ + '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' => [ + 'description' => '指标纬度。用于指定指标监控的资源。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DimensionKey' => ['description' => '指标维度key。', 'type' => 'string', 'example' => 'queue'], + 'DimensionValue' => ['description' => '指标维度value。', 'type' => 'string', 'example' => 'testQueue'], + ], + ], + ], ], ], ], @@ -20817,166 +11806,254 @@ ], ], ], - 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]', - 'title' => '基于指定调整规则触发性扩缩容', - 'description' => '- 调用该接口前,请确保满足以下条件:'."\n" - .' - 伸缩组处于Active状态。'."\n" - .' - 伸缩组内没有执行中的伸缩活动。'."\n" - .'- 当伸缩组没有执行中的伸缩活动时,该接口可以绕过冷却时间(Cooldown)直接执行伸缩活动。'."\n" - .'- 如果伸缩规则需要增加的ECS实例数加上当前伸缩组的实例数(Total Capacity)大于最大实例数(MaxSize),则按Total Capacity=MaxSize执行伸缩活动。'."\n" - .'- 如果当前伸缩组内的实例数(Total Capacity)减去伸缩规则需要减少的ECS实例数小于最小实例数(MinSize),则按Total Capacity=MinSize执行伸缩活动。'."\n" - ."\n" - .'调用该接口返回成功,只是表示弹性伸缩服务接受了该接口的调用请求,可以执行伸缩活动,但不代表伸缩活动能够执行成功。您需要通过返回的`ScalingActivityId`查看该伸缩活动的执行状态。', - ], - 'AttachInstances' => [ - 'summary' => '调用API AttachInstances将实例手动添加到伸缩组中,即您可以将伸缩组以外的ECS实例、ECI实例或托管实例添加到伸缩组中并提供服务,或者将伸缩组中处于节省停机状态的ECS实例重新启动变为服务状态(运行中状态)并在伸缩组中提供服务。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '查询伸缩规则', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingRules', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 1,\\n \\"ScalingRules\\": [\\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 {\\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 {\\n \\"DimensionKey\\": \\"scaling_group\\",\\n \\"DimensionValue\\": \\"asg-bp18p2yfxow2dloq****\\"\\n }\\n ],\\n \\"Period\\": 60\\n }\\n ],\\n \\"StepAdjustments\\": [\\n {\\n \\"MetricIntervalUpperBound\\": 5,\\n \\"ScalingAdjustment\\": 1,\\n \\"MetricIntervalLowerBound\\": 1\\n }\\n ],\\n \\"AlarmDimensions\\": [\\n {\\n \\"DimensionKey\\": \\"rulePool\\",\\n \\"DimensionValue\\": \\"sgp-l1cbirz451yxu2****\\"\\n }\\n ],\\n \\"MetricType\\": \\"system\\",\\n \\"HybridMonitorNamespace\\": \\"aliyun-test\\",\\n \\"HybridMetrics\\": [\\n {\\n \\"Id\\": \\"a\\",\\n \\"Expression\\": \\"(a+b)/2\\",\\n \\"MetricName\\": \\"AliyunSmq_NumberOfMessagesVisible\\",\\n \\"Statistic\\": \\"Average\\",\\n \\"Dimensions\\": [\\n {\\n \\"DimensionKey\\": \\"queue\\",\\n \\"DimensionValue\\": \\"testQueue\\"\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', + ], + 'DescribeScheduledTasks' => [ + 'summary' => '定时任务是一种预设任务,可以在指定时间执行指定的伸缩规则,实现计算资源的自动扩缩容。定时任务创建完成后,您可以调用API DescribeScheduledTasks查询定时任务的详细信息,例如,定时任务的触发时间点、定时任务总数、执行定时任务的伸缩组的ID等。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125356', - 'abilityTreeNodes' => [ - 'FEATUREessBFHJ1B', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '125344', + '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' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '执行定时任务的伸缩组的ID。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp1bo5tca4m56nap****'], ], [ - 'name' => 'Entrusted', + 'name' => 'ScheduledActions', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '将已经存在的实例手动添加到伸缩组时,是否将该实例的生命周期托管给伸缩组。取值范围:'."\n" - ."\n" - .'- true:托管。该实例的生命周期由弹性伸缩管理,与伸缩组自动创建的实例一致。实例被移出伸缩组(不包括通过调用DetachInstances参数移出的实例)时会自动释放。'."\n" - .'- false:不托管。该实例在被移出伸缩组时不会被释放。'."\n" - ."\n" - .'>包年包月实例、托管实例和伸缩组中节省停机实例不支持设置该参数项。'."\n" + 'description' => '仅当定时任务指定了伸缩规则时,定时任务触发时使用的伸缩规则。', + 'type' => 'array', + 'items' => ['description' => '仅当定时任务指定了伸缩规则时,定时任务触发时使用的伸缩规则。'."\n" ."\n" - .'默认值:false。', - 'type' => 'boolean', + .'取值为伸缩规则的唯一标识符(ScalingRuleAri)。', 'type' => 'string', 'required' => false, 'example' => 'ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp1id5rhu8edp7kd****'], 'required' => false, - 'example' => 'false', + 'maxItems' => 20, ], ], [ - 'name' => 'InstanceIds', + 'name' => 'ScheduledTaskIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '待添加ECS实例、ECI实例、托管实例或者伸缩组中处于节省停机状态实例的ID。', + 'description' => '待查询定时任务的ID。', 'type' => 'array', - 'items' => [ - 'description' => '待添加ECS实例、ECI实例、托管实例或者伸缩组中处于节省停机状态实例的ID。'."\n" - ."\n" - .'举例如下所示:'."\n" - ."\n" - .'- 待添加的ECS实例ID为i-28wt4****。'."\n" - .'- 待添加的ECI实例ID为eci-bp17gw49eu09yiwm****。'."\n" - .'- 待添加的托管实例ID为mi-2cx*****。'."\n" - .'- 待重新启动的伸缩组中节省停机状态实例ID为i-2cd2f****'."\n" - .'>一次调用请求中仅支持处理一种类型的实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'i-28wt4****', - ], + 'items' => ['description' => '待查询定时任务的ID。', 'type' => 'string', 'required' => false, 'example' => 'edRtShc57WGXdt8TlPbr****'], 'required' => false, - 'maxItems' => 100, + 'maxItems' => 20, ], ], [ - 'name' => 'LoadBalancerWeights', + 'name' => 'ScheduledTaskNames', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'ECS实例或ECI实例作为负载均衡实例后端服务器时的权重。', + 'description' => '待查询定时任务的名称。', 'type' => 'array', - 'items' => [ - 'description' => '为ECS实例或ECI实例作为负载均衡实例后端服务器时的权重,该参数的取值范围:1~100。'."\n" - .'> 托管实例和伸缩组中节省停机实例不支持设置该参数项。'."\n" - ."\n" - .'默认值:50。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '50', - ], + 'items' => ['description' => '待查询定时任务的名称。', 'type' => 'string', 'required' => false, 'example' => 'scheduled****'], 'required' => false, - 'maxItems' => 100, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'TaskName', + 'in' => 'query', + 'schema' => ['description' => '任务名称,支持根据关键字模糊搜索。', 'type' => 'string', 'required' => false, 'example' => 'scheduled****'], + ], + [ + 'name' => 'RecurrenceType', + 'in' => 'query', + 'schema' => ['description' => '重复执行定时任务的类型,取值范围: '."\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" + .'- 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' => [ + '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'], + ], + ], + ], + ], + ], + ], + ], + 'title' => '查询定时任务的信息', + 'description' => '您可以通过定时任务的ID、定时任务的名称、定时任务执行的伸缩规则等查询定时任务。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScheduledTasks', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 1,\\n \\"ScheduledTasks\\": [\\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}","type":"json"}]', + ], + 'DetachAlbServerGroups' => [ + 'summary' => '调用DetachAlbServerGroups,并可以指定伸缩组的ID、ALB 服务器组的ID、ALB 服务器组中 ECS 实例使用的端口号等参数,实现从伸缩组中移出一个或多个ALB服务器组。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '125336', + 'abilityTreeNodes' => ['FEATUREessJZ6DNF'], + ], + 'parameters' => [ [ - 'name' => 'LifecycleHook', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组添加实例时,是否触发扩容生命周期挂钩。取值范围:'."\n" - ."\n" - .'- true:触发。'."\n" - .'- false:不触发。'."\n" - .'>托管实例和伸缩组中节省停机实例不支持设置该参数项。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '伸缩组所属的地域ID,如cn-hangzhou、cn-shanghai。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'RegionId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-qingdao', - ], + '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****', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。'."\n" + ."\n" + .'只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'IgnoreInvalidInstance', + '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' => 'AlbServerGroups', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '向伸缩组添加一批实例时,是否忽略其中无效的实例。取值范围:'."\n" - ."\n" - .'- true:从伸缩组中添加一批实例时,会忽略其中无效的实例。如果存在无效的实例,并且有效的实例被成功添加时,伸缩活动执行状态也会显示为警告状态,可以从伸缩活动详情查看无效的实例。'."\n" - ."\n" - .'- false:从伸缩组中添加一批实例时,不会忽略无效的实例。如果一批实例中存在无效的实例,请求会报错。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', + 'description' => 'ALB服务器组的相关信息集合。', + 'type' => 'array', + 'items' => [ + 'description' => 'ALB服务器组的相关信息集合。', + 'type' => 'object', + 'properties' => [ + 'AlbServerGroupId' => ['description' => 'ALB服务器组的ID。'."\n" + ."\n", 'type' => 'string', 'required' => true, 'example' => 'sgp-ddwb0y0g6y9bjm****'], + 'Port' => ['description' => 'ALB服务器组中ECS实例使用的端口号。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '22'], + ], + 'required' => false, + ], + 'required' => true, + 'maxItems' => 100, ], ], ], @@ -20985,230 +12062,94 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'ScalingActivityId' => [ - 'description' => '伸缩活动的ID。', - 'type' => 'string', - 'example' => 'asa-bp1crxor24s28xf1****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE****', - ], + 'ScalingActivityId' => ['description' => '移出ALB服务器组,并移出该ALB服务器组内的ECS实例时,对应伸缩活动的ID。仅当`ForceDetach`取值为`true`时,返回该参数。', 'type' => 'string', 'example' => 'asa-2ze6wxj8vsohn6j9****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], ], ], ], ], - 'errorCodes' => [ - 500 => [ - [ - 'errorCode' => 'InternalError', - 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', + 'title' => '移出一个或多个ALB服务器组', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DetachAlbServerGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp1crxor24s28xf1****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE****\\"\\n}","type":"json"}]', - 'title' => '为伸缩组手动添加实例', - 'description' => '- 调用该接口前,请确保满足以下条件:'."\n" - .' - 伸缩组处于Active状态。'."\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" - .' - 只能将未加入伸缩组的托管实例加入到ECS类型伸缩组中。'."\n" - .' - 托管实例不支持配置生命周期挂钩、关联到负载均衡和健康检查功能。'."\n" - .' - 托管实例加入ECS类型伸缩组后,该伸缩组不会管理托管实例的生命周期。'."\n" - .' - 托管实例仅支持手动添加到伸缩组或手动从伸缩组移出,移出后托管实例并不会被释放。'."\n" - .'- 使用该接口需注意以下事项:'."\n" - .' - 当伸缩组没有伸缩活动正在执行时,该接口可以绕过冷却时间(Cooldown)直接执行。'."\n" - .' - 调用该接口返回成功,只是表示弹性伸缩服务接受了该接口调用的请求,伸缩活动可以执行,但不代表伸缩活动能够执行成功。您需要通过返回的ScalingActivityId查看该伸缩活动的执行状态。'."\n" - .' - 如果该接口指定的实例数加上当前伸缩组的实例数(Total Capacity)大于最大值(MaxSize),则接口调用失败。'."\n" - .' - 通过该接口手动添加的ECS实例、ECI实例或托管实例不与伸缩组生效的伸缩配置进行关联。', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-2ze6wxj8vsohn6j9****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], - 'RemoveInstances' => [ - 'summary' => '如果当前伸缩组状态为启用状态,且伸缩组内不存在执行中的伸缩活动,您可以调用API RemoveInstances从一个伸缩组删除一台或多台不再需要的实例。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DetachDBInstances' => [ + 'summary' => '如果您需要减少伸缩组内的RDS实例,可以通过调用API DetachDBInstance移除一个或多个RDS实例,来改变伸缩组与RDS实例的强行绑定关系,增加您使用上的灵活性与实用性。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'high', - 'chargeType' => 'free', - 'abilityTreeCode' => '125337', - 'abilityTreeNodes' => [ - 'FEATUREessDFX5TO', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '125376', + 'abilityTreeNodes' => ['FEATUREessJZ6DNF'], ], '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" - .'- 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', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1igpak5ft1flyp****'], ], [ - 'name' => 'DecreaseDesiredCapacity', + 'name' => 'ForceDetach', 'in' => 'query', - 'schema' => [ - 'description' => '是否修改期望实例数。取值范围:'."\n" - ."\n" - .'- true:从伸缩组删除ECS实例后,期望实例数也减少相应台数。'."\n" - .'- false:从伸缩组删除ECS实例后,期望实例数不会变化。'."\n" - ."\n" - .'默认值:true。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '是否移除RDS实例IP白名单中属于伸缩组内实例的私网IP。取值范围:'."\n" + ."\n" + .'- true:移除实例的私网IP。'."\n" + ."\n" + .'- false:不移除实例的私网IP。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false'], ], [ - 'name' => 'IgnoreInvalidInstance', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '从伸缩组删除一批实例时,是否忽略其中无效的实例。取值范围:'."\n" - .'- true:从伸缩组中删除一批实例时,会忽略其中无效的实例。如果存在无效的实例,并且有效的实例被成功删除时,伸缩活动执行状态也会显示为警告状态,可以从伸缩活动详情查看无效的实例。'."\n" - .'- false:从伸缩组中删除一批实例时,不会忽略无效的实例。如果一批实例中存在无效的实例,请求会报错。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '保证请求幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'InstanceIds', + 'name' => 'DBInstances', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '待删除ECS实例的ID。', + 'description' => 'RDS实例的ID,单次最多支持移除5个RDS实例。'."\n", 'type' => 'array', - 'items' => [ - 'description' => '待删除ECS实例的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'i-28wt4****', - ], + 'items' => ['description' => 'RDS实例的ID,单次最多支持移除5个RDS实例。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'rm-bp12cy3**** '."\n"], 'required' => true, - 'maxItems' => 1000, + 'maxItems' => 5, ], ], [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-qingdao', - ], - ], - [ - 'name' => 'ClientToken', - 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持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', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], ], [ - 'name' => 'LifecycleHookContext', + 'name' => 'RemoveSecurityGroup', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => '生命周期挂钩上下文信息。', - 'type' => 'object', - 'properties' => [ - 'DisableLifecycleHook' => [ - 'description' => '伸缩活动禁用所有生命周期挂钩。取值范围:'."\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, - ], + 'schema' => ['description' => '仅针对`AttachMode`取值为`SecurityGroup`的数据库有效。取值范围:'."\n" + ."\n" + .'- true:会移除伸缩组关联数据库时添加的安全组ID。'."\n" + .'- false:会保留伸缩组关联数据库时添加的安全组ID。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], ], 'responses' => [ @@ -21216,68 +12157,32 @@ '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' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'InstanceId' => [ - 'type' => 'string', - ], - 'Code' => [ - 'type' => 'string', - ], - 'Message' => [ - 'type' => 'string', - ], - ], - ], - ], + '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.', + 'title' => '移除一个或多个RDS实例', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'ess:DetachDBInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp175o6f6ego3r2j****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"IgnoredInstances\\": [\\n {\\n \\"InstanceId\\": \\"\\",\\n \\"Code\\": \\"\\",\\n \\"Message\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => '从一个伸缩组删除一台或多台实例', - 'description' => '- 调用本接口前请确保满足以下条件:'."\n" - .' - 伸缩组处于启用(Active)状态。'."\n" - .' - 伸缩组中没有正在执行的伸缩活动。'."\n" - .'> 当伸缩组没有执行中的伸缩活动时,该接口可以绕过冷却时间(DefaultCooldown)直接执行。'."\n" - ."\n" - .'- 如果一台ECS实例由弹性伸缩自动创建,或者您手动添加但已托管给伸缩组,从伸缩组删除该ECS实例时,ECS实例触发了节省停机效果或者被释放。'."\n" - .'- 如果一台ECS实例由您手动添加且未托管给伸缩组,从伸缩组删除该ECS实例时,ECS实例不会被停止或者释放。'."\n" - .'- 如果当前伸缩组的实例数(TotalCapacity)减去该接口指定的实例数小于伸缩组内最小实例数(MinSize),则调用失败。'."\n" - ."\n" - .'调用该接口返回成功,只是表示弹性伸缩服务接受了该接口调用的请求,伸缩活动可以执行,但不代表伸缩活动能够执行成功。您需要通过返回的ScalingActivityId查看该伸缩活动的执行状态。', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', ], 'DetachInstances' => [ 'summary' => '如果当前伸缩组状态启用状态,且伸缩组内不存在执行中的伸缩活动,您可以调用API DetachInstances从一个伸缩组移出一台或多台ECS实例、ECI实例或托管实例。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -21287,49 +12192,32 @@ 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '125382', - 'abilityTreeNodes' => [ - 'FEATUREessDFX5TO', - ], + 'abilityTreeNodes' => ['FEATUREessDFX5TO'], ], 'parameters' => [ [ 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1igpak5ft1flyp****', - ], + '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', - ], + 'schema' => ['description' => '是否修改期望实例数。取值范围:'."\n" + ."\n" + .'- true:ECS实例、ECI实例或托管实例移出伸缩组后,期望实例数也减少相应数量。'."\n" + .'- false:ECS实例、ECI实例或托管实例移出伸缩组后,期望实例数不会变化。'."\n" + ."\n" + .'默认值:true。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ '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', - ], + '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' => 'InstanceIds', @@ -21338,19 +12226,14 @@ 'schema' => [ 'description' => '待移出ECS实例、ECI实例或托管实例的ID。', 'type' => 'array', - 'items' => [ - 'description' => '待移出ECS实例、ECI实例或托管实例的ID。'."\n" - ."\n" - .'举例如下所示:'."\n" - .'- 待移出的ECS实例ID为`i-bp109k5j3dum1ce6****`。'."\n" - .'- 待移出的ECI实例ID为`eci-bp17gw49eu09yiwm****`。'."\n" - .'- 待移出的托管实例ID为 `mi-d23fsd******`。'."\n" - ."\n" - .'> 一次调用请求只支持移出一种类型的实例。', - 'type' => 'string', - 'required' => false, - 'example' => 'i-bp109k5j3dum1ce6****', - ], + 'items' => ['description' => '待移出ECS实例、ECI实例或托管实例的ID。'."\n" + ."\n" + .'举例如下所示:'."\n" + .'- 待移出的ECS实例ID为`i-bp109k5j3dum1ce6****`。'."\n" + .'- 待移出的ECI实例ID为`eci-bp17gw49eu09yiwm****`。'."\n" + .'- 待移出的托管实例ID为 `mi-d23fsd******`。'."\n" + ."\n" + .'> 一次调用请求只支持移出一种类型的实例。', 'type' => 'string', 'required' => false, 'example' => 'i-bp109k5j3dum1ce6****'], 'required' => true, 'maxItems' => 100, ], @@ -21358,44 +12241,29 @@ [ 'name' => 'LifecycleHook', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组移出ECS实例或ECI实例时,是否触发缩容生命周期挂钩。取值范围:'."\n" - .'- true:触发。'."\n" - .'- false:不触发。'."\n" - ."\n" - .'> 伸缩组移出托管实例时不支持设置该参数项。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '伸缩组移出ECS实例或ECI实例时,是否触发缩容生命周期挂钩。取值范围:'."\n" + .'- true:触发。'."\n" + .'- false:不触发。'."\n" + ."\n" + .'> 伸缩组移出托管实例时不支持设置该参数项。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ 'name' => 'IgnoreInvalidInstance', 'in' => 'query', - 'schema' => [ - 'description' => '从伸缩组移出一批实例时,是否忽略其中无效的实例。取值范围:'."\n" - .'- true:从伸缩组中移出一批实例时,会忽略其中无效的实例。如果存在无效的实例,并且有效的实例被成功移除时,伸缩活动执行状态也会显示为警告状态,可以从伸缩活动详情查看无效的实例。'."\n" - .'- false:从伸缩组中移出一批实例时,不会忽略无效的实例。如果一批实例中存在无效的实例,请求会报错。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '从伸缩组移出一批实例时,是否忽略其中无效的实例。取值范围:'."\n" + .'- true:从伸缩组中移出一批实例时,会忽略其中无效的实例。如果存在无效的实例,并且有效的实例被成功移除时,伸缩活动执行状态也会显示为警告状态,可以从伸缩活动详情查看无效的实例。'."\n" + .'- false:从伸缩组中移出一批实例时,不会忽略无效的实例。如果一批实例中存在无效的实例,请求会报错。'."\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****', - ], + 'schema' => ['description' => '保证请求幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ @@ -21403,29 +12271,17 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'ScalingActivityId' => [ - 'description' => '伸缩活动的ID。', - 'type' => 'string', - 'example' => 'asa-bp1gbswjhjrw8tko****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], + '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.', - ], + ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp1gbswjhjrw8tko****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', 'title' => '从一个伸缩组移出一台或多台实例', 'description' => '- 调用该接口前,请确保满足以下条件:'."\n" .' - 目标伸缩组必须处于启用(Enable)状态。'."\n" @@ -21437,210 +12293,189 @@ .' - 调用该接口移出一台ECS实例、ECI实例或托管实例并不会停止或释放该实例。'."\n" .' - 接口成功调用后,仅表示弹性伸缩服务接受了该接口调用的请求。可以正常触发伸缩活动,但不能保证伸缩活动执行成功,您需要通过返回的ScalingActivityId查看伸缩活动的状态。'."\n" .' - 目标伸缩组的ECS实例、ECI实例或托管实例数量减去当前移出的ECS实例、ECI实例或托管实例数量不能小于伸缩组最小实例数(MinSize),否则会报错。', - ], - 'CreateScheduledTask' => [ - 'summary' => '定时任务是一种预设任务,您可以通过调用API CreateScheduledTask创建一个定时任务,在指定时间执行指定伸缩规则,实现计算资源的自动扩张或收缩,来满足业务需求的同时又能控制成本。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DetachInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp1gbswjhjrw8tko****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'DetachLoadBalancers' => [ + 'summary' => '如果当前弹性伸缩组关联的负载均衡实例不能满足您的需求或者您需要取消关联,调用DetachLoadBalancers,通过指定伸缩组的ID、负载均衡实例的ID、ForceDetach等配置参数,移除一个或多个负载均衡 CLB(原 SLB)实例,同时可以选择异步调用以及是否移除负载均衡实例后端服务器中属于当前伸缩组的ECS实例。该接口仅支持移除负载均衡 CLB(原 SLB)实例。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '125330', - 'abilityTreeNodes' => [ - 'FEATUREess30IPAO', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '125361', + 'abilityTreeNodes' => ['FEATUREess2GK585'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务所属地域的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asg-bp1ffogfdauy0jw0****'], ], [ - 'name' => 'ScheduledTaskName', + 'name' => 'ForceDetach', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务的名称。2~64个英文或中文字符,以数字、大小字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。同一账号同一地域内唯一。 '."\n" - ."\n" - .'默认值为`ScheduledTaskId`的值。', - 'type' => 'string', - 'required' => false, - 'example' => 'scheduled****', - ], + 'schema' => ['description' => '是否移除负载均衡实例后端服务器中属于当前伸缩组的ECS实例。取值范围:'."\n" + ."\n" + .'- true:移除ECS实例。'."\n" + ."\n" + .'- false:不移除ECS实例。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false'], ], [ - 'name' => 'Description', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务的描述信息,长度为2~200个英文或中文字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'Test scheduled task.', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'ScheduledAction', + 'name' => 'Async', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务触发时需要执行的伸缩规则,填写伸缩规则的唯一标识符。'."\n" - ."\n" - .'指定`ScheduledAction`后,定时任务的伸缩方式为选择已有伸缩规则。不支持同时设置`ScheduledAction`和`ScalingGroupId`。', - 'type' => 'string', - 'required' => false, - 'example' => 'ari:acs:ess:cn-hangzhou:140692647****:scalingrule/asr-bp12tcnol686y1ik****', - ], + 'schema' => ['description' => '移除负载均衡实例时,是否采用异步调用的方式。异步调用能保证操作的事务性,即所有操作都执行成功或者某个操作失败时所有操作的执行结果都不生效,建议您采用异步调用。'."\n" + ."\n" + .'取值范围:'."\n" + ."\n" + .'- true:异步调用。请求将返回伸缩活动的ID。'."\n" + ."\n" + .'- false:同步调用。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'RecurrenceEndTime', + 'name' => 'LoadBalancers', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '重复执行定时任务的结束时间。按照ISO8601标准表示,并需要使用UTC时间。'."\n" - ."\n" - .'格式为:YYYY-MM-DDThh:mmZ。不能填写自创建当天起365日后的时间。', - 'type' => 'string', - 'required' => false, - 'example' => '2014-08-17T16:55Z', + 'description' => '负载均衡实例的ID,单次最多支持移除5台负载均衡实例。', + 'type' => 'array', + 'items' => ['description' => '负载均衡实例的ID,单次最多支持移除5台负载均衡实例。', 'type' => 'string', 'required' => false, 'example' => 'lb-2zeur05gfs**** '."\n"], + 'required' => true, + 'maxItems' => 5, ], ], [ - 'name' => 'LaunchTime', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务触发的时间点。 按照ISO8601标准表示,并需要使用UTC时间。格式为:YYYY-MM-DDThh:mmZ。不能填写自创建当天起90日后的时间。 '."\n" - ."\n" - .'- 如果指定了`RecurrenceType`,则此属性指定的时间点,默认为循环执行的时间点。'."\n" - ."\n" - .'- 如果未指定`RecurrenceType`,则按指定的日期和时间执行一次。', - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => '2014-08-17T16:52Z', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], ], - [ - 'name' => 'RecurrenceType', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '重复执行定时任务的类型,取值范围: '."\n" - .'- Daily:每多少天重复执行一次定时任务。 '."\n" - .'- Weekly:每周指定几天重复执行一次定时任务。 '."\n" - .'- Monthly:每月内指定几天重复执行一次定时任务。 '."\n" - .'- Cron:按照指定的Cron表达式执行定时任务。 '."\n" - ."\n" - .'您需要同时指定`RecurrenceType`和`RecurrenceValue`。 ', - 'type' => 'string', - 'required' => false, - 'example' => 'Daily', + 'description' => '移除负载均衡的返回信息集合。', + 'type' => 'object', + 'properties' => [ + 'ScalingActivityId' => ['description' => '伸缩活动的ID。仅当async=true时返回该值。您可使用API describescalingactivities遍历查询返回的伸缩活动id,查看伸缩活动的执行状态。', 'type' => 'string', 'example' => 'asa-bp140qd7mak8k63f****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], ], ], - [ - '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', + ], + 'title' => '移除一个或多个负载均衡CLB实例', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DetachLoadBalancers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp140qd7mak8k63f****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'DetachServerGroups' => [ + 'summary' => '对于需要动态调整实例数量来应对业务变化负载以及确保应用程序的高可用性场景,调用API DetachServerGroups从伸缩组移除一个或多个负载均衡服务器组,支持的服务器组类型包括应用型负载均衡ALB、网络型负载均衡NLB和网关型负载均衡GWLB,可以实现对负载均衡策略的动态调整,并帮助提高系统的高可用性。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'TaskEnabled', - 'in' => 'query', - 'schema' => [ - 'description' => '是否启动定时任务。 '."\n" - .'- true:启动任务。'."\n" - .'- false:停止任务 。'."\n" - ."\n" - .'默认值:true。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'AK' => [], ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '166343', + 'abilityTreeNodes' => ['FEATUREess2GK585'], + ], + 'parameters' => [ [ - 'name' => 'LaunchExpirationTime', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务触发操作失败后,在此时间内重试。单位为秒,取值范围:0~1800。'."\n" - ."\n" - .'默认值:600。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '86400', - 'minimum' => '0', - 'example' => '600', - 'default' => '600', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'MinValue', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的最小数量。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '0', - ], + 'schema' => ['description' => '伸缩组ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'MaxValue', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的最大数量。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '保证请求幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'DesiredCapacity', + 'name' => 'ForceDetach', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的期望实例数。'."\n" - ."\n" - .'> 伸缩组必须支持设置期望实例数,即在创建该伸缩组时指定了`DesiredCapacity`。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '是否从待移除服务器组中移除当前伸缩组内的ECS实例或ECI实例。 '."\n" + ."\n" + .'- true:移除。'."\n" + ."\n" + .'- false:不移除。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'ServerGroups', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '定时任务触发时需要修改实例数量的伸缩组,填写伸缩组ID。'."\n" - ."\n" - .'指定`ScalingGroupId`后,定时任务的伸缩方式为设置伸缩组内实例数量,您需要为`MinValue`、`MaxValue`和`DesiredCapacity`中至少一个参数指定数量。不支持同时设置`ScheduledAction`和`ScalingGroupId`。', - 'type' => 'string', - 'required' => false, - 'example' => 'asg-bp18p2yfxow2dloq****', + '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" + .'>ALB和NLB类型负载均衡该参数为必填参数,GWLB类型负载均衡不能设置该参数且默认值为6081。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '22'], + ], + 'required' => false, + ], + 'required' => true, + 'maxItems' => 100, ], ], ], @@ -21649,241 +12484,281 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'ScheduledTaskId' => [ - 'description' => '定时任务的ID,由系统生成,全局唯一。', - 'type' => 'string', - 'example' => 'edRtShc57WGXdt8TlPbr****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], + 'ScalingActivityId' => ['description' => '移出负载均衡服务器组,并移出该服务器组内的ECS实例或ECI实例时,伸缩活动的ID。'."\n" + .'> 仅当`ForceDetach`取值为`true`时,返回该参数。', 'type' => 'string', 'example' => 'asa-bp1gbswjhjrw8tko****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6EF9BFEE-FE07-4627-B8FB-14326FB9****'], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScheduledTaskId\\": \\"edRtShc57WGXdt8TlPbr****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '创建一个定时任务', - 'description' => '- 由于伸缩组正在发生伸缩活动或者伸缩组停用等原因,导致定时任务触发执行伸缩规则失败后,在`LaunchExpirationTime`内,定时任务会自动重试触发,否则放弃本次定时触发。'."\n" - .'- 如果多个定时任务在相近的时间内触发执行同一个伸缩组的伸缩规则,则触发的伸缩活动详情如下:'."\n" - .' - **已设置期望实例数的伸缩组**:多个定时任务触发的伸缩活动属于并行伸缩活动。例如,相近时间内,执行多个定时任务后,伸缩组可同时触发多个并行伸缩活动。'."\n" - .' - **未设置期望实例数的伸缩组**: 最早触发的定时任务会先执行伸缩活动。由于同一个伸缩组同一时刻内只能有一个伸缩活动,排在后面的定时任务会在`LaunchExpirationTime`内自动重试定时触发。如果上一个伸缩活动完成之后,排在后面的定时任务还在`LaunchExpirationTime`内重试,则执行该定时任务的伸缩规则并触发相应的伸缩活动。'."\n" - .'- 定时任务支持以下两种伸缩方式:'."\n" - ."\n" - .' - 通过ScheduledAction参数设置需要执行的伸缩规则。'."\n" - .' - 通过ScalingGroupId参数设置伸缩组内实例数量。'."\n" - .' >不支持同时设置ScheduledAction 和 ScalingGroupId。', - ], - 'ModifyScheduledTask' => [ - 'summary' => '如果当前伸缩组的定时任务不能满足业务需求,您可以调用ModifyScheduledTask接口,通过指定定时任务的ID修改已有定时任务的配置参数:需要执行的伸缩规则、伸缩组内实例数量、任务执行频率、重试策略等。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp1gbswjhjrw8tko****\\",\\n \\"RequestId\\": \\"6EF9BFEE-FE07-4627-B8FB-14326FB9****\\"\\n}","type":"json"}]', + 'title' => '移除一个或多个负载均衡服务器组', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DetachServerGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + ], + 'DetachVServerGroups' => [ + 'summary' => '伸缩组支持关联负载均衡实例,可以有效增强伸缩组的服务能力。如果您的业务暂不需要通过负载均衡实例将访问流量分发到伸缩组内的多个实例中去,您可以调用API DetachVServerGroups移除一个或者多个虚拟服务器组。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '125370', - 'abilityTreeNodes' => [ - 'FEATUREessAWW1X1', - ], + 'abilityTreeCode' => '125323', + 'abilityTreeNodes' => ['FEATUREessJZ6DNF'], ], 'parameters' => [ [ - 'name' => 'ScheduledTaskId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'edRtShc57WGXdt8TlPbr****', - ], + 'schema' => ['description' => '伸缩组所属地域的ID,例如cn-hangzhou、cn-shanghai。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ScheduledTaskName', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务的名称。2-64个字符,以大小写字母、数字或中文开头,可包含(.)、下划线(_)或中划线(-)。同一账号同一地域内唯一。', - 'type' => 'string', - 'required' => false, - 'example' => 'scheduled****', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1fo0dbtsbmqa9h****'], ], [ - 'name' => 'Description', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务的描述信息。2-200个字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'Test scheduled task.', - ], + 'schema' => ['description' => '保证请求幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'ScheduledAction', + 'name' => 'ForceDetach', 'in' => 'query', - 'schema' => [ - 'description' => '如果伸缩方式为选择已有伸缩规则时,才会出现该配置项,请您选择已创建的伸缩规则,填写伸缩规则的唯一标识符,可在伸缩规则详情页查看。'."\n" - ."\n" - .'> 不支持同时设置`ScheduledAction`和`ScalingGroupId`。', - 'type' => 'string', - 'required' => false, - 'example' => 'ari:acs:ess:cn-hangzhou:14069264****:scalingrule/asr-bp12tcnol686y1ik****', - ], + 'schema' => ['description' => '是否从待移除虚拟服务器组中移除当前伸缩组内的实例。 '."\n" + ."\n" + .'- true:移除。如果该参数取值为`true`,则从伸缩组中移除负载均衡实例时,系统会将负载均衡实例后端服务器上与伸缩组关联的实例移除。'."\n" + ."\n" + .'- false:不移除。如果该参数取值为`false`,则从伸缩组中移除负载均衡实例时,系统不会从负载均衡实例后端服务器上移除与伸缩组关联的实例。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false'], ], [ - 'name' => 'RecurrenceEndTime', + 'name' => 'VServerGroups', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '重复执行定时任务的结束时间。按照ISO8601标准表示,并需要使用UTC时间。格式为:YYYY-MM-DDThh:mmZ。不能填写自修改当天起365日后的时间。', - 'type' => 'string', - 'required' => false, - 'example' => '2014-08-20T16:55Z', + 'description' => '待移出的虚拟服务器组的信息集合。', + 'type' => 'array', + 'items' => [ + 'description' => '待移出的虚拟服务器组的信息集合。', + 'type' => 'object', + 'properties' => [ + 'VServerGroupAttributes' => [ + 'description' => '后端服务器组属性。', + 'type' => 'array', + 'items' => [ + 'description' => '后端服务器组属性。', + 'type' => 'object', + 'properties' => [ + 'VServerGroupId' => ['description' => '虚拟服务器组的ID。', 'type' => 'string', 'required' => false, 'example' => 'rsp-bp1jp1rge****'], + 'Port' => ['description' => '弹性伸缩将ECS实例或ECI实例添加到虚拟服务器组时使用的端口号,取值范围:1~65535。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '22'], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 100, + ], + 'LoadBalancerId' => ['description' => '虚拟服务器组所属负载均衡实例的ID。'."\n" + .'>支持最多一次从伸缩组移除5个负载均衡实例。', 'type' => 'string', 'required' => false, 'example' => 'lb-bp1p90y3ya9h8s62d****'], + ], + 'required' => false, + ], + 'required' => true, + 'maxItems' => 100, ], ], - [ - 'name' => 'LaunchTime', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '定时任务执行的时间点。按照ISO8601标准表示,并需要使用UTC时间。格式为:YYYY-MM-DDThh:mmZ。不能填写自修改当天起90日后的时间。'."\n" - ."\n" - .'- 如果指定了`RecurrenceType`,则此属性指定的时间点,默认为循环执行的时间点。'."\n" - ."\n" - .'- 如果未指定`RecurrenceType`,则按指定的日期和时间执行一次。', - 'type' => 'string', - 'required' => false, - 'example' => '2014-08-18T10:52Z', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], + ], + ], + ], + 'title' => '移除一个或者多个虚拟服务器组', + 'description' => '- 确定待移除的虚拟服务器组时,需要同时指定以下参数:'."\n" + ."\n" + .' - 负载均衡实例ID(LoadBalancerId)'."\n" + ."\n" + .' - 虚拟服务器组ID(VServerGroupId)'."\n" + ."\n" + .' - 虚拟服务器组端口号(Port)'."\n" + ."\n" + .'- 如果请求参数中的虚拟服务器组与伸缩组中的虚拟服务器组相匹配,则移除该虚拟服务器组。如果未能匹配,则忽略移除请求,且接口不报错。'."\n" + ."\n" + .'- 如果移除伸缩组的负载均衡实例时,您需要确认该负载均衡实例不再向伸缩组内实例分发请求,避免造成服务请求丢失的情况。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DetachVServerGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'DisableAlarm' => [ + 'summary' => '针对具有突发性或时间上不易预测的业务,您可以通过报警任务关联云监控指标管理业务变化。弹性伸缩在统计值满足报警条件时触发报警,并在生效周期内自动执行伸缩规则,动态调整伸缩组内的ECS实例或ECI实例数量。如果您暂时不需要一个报警任务触发伸缩活动,可以调用API DisableAlarm停用该报警任务。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '125352', + 'abilityTreeNodes' => ['FEATUREessBFLAJQ'], + ], + 'parameters' => [ [ - 'name' => 'RecurrenceType', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '设置定时任务重复的周期类型,支持按日、周、月等周期性执行。取值范围:'."\n" - .' '."\n" - .'- Daily:每多少天重复执行一次定时任务。'."\n" - .'- Weekly:每周指定几天重复执行一次定时任务。'."\n" - .'- Monthly:每月内指定几天重复执行一次定时任务。'."\n" - .'- Cron:按照指定的Cron表达式执行定时任务。'."\n" - ."\n" - .'修改后,`RecurrenceType`和`RecurrenceValue`需要同时有效。', - 'type' => 'string', - 'required' => false, - 'example' => 'Daily', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-qingdao'], ], [ - 'name' => 'RecurrenceValue', + 'name' => 'AlarmTaskId', 'in' => 'query', + 'schema' => ['description' => '报警任务ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****'], + ], + ], + 'responses' => [ + 200 => [ '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', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '086EFCD4-C76F-4DC6-9EE9-0D9B711E****'], + ], ], ], - [ - 'name' => 'TaskEnabled', - 'in' => 'query', - 'schema' => [ - 'description' => '是否启动定时任务。取值范围:'."\n" - ."\n" - .'- true:启动定时任务。'."\n" - .'- false:停止定时任务。'."\n" - ."\n" - .'默认值:true。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', + ], + 'title' => '停用一个报警任务', + 'description' => '停用报警任务前,报警任务必须处于`正常`、`报警`或`数据不足`状态。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DisableAlarm', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"086EFCD4-C76F-4DC6-9EE9-0D9B711E****\\"\\n}","type":"json"}]', + ], + 'DisableScalingGroup' => [ + 'summary' => '如果伸缩组处于启用状态,并且您暂时不需要该伸缩组执行伸缩活动,您可以调用API DisableScalingGroup停用该伸缩组。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'LaunchExpirationTime', - 'in' => 'query', - 'schema' => [ - 'description' => '定时任务触发操作失败后,弹性伸缩将在重试过期时间内继续尝试执行定时任务。单位为秒,取值范围:0~1800。'."\n" - ."\n" - .'默认值:600。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '86400', - 'minimum' => '0', - 'example' => '600', - ], + 'AK' => [], ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '125389', + 'abilityTreeNodes' => ['FEATUREessUCEVTM'], + ], + 'parameters' => [ [ - 'name' => 'MinValue', + 'name' => 'ScalingGroupId', 'in' => 'query', + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的最小数量。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '0', + 'description' => '请求ID。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], ], ], - [ - 'name' => 'MaxValue', - 'in' => 'query', - 'schema' => [ - 'description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的最大数量。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', + ], + 'title' => '停用一个伸缩组', + 'description' => '停用一个指定的伸缩组前,您需要注意以下事项:'."\n" + ."\n" + .'- 停用伸缩组之前发生的伸缩活动,会继续完成,而之后触发的伸缩活动会被拒绝。'."\n" + ."\n" + .'- 当伸缩组为Active状态时才可以调用该接口。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DisableScalingGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'EnableAlarm' => [ + 'summary' => '针对具有突发性或时间上不易预测的业务,您可以通过报警任务关联云监控指标管理业务变化。弹性伸缩在统计值满足报警条件时触发报警,并在生效周期内自动执行伸缩规则,动态调整伸缩组内的ECS实例或ECI实例数量。如果您需要继续使用一个已停用的报警任务,可以调用API EnableAlarm启用一个报警任务。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'DesiredCapacity', - 'in' => 'query', - 'schema' => [ - 'description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的期望实例数。'."\n" - .'> 伸缩组必须支持设置期望实例数,即在创建该伸缩组时指定了`DesiredCapacity`。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'AK' => [], ], + ], + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '125397', + 'abilityTreeNodes' => ['FEATUREessBFLAJQ'], + ], + 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '如果伸缩方式为设置伸缩组内实例数量,才会出现该配置项,请您填写定时任务触发时需要修改实例数量的伸缩组ID。指定`ScalingGroupId`后,您需要为`MinValue`、`MaxValue`和`DesiredCapacity`中至少一个参数指定数量。'."\n" - ."\n" - .'> 不支持同时设置`ScheduledAction`和`ScalingGroupId`。', - 'type' => 'string', - 'required' => false, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-qingdao'], ], [ - 'name' => 'RegionId', + 'name' => 'AlarmTaskId', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '报警任务ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****'], ], ], 'responses' => [ @@ -21891,204 +12766,257 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '688B18B8-FB1E-42EB-A1ED-7F55B090****'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'Throttling', - 'errorMessage' => 'Request was denied due to request throttling.', + 'title' => '启用一个报警任务', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:EnableAlarm', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '修改一个定时任务的信息', - 'description' => '定时任务支持两种伸缩方式:'."\n" - .'- 通过`ScheduledAction`参数设置需要执行的伸缩规则。'."\n" - .'- 通过`ScalingGroupId`参数设置伸缩组内实例数量。'."\n" - .'> 不支持同时设置`ScheduledAction`和`ScalingGroupId`。', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"688B18B8-FB1E-42EB-A1ED-7F55B090****\\"\\n}","type":"json"}]', ], - 'DescribeScheduledTasks' => [ - 'summary' => '定时任务是一种预设任务,可以在指定时间执行指定的伸缩规则,实现计算资源的自动扩缩容。定时任务创建完成后,您可以调用API DescribeScheduledTasks查询定时任务的详细信息,例如,定时任务的触发时间点、定时任务总数、执行定时任务的伸缩组的ID等。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'EnableScalingGroup' => [ + 'summary' => '如果伸缩组处于停用状态,并且该伸缩组已通过指定启动模板方式或者创建并启用伸缩配置方式指定了实例配置来源,您可以调用API EnableScalingGroup启用一个伸缩组,通过弹性伸缩来自动调整您的业务计算能力(即实例数量)。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '125344', - 'abilityTreeNodes' => [ - 'FEATUREessAWW1X1', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '125366', + 'abilityTreeNodes' => ['FEATUREessUCEVTM'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务所属伸缩组的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp14wlu85wrpchm0****'], ], [ - 'name' => 'PageNumber', + 'name' => 'ActiveScalingConfigurationId', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务列表的页码,起始值:1。'."\n" - ."\n" - .'默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => '需要在伸缩组内启用的伸缩配置的ID。', 'type' => 'string', 'required' => false, 'example' => 'asc-bp1ffogfdauy0nu5****'], ], [ - 'name' => 'PageSize', + 'name' => 'LaunchTemplateId', 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时设置的每页行数,最大值:50。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '50', - 'example' => '50', - 'default' => '10', - ], + 'schema' => ['description' => '实例启动模板的ID,用于指定伸缩组从实例启动模板获取启动配置信息。', 'type' => 'string', 'required' => false, 'example' => 'lt-m5e3ofjr1zn1aw7****'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'LaunchTemplateVersion', + 'in' => 'query', + 'schema' => ['description' => '实例启动模板的版本。取值范围: '."\n" + ."\n" + .'- 固定的模板版本号。'."\n" + .'- Default:始终使用模板默认版本。'."\n" + .'- Latest:始终使用模板最新版本。'."\n" + .' ', 'type' => 'string', 'required' => false, 'example' => 'Default'], + ], + [ + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '执行定时任务的伸缩组的ID。', - 'type' => 'string', + 'description' => '启用伸缩组后需要加入伸缩组的ECS实例的ID。'."\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" + ."\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**** '."\n"], 'required' => false, - 'example' => 'asg-bp1bo5tca4m56nap****', + 'maxItems' => 100, ], ], [ - 'name' => 'ScheduledActions', + 'name' => 'LoadBalancerWeights', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '仅当定时任务指定了伸缩规则时,定时任务触发时使用的伸缩规则。', + 'description' => '加入伸缩组中ECS实例或ECI实例作为后端服务器的权重。'."\n" + ."\n" + .'默认值:50。', 'type' => 'array', - 'items' => [ - 'description' => '仅当定时任务指定了伸缩规则时,定时任务触发时使用的伸缩规则。'."\n" - ."\n" - .'取值为伸缩规则的唯一标识符(ScalingRuleAri)。', - 'type' => 'string', - 'required' => false, - 'example' => 'ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp1id5rhu8edp7kd****', - ], + 'items' => ['description' => '加入伸缩组中ECS实例或ECI实例作为后端服务器的权重。'."\n" + ."\n" + .'默认值:50。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50'], 'required' => false, - 'maxItems' => 20, + 'maxItems' => 100, ], ], [ - 'name' => 'ScheduledTaskIds', + 'name' => 'LaunchTemplateOverrides', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '待查询定时任务的ID。', + 'description' => '扩展启动模板的实例规格信息。', 'type' => 'array', 'items' => [ - 'description' => '待查询定时任务的ID。', - 'type' => 'string', + 'description' => '扩展启动模板的实例规格信息。', + 'type' => 'object', + 'properties' => [ + 'InstanceType' => ['description' => '当您需要伸缩组按照实例规格容量进行伸缩时,请同时指定本参数和`LaunchTemplateOverrides.WeightedCapacity`。'."\n" + ."\n" + .'本参数用于指定实例规格,会覆盖启动模板中的实例规格。'."\n" + ."\n" + .'> 仅当LaunchTemplateId参数指定了启动模板时,本参数生效。'."\n" + ."\n" + .'InstanceType的取值范围:在售的ECS实例规格。', 'type' => 'string', 'required' => false, 'example' => 'ecs.c5.xlarge'], + 'WeightedCapacity' => ['description' => '当您需要伸缩组按照实例规格容量进行伸缩时,指定`LaunchTemplateOverrides.InstanceType`后,再指定本参数。'."\n" + ."\n" + .'本参数用于指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。权重越大,满足期望容量所需的本实例规格的实例数量越少。'."\n" + ."\n" + .'由于每个实例规格的vCPU个数、内存大小等性能指标会有差异,您可以根据自身需求,给不同的实例规格配置不同的权重。'."\n" + ."\n" + .'例如:'."\n" + ."\n" + .'- 当前容量:0。'."\n" + ."\n" + .'- 期望容量:6。'."\n" + ."\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, - 'example' => 'edRtShc57WGXdt8TlPbr****', ], 'required' => false, - 'maxItems' => 20, + 'maxItems' => 10, ], ], [ - 'name' => 'ScheduledTaskNames', + 'name' => 'RegionId', 'in' => 'query', - 'style' => 'repeatList', + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '待查询定时任务的名称。', - 'type' => 'array', - 'items' => [ - 'description' => '待查询定时任务的名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'scheduled****', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], + ], + ], + ], + 'title' => '启用一个伸缩组', + 'description' => '- 当伸缩组处于Inactive状态,且伸缩组配置了组内实例的配置信息来源(伸缩配置、启动模板或者在创建伸缩组时指定的ECS实例)时,才可以调用该接口来启用伸缩组。否则,会调用失败。'."\n" + ."\n" + .' > 一个伸缩组在同一时刻有且只有一个生效的实例配置信息来源。在调用接口时,您可以为伸缩组指定伸缩配置或启动模板。如果调用该接口前您已经为伸缩组配置了实例配置信息来源,在调用时再指定伸缩配置或启动模板会覆盖原有的配置信息。'."\n" + ."\n" + .'- 当该接口指定了加入伸缩组的ECS实例(InstanceId.N),调用该接口后,弹性伸缩会判断在加入ECS实例后伸缩组的ECS实例数量(Total Capacity)是否在最小值(MinSize)和最大值(MaxSize)之间:'."\n" + ."\n" + .' - 如果伸缩组的Total Capacity小于MinSize,调用成功后,弹性伸缩服务会自动创建差额的按量付费的ECS实例。例如:创建伸缩组时,指定MinSize为5,在启用伸缩组的InstanceId.N参数中指定2台已有ECS实例,则弹性伸缩在加入2台已有ECS实例之后,再自动创建3台ECS实例。'."\n" + ."\n" + .' - 如果伸缩组的Total Capacity大于MaxSize,则调用失败。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:EnableScalingGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], - 'required' => false, - 'maxItems' => 20, ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'EnterStandby' => [ + 'summary' => '将伸缩组内的ECS实例设置为备用状态。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '125322', + 'abilityTreeNodes' => ['FEATUREessBFHJ1B'], + ], + 'parameters' => [ [ - 'name' => 'TaskName', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '任务名称,支持根据关键字模糊搜索。', - 'type' => 'string', - 'required' => false, - 'example' => 'scheduled****', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1fo0dbtsbmqa9h****'], ], [ - 'name' => 'RecurrenceType', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '重复执行定时任务的类型,取值范围: '."\n" - .'- Daily:每多少天重复执行一次定时任务。 '."\n" - .'- Weekly:每周指定几天重复执行一次定时任务。 '."\n" - .'- Monthly:每月内指定几天重复执行一次定时任务。 '."\n" - .'- Cron:按照指定的Cron表达式执行定时任务。', - 'type' => 'string', - 'required' => false, - 'example' => 'Weekly', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25965~~) 。'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'RecurrenceValue', + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '重复执行定时任务的数值。'."\n" - ."\n" - .'仅支持当RecurrenceType为Weekly时指定此字段,可以填入多个值,填多个值时使用半角逗号(,)分隔。例如,周日、周一、周二、周三、周四、周五、周六的值依次为:0,1,2,3,4,5,6。', - 'type' => 'string', - 'required' => false, - 'example' => '1,2,3', + 'description' => 'ECS实例的ID。', + 'type' => 'array', + 'items' => ['description' => 'ECS实例的ID。', 'type' => 'string', 'required' => false, 'example' => 'i-28wt4****'], + 'required' => true, + 'maxItems' => 20, ], ], [ - 'name' => 'TaskEnabled', + 'name' => 'Async', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务是否已启动。'."\n" - .'- true:任务已启动。'."\n" - .'- false:任务已停止。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '是否采用异步任务方式执行。取值范围:'."\n" + ."\n" + .'- true:异步任务执行。'."\n" + .'- false:同步执行。'."\n" + ."\n" + .'默认值: false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], ], 'responses' => [ @@ -22096,135 +13024,39 @@ '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' => [ - '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', - ], - ], - ], - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'ScalingActivityId' => ['title' => '异步调用伸缩活动ID', 'description' => '调用伸缩活动ID。', 'type' => 'string', 'example' => 'asa-2zeb04oym05qaceq****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 1,\\n \\"ScheduledTasks\\": [\\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}","type":"json"}]', - 'title' => '查询定时任务的信息', - 'description' => '您可以通过定时任务的ID、定时任务的名称、定时任务执行的伸缩规则等查询定时任务。', - ], - 'DeleteScheduledTask' => [ - 'summary' => '针对业务量的变化时间可预测的场景,您可以通过配置定时任务,在业务高峰到达前已准备好充足的计算资源,或者在业务高峰后及时释放空闲的计算资源,满足业务需求的同时又能控制成本。如果当前定时任务不再使用,您也可以调用API DeleteScheduledTask直接删除该定时任务。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '将伸缩组内的ECS实例设置为备用状态', + 'description' => '- 如果伸缩组关联了负载均衡实例,会把负载均衡中对应的ECS实例权重设置为0。'."\n" + .'- 当ECS实例处于备用状态时,如果您手动移出伸缩组并释放实例,可以正常移出伸缩组并释放。'."\n" + .'- 对于伸缩组数量变化或监控任务触发的自动缩容的伸缩活动,不会移出处于备用状态的ECS实例。'."\n" + .'- 当ECS实例处于备用状态时,ECS实例如果处于非健康状态(例如停止中、重启中等),ECS实例的健康检查状态不会被更新,并且不会触发移出不健康实例的伸缩活动,只有ECS实例退出备用状态后才会重新更新健康检查状态。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:EnterStandby', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingActivityId\\": \\"asa-2zeb04oym05qaceq****\\"\\n}","type":"json"}]', + ], + 'ExecuteScalingRule' => [ + 'summary' => '执行伸缩规则可以实现手动或自动调整ECS实例或ECI实例资源。其中,对于简单规则和步进规则,您才可以调用API ExecuteScalingRule执行一条伸缩规则,而对于目标追踪规则和预测规则,弹性伸缩会自动执行伸缩规则。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -22232,32 +13064,39 @@ ], 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '125331', - 'abilityTreeNodes' => [ - 'FEATUREess30IPAO', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '125340', + 'abilityTreeNodes' => ['FEATUREessKCZYL8'], ], 'parameters' => [ [ - 'name' => 'ScheduledTaskId', + 'name' => 'ScalingRuleAri', 'in' => 'query', - 'schema' => [ - 'description' => '定时任务的ID。由系统生成,全局唯一。', - 'type' => 'string', - 'required' => true, - 'example' => 'edRtShc57WGXdt8TlPbr****', - ], + 'schema' => ['description' => '伸缩规则唯一标识符。'."\n" + ."\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', - ], + 'schema' => ['description' => '伸缩组所属地域的ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], ], ], 'responses' => [ @@ -22265,1525 +13104,1761 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], + 'ScalingActivityId' => ['description' => '伸缩活动的ID。', 'type' => 'string', 'example' => 'asa-bp13o672yeautiil****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '删除一个定时任务', - ], - 'CreateAlarm' => [ - 'summary' => '针对具有突发性或时间上不易预测的业务,调用CreateAlarm创建一个报警任务,该任务关联云监控指标后,可以动态调整伸缩组内的ECS实例或ECI实例数量,并实时监控实例指标,帮助您更好地管理和维护云资源。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '执行一条伸缩规则', + 'description' => '调用该接口前请确保满足以下条件:'."\n" + .'- 伸缩组处于Active状态。'."\n" + .'- 伸缩组没有执行中的伸缩活动。'."\n" + ."\n" + .'当伸缩组没有执行中的伸缩活动时,该接口可以绕过冷却时间(Cooldown)直接执行伸缩活动。'."\n" + ."\n" + .'调用该接口返回成功,只是表示弹性伸缩服务接受了该接口的调用请求,可以执行伸缩活动,但不代表伸缩活动能够执行成功。您需要通过返回的ScalingActivityId查看该伸缩活动的执行状态。'."\n" + ."\n" + .'如果伸缩规则需要增加的ECS实例数加上当前伸缩组的实例数(Total Capacity)大于MaxSize,则按Total Capacity = MaxSize执行伸缩活动。'."\n" + ."\n" + .'如果当前伸缩组的实例数(Total Capacity)减去伸缩规则需要减少的ECS实例数小于MinSize,则按Total Capacity = MinSize执行伸缩活动。'."\n" + ."\n" + .'单次调整的ECS实例台数存在限制,请参见CreateScalingRule中的AdjustmentValue参数说明。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ExecuteScalingRule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp13o672yeautiil****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'ExitStandby' => [ + 'summary' => '伸缩组内发生伸缩活动时,不会移出处于备用状态的ECS实例或ECI实例。如果您需要再次使用该实例参与伸缩活动,可以调用API ExitStandby将伸缩组中处于备用状态的ECS实例或ECI实例移出备用状态并转化为运行状态。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '125363', - 'abilityTreeNodes' => [ - 'FEATUREessBFLAJQ', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '125359', + 'abilityTreeNodes' => ['FEATUREessBFHJ1B'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1fo0dbtsbmqa9h****'], ], [ - 'name' => 'Name', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '报警任务的名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestAlarmTask', - ], + 'schema' => ['description' => '保证请求幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'Description', + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '报警任务的描述。', - 'type' => 'string', - 'required' => false, - 'example' => 'Test alarm task.', + 'description' => 'ECS实例的ID。取值可以由多个实例ID组成一个JSON数组,最多支持20个ID,ID之间用半角逗号(,)隔开。', + 'type' => 'array', + 'items' => ['description' => 'ECS实例的ID。取值可以由多个实例ID组成一个JSON数组,最多支持20个ID,ID之间用半角逗号(,)隔开。', 'type' => 'string', 'required' => false, 'example' => 'i-28wt4****'], + 'required' => true, + 'maxItems' => 20, ], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'Async', 'in' => 'query', - 'schema' => [ - 'description' => '报警任务关联的伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '是否采用异步任务方式执行。取值范围:'."\n" + ."\n" + .'- true:异步任务执行。'."\n" + .'- false:同步任务执行。'."\n" + ."\n" + .'默认值: false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'MetricName', + 'name' => 'RegionId', 'in' => 'query', + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], + ], + ], + 'responses' => [ + 200 => [ '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', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'ScalingActivityId' => ['title' => '异步调用伸缩活动ID', 'description' => '伸缩活动ID。', 'type' => 'string', 'example' => 'asa-2zeb04oym05qaceq****'], + ], + ], + ], + ], + 'title' => '使备用状态实例进入运行状态', + 'description' => '伸缩组中的实例移出备用状态后,您需要注意以下事项:'."\n" + ."\n" + .'- ECS实例或ECI实例会转为运行状态(即恢复服务状态)。'."\n" + ."\n" + .'- 如果ECS实例或ECI实例所在伸缩组关联了负载均衡实例,则该ECS实例或ECI实例再次加入负载均衡实例时,权重默认为50。'."\n" + ."\n" + .'- 如果ECS实例或ECI实例被停止或者重启时,则该ECS实例或ECI实例会重新更新健康检查状态。'."\n" + ."\n" + .'- 当伸缩组发生收缩的伸缩活动时,弹性伸缩可以从伸缩组移出该ECS实例或ECI实例。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ExitStandby', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingActivityId\\": \\"asa-2zeb04oym05qaceq****\\"\\n}","type":"json"}]', + ], + 'ListTagKeys' => [ + 'summary' => '调用API ListTagKeys查询弹性伸缩资源标签键的列表,有利于您对弹性伸缩资源进行分类、识别以及监控等,提供更灵活和便捷的资源管理。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'MetricType', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREess7569XW'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '监控项类型。取值范围:'."\n" - .'- system:使用云监控系统指标。'."\n" - .'- custom:使用上报到云监控的自定义指标。', - 'type' => 'string', - 'required' => false, - 'example' => 'system', - 'default' => 'system', - ], + 'schema' => ['description' => '弹性伸缩资源所属地域的ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], + ], + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => ['description' => '弹性伸缩资源类型。取值:`scalinggroup`,表示标签绑定的对象是伸缩组。', 'type' => 'string', 'required' => true, 'example' => 'scalinggroup'], ], [ - 'name' => 'Period', + 'name' => 'NextToken', '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', - ], + 'schema' => ['description' => '下一个查询开始的Token,该参数值为空表示没有下一个。', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a****'], ], [ - 'name' => 'Statistics', + 'name' => 'PageSize', 'in' => 'query', + 'schema' => ['description' => '分页查询时设置的每页行数。最大值:50。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '统计监控项数据的方法。取值范围:'."\n" - ."\n" - .'- Average:平均值。'."\n" - .'- Minimum:最小值。'."\n" - .'- Maximum:最大值。'."\n" - ."\n" - .'默认值:Average。', - 'type' => 'string', - 'required' => false, - 'example' => 'Average', - 'default' => 'Average', + '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' => [ + 'description' => '标签键信息。', + 'type' => 'array', + 'items' => ['description' => '标签键信息。', 'type' => 'string', 'example' => 'ESS'], + ], + ], ], ], - [ - 'name' => 'Threshold', - 'in' => 'query', - 'schema' => [ - 'description' => '监控指标的阈值,满足阈值表达式达到指定次数即触发执行伸缩规则。', - 'type' => 'number', - 'format' => 'float', - 'required' => false, - 'example' => '80.0', + ], + 'title' => '查询弹性伸缩资源标签键的列表', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:ListTagKeys', + 'authLevel' => '', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"RequestId\\": \\"DC09A6AA-2713-4E10-A2E9-E6C5C43A****\\",\\n \\"PageSize\\": 10,\\n \\"Keys\\": [\\n \\"ESS\\"\\n ]\\n}","type":"json"}]', + ], + 'ListTagResources' => [ + 'summary' => '调用API ListTagResources查询一个或多个弹性伸缩资源已经绑定的标签列表,可以帮助您更好地分类和管理弹性伸缩资源的使用情况,实现资源的自动化管理和权限控制等目标。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'ComparisonOperator', - 'in' => 'query', - 'schema' => [ - 'description' => '监控项统计值与阈值的比较符,用于指定监控项统计值与阈值在什么关系下满足条件。取值范围:'."\n" - ."\n" - .'- 监控项统计值大于等于阈值。取值:>=。'."\n" - .'- 监控项统计值小于等于阈值。取值:<=。'."\n" - .'- 监控项统计值大于阈值。取值:>。'."\n" - .'- 监控项统计值小于阈值。取值:<。'."\n" - ."\n" - .'默认值:>=。', - 'type' => 'string', - 'required' => false, - 'example' => '>=', - 'default' => '>=', - ], + 'AK' => [], ], + ], + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '125324', + 'abilityTreeNodes' => ['FEATUREess7569XW'], + ], + 'parameters' => [ [ - 'name' => 'EvaluationCount', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '触发执行伸缩规则需要满足阈值表达式的次数,例如,CPU使用率平均值3次的统计结果均大于等于80%。'."\n" - ."\n" - .'默认值:3。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '3', - 'default' => '3', - ], + 'schema' => ['description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~2679950~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'GroupId', + 'name' => 'ResourceType', 'in' => 'query', - 'schema' => [ - 'description' => '自定义监控项所属云监控应用分组的ID,仅在监控项类型为custom时需要指定该参数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '4055401', - ], + 'schema' => ['description' => '资源类型,目前仅支持伸缩组。取值:scalinggroup。', 'type' => 'string', 'required' => true, 'example' => 'scalinggroup'], ], [ - 'name' => 'Effective', + 'name' => 'NextToken', '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 * * ?', - ], + 'schema' => ['description' => '下一个查询开始的Token。', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a4883'], ], [ - 'name' => 'AlarmActions', + 'name' => 'ResourceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '报警任务关联伸缩规则的唯一标识符的列表。', + 'description' => '资源ID。', 'type' => 'array', - 'items' => [ - 'description' => '报警任务关联伸缩规则的唯一标识符的列表。', - 'type' => 'string', - 'required' => false, - 'example' => 'ari:acs:ess:cn-hangzhou:1406926****:scalingrule/asr-bp163l21e07uhn****', - ], + 'items' => ['description' => '资源ID。', 'type' => 'string', 'required' => false, 'example' => ' asg-bp17xb4x1vr29lgt****'], 'required' => false, - 'maxItems' => 5, + 'maxItems' => 51, ], ], [ - 'name' => 'Dimensions', + 'name' => 'Tags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '监控项关联的维度信息。', + 'description' => '标签信息的集合。', 'type' => 'array', 'items' => [ - 'description' => '监控项关联的维度信息。', + 'description' => '标签信息的集合。', 'type' => 'object', 'properties' => [ - 'DimensionKey' => [ - 'description' => '监控项关联的维度信息键,取值范围与报警任务的监控类型有关:'."\n" - .'- 当报警任务为自定义监控类型(即MetricType=custom)时,不限制取值范围,由您自行指定。'."\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' => '监控项关联的维度信息值,取值范围由Dimensions.DimensionKey决定:'."\n" - .'- 当Dimensions.DimensionKey的取值是自定义的,即报警任务是自定义监控类型(即MetricType=custom)时,该参数不限制取值范围,由您自行指定。'."\n" - ."\n" - .'- 当Dimensions.DimensionKey的取值是系统指定的取值范围中的,即报警任务为系统监控类型(即MetricType=system)时,该参数取值范围如下:'."\n" - ."\n" - .' - user_id:由系统自动填充。'."\n" - ."\n" - .' - scaling_group:由系统自动填充。'."\n" - ."\n" - .' - device:'."\n" - ."\n" - .' - eth0:对于经典网络实例,eth0表示内网网卡。对于VPC实例,只存在eth0一张网卡。'."\n" - ."\n" - .' - eth1:对于经典网络实例,eth1代表外网网卡。'."\n" - ."\n" - .' - state:'."\n" - ."\n" - .' - TCP_TOTAL:表示总的TCP连接数。'."\n" - ."\n" - .' - ESTABLISHED:表示已建立的TCP连接数。'."\n" - .' - rulePool:ALB服务器组id,示例:sgp-xxxxx。', - 'type' => 'string', - 'required' => false, - 'example' => 'eth0', - ], + 'Key' => ['description' => '精确查找弹性伸缩资源时使用的标签键。标签键长度的取值范围:1~128。'."\n" + ."\n" + .'`Tags`用于精确查找绑定了指定标签的弹性伸缩资源,由一个键值对组成。'."\n" + .'- 仅指定`Tags.Key`时,则返回关联该标签键的所有资源。'."\n" + .'- 仅指定`Tags.Value`时,则出现`MissingParameter.TagKey`的报错提示。'."\n" + .'- 同时指定多个标签键值对时,仅同时满足所有标签键值对的弹性伸缩资源会被查找到。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'], + 'Value' => ['description' => '精确查找弹性伸缩资源时使用的标签值。标签值可以为空字符串,最多支持128个字符。', 'type' => 'string', 'required' => false, 'example' => 'TestValue'], ], 'required' => false, ], 'required' => false, - 'maxItems' => 5, + 'maxItems' => 21, ], ], - [ - 'name' => 'Expressions', - 'in' => 'query', - 'style' => 'repeatList', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '多指标报警规则相关信息。', - 'type' => 'array', - 'items' => [ - 'description' => '多指标报警规则相关信息。', - 'type' => 'object', - 'properties' => [ - 'MetricName' => [ - 'description' => '多指标报警规则的监控指标名称。取值范围与报警任务的监控类型有关:'."\n" - ."\n" - .'- 当报警任务为自定义监控类型(即MetricType=custom)时,取值范围是您自有的监控项范围。'."\n" - ."\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" - ."\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', + 'description' => '查询资源已绑定标签的返回信息集合。', + 'type' => 'object', + 'properties' => [ + 'NextToken' => ['description' => '下一个查询开始的Token。', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a4883'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'DE65F6B7-7566-4802-9007-96F2494A****'], + 'TagResources' => [ + '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'], + ], ], ], - 'required' => false, ], - 'required' => false, - 'maxItems' => 10, ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"RequestId\\": \\"DE65F6B7-7566-4802-9007-96F2494A****\\",\\n \\"TagResources\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"ResourceType\\": \\"ALIYUN::ESS::SCALINGGROUP\\",\\n \\"ResourceId\\": \\"asg-bp17xb4x1vr29lgt****\\",\\n \\"TagKey\\": \\"TestKey\\",\\n \\"Propagate\\": false\\n }\\n ]\\n}","type":"json"}]', + 'title' => '查询弹性伸缩资源已经绑定的标签列表', + 'description' => '- 请求参数中至少指定一个参数:`ResourceIds`或者`Tags`(即`Tags.Key`与`Tags.Value`),用以确定查询对象。'."\n" + .'- 如果同时指定参数`ResourceIds`和`Tags`时,返回结果中仅包含同时满足这两个条件的弹性伸缩资源。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:ListTagResources', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + ], + ], + 'ListTagValues' => [ + 'summary' => '调用API ListTagValues查询弹性伸缩资源标签键对应的标签值,能够帮助您更好地了解弹性伸缩资源,实现资源的有效分类和管理。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREess7569XW'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ [ - 'name' => 'ExpressionsLogicOperator', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '多指标报警条件之间的关系。取值范围:'."\n" - ."\n" - .'- `&&`:当所有监控指标都符合报警条件时,才能触发报警。即当多指标报警规则下的表达式均为`true`时,才能触发报警。'."\n" - .'- `||`:如果其中一个指标符合报警条件,即可触发报警。'."\n" - ."\n" - .'默认值: `&&`。', - 'type' => 'string', - 'required' => false, - 'example' => '&&', - ], + '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' => [ - 'description' => '创建报警任务的返回信息集合。', '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****', + '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' => [ + 'description' => '标签值信息。', + 'type' => 'array', + 'items' => ['description' => '标签值信息。', 'type' => 'string', 'example' => 'Doc'], ], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AlarmTaskId\\": \\"asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '创建一个报警任务', - 'description' => '- 如果您创建自定义监控类型的报警任务(MetricType=custom),您需要先将自定义监控项指标上报到云监控。具体操作,请参见[自定义监控报警任务](~~74861~~)。'."\n" - .'- 创建报警任务时,您需要指定监控项(MetricName),并配合维度信息(Dimensions.DimensionKey和Dimensions.DimensionValue),来确定伸缩组中该监控项数据的聚合范围。例如,指定user_id和scaling_group来确定聚合该用户、该伸缩组下所有ECS实例或ECI实例的监控项数据。'."\n" - .' - 自定义监控报警任务(MetricType=custom)的监控项取决于您自有的监控指标。'."\n" - .' - 系统监控报警任务(MetricType=system)支持的监控项的更多信息,请参见[系统监控报警任务](~~74854~~)。'."\n" - ."\n\n" - .'> 维度信息中,user_id和scaling_group由系统自动填充,device、state需要您手动指定。更多信息,请参见参数`Dimensions.DimensionKey`和`Dimensions.DimensionValue`。', - ], - 'DescribeAlarms' => [ - 'summary' => '调用API DescribeAlarms查询报警任务信息,及时了解已有报警任务的配置和监控项数据的变化趋势,帮助您实时发现系统资源异常,确保系统的稳定性和可靠性。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '查询弹性伸缩资源标签键对应的标签值', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:ListTagValues', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"RequestId\\": \\"AB444F46-1CFF-4B06-B8F0-B45D3158****\\",\\n \\"PageSize\\": 10,\\n \\"Values\\": [\\n \\"Doc\\"\\n ]\\n}","type":"json"}]', + ], + 'ModifyAlarm' => [ + 'summary' => '修改一个报警任务。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '125355', - 'abilityTreeNodes' => [ - 'FEATUREessBFLAJQ', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '125348', + 'abilityTreeNodes' => ['FEATUREessBFLAJQ'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '报警任务所属地域的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '报警任务所属地域的ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-qingdao'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'AlarmTaskId', 'in' => 'query', - 'schema' => [ - 'description' => '报警任务关联的伸缩组的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '报警任务ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****'], ], [ - 'name' => 'AlarmTaskId', + 'name' => 'Name', 'in' => 'query', - 'schema' => [ - 'description' => '报警任务ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****', - ], + 'schema' => ['description' => '报警任务的名称。', 'type' => 'string', 'required' => false, 'example' => 'alarmtask****'], ], [ - 'name' => 'State', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => '报警任务的状态。取值范围:'."\n" - ."\n" - .'- ALARM:报警,已满足报警条件。'."\n" - .'- OK:正常,尚未满足报警条件。'."\n" - .'- INSUFFICIENT_DATA:数据不足,不足以判断是否满足了报警条件。', - 'type' => 'string', - 'required' => false, - 'example' => 'OK', - ], + 'schema' => ['description' => '报警任务的描述。', 'type' => 'string', 'required' => false, 'example' => 'Test alarm task.'], ], [ - 'name' => 'IsEnable', + 'name' => 'MetricName', 'in' => 'query', - 'schema' => [ - 'description' => '报警任务是否启用。取值范围:'."\n" - ."\n" - .'- true:已启用。'."\n" - .'- false:已停用。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '监控项名称。取值范围与报警任务的监控类型有关: '."\n" + ."\n" + .'- 当报警任务为自定义监控类型(即MetricType=custom)时,取值范围是您自有的监控项范围。'."\n" + ."\n" + .'- 当报警任务为系统监控类型(即MetricType=system)时,取值范围如下: '."\n" + ."\n" + .' - CpuUtilization:(ECS)CPU使用率(%)。'."\n" + ."\n" + .' - IntranetTx:(ECS)内网出流量(KByte/min)。'."\n" + ."\n" + .' - IntranetRx:(ECS)内网入流量(KByte/min)。'."\n" + ."\n" + .' - VpcInternetTx:(ECS)外网出流量(KByte/min)。'."\n" + ."\n" + .' - VpcInternetRx:(ECS)外网入流量(KByte/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" + .' - 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)网卡发包数(个)。'."\n" + ."\n" + .' - PackagesNetIn:(Agent)网卡收包数(个)。'."\n" + ."\n" + .' - EciPodCpuUtilization:CPU使用率(%)。'."\n" + ."\n" + .' - EciPodMemoryUtilization:内存(%)。'."\n" + ."\n" + .'更多信息,请参见[系统监控报警任务](~~74854~~)。', 'type' => 'string', 'required' => false, 'example' => 'MemoryUtilization'], ], [ 'name' => 'MetricType', 'in' => 'query', - 'schema' => [ - 'description' => '监控项类型。取值范围:'."\n" - ."\n" - .'- system:使用云监控系统指标。'."\n" - .'- custom:使用上报到云监控的自定义指标。'."\n" - .'- hybrid:使用企业云监控的指标。', - 'type' => 'string', - 'required' => false, - 'example' => 'system', - 'default' => 'system', - ], + 'schema' => ['description' => '监控项类型。取值范围:'."\n" + .'- system:使用云监控系统指标。'."\n" + .'- custom:使用上报到云监控的自定义指标。', 'type' => 'string', 'required' => false, 'example' => 'system', 'default' => 'system'], ], [ - 'name' => 'MetricName', + 'name' => 'Period', 'in' => 'query', - 'schema' => [ - 'description' => '监控项名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'CpuUtilization', - ], + 'schema' => ['description' => '统计监控项数据的周期,单位为秒。取值范围:'."\n" + ."\n" + .'- 15。'."\n" + .'- 60。'."\n" + .'- 120。'."\n" + .'- 300。'."\n" + .'- 900。'."\n" + ."\n" + .'> 15秒的统计周期仅适合监控ECS类型伸缩组时,使用云监控(Agent开头的监控项)客户端采集的监控项指标,除此之外的其他监控项指标的统计周期可以设置为60秒、120秒、300秒和900秒。'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '300'], ], [ - 'name' => 'PageSize', + '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' => '触发执行伸缩规则需要满足阈值表达式的次数,例如,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' => 'AlarmActions', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '分页查询时设置的每页行数。最大值:50。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', + 'description' => '报警任务关联伸缩规则的唯一标识符的列表。', + 'type' => 'array', + 'items' => ['description' => '报警任务关联伸缩规则的唯一标识符的列表。', 'type' => 'string', 'required' => false, 'example' => 'ari:acs:ess:cn-hangzhou:140692647****:scalingrule/asr-bp163l21e07uhn****'], 'required' => false, - 'maximum' => '50', - 'example' => '10', - 'default' => '10', + 'maxItems' => 5, ], ], [ - 'name' => 'PageNumber', + 'name' => 'Dimensions', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩规则列表的页码,起始值:1。'."\n" - ."\n" - .'默认值:1。', - 'type' => 'integer', - 'format' => 'int32', + '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连接数。', 'type' => 'string', 'required' => false, 'example' => 'eth0'], + ], + 'required' => false, + ], 'required' => false, - 'example' => '1', - 'default' => '1', + 'maxItems' => 5, ], ], - ], - 'responses' => [ - 200 => [ + [ + 'name' => 'Expressions', + 'in' => 'query', + 'style' => 'repeatList', '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' => [ - '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" - ."\n" - .'- system:使用云监控系统指标。'."\n" - .'- custom:使用上报到云监控的自定义指标。'."\n" - .'- hybrid:使用企业云监控的指标。', - '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' => [ - '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' => [ - 'description' => '报警任务关联伸缩规则的唯一标识符的列表。', - 'type' => 'array', - 'items' => [ - 'description' => '报警任务关联伸缩规则的唯一标识符的列表。', - 'type' => 'string', - 'example' => 'ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp163l21e07uh****', - ], - ], - 'Expressions' => [ - '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" - .'- 监控项统计值小于阈值。取值:<。', - 'type' => 'string', - 'example' => '>=', - ], - 'Period' => [ - 'description' => '多指标报警规则中统计监控项数据的周期,单位为秒。可能值:'."\n" - ."\n" - .'- 15。'."\n" - .'- 60。'."\n" - .'- 120。'."\n" - .'- 300。'."\n" - .'- 900。'."\n" - ."\n" - .'>仅当监控ECS类型伸缩组时,使用云监控(Agent开头的监控项)客户端采集的监控项指标,才可以选择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' => [ - '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' => [ - '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)', - ], - ], - ], + 'description' => '多指标报警规则的监控指标。', + 'type' => 'array', + 'items' => [ + 'description' => '多指标报警规则的监控指标。', + 'type' => 'object', + 'properties' => [ + 'MetricName' => ['description' => '多指标报警规则的监控指标名称。取值范围与报警任务的监控类型有关: '."\n" + ."\n" + .'- 当报警任务为自定义监控类型(即MetricType=custom)时,取值范围是您自有的监控项范围。'."\n" + ."\n" + .'- 当报警任务为系统监控类型(即MetricType=system)时,取值范围如下: '."\n" + ."\n" + .' - CpuUtilization:(ECS)CPU使用率(%)。'."\n" + ."\n" + .' - IntranetTx:(ECS)内网出流量(KByte/min)。'."\n" + ."\n" + .' - IntranetRx:(ECS)内网入流量(KByte/min)。'."\n" + ."\n" + .' - VpcInternetTx:(ECS)外网出流量(KByte/min)。'."\n" + ."\n" + .' - VpcInternetRx:(ECS)外网入流量(KByte/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)网卡发包数(个)。'."\n" + ."\n" + .' - PackagesNetIn:(Agent)网卡收包数(个)。'."\n" + ."\n" + .' - EciPodCpuUtilization:CPU使用率(%)。'."\n" + ."\n" + .' - EciPodMemoryUtilization:内存(%)。'."\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" + .'>15秒的统计周期仅适合监控ECS类型伸缩组时,使用云监控(Agent开头的监控项)客户端采集的监控项指标,除此之外的其他监控项指标的统计周期可以设置为60秒、120秒、300秒和900秒。'."\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' => '&&'], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"871C7C53-34A4-45AA-8C14-4B72FA6A****\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"AlarmList\\": [\\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 {\\n \\"DimensionKey\\": \\"device\\",\\n \\"DimensionValue\\": \\"eth0\\"\\n }\\n ],\\n \\"AlarmActions\\": [\\n \\"ari:acs:ess:cn-hangzhou:1406926474****:scalingrule/asr-bp163l21e07uh****\\"\\n ],\\n \\"Expressions\\": [\\n {\\n \\"MetricName\\": \\"CpuUtilization\\",\\n \\"ComparisonOperator\\": \\">=\\",\\n \\"Period\\": 900,\\n \\"Statistics\\": \\"Average\\",\\n \\"Threshold\\": 40\\n }\\n ],\\n \\"ExpressionsLogicOperator\\": \\"&&\\",\\n \\"HybridMonitorNamespace\\": \\"aliyun-test\\",\\n \\"HybridMetrics\\": [\\n {\\n \\"Id\\": \\"a\\",\\n \\"Expression\\": \\"(a+b)/2\\",\\n \\"MetricName\\": \\"AliyunSmq_NumberOfMessagesVisible\\",\\n \\"Statistic\\": \\"Average\\",\\n \\"Dimensions\\": [\\n {\\n \\"DimensionKey\\": \\"queue\\",\\n \\"DimensionValue\\": \\"testQueue\\"\\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}","type":"json"}]', - 'title' => '查询报警任务的信息', - ], - 'ModifyAlarm' => [ - 'summary' => '修改一个报警任务。', - 'methods' => [ - 'post', - 'get', + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'AlarmTaskId' => ['description' => '报警任务ID。', 'type' => 'string', 'example' => 'asg-bp1hvbnmkl10vll5****_83948190-acdd-483f-98f7-b77f4778****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'BACACF83-7070-4953-A8FD-D81F89F1****'], + ], + 'description' => '', + ], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AlarmTaskId\\": \\"asg-bp1hvbnmkl10vll5****_83948190-acdd-483f-98f7-b77f4778****\\",\\n \\"RequestId\\": \\"BACACF83-7070-4953-A8FD-D81F89F1****\\"\\n}","type":"json"}]', + 'title' => '修改报警任务', + 'description' => '- 如果您创建自定义监控类型的报警任务(MetricType=custom),您需要先将自定义监控项指标上报到云监控。具体操作,请参见[自定义监控报警任务](~~74861~~)。'."\n" + .'- 创建报警任务时,您需要指定监控项(MetricName),并配合维度信息(Dimension.N.DimensionKey和Dimension.N.DimensionValue),来确定伸缩组中该监控项数据的聚合范围。例如,指定user_id和scaling_group来确定聚合该用户、该伸缩组下所有ECS实例或ECI实例的监控项数据。'."\n" + .' - 自定义监控报警任务(MetricType=custom)的监控项取决于您自有的监控指标。'."\n" + .' - 系统监控报警任务(MetricType=system)支持的监控项的更多信息,请参见[系统监控报警任务](~~74854~~)。'."\n" + ."\n\n" + .'> 维度信息中,user_id和scaling_group由系统自动填充,device、state需要您手动指定。更多信息,请参见参数`Dimension.N.DimensionKey`和`Dimension.N.DimensionValue`。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyAlarm', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + ], + 'ModifyAlertConfiguration' => [ + 'summary' => '设置伸缩组中需要发送短信、邮件通知的伸缩活动状态。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '125348', - 'abilityTreeNodes' => [ - 'FEATUREessBFLAJQ', - ], + 'abilityTreeCode' => '208812', + 'abilityTreeNodes' => ['FEATUREess6E26FJ', 'FEATUREessLTO4TI'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '报警任务所属地域的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1eyv4qn8ssgv43****'], ], [ - 'name' => 'AlarmTaskId', + 'name' => 'ScaleStatuses', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '报警任务ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****', + 'description' => '需要发送短信、邮件通知的伸缩活动状态。', + 'type' => 'array', + 'items' => ['description' => '需要发送短信、邮件通知的伸缩活动状态。取值范围:'."\n" + ."\n" + .'- ScaleSuccessful:伸缩活动执行成功时发送通知。'."\n" + .'- ScaleRejected:伸缩活动被拒绝时发送通知。'."\n" + .'- ScaleFailed:伸缩活动执行失败时发送通知。'."\n" + ."\n" + .'> 调用此API但不设置该参数,表示取消发送通知,当此参数为空时,表示取消全部通知。', 'type' => 'string', 'required' => false, 'example' => 'ScaleSuccessful'], + 'required' => false, + 'maxItems' => 10, ], ], [ - 'name' => 'Name', + 'name' => 'RegionId', 'in' => 'query', + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '报警任务的名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'alarmtask****', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '73469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"73469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + 'title' => '设置伸缩组中需要发送消息通知的伸缩活动状态', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyAlertConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], + ], + ], + 'ModifyEciScalingConfiguration' => [ + 'summary' => '调用ModifyEciScalingConfiguration,并可以指定待修改伸缩配置的ID、伸缩配置的名称、ECI实例的属性等参数,修改伸缩配置,例如实例重启策略、实例的抢占策略、弹性公网 IP 的带宽等信息。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '125345', + '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' => false, 'example' => 'test-modify'], + ], [ 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => '报警任务的描述。', - 'type' => 'string', - 'required' => false, - 'example' => 'Test alarm task.', - ], + 'schema' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'desc'], ], [ - 'name' => 'MetricName', + 'name' => 'SecurityGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '监控项名称。取值范围与报警任务的监控类型有关: '."\n" - ."\n" - .'- 当报警任务为自定义监控类型(即MetricType=custom)时,取值范围是您自有的监控项范围。'."\n" - ."\n" - .'- 当报警任务为系统监控类型(即MetricType=system)时,取值范围如下: '."\n" - ."\n" - .' - CpuUtilization:(ECS)CPU使用率(%)。'."\n" - ."\n" - .' - IntranetTx:(ECS)内网出流量(KByte/min)。'."\n" - ."\n" - .' - IntranetRx:(ECS)内网入流量(KByte/min)。'."\n" - ."\n" - .' - VpcInternetTx:(ECS)外网出流量(KByte/min)。'."\n" - ."\n" - .' - VpcInternetRx:(ECS)外网入流量(KByte/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" - .' - 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)网卡发包数(个)。'."\n" - ."\n" - .' - PackagesNetIn:(Agent)网卡收包数(个)。'."\n" - ."\n" - .' - EciPodCpuUtilization:CPU使用率(%)。'."\n" - ."\n" - .' - EciPodMemoryUtilization:内存(%)。'."\n" - ."\n" - .'更多信息,请参见[系统监控报警任务](~~74854~~)。', - 'type' => 'string', - 'required' => false, - 'example' => 'MemoryUtilization', - ], + 'schema' => ['description' => 'ECI实例所属的安全组ID。同一个安全组内的ECI实例之间可以互相访问。'."\n" + ."\n" + .'如果没有指定安全组,系统将自动使用您选择的地域下的默认安全组,您需要确保该安全组的入方向规则中包含容器需要暴露的协议和端口。如果您在该地域下没有默认安全组,系统将自动创建一个默认安全组,并将您声明的容器协议和端口添加到该安全组的入方向规则中。', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'sg-uf66jeqopgqa9hdn****'], ], [ - 'name' => 'MetricType', + 'name' => 'ContainerGroupName', + 'in' => 'query', + 'schema' => ['description' => 'ECI实例名称,即容器组名称。格式要求如下:'."\n" + ."\n" + .'- 长度为2~128个字符。'."\n" + .'- 支持英文小写字母、数字或者短划线(-),不能以短划线(-)开头或者结尾。', 'type' => 'string', 'required' => false, 'docRequired' => false, '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" + ."\n" + .'- Default:继承运行环境的DNS设置。', 'type' => 'string', 'required' => false, 'example' => 'Default'], + ], + [ + 'name' => 'EnableSls', + 'in' => 'query', + 'schema' => ['description' => '>该参数未开放使用。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + ], + [ + '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" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + ], + [ + 'name' => 'Ipv6AddressCount', + 'in' => 'query', + 'schema' => ['description' => 'IPv6地址数。'."\n" + ."\n", '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。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'maximum' => '9223372036854775807', 'minimum' => '0', 'example' => '1024000'], + ], + [ + 'name' => 'EgressBandwidth', + 'in' => 'query', + 'schema' => ['description' => '出方向带宽限制。单位:Byte。'."\n" + ."\n", '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。'."\n" + ."\n", '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' => 'Tags', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '监控项类型。取值范围:'."\n" - .'- system:使用云监控系统指标。'."\n" - .'- custom:使用上报到云监控的自定义指标。', - 'type' => 'string', + 'description' => '标签信息的集合。', + 'type' => 'array', + 'items' => [ + 'description' => '标签信息的集合。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '标签键。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'version'], + 'Value' => ['description' => '标签值。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '3'], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'system', - 'default' => 'system', + 'maxItems' => 21, ], ], [ - 'name' => 'Period', + 'name' => 'ImageRegistryCredentials', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '统计监控项数据的周期,单位为秒。取值范围:'."\n" - ."\n" - .'- 15。'."\n" - .'- 60。'."\n" - .'- 120。'."\n" - .'- 300。'."\n" - .'- 900。'."\n" - ."\n" - .'> 15秒的统计周期仅适合监控ECS类型伸缩组时,使用云监控(Agent开头的监控项)客户端采集的监控项指标,除此之外的其他监控项指标的统计周期可以设置为60秒、120秒、300秒和900秒。'."\n", - 'type' => 'integer', - 'format' => 'int32', + 'description' => '镜像仓库的详细信息。', + 'type' => 'array', + 'items' => [ + 'description' => '镜像仓库的详细信息。', + 'type' => 'object', + 'properties' => [ + 'Password' => ['description' => '镜像仓库密码。', 'type' => 'string', 'required' => false, 'example' => 'yourpaasword'], + 'Server' => ['description' => '镜像仓库注册地址。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'registry-vpc.cn-shanghai.aliyuncs.com'], + 'UserName' => ['description' => '镜像仓库用户名。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'yourusername'], + ], + 'required' => false, + ], 'required' => false, - 'example' => '300', + 'maxItems' => 11, ], ], [ - 'name' => 'Statistics', + 'name' => 'Containers', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '统计监控项数据的方法。取值范围:'."\n" - ."\n" - .'- Average:平均值。'."\n" - .'- Minimum:最小值。'."\n" - .'- Maximum:最大值。', - 'type' => 'string', + '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.Adds' => [ + '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_RAW'], + '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'], + 'Ports' => [ + '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'], + '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 '."\n"], + 'FieldRef.FieldPath' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'required' => false, 'example' => 'path'], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 301, + ], + 'LivenessProbe.TcpSocket.Port' => ['description' => '使用TCP Socket方式进行健康检查时,TCP Socket检测的端口。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + 'Tty' => ['description' => '是否开启交互。默认为false。'."\n" + ."\n" + .'当Command为/bin/bash命令时,需要设置为true。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + 'WorkingDir' => ['description' => '容器工作目录。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '/usr/local/ '."\n"], + 'LivenessProbe.HttpGet.Scheme' => ['description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求对应的协议类型,取值范围:'."\n" + .'- HTTP。'."\n" + .'- HTTPS。', 'type' => 'string', 'required' => false, 'example' => 'HTTP'], + 'ReadinessProbe.HttpGet.Port' => ['description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的端口号。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8080'], + 'Args' => [ + 'description' => '容器启动命令对应的参数。最多10个。', + 'type' => 'array', + 'items' => ['description' => '容器启动命令对应的参数。最多10个。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '100'], + 'required' => false, + 'maxItems' => 101, + ], + 'Gpu' => ['description' => '指定容器使用的GPU个数。'."\n" + ."\n", '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。'."\n" + ."\n", 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.5'], + 'Name' => ['description' => '容器镜像名称。', 'type' => 'string', 'required' => false, 'example' => 'nginx'], + 'Image' => ['description' => '容器镜像。'."\n" + ."\n", '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'], + 'VolumeMounts' => [ + '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' => '容器挂载数据卷的目录。'."\n" + ."\n" + .'> 容器挂载目录下的内容会被Volume的内容直接覆盖,请谨慎使用。', 'type' => 'string', 'required' => false, 'example' => '/pod/data '."\n"], + 'ReadOnly' => ['description' => '数据卷是否只读。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + 'Name' => ['description' => '数据卷名称。同Volume中的Name。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'default-volume1 '."\n"], + 'SubPath' => ['description' => '数据卷子路径。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'data2/ '."\n"], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 101, + ], + 'LivenessProbe.FailureThreshold' => ['description' => '从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败)。'."\n" + ."\n" + .'默认值:3。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3'], + 'ReadinessProbe.Exec.Commands' => [ + '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" + .'- 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' => '容器的VCPU大小。单位:核。'."\n" + ."\n", 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.25 '."\n"], + '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 '."\n"], + 'LivenessProbe.SuccessThreshold' => ['description' => '从上次检查失败后重新认定检查成功的检查次数阈值(必须是连续成功),默认值为1。当前值必须为1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + 'ReadinessProbe.PeriodSeconds' => ['description' => '检查执行的周期,默认值为10秒,最小值为1秒。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3'], + 'LivenessProbe.TimeoutSeconds' => ['description' => '检查超时的时间,默认值为1秒,最小值为1秒。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + 'Commands' => [ + 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。', + 'type' => 'array', + 'items' => ['description' => '容器启动命令。最多20个。每个命令最多包含256个字符。', 'type' => 'string', 'required' => false, 'example' => 'sleep'], + 'required' => false, + 'maxItems' => 101, + ], + 'SecurityContext.RunAsUser' => ['description' => '设置运行容器的用户ID。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000'], + 'ReadinessProbe.HttpGet.Path' => ['description' => '使用HTTP请求方式进行健康检查时,HTTP Get请求检测的路径。', 'type' => 'string', 'required' => false, 'example' => '/healthz '."\n"], + 'LivenessProbe.Exec.Commands' => [ + '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'], + 'LifecyclePostStartHandlerExecs' => [ + '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'], + 'LifecyclePreStopHandlerExecs' => [ + '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' => '80'], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'Average', + 'maxItems' => 21, ], ], [ - 'name' => 'Threshold', + 'name' => 'Volumes', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '多指标报警规则中监控指标的阈值,满足阈值表达式达到指定次数即触发执行伸缩规则。', - 'type' => 'number', - 'format' => 'float', + 'description' => '数据卷信息。', + 'type' => 'array', + 'items' => [ + 'description' => '数据卷信息。', + 'type' => 'object', + 'properties' => [ + 'Type' => ['description' => '数据卷类型,可能值:'."\n" + .'- EmptyDirVolume。'."\n" + .'- NFSVolume。'."\n" + .'- ConfigFileVolume。'."\n" + .'- FlexVolume。', 'type' => 'string', 'required' => false, 'example' => 'EmptyDirVolume'], + 'DiskVolume.DiskSize' => ['description' => 'DiskVolume的大小。单位:GiB。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '15'], + 'NFSVolume.Path' => ['description' => 'NFS数据卷路径。'."\n" + ."\n", '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" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + 'HostPathVolume.Path' => ['description' => 'Host上的绝对路径。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '/xx/xx/name '."\n"], + '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的驱动程序名称。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'flexvolume'], + 'ConfigFileVolumeDefaultMode' => ['description' => 'ConfigFileVolume默认的权限。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0644'], + 'NFSVolume.Server' => ['description' => 'NFS服务器地址。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '3f9cd4a596-n****.cn-shanghai.nas.aliyuncs.com'], + 'DiskVolume.DiskId' => ['description' => 'DiskVolume的ID。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'd-xx '."\n"], + 'Name' => ['description' => '数据卷名称。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'default-volume1'."\n"], + 'EmptyDirVolume.Medium' => ['description' => 'EmptyDirVolume的存储媒介,默认为空,使用node文件系统;支持memory,表示使用内存。', 'type' => 'string', 'required' => false, 'example' => 'memory '."\n"], + 'ConfigFileVolumeConfigFileToPath' => [ + 'description' => '配置文件路径列表。', + 'type' => 'array', + 'items' => [ + 'description' => '配置文件路径列表。', + 'type' => 'object', + 'properties' => [ + 'Path' => ['description' => '相对文件路径。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '/usr/bin/ '."\n"], + 'Mode' => ['description' => 'ConfigFileVolume目录权限。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0644'], + 'Content' => ['description' => '配置文件内容(32 KB)。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'bGl1bWk= '."\n"], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 90, + ], + 'EmptyDirVolume.SizeLimit' => ['description' => 'EmptyDir数据卷的大小。取值请带上单位,建议使用Gi或Mi。', 'type' => 'string', 'required' => false, 'example' => '256Mi'], + ], + 'required' => false, + ], 'required' => false, - 'example' => '80', + 'maxItems' => 101, ], ], [ - 'name' => 'ComparisonOperator', + 'name' => 'InitContainers', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '监控项统计值与阈值的比较符,用于指定监控项统计值与阈值在什么关系下满足条件。取值范围:'."\n" - ."\n" - .'- 监控项统计值大于等于阈值。取值:`>=`。'."\n" - .'- 监控项统计值小于等于阈值。取值:`<=`。'."\n" - .'- 监控项统计值大于阈值。取值:`>`。'."\n" - .'- 监控项统计值小于阈值。取值:`<`。', - 'type' => 'string', + 'description' => 'init容器列表。', + 'type' => 'array', + 'items' => [ + 'description' => 'init容器列表。', + 'type' => 'object', + 'properties' => [ + 'InitContainerEnvironmentVars' => [ + 'description' => 'init容器的环境变量信息。', + 'type' => 'array', + 'items' => [ + 'description' => 'init容器的环境变量信息。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '环境变量名。长度为1~128个字符。格式要求:`[0-9a-zA-Z]`,以及下划线(_),不能以数字开头。', 'type' => 'string', 'required' => false, 'example' => 'Path'], + 'Value' => ['description' => '环境变量值。长度为0~256位。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '/usr/bin/ '."\n"], + 'FieldRef.FieldPath' => ['description' => '>该参数未开放使用。', 'type' => 'string', 'required' => false, 'example' => 'path'], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 301, + ], + 'SecurityContext.Capability.Adds' => [ + '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_RAW'], + 'required' => false, + 'maxItems' => 100, + ], + 'Image' => ['description' => '容器使用的镜像。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'nginx'], + 'InitContainerPorts' => [ + 'description' => 'init容器端口信息。', + 'type' => 'array', + 'items' => [ + 'description' => 'init容器端口信息。', + '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' => '1'], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 101, + ], + 'InitContainerVolumeMounts' => [ + 'description' => 'init容器的挂载点信息数组。', + 'type' => 'array', + 'items' => [ + 'description' => 'init容器的挂载点信息数组。', + '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' => '/usr/share/'."\n"], + 'ReadOnly' => ['description' => '挂载路径是否只读。'."\n" + ."\n" + .'默认值:false。'."\n" + ."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false '."\n"], + 'Name' => ['description' => '挂载数据卷的名称。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'test-empty '."\n"], + 'SubPath' => ['description' => '数据卷下的子目录,方便Pod将同一个Volume下不同目录挂载到容器不同目录。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'Always'], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 101, + ], + 'SecurityContext.ReadOnlyRootFilesystem' => ['description' => '>该参数未开放使用。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + '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' => '工作目录。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '/usr/local '."\n"], + 'Commands' => [ + 'description' => '容器启动指令。', + 'type' => 'array', + 'items' => ['description' => '容器启动指令。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'sleep'], + 'required' => false, + 'maxItems' => 101, + ], + 'Args' => [ + 'description' => '容器启动参数。', + 'type' => 'array', + 'items' => ['description' => '容器启动参数。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '10'], + 'required' => false, + 'maxItems' => 101, + ], + 'SecurityContext.RunAsUser' => ['description' => '设置运行容器的用户ID。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '587'], + 'Gpu' => ['description' => '指定容器使用的GPU个数。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + 'Memory' => ['description' => '内存大小。单位:GiB。'."\n" + ."\n", 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '1.0'], + 'Name' => ['description' => '容器名称。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'test-init'], + ], + 'required' => false, + ], 'required' => false, - 'example' => '>=', + 'maxItems' => 21, ], ], [ - 'name' => 'EvaluationCount', + 'name' => 'DnsConfigNameServers', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '触发执行伸缩规则需要满足阈值表达式的次数,例如,CPU使用率平均值3次的统计结果均大于等于80%。', - 'type' => 'integer', - 'format' => 'int32', + 'description' => 'DNS服务器的IP地址列表。', + 'type' => 'array', + 'items' => ['description' => 'DNS服务器的IP地址列表。', 'type' => 'string', 'required' => false, 'example' => '172.10.*.** '."\n"], 'required' => false, - 'example' => '3', + 'maxItems' => 20, ], ], [ - 'name' => 'GroupId', + 'name' => 'DnsConfigSearchs', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '自定义监控项所属云监控应用分组的ID,仅在监控项类型为custom时需要指定该参数。', - 'type' => 'integer', - 'format' => 'int32', + 'description' => 'DNS搜索域列表。', + 'type' => 'array', + 'items' => ['description' => 'DNS搜索域列表。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'svc.local.kubenetes '."\n"], 'required' => false, - 'example' => '4055401', + 'maxItems' => 20, ], ], [ - 'name' => 'Effective', + 'name' => 'DnsConfigOptions', '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', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '对象选项列表,每个对象由Name和Value(可选)构成。', + 'type' => 'array', + 'items' => [ + 'description' => '对象选项列表,每个对象由Name和Value(可选)构成。', + 'type' => 'object', + 'properties' => [ + 'Value' => ['description' => '对象变量值。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'value'], + 'Name' => ['description' => '对象变量名。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'name '."\n"], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'TZ=+00 * * 1-2 * * ?', + 'maxItems' => 20, ], ], [ - 'name' => 'AlarmActions', + 'name' => 'HostAliases', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '报警任务关联伸缩规则的唯一标识符的列表。', + 'description' => '主机相关信息。', 'type' => 'array', 'items' => [ - 'description' => '报警任务关联伸缩规则的唯一标识符的列表。', - 'type' => 'string', + 'description' => '主机相关信息。', + 'type' => 'object', + 'properties' => [ + 'Ip' => ['description' => '添加IP地址。', 'type' => 'string', 'required' => false, 'example' => '192.0.XX.XX '."\n"], + 'Hostnames' => [ + 'description' => '添加主机名。', + 'type' => 'array', + 'items' => ['description' => '添加主机名。', 'type' => 'string', 'required' => false, 'example' => '[\'hehe.com\', \'haha.com\'] '."\n"], + 'required' => false, + 'maxItems' => 51, + ], + ], 'required' => false, - 'example' => 'ari:acs:ess:cn-hangzhou:140692647****:scalingrule/asr-bp163l21e07uhn****', ], 'required' => false, - 'maxItems' => 5, + 'maxItems' => 101, ], ], [ - 'name' => 'Dimensions', + 'name' => 'SecurityContextSysCtls', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '监控项关联的维度信息。', + 'description' => '实例运行的安全上下文的系统信息。', 'type' => 'array', 'items' => [ - 'description' => '监控项关联的维度信息。', + '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连接数。', - 'type' => 'string', - 'required' => false, - 'example' => 'eth0', - ], + 'Value' => ['description' => '实例运行的安全上下文的变量值。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => '65536'], + 'Name' => ['description' => '实例运行的安全上下文系统名称。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'kernel.msgmax '."\n"], ], 'required' => false, ], 'required' => false, - 'maxItems' => 5, + 'maxItems' => 11, ], ], [ - 'name' => 'Expressions', + 'name' => 'NtpServers', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '多指标报警规则的监控指标。', + 'description' => 'NTP服务器。', + 'type' => 'array', + 'items' => ['description' => 'NTP服务器。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'ntp.cloud.aliyuncs.com '."\n"], + 'required' => false, + 'maxItems' => 21, + ], + ], + [ + 'name' => 'AcrRegistryInfos', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'ACR企业版实例的信息。', 'type' => 'array', 'items' => [ - 'description' => '多指标报警规则的监控指标。', + 'description' => 'ACR企业版实例的信息。', 'type' => 'object', 'properties' => [ - 'MetricName' => [ - 'description' => '多指标报警规则的监控指标名称。取值范围与报警任务的监控类型有关: '."\n" - ."\n" - .'- 当报警任务为自定义监控类型(即MetricType=custom)时,取值范围是您自有的监控项范围。'."\n" - ."\n" - .'- 当报警任务为系统监控类型(即MetricType=system)时,取值范围如下: '."\n" - ."\n" - .' - CpuUtilization:(ECS)CPU使用率(%)。'."\n" - ."\n" - .' - IntranetTx:(ECS)内网出流量(KByte/min)。'."\n" - ."\n" - .' - IntranetRx:(ECS)内网入流量(KByte/min)。'."\n" - ."\n" - .' - VpcInternetTx:(ECS)外网出流量(KByte/min)。'."\n" - ."\n" - .' - VpcInternetRx:(ECS)外网入流量(KByte/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)网卡发包数(个)。'."\n" - ."\n" - .' - PackagesNetIn:(Agent)网卡收包数(个)。'."\n" - ."\n" - .' - EciPodCpuUtilization:CPU使用率(%)。'."\n" - ."\n" - .' - EciPodMemoryUtilization:内存(%)。'."\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" - .'>15秒的统计周期仅适合监控ECS类型伸缩组时,使用云监控(Agent开头的监控项)客户端采集的监控项指标,除此之外的其他监控项指标的统计周期可以设置为60秒、120秒、300秒和900秒。'."\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', + 'Domains' => [ + 'description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。', + 'type' => 'array', + 'items' => ['description' => 'ACR企业版实例的域名。默认为相应实例的所有域名。支持指定个别域名,多个以半角逗号(,)分隔。', 'type' => 'string', 'required' => false, 'example' => '*****-****-registry.cn-beijing.cr.aliyuncs.com'], 'required' => false, - 'example' => '40.0', + 'maxItems' => 100, ], + 'InstanceName' => ['description' => 'ACR企业版实例的名称。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'acr-test '."\n"], + 'InstanceId' => ['description' => 'ACR企业版实例ID。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'cri-nwj395hgf6f3**** '."\n"], + 'RegionId' => ['description' => 'ACR企业版实例所属地域。'."\n" + ."\n", 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou '."\n"], ], 'required' => false, ], 'required' => false, - 'maxItems' => 10, + 'maxItems' => 21, ], ], [ - 'name' => 'ExpressionsLogicOperator', + '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', + 'schema' => ['title' => 'containers 参数更新方式控制 '."\n" + .'RenewUpdate:全量更新,以更新请求中containers参数为准,覆盖原有containers参数配置。'."\n" + .'IncrementalUpdate:增量更新,根据container.name进行container匹配,仅更新设置请求参数中设置参数,未设置参数不进行更新。'."\n" + .'默认值:RenewUpdate', 'description' => 'Containers参数更新方式控制参数。取值范围:'."\n" + ."\n" + .'- RenewUpdate:全量更新,以更新请求中Containers参数为准,覆盖原有Containers参数配置。'."\n" + .'- IncrementalUpdate:增量更新,根据Container.name进行Container匹配,仅更新请求参数中已设置参数,未设置参数不进行更新。'."\n" + ."\n" + .'默认值:RenewUpdate。', 'type' => 'string', 'required' => false, 'example' => 'RenewUpdate'], + ], + [ + 'name' => 'InstanceTypes', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '多指标报警条件之间的关系。取值范围:'."\n" - ."\n" - .'- `&&`:当所有监控指标都符合报警条件时,才能触发报警。即当多指标报警规则下的表达式均为`true`时,才能触发报警。'."\n" - .'- ``:如果其中一个指标符合报警条件,即可触发报警。'."\n" - ."\n" - .'默认值: `&&`。', - 'type' => 'string', + 'description' => '指定的ECS实例规格,支持指定多个规格(最多支持5个)。', + 'type' => 'array', + 'items' => ['description' => '指定的ECS实例规格。支持指定多个规格(最多支持5个),更多信息,请参见[指定ECS规格创建实例](~~114664~~)。', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large'], 'required' => false, - 'example' => '&&', + '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" + ."\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云盘](~~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' => ['title' => '是否覆盖。取值范围:'."\n" + ."\n" + .'true:覆盖。'."\n" + .'false:不覆盖。', 'description' => '是否覆盖。取值范围:'."\n" + ."\n" + .'- true:覆盖。'."\n" + .'- false:不覆盖。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + ], ], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '修改伸缩配置返回信息。', 'type' => 'object', 'properties' => [ - 'AlarmTaskId' => [ - 'description' => '报警任务ID。', - 'type' => 'string', - 'example' => 'asg-bp1hvbnmkl10vll5****_83948190-acdd-483f-98f7-b77f4778****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'BACACF83-7070-4953-A8FD-D81F89F1****', - ], + 'RequestId' => ['description' => '请求ID,唯一标识。'."\n" + ."\n", 'type' => 'string', 'example' => '89945DD3-9072-47D0-A318-353284CF****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AlarmTaskId\\": \\"asg-bp1hvbnmkl10vll5****_83948190-acdd-483f-98f7-b77f4778****\\",\\n \\"RequestId\\": \\"BACACF83-7070-4953-A8FD-D81F89F1****\\"\\n}","type":"json"}]', - 'title' => '修改报警任务', - 'description' => '- 如果您创建自定义监控类型的报警任务(MetricType=custom),您需要先将自定义监控项指标上报到云监控。具体操作,请参见[自定义监控报警任务](~~74861~~)。'."\n" - .'- 创建报警任务时,您需要指定监控项(MetricName),并配合维度信息(Dimension.N.DimensionKey和Dimension.N.DimensionValue),来确定伸缩组中该监控项数据的聚合范围。例如,指定user_id和scaling_group来确定聚合该用户、该伸缩组下所有ECS实例或ECI实例的监控项数据。'."\n" - .' - 自定义监控报警任务(MetricType=custom)的监控项取决于您自有的监控指标。'."\n" - .' - 系统监控报警任务(MetricType=system)支持的监控项的更多信息,请参见[系统监控报警任务](~~74854~~)。'."\n" - ."\n\n" - .'> 维度信息中,user_id和scaling_group由系统自动填充,device、state需要您手动指定。更多信息,请参见参数`Dimension.N.DimensionKey`和`Dimension.N.DimensionValue`。', - ], - 'EnableAlarm' => [ - 'summary' => '针对具有突发性或时间上不易预测的业务,您可以通过报警任务关联云监控指标管理业务变化。弹性伸缩在统计值满足报警条件时触发报警,并在生效周期内自动执行伸缩规则,动态调整伸缩组内的ECS实例或ECI实例数量。如果您需要继续使用一个已停用的报警任务,可以调用API EnableAlarm启用一个报警任务。', - 'methods' => [ - 'post', - 'get', + 'errorCodes' => [ + 403 => [ + ['errorCode' => 'Forbidden.RiskControl', 'errorMessage' => 'Forbidden.RiskControl', 'description' => ''], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"89945DD3-9072-47D0-A318-353284CF****\\"\\n}","type":"json"}]', + 'title' => '修改一个ECI类型伸缩配置', + 'description' => '- 如果修改伸缩配置的名称,请注意同一伸缩组下不能存在名称相同的伸缩配置。'."\n" + ."\n" + .'- 可以调用[DescribeEciScalingConfigurations](~~459374~~)查询并验证修改结果。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyEciScalingConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + ], + 'ModifyInstanceAttribute' => [ + 'summary' => '调用ModifyInstanceAttribute,并指定伸缩组内实例的ID、伸缩组的ID、伸缩组所属的地域ID等参数,修改伸缩组中一台ECS实例的部分信息,目前仅支持修改手动添加到伸缩组中实例的生命周期托管属性。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -23791,30 +14866,45 @@ ], 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '125397', - 'abilityTreeNodes' => [ - 'FEATUREessBFLAJQ', - ], + 'abilityTreeCode' => '201544', + 'abilityTreeNodes' => ['FEATUREessBFHJ1B'], ], 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => ['description' => '伸缩组内ECS实例的ID。', 'type' => 'string', 'required' => false, 'example' => 'i-bp109k5j3dum1ce6****'], + ], + [ + '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" + .'> 该参数仅支持手动添加到伸缩组的实例,而不支持在伸缩组内创建的实例。', 'type' => 'boolean', 'required' => false, 'docRequired' => true, 'example' => 'true'], + ], [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'AlarmTaskId', + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '报警任务ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****', + 'description' => '实例ID列表。', + 'type' => 'array', + 'items' => ['description' => '实例ID。', 'type' => 'string', 'required' => false, 'example' => 'i-bp109k5j3dum1ce6****'], + 'required' => false, + 'maxItems' => 20, ], ], ], @@ -23823,60 +14913,121 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '688B18B8-FB1E-42EB-A1ED-7F55B090****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"688B18B8-FB1E-42EB-A1ED-7F55B090****\\"\\n}","type":"json"}]', - 'title' => '启用一个报警任务', + 'title' => '修改伸缩组内实例的部分信息', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyInstanceAttribute', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', ], - 'DisableAlarm' => [ - 'summary' => '针对具有突发性或时间上不易预测的业务,您可以通过报警任务关联云监控指标管理业务变化。弹性伸缩在统计值满足报警条件时触发报警,并在生效周期内自动执行伸缩规则,动态调整伸缩组内的ECS实例或ECI实例数量。如果您暂时不需要一个报警任务触发伸缩活动,可以调用API DisableAlarm停用该报警任务。', - 'methods' => [ - 'post', - 'get', + 'ModifyLifecycleHook' => [ + 'summary' => '如果当前伸缩组的生命周期挂钩不能满足业务需求,您无需做删除操作,调用ModifyLifecycleHook,通过待修改生命周期挂钩的ID或名称,伸缩组的ID等参数,修改一个生命周期挂钩的信息,包括生命周期挂钩适用的伸缩活动类型,生命周期挂钩为伸缩组活动设置的等待时间,等待状态结束后的下一步动作等信息。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], ], - 'schemes' => [ - 'http', - 'https', + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '125362', + 'abilityTreeNodes' => ['FEATUREessKFTMD6'], ], - 'security' => [ + '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延长ECS实例的等待时间,也可以调用CompleteLifecycleAction提前结束伸缩活动的等待状态。', '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'], + ], [ - 'AK' => [], + 'name' => 'NotificationMetadata', + 'in' => 'query', + 'schema' => ['description' => '伸缩活动的等待状态的固定字符串信息。参数长度不能超过4096个字符。'."\n" + ."\n" + .'弹性伸缩每次推送消息到通知对象时,会同时发送您预先指定的NotificationMetadata参数值,便于管理和标记不同类别的通知信息。当您同时指定了NotificationArn参数时,NotificationMetadata参数方可生效。', 'type' => 'string', 'required' => false, 'example' => 'Test'], ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125352', - 'abilityTreeNodes' => [ - 'FEATUREessBFLAJQ', + [ + '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****'], ], - ], - 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing'], ], [ - 'name' => 'AlarmTaskId', + 'name' => 'LifecycleHookStatus', 'in' => 'query', - 'schema' => [ - 'description' => '报警任务ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****', - ], + 'allowEmptyValue' => true, + 'schema' => ['description' => '修改当前生命周期挂钩的状态,取值范围:'."\n" + .'- Active:表示启动生命周期挂钩。'."\n" + .'- InActive:表示暂停生命周期挂钩。'."\n" + ."\n" + .'如果不设置该参数,则当前生命周期挂钩状态保持为原有状态。'."\n" + .'>生命周期挂钩创建成功后,系统默认为启动状态。', 'type' => 'string', 'required' => false, 'example' => 'Active'], ], ], 'responses' => [ @@ -23884,2299 +15035,2047 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '086EFCD4-C76F-4DC6-9EE9-0D9B711E****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"086EFCD4-C76F-4DC6-9EE9-0D9B711E****\\"\\n}","type":"json"}]', - 'title' => '停用一个报警任务', - 'description' => '停用报警任务前,报警任务必须处于`正常`、`报警`或`数据不足`状态。', - ], - 'DeleteAlarm' => [ - 'summary' => '针对具有突发性或时间上不易预测的业务,您可以通过报警任务关联云监控指标进行管理。弹性伸缩会实时统计指标数据,在统计值满足报警条件时触发报警,并在生效周期内自动执行伸缩规则,动态调整伸缩组内的ECS实例或ECI实例数量。如果您不再使用当前的报警任务,您也可以调用API DeleteAlarm直接删除该报警任务。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '修改一个生命周期挂钩的信息', + 'description' => '您可以通过以下两种方式指定待修改的生命周期挂钩:'."\n" + .'- 只指定生命周期挂钩ID(LifecycleHookId),此时将忽略伸缩组ID(ScalingGroupId)和生命周期挂钩名称(LifecycleHookName)参数。'."\n" + ."\n" + .'- 同时指定伸缩组ID(ScalingGroupId)与生命周期挂钩名称(LifecycleHookName),因为在一个伸缩组内同一个生命周期挂钩名称是唯一的。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyLifecycleHook', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'ModifyNotificationConfiguration' => [ + 'summary' => '事件通知支持在发生指定类型的事件后,自动发送消息到云监控、MNS主题和MNS队列,可以帮助您及时掌握伸缩组的动态,进一步实现自动化管理。如果当前事件通知的类型不再满足业务需求,您可以调用API ModifyNotificationConfiguration修改弹性伸缩事件及资源变化通知,您无需重新创建新的事件通知,但不支持修改事件通知的通知方式。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'readAndWrite', 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '125349', - 'abilityTreeNodes' => [ - 'FEATUREessBFLAJQ', - ], + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '125333', + 'abilityTreeNodes' => ['FEATUREess6E26FJ', 'FEATUREessFY8KDA'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1igpak5ft1flyp****'], ], [ - 'name' => 'AlarmTaskId', + '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' => 'NotificationTypes', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '报警任务ID。', - 'type' => 'string', + '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', 'required' => false, 'example' => 'AUTOSCALING:SCALE_OUT_SUCCESS'], 'required' => true, - 'example' => 'asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****', + '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" + .'> 仅支持MNS通知对象设置该参数。', 'type' => 'string', 'required' => false, 'example' => 'PlainText'], + ], ], '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****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AlarmTaskId\\": \\"asg-bp1hvbnmkl10vll5****_f95ce797-dc2e-4bad-9618-14fee7d1****\\",\\n \\"RequestId\\": \\"6EF9BFEE-FE07-4627-B8FB-14326FB9****\\"\\n}","type":"json"}]', - 'title' => '删除一个报警任务', - ], - 'DescribeInstanceRefreshes' => [ - 'summary' => '如果您需要查看实例刷新任务的基本信息、 实例刷新任务的进度等信息,您可以调用DescribeInstanceRefreshes查询该伸缩组的实例刷新任务。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + 'title' => '修改一条弹性伸缩事件及资源变化通知', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyNotificationConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + ], + 'ModifyScalingConfiguration' => [ + 'summary' => '如果当前的伸缩配置不满足业务需求,您可以通过调用API ModifyScalingConfiguration修改ECS类型的伸缩配置(即待扩容的ECS实例模板)。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'deprecated' => false, + 'operationType' => 'write', 'systemTags' => [ - 'operationType' => 'get', + 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '234886', - 'abilityTreeNodes' => [ - 'FEATUREessACRSW1', - ], + 'abilityTreeCode' => '125383', + 'abilityTreeNodes' => ['FEATUREessT4M3WE'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'ScalingConfigurationId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '待修改伸缩配置的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asc-bp16har3jpj6fjbx****'], ], [ - 'name' => 'NextToken', + 'name' => 'IoOptimized', 'in' => 'query', - 'schema' => [ - 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'caeba0bbb2be03f84eb48b699f0a****', - ], + 'schema' => ['description' => '是否为I/O优化实例。可能值:'."\n" + .'- none:非I/O优化实例。'."\n" + .'- optimized:I/O优化实例。', 'type' => 'string', 'required' => false, 'example' => 'none'], ], [ - 'name' => 'MaxResults', + 'name' => 'SpotStrategy', 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时每页的最大条目数,取值范围:1~50。'."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'docRequired' => false, - 'maximum' => '50', - 'example' => '10', - 'default' => '10', - ], + 'schema' => ['description' => '后付费实例的抢占策略。可能值:'."\n" + .' '."\n" + .'- NoSpot:普通的按量付费实例。'."\n" + .'- SpotWithPriceLimit:设置上限价格的抢占式实例。'."\n" + .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。', 'type' => 'string', 'required' => false, 'example' => 'NoSpot'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'ScalingConfigurationName', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。'."\n" - .'> 调用该API时,ScalingGroupId和InstanceRefreshTaskIds参数必须二选一进行配置,如果两个参数同时都不配置,则会报错。'."\n" - .'>', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'asg-bp1ffogfdauy0jw0****', - ], + 'schema' => ['description' => '伸缩配置的名称,2~64个英文或中文字符,以数字、大小写字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。'."\n" + ."\n" + .'在同一地域下同一伸缩组内伸缩配置名称唯一。如果您没有指定该参数,则默认使用伸缩配置的ID。 ', 'type' => 'string', 'required' => false, 'example' => 'test-modify'], ], [ - 'name' => 'InstanceRefreshTaskIds', + 'name' => 'InstanceName', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '待查询实例刷新任务的 ID。', - 'type' => 'array', - 'items' => [ - 'description' => '待查询实例刷新任务的 ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'ir-adfa12312*****', - ], - 'required' => false, - 'maxItems' => 20, - ], + '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' => '内存大小。单位:GiB。'."\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" + ."\n" + .'该参数不能与`SystemDiskCategories`同时指定。当该参数与`SystemDiskCategories`都未指定时,该参数有默认值。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}。', '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接口查询可用的RAM角色。创建RAM角色的方法,请参见API CreateRole。', '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'], ], - ], - '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' => [ - 'description' => '实例刷新任务列表。', - 'type' => 'array', - 'items' => [ - 'description' => '实例刷新任务。', - 'type' => 'object', - 'properties' => [ - 'ScalingGroupId' => [ - 'description' => '伸缩组ID。', - 'type' => 'string', - 'example' => 'asg-bp16pbfcr8j9*****', - ], - 'InstanceRefreshTaskId' => [ - 'description' => '实例刷新任务ID。', - 'type' => 'string', - 'example' => 'ir-1adfa123****', - ], - '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" - .'- 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' => [ - 'description' => '扩展启动模板的实例规格信息。', - 'type' => 'array', - 'items' => [ - 'description' => '扩展启动模板的实例规格信息。', - 'type' => 'object', - 'properties' => [ - 'InstanceType' => [ - 'description' => '指定的实例规格,会覆盖启动模板中的实例规格。', - 'type' => 'string', - 'example' => 'ecs.sn1ne.large', - ], - ], - ], - ], - 'Containers' => [ - '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' => [ - 'description' => '容器启动命令。', - 'type' => 'array', - 'items' => [ - 'description' => '容器启动命令。', - 'type' => 'string', - 'example' => 'sleep', - ], - ], - 'Args' => [ - 'description' => '容器启动命令对应的参数。', - 'type' => 'array', - 'items' => [ - 'description' => '容器启动命令对应的参数。', - 'type' => 'string', - 'example' => '100', - ], - ], - 'EnvironmentVars' => [ - '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', - ], - ], - ], - ], - ], - ], - ], - ], - ], - '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' => [ - 'description' => '刷新任务检查点:指定在实例刷新过程中,当新实例占比达到设定值时自动暂停任务CheckpointPauseTime分钟。', - 'type' => 'array', - 'items' => [ - 'description' => '刷新任务检查点:指定在实例刷新过程中,当新实例占比达到设定值时自动暂停任务CheckpointPauseTime分钟。', - 'type' => 'object', - 'properties' => [ - 'Percentage' => [ - 'description' => '伸缩组中新实例占总实例的占比,到达该占比时任务自动暂停。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '60', - ], - ], - ], - ], - ], - ], - ], - ], - ], + [ + 'name' => 'DedicatedHostId', + 'in' => 'query', + 'schema' => ['description' => '是否在专有宿主机上创建ECS实例。由于专有宿主机不支持创建抢占式实例,指定DedicatedHostId参数后,会自动忽略请求中的SpotStrategy和SpotPriceLimit设置。'."\n" + ."\n" + .'您可以调用DescribeDedicatedHosts API接口查询专有宿主机ID列表。', 'type' => 'string', 'required' => false, 'example' => 'dh-bp67acfmxazb4p****'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f****\\",\\n \\"MaxResults\\": 50,\\n \\"TotalCount\\": 100,\\n \\"InstanceRefreshTasks\\": [\\n {\\n \\"ScalingGroupId\\": \\"asg-bp16pbfcr8j9*****\\",\\n \\"InstanceRefreshTaskId\\": \\"ir-1adfa123****\\",\\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 {\\n \\"InstanceType\\": \\"ecs.sn1ne.large\\"\\n }\\n ],\\n \\"Containers\\": [\\n {\\n \\"Name\\": \\"name\\",\\n \\"Image\\": \\"registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:latest\\",\\n \\"Commands\\": [\\n \\"sleep\\"\\n ],\\n \\"Args\\": [\\n \\"100\\"\\n ],\\n \\"EnvironmentVars\\": [\\n {\\n \\"Key\\": \\"PATH\\",\\n \\"Value\\": \\"/usr/local/bin\\",\\n \\"FieldRefFieldPath\\": \\"fieldPath\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"FinishedUpdateCapacity\\": 10,\\n \\"TotalNeedUpdateCapacity\\": 20,\\n \\"SkipMatching\\": true,\\n \\"CheckpointPauseTime\\": 30,\\n \\"Checkpoints\\": [\\n {\\n \\"Percentage\\": 60\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', - 'title' => '查询实例刷新任务列表', - ], - 'StartInstanceRefresh' => [ - 'summary' => '在您需要将新的伸缩配置应用到伸缩组实例中时,或需要更新伸缩组中实例的镜像时,您可以调用本接口完成伸缩组中实例的刷新。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'Affinity', + 'in' => 'query', + 'schema' => ['description' => '专有宿主机实例是否与专有宿主机关联。可能值:'."\n" + ."\n" + .'- default:实例不与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,若原专有宿主机可用资源不足,则实例被放置在自动部署资源池的其它专有宿主机上。'."\n" + ."\n" + .'- host:实例与专有宿主机关联。已启用节省停机模式的实例,停机后再次启动时,仍放置在原专有宿主机上。若原专有宿主机可用资源不足,则实例重启失败。', 'type' => 'string', 'required' => false, 'example' => 'default'], ], - ], - 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '234862', - 'abilityTreeNodes' => [ - 'FEATUREessPV8ZVU', - 'FEATUREess8Q01K5', + [ + 'name' => 'Tenancy', + 'in' => 'query', + 'schema' => ['description' => '是否在专有宿主机上创建实例。可能值:'."\n" + ."\n" + .'- default:创建非专有宿主机实例。'."\n" + ."\n" + .'- host:创建专有宿主机实例。若您不指定DedicatedHostId,则由阿里云自动选择专有宿主机放置实例。', 'type' => 'string', 'required' => false, 'example' => 'default'], ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'SchedulerOptions', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'style' => 'json', + 'schema' => ['description' => '调度选项。', 'type' => 'object', 'required' => false, 'example' => '["testManagedPrivateSpaceId****"]'], ], [ - 'name' => 'ClientToken', + 'name' => 'PrivatePoolOptions.MatchCriteria', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '实例启动的私有池容量选项。弹性保障服务或容量预定服务在生效后会生成私有池容量,供实例启动时选择。可能值:'."\n" + ."\n" + .'- Open:开放模式。将自动匹配开放类型的私有池容量。如果没有符合条件的私有池容量,则使用公共池资源启动。该模式下无需设置PrivatePoolOptions.Id参数。'."\n" + ."\n" + .'- Target:指定模式。使用指定的私有池容量启动实例,如果该私有池容量不可用,则实例会启动失败。该模式下必须指定私有池ID,即PrivatePoolOptions.Id参数为必填项。'."\n" + ."\n" + .'- None:不使用模式。实例启动将不使用私有池容量。', 'type' => 'string', 'required' => false, 'example' => 'Open'], ], [ - 'name' => 'RegionId', + 'name' => 'PrivatePoolOptions.Id', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '私有池ID。即弹性保障服务ID或容量预定服务ID。'."\n", 'type' => 'string', 'required' => false, 'example' => 'eap-bp67acfmxazb4****'], ], [ - 'name' => 'MinHealthyPercentage', + 'name' => 'SpotDuration', 'in' => 'query', - 'schema' => [ - 'description' => '实例刷新期间,保持伸缩组中正常提供服务占伸缩组容量的比例。取值范围 0~100。'."\n" - .'默认值:80。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '80', - ], + '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' => 'MaxHealthyPercentage', + 'name' => 'SpotInterruptionBehavior', 'in' => 'query', - 'schema' => [ - 'description' => '实例刷新期间,伸缩组中实例可以超出伸缩组容量的比例。取值范围 100~200。'."\n" - .'默认值:120。'."\n" - ."\n" - .'> 当MinHealthyPercentage = MaxHealthyPercentage = 100时,每次会刷新1个实例。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - ], + 'schema' => ['description' => '抢占实例中断模式。目前仅支持Terminate(默认)直接释放实例。', 'type' => 'string', 'required' => false, 'example' => 'Terminate'], ], [ - 'name' => 'DesiredConfiguration', + 'name' => 'DataDisks', 'in' => 'query', - 'style' => 'flat', + 'style' => 'repeatList', 'schema' => [ - 'description' => '实例刷新的期望配置。'."\n" - ."\n" - .'> - ScalingConfigurationId 、ImageId、LaunchTemplateId、Containers 不可以同时设置。当该参数为空时,以伸缩组当前生效的配置进行刷新。'."\n" - .'> - 实例刷新任务执行成功后,伸缩组生效的伸缩配置会更新为该配置。', - 'type' => 'object', - 'properties' => [ - 'ImageId' => [ - 'description' => '镜像ID。'."\n" - ."\n\n" + 'description' => '数据盘信息的集合。', + 'type' => 'array', + 'items' => [ + 'description' => '数据盘信息的集合。', + 'type' => 'object', + 'properties' => [ + 'PerformanceLevel' => ['description' => '当数据盘为ESSD云盘时,设置云盘的性能等级。可能值:'."\n" ."\n" - .'> - 实例刷新任务执行成功后,伸缩组当前生效的配置信息中的镜像配置会更新为该镜像。'."\n" - .'> - 伸缩组当前生效的配置信息来源是启动模版时不支持设置该参数。', - 'type' => 'string', - 'required' => false, - 'example' => 'm-2ze8cqacj7opnf***', - ], - 'ScalingConfigurationId' => [ - 'description' => '伸缩配置的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asc-2zed7lqn4ts4****', - ], - 'LaunchTemplateId' => [ - 'description' => '实例启动模板的 ID,用于指定伸缩组从实例启动模板获取启动配置信息。', - 'type' => 'string', - 'required' => false, - 'example' => 'lt-2ze2qli30u***', - ], - 'LaunchTemplateVersion' => [ - 'description' => '实例启动模板的版本。取值范围:'."\n" + .'- PL0:单盘最高随机读写IOPS 1万。'."\n" + .'- PL1:单盘最高随机读写IOPS 5万。'."\n" + .'- PL2:单盘最高随机读写IOPS 10万。'."\n" + .'- PL3:单盘最高随机读写IOPS 100万。'."\n" ."\n" - .'- 固定的模板版本号。'."\n" - .'- Default:始终使用模板默认版本。'."\n" - .'- Latest:始终使用模板最新版本。'."\n" + .'> 关于如何选择ESSD云盘性能等级,请参见[ESSD云盘](~~122389~~)。', 'type' => 'string', 'required' => false, 'example' => 'PL1'], + 'AutoSnapshotPolicyId' => ['description' => '数据盘使用的自动快照策略ID。', 'type' => 'string', 'required' => false, 'example' => 'sp-bp19nq9enxqkomib****'], + 'Encrypted' => ['description' => '是否加密系统盘。可能值:'."\n" ."\n" - .'> 版本设置为 Default、Latest 时,实例刷新任务不支持回滚。', - 'type' => 'string', - 'required' => false, - 'example' => '8', - ], - 'LaunchTemplateOverrides' => [ - 'description' => '扩展启动模板的实例规格信息。', - 'type' => 'array', - 'items' => [ - 'description' => '扩展启动模板的实例规格信息。', - 'type' => 'object', - 'properties' => [ - 'InstanceType' => [ - 'description' => '本参数用于指定实例规格,会覆盖启动模板中的实例规格。'."\n" - ."\n" - .'> 仅当LaunchTemplateId参数指定了启动模板时,本参数生效。', - 'type' => 'string', - 'required' => false, - 'example' => 'ecs.c5.2xlarge', - ], - ], - 'required' => false, - ], - 'required' => false, - ], - 'Containers' => [ - 'description' => '实例包含的容器列表。'."\n" + .'- true:加密。'."\n" + .'- false:不加密。', 'type' => 'string', 'required' => false, 'example' => 'false'], + 'Description' => ['description' => '系统盘的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。', 'type' => 'string', 'required' => false, 'example' => 'Test data disk. '."\n"], + 'SnapshotId' => ['description' => '创建数据盘时使用的快照。指定该参数后,DataDisk.Size会被忽略,实际创建的磁盘大小为指定快照的大小。'."\n" ."\n" - .'> - 该参数仅支持ECI类型伸缩组。'."\n" - .'> - 只会刷新当前伸缩配置容器列表中和`Container.Name`相同的容器配置。', - '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' => '容器启动命令。最多 20 个。每个命令最多包含 256 个字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'sleep', - ], - 'required' => false, - ], - 'Args' => [ - 'description' => '容器启动命令对应的参数。最多 10 个。', - 'type' => 'array', - 'items' => [ - 'description' => '容器启动命令对应的参数。最多10个。', - '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, - ], - ], + .'如果该快照创建于2013年7月15日或之前,调用会被拒绝,返回参数中会提示InvalidSnapshot.TooOld。', 'type' => 'string', 'required' => false, 'example' => 's-snapshot**** '."\n"], + 'Categories' => [ + 'description' => '数据盘的多磁盘类型。可能值:'."\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" + .'- cloud_regional_disk_auto:ESSD 同城冗余云盘。'."\n" + ."\n" + .'> 指定本参数时,不允许同时指定`DataDisk.Category`。', + 'type' => 'array', + 'items' => ['description' => '数据盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建数据盘。可能值:'."\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" + .'- cloud_regional_disk_auto:ESSD 同城冗余云盘。'."\n" + ."\n" + .'> 指定本参数时,不允许同时指定`DataDisk.Category`。', 'type' => 'string', 'required' => false, 'example' => 'cloud'], 'required' => false, + 'maxItems' => 10, ], - 'required' => false, + '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。'."\n" + ."\n" + .'指定该参数后,磁盘大小必须大于等于快照大小(快照通过SnapshotId指定)。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], + 'Device' => ['description' => '数据盘挂载点。如果您没有指定该参数,则默认在自动创建ECS实例时由系统分配,从/dev/xvdb开始,到/dev/xvdz结束。', 'type' => 'string', 'required' => false, 'example' => '/dev/xvdd'], + 'DiskName' => ['description' => '系统盘的名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以`http://`和`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssdData '."\n"], + 'Category' => ['description' => '数据盘的磁盘种类。可能值:'."\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" + .'- cloud_regional_disk_auto:ESSD 同城冗余云盘。'."\n" + ."\n" + .'该参数不能与`DataDisk.Categories`同时指定。当该参数与`DataDisk.Categories`都未指定时,该参数默认值:'."\n" + ."\n" + .'- 对于I/O优化实例,默认值为cloud_efficiency。'."\n" + ."\n" + .'- 对于非I/O优化实例,默认值为cloud。', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd'], + 'DeleteWithInstance' => ['description' => '指定数据盘是否随实例释放。可能值:'."\n" + ."\n" + .'- true:释放实例时,该磁盘随实例一起释放。'."\n" + .'- false:释放实例时,该磁盘保留不释放。'."\n" + ."\n" + .'该参数只可对独立云盘设置(DataDisk.Category为cloud、cloud_efficiency、cloud_ssd、cloud_essd或者cloud_auto),否则会出现报错。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'KMSKeyId' => ['description' => '数据盘对应的KMS密钥的ID。', '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" + .'> 当`SystemDisk.Category`取值为`cloud_auto`时才支持设置该参数。'."\n" + ."\n" + .'更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], + 'required' => false, ], 'required' => false, + 'maxItems' => 16, ], ], [ - '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', + 'name' => 'SpotPriceLimits', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '刷新任务检查点:指定在实例刷新过程中,当新实例占比达到设定值时自动暂停任务CheckpointPauseTime分钟。', + 'description' => '抢占实例规格的相关信息。', 'type' => 'array', 'items' => [ - 'description' => '刷新任务检查点:指定在实例刷新过程中,当新实例占比达到设定值时自动暂停任务`CheckpointPauseTime`分钟。', + 'description' => '抢占实例规格的相关信息。', 'type' => 'object', 'properties' => [ - 'Percentage' => [ - 'description' => '伸缩组中新实例占总实例的占比,到达该占比时任务自动暂停。取值范围:1 ~100 (%)。'."\n" - ."\n" - .'> 需要从小到大设置,且最后一个进度百分比需要为100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '20', - ], + 'PriceLimit' => ['description' => '抢占式实例对应的出价。SpotStrategy取值为SpotWithPriceLimit时生效。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.125 '."\n"], + 'InstanceType' => ['description' => '抢占式实例的实例规格。SpotStrategy取值为SpotWithPriceLimit时生效。', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large '."\n"], ], 'required' => false, ], 'required' => false, - 'maxItems' => 100, + 'maxItems' => 20, ], ], [ - 'name' => 'CheckpointPauseTime', + 'name' => 'InstanceTypes', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '当进入刷新任务检查点时,暂停的时长。'."\n" - .'- 单位:分钟'."\n" - .'- 取值范围 : 1~ 2880'."\n" - .' - 默认值:60。', - 'type' => 'integer', - 'format' => 'int32', + 'description' => '多实例规格参数。如果使用了InstanceTypes,InstanceType将被忽略。'."\n" + ."\n" + .'当无法根据优先级较高的实例规格创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格来创建实例。', + 'type' => 'array', + 'items' => ['description' => '多实例规格参数。如果使用了InstanceTypes,InstanceType将被忽略。'."\n" + ."\n" + .'当无法根据优先级较高的实例规格创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格来创建实例。', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large'], '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*****', - ], - ], + 'maxItems' => 20, ], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"InstanceRefreshTaskId\\": \\"ir-a12ds234fasd*****\\"\\n}","type":"json"}]', - 'title' => '启动实例刷新任务', - 'description' => '- 伸缩组同时刻只能有一个正在运行中的实例刷新任务。'."\n" - .'- 目前该功能仅支持扩容策略为**优先级策略**的ECS伸缩组。**使用vCPU个数计算伸缩组容量**的伸缩组和实例回收模式为**停机回收模式**、**强制停机回收模式**的伸缩组不支持该功能。'."\n" - .'- 实例刷新期间,可以进行正常扩缩容,但扩容时会以实例刷新的期望配置进行扩容。'."\n" - .'- 伸缩组手动添加的实例、处于备用状态、保护状态的实例会被实例刷新任务忽略,不参与实例刷新。', - ], - 'CancelInstanceRefresh' => [ - 'summary' => '取消实例刷新任务,会保留已经完成替换和扩容的新实例。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '234868', - 'abilityTreeNodes' => [ - 'FEATUREessPV8ZVU', - ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'InstanceTypeOverrides', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1igpak5ft1flyp****', + 'description' => '用于指定的实例规格相关信息。', + 'type' => 'array', + 'items' => [ + 'description' => '用于指定的实例规格相关信息。', + 'type' => 'object', + 'properties' => [ + 'InstanceType' => ['description' => '当您需要指定伸缩配置中实例规格的容量时,请同时指定本参数和InstanceTypeOverride.WeightedCapacity。'."\n" + ."\n" + .'本参数用于指定实例规格。您可以指定多个本参数,结合InstanceTypeOverride.WeightedCapacity参数,扩展多实例规格支持自定义权重。'."\n" + ."\n" + .'> 指定本参数时,不允许同时指定instanceTypes。'."\n" + ."\n" + .'InstanceType的取值范围:在售的ECS实例规格。', 'type' => 'string', 'required' => false, 'example' => 'ecs.c5.xlarge '."\n"], + 'WeightedCapacity' => ['description' => '当您需要伸缩组按照实例规格容量进行伸缩时,在指定LaunchTemplateOverride.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' => 'RegionId', + 'name' => 'SecurityGroupIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', + 'description' => '所属安全组ID。', + 'type' => 'array', + 'items' => ['description' => '所属安全组ID。', 'type' => 'string', 'required' => false, 'example' => 'sg-bp18kz60mefs**** '."\n"], + 'required' => false, + 'maxItems' => 16, ], ], [ - 'name' => 'InstanceRefreshTaskId', + 'name' => 'InstancePatternInfos', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '实例刷新的任务ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'ir-aca123sf****', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', + 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。', + 'type' => 'array', + 'items' => [ + 'description' => '智能配置的信息集合,用于筛选符合要求的实例规格范围。', + 'type' => 'object', + 'properties' => [ + 'Cores' => ['description' => '智能配置模式下,实例规格的vCPU内核数目,用于筛选符合要求的实例规格范围。更多信息,请参见[实例规格族](~~25378~~)。'."\n" + ."\n" + .'请注意以下信息:'."\n" + ."\n" + .'- InstancePatternInfo参数仅适用于伸缩组的网络类型为专有网络。'."\n" + ."\n" + .'- InstancePatternInfo参数必须同时配置InstancePatternInfo.Cores和InstancePatternInfo.Memory。'."\n" + ."\n" + .'- 如果您已经通过InstanceType或InstanceTypes参数指定了实例规格,弹性伸缩优先使用您指定的实例规格扩容,当指定的实例规格无库存时,再从符合InstancePatternInfo参数值的实例规格中优先使用价格最低的实例规格扩容。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2'], + 'InstanceFamilyLevel' => ['description' => '实例规格族级别,用于筛选符合要求的实例规格范围,当`CostOptimization`开启时生效。可能值:'."\n" + ."\n" + .'- EntryLevel:入门级,即共享型实例规格。成本更低,但是无法保证实例计算性能的稳定。适用于平时CPU使用率低的业务场景。更多信息,请参见[共享型](~~108489~~)。'."\n" + .'- EnterpriseLevel:企业级。性能稳定且资源独享,适用于对稳定性要求高的业务场景。更多信息,请参见[实例规格族](~~25378~~)。'."\n" + .'- CreditEntryLevel:积分入门级,即突发性能实例。通过CPU积分来保证计算性能,适用于平时CPU使用率低、偶有突发CPU使用率的业务场景。更多信息,请参见[突发性能实例概述](~~59977~~)。', 'type' => 'string', 'required' => false, 'example' => 'EnterpriseLevel'], + 'MaxPrice' => ['description' => '智能配置模式下,按量付费实例或者抢占式实例可接受的每小时最高价格,用于筛选符合要求的实例规格范围。'."\n" + ."\n" + .'> SpotStrategy设置为SpotWithPriceLimit时,该参数必选。其他情况下,该参数可选。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '2'], + 'Memory' => ['description' => '智能配置模式下,实例规格的内存大小,单位为GiB,用于筛选符合要求的实例规格范围。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '4'], + 'Architectures' => [ + '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" + .'- Exclude:不包含性能突发实例规格。'."\n" + .'- Include:包含性能突发实例规格。'."\n" + .'- Required:只包含性能突发实例规格。'."\n" + ."\n" + .'默认值:Include。', 'type' => 'string', 'required' => false, 'example' => 'Include'], + 'ExcludedInstanceTypes' => [ + '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', 'required' => false, 'example' => 'ecs.n1.small/ecs.n1.*/*7*'], + 'required' => false, + 'maxItems' => 100, + ], + '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" + .'- 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" + .'- 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" + .'>N表示可以设置多个CPU架构,N的取值范围:1~2。'."\n" + ."\n" + .'- X86。'."\n" + .'- ARM。', + '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' => 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'], + '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, ], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '取消实例刷新任务', - 'description' => '- 正在回滚中的实例刷新任务不支持取消。', - ], - 'RollbackInstanceRefresh' => [ - 'summary' => '在实例刷新任务执行过程中,如果发现期望配置不符合需求,您可以调用此API来回滚实例刷新任务。在回滚时,系统将使用伸缩组当前生效的配置来创建新的实例,以替换那些基于期望配置创建的实例。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '234874', - 'abilityTreeNodes' => [ - 'FEATUREessPV8ZVU', - ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'SystemDiskCategories', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', + 'description' => '系统盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。可能值:'."\n" + .'- cloud:普通云盘。'."\n" + .'- cloud_efficiency:高效云盘。'."\n" + .'- cloud_ssd:SSD云盘。'."\n" + .'- cloud_essd:ESSD云盘。'."\n" + ."\n" + .'> 指定本参数时,不允许同时指定`SystemDisk.Category`。', + 'type' => 'array', + 'items' => ['description' => '系统盘的多磁盘类型。当无法使用高优先级的磁盘类型时,弹性伸缩自动尝试下一优先级的磁盘类型创建系统盘。可能值:'."\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, + 'maxItems' => 10, ], ], [ - 'name' => 'RegionId', + 'name' => 'Password', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属地域的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'ECS实例的密码。长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号中的三类字符。特殊符号可以是:'."\n" + ."\n" + .'`()~!@#$%^&*-_+=\\|{}[]:;\'<>,.?/'."\n" + ."\n" + .'其中,Windows实例不能以斜线号(/)为密码首字符。'."\n" + ."\n" + .'> 如果传入Password参数,建议您使用HTTPS协议发送请求,避免密码泄露。', 'type' => 'string', 'required' => false, 'example' => '123abc****'], ], [ - 'name' => 'InstanceRefreshTaskId', + 'name' => 'SystemDisk.Encrypted', 'in' => 'query', - 'schema' => [ - 'description' => '实例刷新任务ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'ir-a12ds234fasd*****', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'B13527BF-1FBD-4334-A512-20F5E9D3****', - ], - ], - ], + 'schema' => ['description' => '是否加密系统盘。可能值:'."\n" + ."\n" + .'- true:加密。'."\n" + .'- false:不加密。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B13527BF-1FBD-4334-A512-20F5E9D3****\\"\\n}","type":"json"}]', - 'title' => '回滚实例刷新任务', - ], - 'SuspendInstanceRefresh' => [ - 'summary' => '实例刷新任务执行期间,如果您觉得配置存在问题,但不确定是否需要回滚,您可以调用此API暂停实例刷新任务,在此期间,您可以检查配置是否正确。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], - ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '234876', - 'abilityTreeNodes' => [ - 'FEATUREessPV8ZVU', + 'name' => 'SystemDisk.KMSKeyId', + 'in' => 'query', + 'schema' => ['description' => '系统盘使用的KMS密钥ID。', 'type' => 'string', 'required' => false, 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****'], ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'SystemDisk.EncryptAlgorithm', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '系统盘采用的加密算法。可能值:'."\n" + ."\n" + .'- AES-256。'."\n" + .'- SM4-128。'."\n" + ."\n" + .'默认值:AES-256。', 'type' => 'string', 'required' => false, 'example' => 'AES-256'], ], [ - 'name' => 'RegionId', + 'name' => 'SystemDisk.ProvisionedIops', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + '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' => 'InstanceRefreshTaskId', + 'name' => 'SystemDisk.BurstingEnabled', 'in' => 'query', - 'schema' => [ - 'description' => '实例刷新任务ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'ir-a12ds234fasd*****', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], - ], + 'schema' => ['description' => '系统盘是否开启Burst(性能突发)。可能值:'."\n" + ."\n" + .'- true:开启。'."\n" + .'- false:未开启。 '."\n" + .'> 当`SystemDisk.Category`取值为`cloud_auto`时才支持设置该参数。'."\n" + ."\n" + .'更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '暂停实例刷新任务', - 'description' => '- 处于回滚阶段的实例刷新任务不支持该操作。', - ], - 'ResumeInstanceRefresh' => [ - 'summary' => '恢复一个处于暂停状态的实例刷新任务。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'ImageOptions.LoginAsNonRoot', + 'in' => 'query', + 'schema' => ['description' => 'ECS实例是否使用ecs-user用户登录,更多信息,请参见[管理ECS实例的登录名](~~388447~~)。可能值:'."\n" + ."\n" + .'true:是。'."\n" + ."\n" + .'false:否。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '234877', - 'abilityTreeNodes' => [ - 'FEATUREessPV8ZVU', + [ + 'name' => 'DeletionProtection', + 'in' => 'query', + 'schema' => ['description' => '实例释放保护属性,指定是否支持通过ECS控制台或API(DeleteInstance)直接释放实例,防止实例被误删除。可能值:'."\n" + ."\n" + .'- true:开启实例释放保护,无法通过ECS控制台或API(DeleteInstance)直接释放实例。'."\n" + ."\n" + .'- false:关闭实例释放保护,可以通过ECS控制台或API(DeleteInstance)直接释放实例。'."\n" + ."\n" + .'>该属性仅适用于按量付费实例,防止弹性伸缩扩容的实例被误删除,不影响正常的缩容活动,开启实例释放保护的实例可以被缩容活动释放掉。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'StorageSetId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '存储集ID。', 'type' => 'string', 'required' => false, 'example' => 'ss-bp67acfmxazb4p****'], ], [ - 'name' => 'RegionId', + 'name' => 'StorageSetPartitionNumber', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '存储集中的最大分区数量。取值为大于等于2的整数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2'], ], [ - 'name' => 'InstanceRefreshTaskId', + 'name' => 'CustomPriorities', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '实例刷新任务ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'ir-a12ds234fasd*****', + 'description' => 'ECS实例规格+交换机的自定义优先级。'."\n" + .'>仅在伸缩组的扩缩容策略为优先级策略时有效。>'."\n" + ."\n" + .'当无法根据优先级较高的实例规格和交换机创建出实例时,弹性伸缩服务会自动选择下一优先级的实例规格和交换机组合来创建实例。'."\n" + ."\n" + .'> 如果仅指定了部分实例规格+交换机的自定义优先级,则未指定的部分优先级低于指定的部分,且未指定部分仍会依次按照伸缩组的交换机顺序、伸缩配置的实例规格顺序确定优先级。'."\n" + .'> - 例如:伸缩组的交换机顺序为vsw1、vsw2,伸缩配置的实例规格顺序为type1、type2,自定义优先级顺序为["vsw2+type2", "vsw1+type2"],则最终优先级为:"vsw2+type2" > "vsw1+type2" > "vsw1+type1" > "vsw2+type1"', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceType' => ['description' => 'ECS实例的实例规格。'."\n" + ."\n" + .'>必须包含在伸缩配置的实例规格列表中。', 'type' => 'string', 'required' => false, 'example' => 'ecs.c6a.4xlarge'], + 'VswitchId' => ['description' => '虚拟交换机的ID。'."\n" + ."\n" + .'>必须包含在伸缩组的交换机列表中。', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp14zolna43z266bq****'], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + 'maxItems' => 100, ], ], - ], - 'responses' => [ - 200 => [ + [ + 'name' => 'NetworkInterfaces', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', + 'description' => '弹性网卡列表。', + 'type' => 'array', + 'items' => [ + 'description' => '弹性网卡。', + 'type' => 'object', + 'properties' => [ + 'InstanceType' => ['description' => '弹性网卡类型。使用此参数时,必须使用NetworkInterfaces设置主网卡,同时不能设置SecurityGroupId或SecurityGroupIds参数。可能值:'."\n" + ."\n" + .'- Primary:主网卡。'."\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" + ."\n" + .'>RDMA模式的弹性网卡数量不能超过该实例规格族的限制。更多信息,请参见[实例规格族](~~25378~~)。', 'type' => 'string', 'required' => false, 'example' => 'HighPerformance'], + 'Ipv6AddressCount' => ['description' => '为主网卡指定随机生成的 IPv6 地址数量。 您需要注意:'."\n" + ."\n" + .'NetworkInterface.InstanceType取值为Primary时,设置该参数才会生效。如果NetworkInterface.InstanceType取值为Secondary或空值,则不能设置该参数。'."\n" + ."\n" + .'设置该参数后,您不能再设置Ipv6AddressCount。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], + 'SecurityGroupIds' => [ + 'description' => '弹性网卡所属的一个或多个安全组 ID。', + 'type' => 'array', + 'items' => ['description' => '弹性网卡所属的一个或多个安全组 ID。'."\n" + .'您需要注意:'."\n" + ."\n" + .'- 如果NetworkInterface.InstanceType取值为Primary,则必须设置该参数。此时该参数的作用等同于SecurityGroupIds,但需要注意不能再设置SecurityGroupId、SecurityGroupIds。'."\n" + ."\n" + .'- 如果NetworkInterface.InstanceType取值为Secondary或空值,则该参数为非必填参数。默认值为 ECS 实例所属的安全组,即主网卡的安全组。', 'type' => 'string', 'required' => false, 'example' => 'sg-2ze55shrxxxxx'], + 'required' => false, + 'maxItems' => 20, + ], + 'SecondaryPrivateIpAddressCount' => ['description' => '为网卡指定辅助私网 IPv4 地址数量。取值范围:1~49。'."\n" + ."\n" + .'- 取值不能超过该实例规格对于ip 数量的限制。更多信息,请参见[实例规格族](https://help.aliyun.com/zh/ecs/user-guide/overview-of-instance-families)。'."\n" + ."\n" + .'- NetworkInterface.N.SecondaryPrivateIpAddressCount用于为网卡分配辅助私网IPv4 地址数量(不包含该网卡的主私网 IP),系统将从该网卡所在虚拟交换机(NetworkInterface.N.VSwitchId)的可用网段中随机分配。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '6'], ], + 'required' => false, ], + 'required' => false, + 'maxItems' => 10, ], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '恢复暂停中的实例刷新任务', - ], - 'CreateLifecycleHook' => [ - 'summary' => 'CreateLifecycleHook API用于在指定的弹性伸缩组中创建一个或多个生命周期挂钩。这些挂钩在实例的生命周期关键阶段(如启动、终止前)介入,使您能够执行自定义操作,如发送通知或执行自动化脚本等。通过此功能,您可以实现更细粒度的控制和管理,例如在实例被自动伸缩活动影响前后执行验证、配置或数据备份任务,从而增强应用部署的灵活性和可靠性。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '125396', - 'abilityTreeNodes' => [ - 'FEATUREessZQ2TYX', - ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'DedicatedHostClusterId', 'in' => 'query', - 'schema' => [ - 'description' => '目标伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1eyv4qn8ssgv43****', - ], + 'schema' => ['description' => '专有宿主机集群ID。', 'type' => 'string', 'required' => false, 'example' => 'dc-zm04u8r3lohsq****'], ], [ - 'name' => 'LifecycleHookName', + 'name' => 'SecurityOptions', 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '生命周期挂钩的名称。不能与当前伸缩组其他生命周期挂钩重名,长度为2~64个英文或中文字符,以数字、大小写字母或中文开头,可包含数字、下划线(_)、短划线(-)和英文句号(.)。'."\n" - ."\n" - .'默认值为LifecycleHookId的值。', - 'type' => 'string', + '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, - 'example' => 'lifecyclehook****', ], ], [ - 'name' => 'LifecycleTransition', + 'name' => 'HttpEndpoint', 'in' => 'query', - 'schema' => [ - 'description' => '生命周期挂钩适用的伸缩活动类型,取值范围: '."\n" - .' '."\n" - .'- SCALE_OUT:伸缩组弹性扩张活动 '."\n" - .'- SCALE_IN:伸缩组弹性收缩活动 '."\n" - .' ', - 'type' => 'string', - 'required' => true, - 'example' => 'SCALE_OUT', - ], + 'schema' => ['description' => '是否启用实例元数据的访问通道。取值范围:'."\n" + .'- enabled:启用。'."\n" + .'- disabled:禁用。'."\n" + ."\n" + .'默认值:enabled。'."\n" + ."\n" + .'> 有关实例元数据的信息,请参见[实例元数据概述](~~108460~~)。', 'type' => 'string', 'required' => false, 'example' => 'enabled'], ], [ - 'name' => 'DefaultResult', + 'name' => 'HttpTokens', '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\n" - ."\n" - .'默认值:CONTINUE', - 'type' => 'string', - 'required' => false, - 'example' => 'CONTINUE', - ], + 'schema' => ['description' => '访问实例元数据时是否强制使用加固模式(IMDSv2)。取值范围:'."\n" + ."\n" + .'- optional:不强制使用。'."\n" + .'- required:强制使用。设置该取值后,普通模式无法访问实例元数据。'."\n" + ."\n" + .'默认值:optional。'."\n" + ."\n" + .'> 有关访问实例元数据的模式,请参见[实例元数据访问模式](~~108460~~)。', 'type' => 'string', 'required' => false, 'example' => 'optional'], ], [ - 'name' => 'HeartbeatTimeout', + 'name' => 'InternetMaxBandwidthIn', 'in' => 'query', - 'schema' => [ - 'description' => '生命周期挂钩为伸缩组活动设置的等待时间,等待状态超时后会执行下一步动作。取值范围:30~21600,单位:秒。'."\n" - ."\n" - .'创建了生命周期挂钩后,您可以调用RecordLifecycleActionHeartbeat延长ECS实例的等待时间,也可以调用CompleteLifecycleAction提前结束伸缩活动的等待状态。 '."\n" - ."\n" - .'默认值:600', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '600', - ], + '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' => 'NotificationMetadata', + 'name' => 'ResourcePoolOptions', 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '生命周期挂钩暂停伸缩活动时推送给NotificationArn(通知对象)的通知信息,便于管理和标记不同类别的通知信息。必须同时指定NotificationArn。参数长度不能超过4096个字符。'."\n" - ."\n" - .'如果NotificationArn指定为OOS模板,包括公共模板或者自定义模板,则NotificationMetadata必须指定为JSON字符串,且与OOS模板的参数相符。比如,`{"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" + 'description' => '创建实例时使用的资源池策略。当您设置该参数后,需要注意:'."\n" ."\n" - .'- `lifecycleActionResult` :生命周期挂钩等待状态结束后的下一步动作,用于在OOS模板执行失败时提前结束当前的挂起活动,当DefaultResult为ROLLBACK时,参数值默认为ROLLBACK,其余情况默认为ABANDON。'."\n" + .'- 该参数只在创建按量付费实例时生效。'."\n" ."\n" - .'>- 您可以根据需要设置lifecycleActionResult的值来覆盖当前默认值,取值范围为ABANDON、CONTINUE、ROLLBACK、${lifecycleActionResult}。'."\n" - .'其中,${lifecycleActionResult}表示lifecycleActionResult的值和DefaultResult保持一致。'."\n" - .'- 您可以在[OOS控制台](https://oos.console.aliyun.com/)获取对应模板的参数的详细信息。', - 'type' => 'string', + .'- 该参数不能与PrivatePoolOptions.MatchCriteria、PrivatePoolOptions.Id同时设置。', + 'type' => 'object', + 'properties' => [ + 'Strategy' => ['description' => '资源池包括弹性保障服务或容量预定服务生效后生成的私有池以及公共池,供实例启动时选择。取值范围:'."\n" + ."\n" + .'- PrivatePoolFirst:私有池优先。选择此种策略时,当指定了 ResourcePoolOptions.PrivatePoolIds或满足PrivatePoolTags条件,优先使用对应的私有池。如果未指定私有池或指定的私有池容量不足,将自动匹配开放类型的私有池。如果没有符合条件的私有池,则使用公共池创建实例。'."\n" + ."\n" + .'- PrivatePoolOnly:仅限私有池。选择此种策略时,必须指定ResourcePoolOptions.PrivatePoolIds。如果指定的私有池容量不足,则实例会启动失败。'."\n" + ."\n" + .'- PublicPoolFirst:公有池资源优先。优先使用公共池创建实例,当公有池资源不足时,采用私有池资源进行补充。优先自动匹配开放类型的私有池,如果没有符合条件的私有池,则使用指定的 ResourcePoolOptions.PrivatePoolIds或满足PrivatePoolTags条件的Target类型私有池。(该策略正在邀测中,暂不支持使用。)'."\n" + ."\n" + .'- None:不使用资源池策略。'."\n" + ."\n" + .'默认值:None。', 'type' => 'string', 'required' => false, 'example' => 'PrivatePoolFirst'], + 'PrivatePoolIds' => [ + 'description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。该参数只能传入 Target 模式私有池 ID且与PrivatePoolTags参数不能同时指定。', + 'type' => 'array', + 'items' => ['description' => '私有池 ID。即弹性保障服务 ID 或容量预定服务 ID。该参数只能传入 Target 模式私有池 ID且与PrivatePoolTags参数不能同时指定。N 的取值范围:1~20。', 'type' => 'string', 'required' => false, 'example' => 'eap-bp67acfmxazb4****'], + 'required' => false, + ], + 'PrivatePoolTags' => [ + 'description' => '按标签筛选可用的 Target 私有池。N 的取值范围:1~20。'."\n" + .'说明:'."\n" + .'- 当配置该参数时,系统仅从账号下已关联的 Target 私有池中,筛选出标签匹配且同时满足伸缩组约束(如可用区、实例规格等)的私有池。'."\n" + .'- 标签匹配规则:私有池需匹配所有传入标签。'."\n" + .'- 该参数与PrivatePoolIds参数不能同时指定。', + 'type' => 'array', + 'items' => [ + 'description' => '按标签筛选可用的 Target 私有池。N 的取值范围:1~20。'."\n" + .'说明:'."\n" + .'- 当配置该参数时,系统仅从账号下已关联的 Target 私有池中,筛选出标签匹配且同时满足伸缩组约束(如可用区、实例规格等)的私有池。'."\n" + .'- 标签匹配规则:私有池需匹配所有传入标签。'."\n" + .'- 该参数与PrivatePoolIds参数不能同时指定。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '私有池的标签键。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'], + 'Value' => ['description' => '私有池的标签值。', 'type' => 'string', 'required' => false, 'example' => 'TestValue'], + ], + 'required' => false, + ], + 'required' => false, + ], + ], 'required' => false, - 'example' => 'Test lifecycle hook.', ], ], [ - 'name' => 'NotificationArn', + 'name' => 'InstanceTypeCandidateOptions', 'in' => 'query', + 'style' => 'flat', '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,不支持RAM用户的账号ID。'."\n" - .'- queuename:MNS队列的名称。'."\n" - .'- topicname:MNS主题的名称。'."\n" - .'- templatename:OOS模板的名称。', - 'type' => 'string', + 'description' => '设置备选模式后,当遇到库存不足等问题时,会根据当前已选的实例规格补充相同大小的近似规格,或者创建备选可用区的交换机并添加到伸缩组。', + 'type' => 'object', + 'properties' => [ + 'Enabled' => ['description' => '是否开启备选模式', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'MaxPrice' => ['description' => '备选实例规格的价格上限。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '1.5'], + 'AllowDifferentGeneration' => ['description' => '是否允许补充其他代系的实例规格。'."\n" + ."\n" + .'- 例如当前规格为ecs.c7.large,开启后可备选ecs.c6.large和ecs.c8.large等规格。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'AllowCrossAz' => ['description' => '是否允许补充其他可用区的交换机。'."\n" + .'> 规格不变,仅备选新的可用区。当伸缩组由于库存等问题导致所有已选可用区均无法扩容时,会根据此配置自动增加新的可用区交换机到伸缩组中。'."\n" + .'> 例如,伸缩组配置了cn-hangzhou-h和cn-hangzhou-g可用区,当两个可用区均无法扩容时ESS可能会根据实时库存状况创建一个cn-hangzhou-k的交换机并添加到伸缩组中。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + 'AllowCidrBlocks' => [ + 'description' => '允许补充其他可用区交换机时,需要指定可选的交换机的网段。', + 'type' => 'array', + 'items' => ['description' => '允许补充其他可用区交换机时,需要指定可选的交换机的网段。', 'type' => 'string', 'required' => false, 'example' => '172.16.0.0/24'], + 'required' => false, + ], + ], 'required' => false, - 'example' => 'acs:mns:cn-beijing:161456884340****:queue/modifyLifecycleHo****', ], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'description' => '修改伸缩配置后的返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'LifecycleHookId' => [ - 'description' => '生命周期挂钩的ID。', - 'type' => 'string', - 'example' => 'ash-bp1at9ufhmcf9cmy****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"LifecycleHookId\\": \\"ash-bp1at9ufhmcf9cmy****\\"\\n}","type":"json"}]', - 'title' => '为伸缩组创建一个或多个生命周期挂钩', - 'description' => '一个伸缩组最多可以创建10个生命周期挂钩。创建了生命周期挂钩的伸缩组,在发生伸缩活动时,生命周期挂钩会暂停伸缩活动一段时间,具体等待时长可以通过HeartbeatTimeout参数指定。您可以在等待期间进行初始化ECS实例配置、获取ECS实例数据等操作。'."\n" - ."\n" - .'弹性扩张活动时,ECS实例添加至RDS实例白名单后进入等待状态,等待状态结束后再加入SLB实例后端服务器组。弹性收缩活动时,ECS实例从SLB实例后端服务器组移出后进入等待状态,等待状态结束后再从RDS实例白名单移出。'."\n" + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + 'gatewayOptions' => [ + 'gatewayProtocols' => [], + ], + 'title' => '修改一个ECS类型伸缩配置', + 'description' => '- 如果修改伸缩配置的名称,请注意同一伸缩组下不能存在名称相同的伸缩配置。'."\n" + .'- 支持以下任一方式绑定主网卡,但需要注意一次调用只能选用一种方式配置主网卡,同时使用两种方式将会调用失败并返回错误信息。并且修改伸缩配置时,选择一种方式修改网卡配置时,会清空另一种方式设置的网卡配置。'."\n" ."\n" - .'生命周期挂钩可以配置通知方式,支持MNS主题、MNS队列和OOS模板。如果配置OOS模板,您需要为OOS服务创建RAM角色。具体操作,请参见[为OOS服务设置RAM权限](~~120810~~)。'."\n" + .' - 通过SecurityGroupId、SecurityGroupIds与Ipv6AddressCount等参数直接设置主网卡的相关配置信息。'."\n" ."\n" - .'> 如果伸缩组有存量的ECS实例,且配置的OOS模板用于加入或移出除RDS外的其他云数据库白名单,则您必须手动将存量的ECS实例加入云数据库的白名单。', - ], - 'ModifyLifecycleHook' => [ - 'summary' => '如果当前伸缩组的生命周期挂钩不能满足业务需求,您无需做删除操作,调用ModifyLifecycleHook,通过待修改生命周期挂钩的ID或名称,伸缩组的ID等参数,修改一个生命周期挂钩的信息,包括生命周期挂钩适用的伸缩活动类型,生命周期挂钩为伸缩组活动设置的等待时间,等待状态结束后的下一步动作等信息。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + .' - 通过NetworkInterfaces设置主网卡以及辅助网卡的配置信息。当使用NetworkInterfaces参数时,必须设置主网卡信息,其中NetworkInterface.InstanceType取值为Primary时,表示设置主网卡;当NetworkInterface.InstanceType取值为Secondary或空值时,表示设置辅助网卡。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyScalingConfiguration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + ], + 'ModifyScalingGroup' => [ + 'summary' => '如果您需要根据业务变动需求与策略自动增加或减少指定类型的实例数量,则可以通过配置伸缩组来自动调整您的业务计算能力(即实例数量)。如果当前伸缩组属性不再满足业务需求,则您可以调用API ModifyScalingGroup修改伸缩组属性(例如最大实例数、最小实例数或期望实例数等属性),避免重新创建伸缩组并重新配置相关属性,节省了时间和资源成本。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'read', + 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '125362', - 'abilityTreeNodes' => [ - 'FEATUREessKFTMD6', - ], + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '125326', + 'abilityTreeNodes' => ['FEATUREessXN6KX4'], ], 'parameters' => [ [ - 'name' => 'LifecycleHookId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '待修改生命周期挂钩的ID,用于指定生命周期挂钩。', - 'type' => 'string', - 'required' => false, - 'example' => 'ash-bp1fxuqyi98w0aib****', - ], + 'schema' => ['description' => '待修改伸缩组的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asg-bp1ffogfdauy0jw0****'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'ScalingGroupName', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID,用于指定生命周期挂钩。', - 'type' => 'string', - 'required' => false, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '伸缩组的名称,同一地域下伸缩组名称唯一。长度为2~64个字符,以数字、大小英文字母或中文开头,可以包含数字、下划线(_)、短划线(-)和半角句号(.)。', 'type' => 'string', 'required' => false, 'example' => 'scalinggroup****'], ], [ - 'name' => 'LifecycleHookName', + 'name' => 'MinSize', 'in' => 'query', - 'schema' => [ - 'description' => '待修改生命周期挂钩的名称,用于指定生命周期挂钩。', - 'type' => 'string', - 'required' => false, - 'example' => 'test_SCAL****', - ], + 'schema' => ['description' => '伸缩组内ECS实例或ECI实例台数的最小值,当伸缩组内ECS或ECI实例数小于MinSize时,弹性伸缩会自动创建ECS实例或ECI实例。'."\n" + ."\n" + .'> MinSize的值必须小于或等于MaxSize的值。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'DefaultResult', + 'name' => 'MaxSize', + 'in' => 'query', + 'schema' => ['description' => '伸缩组内ECS实例或ECI实例台数的最大值,当伸缩组内ECS或ECI实例数大于MaxSize时,弹性伸缩会自动移出ECS实例或ECI实例。'."\n" + ."\n" + .'MaxSize的取值范围和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。'."\n" + ."\n" + .'MaxSize的取值范围和弹性伸缩使用情况有关,请前往[配额中心](https://quotas.console.aliyun.com/products/ess/quotas)查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。'."\n" + ."\n" + .'MaxSize的取值范围和弹性伸缩使用情况有关,请前往配额中心查看**单个伸缩组可以设置的组内最大实例数**对应的配额值。'."\n" + ."\n" + .'例如,如果**单个伸缩组可以设置的组内最大实例数**对应的配额值为2000,则MaxSize的取值范围为0~2000。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '99'], + ], + [ + 'name' => 'DefaultCooldown', + 'in' => 'query', + 'schema' => ['description' => '伸缩组默认的冷却时间,仅适用于简单规则。取值范围:0~86400,单位:秒。'."\n" + ."\n" + .'冷却时间内,该伸缩组不执行其他的伸缩活动,仅针对云监控报警任务触发的伸缩活动有效。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '86400', 'minimum' => '0', 'example' => '600'], + ], + [ + 'name' => 'RemovalPolicies', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '等待状态结束后的下一步动作,取值范围: '."\n" + 'description' => '指定移出ECS实例的伸缩组策略。取值范围:'."\n" ."\n" - .'- CONTINUE:继续响应弹性扩张活动或者继续响应弹性收缩活动。'."\n" - .'- ABANDON:直接释放弹性扩张活动创建出来的ECS实例或者直接将弹性收缩活动中的ECS实例从伸缩组移除。'."\n" - .'- ROLLBACK:针对弹性收缩活动,会拒绝释放ECS实例,进行回滚;针对弹性扩张活动,会直接释放创建出来的ECS实例,效果同ABANDON一样。'."\n" + .'- OldestInstance:移出最早加入伸缩组的ECS实例。'."\n" ."\n" - .'当伸缩组发生弹性收缩活动(SCALE_IN)并触发多个生命周期挂钩时,如果一个生命周期挂钩的DefaultResult取值为ABANDON或ROLLBACK,且该挂钩等待状态结束时,会提前将其他生命周期挂钩对应的等待状态提前结束。其他情况下,下一步动作均以最后一个结束等待状态的下一步动作为准。', - 'type' => 'string', + .'- NewestInstance:移出最新加入伸缩组的ECS实例。'."\n" + ."\n" + .'- OldestScalingConfiguration:移出最早伸缩配置创建的ECS实例。', + 'type' => 'array', + 'items' => ['description' => '指定移出ECS实例的伸缩组策略。取值范围:'."\n" + ."\n" + .'- OldestInstance:移出最早加入伸缩组的ECS实例。'."\n" + ."\n" + .'- NewestInstance:移出最新加入伸缩组的ECS实例。'."\n" + ."\n" + .'- OldestScalingConfiguration:移出最早伸缩配置创建的ECS实例。', 'type' => 'string', 'required' => false, 'example' => 'NewestInstance'], 'required' => false, - 'example' => 'CONTINUE', + 'maxItems' => 2, ], ], [ - 'name' => 'HeartbeatTimeout', + 'name' => 'ActiveScalingConfigurationId', 'in' => 'query', - 'schema' => [ - 'description' => '生命周期挂钩为伸缩组活动设置的等待时间,等待状态超时后会执行下一步动作。取值范围:30~21600,单位:秒。'."\n" - ."\n" - .'您可以调用RecordLifecycleActionHeartbeat延长ECS实例的等待时间,也可以调用CompleteLifecycleAction提前结束伸缩活动的等待状态。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '600', - ], + 'schema' => ['description' => '伸缩组内生效的伸缩配置的ID。', 'type' => 'string', 'required' => false, 'example' => 'asc-bp17pelvl720x5ub****'], ], [ - 'name' => 'LifecycleTransition', + 'name' => 'HealthCheckType', 'in' => 'query', - 'schema' => [ - 'description' => '生命周期挂钩适用的伸缩活动类型,取值范围:'."\n" - .'- SCALE_OUT:伸缩组弹性扩张活动。'."\n" - .'- SCALE_IN:伸缩组弹性收缩活动。', - 'type' => 'string', - 'required' => false, - 'example' => 'SCALE_IN', - ], + 'schema' => ['description' => '伸缩组的健康检查方式。取值范围:'."\n" + ."\n" + .'- NONE:不做健康检查。'."\n" + .'- ECS:对伸缩组内的实例做健康检查(ECS类型和ECI类型的伸缩组均使用本取值开启实例健康检查)。'."\n" + .'- LOAD_BALANCER: 根据负载均衡(暂不支持CLB负载均衡类型)健康检查结果判断实例健康状态。'."\n" + .'默认值:ECS。'."\n" + ."\n" + .'> 如果需要同时开启实例健康检查和负载均衡健康检查,请使用`HealthCheckTypes`参数。', 'type' => 'string', 'required' => false, 'example' => 'ECS'], ], [ - 'name' => 'NotificationMetadata', + 'name' => 'LaunchTemplateId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩活动的等待状态的固定字符串信息。参数长度不能超过4096个字符。'."\n" - ."\n" - .'弹性伸缩每次推送消息到通知对象时,会同时发送您预先指定的NotificationMetadata参数值,便于管理和标记不同类别的通知信息。当您同时指定了NotificationArn参数时,NotificationMetadata参数方可生效。', - 'type' => 'string', - 'required' => false, - 'example' => 'Test', - ], + 'schema' => ['description' => '实例启动模板ID,用于指定伸缩组从实例启动模板获取启动配置信息。', 'type' => 'string', 'required' => false, 'example' => ' lt-m5e3ofjr1zn1aw7****'], ], [ - 'name' => 'NotificationArn', + 'name' => 'LaunchTemplateVersion', '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****', - ], + 'schema' => ['description' => '实例启动模板的版本。取值范围:'."\n" + .' '."\n" + .'- 固定的模板版本号。'."\n" + .'- Default:始终使用模板默认版本。'."\n" + .'- Latest:始终使用模板最新版本。', 'type' => 'string', 'required' => false, 'example' => 'Default'], ], [ - 'name' => 'RegionId', + 'name' => 'OnDemandBaseCapacity', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing', - ], + 'schema' => ['description' => '伸缩组所需要按量实例个数的最小值,取值范围:0~1000。当按量实例个数少于该值时,将优先创建按量实例。'."\n" + ."\n" + .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为0。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30'], ], [ - 'name' => 'LifecycleHookStatus', + 'name' => 'OnDemandPercentageAboveBaseCapacity', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'description' => '修改当前生命周期挂钩的状态,取值范围:'."\n" - .'- Active:表示启动生命周期挂钩。'."\n" - .'- InActive:表示暂停生命周期挂钩。'."\n" - ."\n" - .'如果不设置该参数,则当前生命周期挂钩状态保持为原有状态。'."\n" - .'>生命周期挂钩创建成功后,系统默认为启动状态。', - 'type' => 'string', - 'required' => false, - 'example' => 'Active', - ], + 'schema' => ['description' => '伸缩组满足最小按量实例数(OnDemandBaseCapacity)要求后,超出的实例中按量实例应占的比例,取值范围:0~100。'."\n" + ."\n" + .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], - ], + [ + 'name' => 'SpotInstanceRemedy', + 'in' => 'query', + 'schema' => ['description' => '是否开启补齐抢占式实例。开启后,当收到抢占式实例将被回收的系统消息时,伸缩组将尝试创建新的实例,替换掉将被回收的抢占式实例。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '修改一个生命周期挂钩的信息', - 'description' => '您可以通过以下两种方式指定待修改的生命周期挂钩:'."\n" - .'- 只指定生命周期挂钩ID(LifecycleHookId),此时将忽略伸缩组ID(ScalingGroupId)和生命周期挂钩名称(LifecycleHookName)参数。'."\n" - ."\n" - .'- 同时指定伸缩组ID(ScalingGroupId)与生命周期挂钩名称(LifecycleHookName),因为在一个伸缩组内同一个生命周期挂钩名称是唯一的。', - ], - 'DescribeLifecycleHooks' => [ - 'summary' => '调用DescribeLifecycleHooks通过指定生命周期挂钩ID或伸缩组ID来查询生命周期挂钩的信息,包括等待状态结束后的下一步动作、生命周期挂钩对应的伸缩活动类型、通知对象标识符、挂起等待时间等。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'CompensateWithOnDemand', + 'in' => 'query', + 'schema' => ['description' => '当`CreateScalingGroup`接口的`MultiAZPolicy`取值为`COST_OPTIMIZED`时,如果因价格、库存等原因无法创建足够的抢占式实例,是否允许自动尝试创建按量实例满足ECS实例数量要求。取值范围:'."\n" + ."\n" + .'- true:允许。'."\n" + ."\n" + .'- false:不允许。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], - ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '125347', - 'abilityTreeNodes' => [ - 'FEATUREess54US0Q', + [ + 'name' => 'SpotInstancePools', + 'in' => 'query', + 'schema' => ['description' => '指定可用实例规格的个数,伸缩组将按成本最低的多个规格均衡创建抢占式实例。取值范围:0~10。'."\n" + ."\n" + .'当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时,默认值为2。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5'], ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'DesiredCapacity', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asg-bp1igpak5ft1flyp****', - ], + 'schema' => ['description' => '伸缩组内ECS实例或ECI实例的期望数量,伸缩组会自动将ECS实例或ECI实例数量维持在期望实例数。取值范围:MaxSize≥期望实例数量≥MinSize。'."\n" + ."\n" + .'> 如果期望实例数功能关闭后又重新开启,则您需要重新设置 `DesiredCapacity` 值。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5'], ], [ - 'name' => 'LifecycleHookName', + 'name' => 'GroupDeletionProtection', 'in' => 'query', - 'schema' => [ - 'description' => '生命周期挂钩名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'lifecyclehook****', - ], + 'schema' => ['description' => '是否开启伸缩组删除保护。取值范围:'."\n" + ."\n" + .'- true:开启伸缩组删除保护,此时不能删除该伸缩组。'."\n" + .'- false:关闭伸缩组删除保护。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'PageNumber', + 'name' => 'MultiAZPolicy', 'in' => 'query', - 'schema' => [ - 'description' => '实例状态列表的页码,起始值:1。'."\n" - ."\n" - .'默认值:1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + '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平衡资源。'."\n" + ."\n" + .'- COMPOSABLE:是一种组合策略,您可以根据需要自主组合上述多可用区伸缩组ECS实例的扩缩容策略。', 'type' => 'string', 'required' => false, 'example' => 'PRIORITY'], ], [ - 'name' => 'PageSize', + 'name' => 'VSwitchIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '分页查询时设置的每页行数,最大值:50。'."\n" + 'description' => '一台或多台虚拟交换机的ID。'."\n" ."\n" - .'默认值:50。', - 'type' => 'integer', - 'format' => 'int32', + .'只有当伸缩组网络类型为VPC时,当前参数才生效。指定虚拟交换机所属的VPC必须和伸缩组所属的VPC相同。'."\n" + ."\n" + .'虚拟交换机可以来自多个可用区。虚拟交换机的优先级按照数字升序排序,1表示最高优先级。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动选择下一优先级的虚拟交换机创建ECS实例。', + 'type' => 'array', + 'items' => ['description' => '一台或多台虚拟交换机的ID。'."\n" + ."\n" + .'只有当伸缩组网络类型为VPC时,当前参数才生效。指定虚拟交换机所属的VPC必须和伸缩组所属的VPC相同。'."\n" + ."\n" + .'虚拟交换机可以来自多个可用区。虚拟交换机的优先级按照数字升序排序,1表示最高优先级。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动选择下一优先级的虚拟交换机创建ECS实例。', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1oo2a7isyrb8igf****'], 'required' => false, - 'example' => '50', + 'maxItems' => 8, ], ], [ - 'name' => 'LifecycleHookIds', + 'name' => 'LaunchTemplateOverrides', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '生命周期挂钩的ID列表。', + 'description' => '扩展启动模板的实例规格信息。', 'type' => 'array', 'items' => [ - 'description' => '生命周期挂钩的ID。', - 'type' => 'string', + 'description' => '扩展启动模板的实例规格信息。', + 'type' => 'object', + 'properties' => [ + 'InstanceType' => ['description' => '当您需要伸缩组按照实例规格容量进行伸缩时,请同时指定本参数和LaunchTemplateOverrides.WeightedCapacity。'."\n" + ."\n" + .'本参数用于指定实例规格,会覆盖启动模板中的实例规格。'."\n" + ."\n" + .'> 仅当LaunchTemplateId参数指定了启动模板时,本参数生效。'."\n" + ."\n" + .'InstanceType的取值范围:在售的ECS实例规格。', 'type' => 'string', 'required' => false, 'example' => 'ecs.c5.xlarge '."\n"], + 'WeightedCapacity' => ['description' => '当您需要伸缩组按照实例规格容量进行伸缩时,在指定LaunchTemplateOverrides.InstanceType后,再指定本参数。两个参数一一对应。'."\n" + ."\n" + .'本参数用于指定实例规格的权重,即实例规格的单台实例在伸缩组中表示的容量大小。'."\n" + ."\n" + .'权重越大,满足期望容量所需的本实例规格的实例数量越少。'."\n" + ."\n" + .'由于每个实例规格的vCPU个数、内存大小等性能指标会有差异,您可以根据自身需求,给不同的实例规格配置不同的权重。'."\n" + ."\n" + .'例如:'."\n" + ."\n" + .'- 当前容量:0。'."\n" + ."\n" + .'- 期望容量:6。'."\n" + ."\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, - 'example' => 'ash-bp1at9ufhmcf9cmy****', ], 'required' => false, - 'maxItems' => 100, + 'maxItems' => 20, ], ], [ - 'name' => 'RegionId', + 'name' => 'MaxInstanceLifetime', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属地域的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing', - ], + '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'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'description' => '查询生命周期挂钩返回信息。', - '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' => [ - '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', - ], - ], - ], - ], - ], - ], + [ + 'name' => 'AzBalance', + 'in' => 'query', + 'schema' => ['description' => '伸缩组的容量是否在多个可用区间均衡分布(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效),取值范围:'."\n" + .'- true:伸缩组的容量在多个可用区间均衡分布。'."\n" + .'- false:伸缩组的容量不在多个可用区间均衡分布。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 1,\\n \\"LifecycleHooks\\": [\\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}","type":"json"}]', - 'title' => '查询生命周期挂钩详情', - 'description' => '您可以通过以下三种方式查询生命周期挂钩:'."\n" - .'- 指定一个生命周期挂钩ID列表(LifecycleHookIds),此时将忽略伸缩组ID(ScalingGroupId)和生命周期挂钩名称(LifecycleHookName)参数。'."\n" - ."\n" - .'- 指定伸缩组ID(ScalingGroupId)。'."\n" - ."\n" - .'- 同时指定伸缩组ID(ScalingGroupId)和生命周期挂钩名称(LifecycleHookName)。', - ], - 'RecordLifecycleActionHeartbeat' => [ - 'summary' => '如果伸缩组内生命周期挂钩触发后被挂起的ECS实例的等待时间不能满足您的自定义操作,在ECS实例被挂起状态下,调用RecordLifecycleActionHeartbeat,通过指定生命周期挂钩的ID、伸缩活动的等待状态标识符、需设置的等待时间等配置参数,延长挂起时间。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'AllocationStrategy', + 'in' => 'query', + 'schema' => ['description' => '容量分配策略,决定了伸缩组如何选择可用的实例规格类型满足容量。容量分布策略同时对按量和抢占式容量生效(仅当MultiAZPolicy参数取值为COMPOSABLE策略时生效)。取值范围: '."\n" + ."\n" + .'- priority:按照配置的实例规格的顺序创建实例。'."\n" + ."\n" + .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n" + ."\n" + .'默认值:priority。', 'type' => 'string', 'required' => false, 'example' => 'priority'], ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125371', - 'abilityTreeNodes' => [ - 'FEATUREessKFTMD6', + [ + 'name' => 'SpotAllocationStrategy', + 'in' => 'query', + 'schema' => ['description' => '抢占式容量分布策略。您可以通过该参数单独指定抢占式容量的分布策略(仅当`MultiAZPolicy`参数取值为`COMPOSABLE`策略时生效)。取值范围:'."\n" + ."\n" + .'- priority:按照配置的实例规格的顺序创建实例。'."\n" + .'- lowestPrice:按照实例规格单位vCpu价格从低到高创建实例。'."\n" + ."\n" + .'默认值:priority。', 'type' => 'string', 'required' => false, 'example' => 'lowestPrice'], ], - ], - 'parameters' => [ [ - 'name' => 'lifecycleHookId', + 'name' => 'CustomPolicyARN', 'in' => 'query', - 'schema' => [ - 'description' => '生命周期挂钩的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'ash-bp1fxuqyi98w0aib****', - ], + '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' => 'lifecycleActionToken', + 'name' => 'DisableDesiredCapacity', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩活动的等待状态标识符,您可以在实例被挂起的状态下,从生命周期挂钩指定的MNS队列中,接收消息对应的详情页中获取。'."\n" - ."\n" - .'也可以调用[DescribeLifecycleActions](~~459333~~)获取。'."\n" - ."\n" - .'还可以从生命周期挂钩指定的MNS主题中获取该值。', - 'type' => 'string', - 'required' => true, - 'example' => 'F324B880-900E-4968-85DD-81691113****', - ], + 'schema' => ['description' => '伸缩组是否关闭期望实例数功能。取值范围:'."\n" + ."\n" + .'- false:启用期望实例数功能。'."\n" + .'- true:关闭期望实例数功能。'."\n" + ."\n" + .'> 只有伸缩组当前无伸缩活动时,才能将该参数设置为true(即关闭伸缩组的期望实例数功能),关闭伸缩组的期望实例数功能时伸缩组当前的DesiredCapacity属性也会被清空,但伸缩组中当前的实例数量不发生变化。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'heartbeatTimeout', + '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' => 'HealthCheckTypes', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '生命周期挂钩为伸缩组活动设置的等待时间,等待状态超时后会执行默认执行策略。取值范围:30~21600,单位:秒。'."\n" + 'description' => '伸缩组的健康检查方式。'."\n" + ."\n" + .'> 使用此参数可以设置多个值,开启多个健康检查选项。如果设置了HealthCheckType参数,则本参数将被忽略。', + 'type' => 'array', + 'items' => ['description' => '伸缩组的健康检查方式列表。取值范围:'."\n" ."\n" - .'创建了生命周期挂钩后,您可以调用本接口延长ECS实例的等待时间,也可以调用[CompleteLifecycleAction](~~459335~~)提前结束伸缩活动的等待状态。'."\n" + .'- NONE:不做健康检查。'."\n" + .'- ECS:对伸缩组内的实例做健康检查(ECS类型和ECI类型的伸缩组均使用本取值开启实例健康检查)。'."\n" + .'- LOAD_BALANCER: 根据负载均衡(暂不支持负载均衡CLB类型)健康检查结果判断实例健康状态。'."\n" ."\n" - .'默认值:600。', - 'type' => 'integer', - 'format' => 'int32', + .'默认值:ECS。', 'type' => 'string', 'required' => false, 'example' => 'ECS'], 'required' => false, - 'example' => '600', + 'maxItems' => 100, ], ], [ - 'name' => 'RegionId', + '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' => '伸缩组所属的地域ID。', - 'type' => 'string', + '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" + .'- PricePerUnit:使用每单位容量价格比价。'."\n" + ."\n" + .' 实例在伸缩组中容量大小等于为实例规格设置的权重,默认为1,即一台ECS所占容量为1。'."\n" + ."\n" + .'- PricePerVCpu:使用每单位vCpu价格进行比价。'."\n" + ."\n" + .'默认值:PricePerUnit。', 'type' => 'string', 'required' => false, 'example' => 'PricePerUnit'], + ], 'required' => false, - 'example' => 'cn-hangzhou', ], ], + [ + 'name' => 'BalanceMode', + 'in' => 'query', + 'schema' => ['title' => '平衡模式设置', 'description' => '可用区均衡模式,仅当开启可用区均衡模式时生效。取值范围:'."\n" + .' '."\n" + .'- BalancedBestEffort:当某可用区资源创建失败时,会降级至其他可用区,保障资源的尽力交付。'."\n" + ."\n" + .'- BalancedOnly:当某可用区资源创建失败时,不会降级至其他可用区,扩容活动部分成功,避免资源在不同可用区过度不均衡。'."\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-A3DC0DE3C83E', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', - 'title' => '延长生命周期挂钩触发后ECS实例被挂起等待时间', - 'description' => '只能在ECS实例被挂起的状态下调用该接口来延长等待时间。'."\n" + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + 'title' => '修改一个伸缩组', + 'description' => '- 不支持修改以下参数:'."\n" ."\n" - .'ECS实例的等待时间不能超过6小时,每次等待状态最多能被延时20次。', - ], - 'DescribeLifecycleActions' => [ - 'summary' => '调用DescribeLifecycleActions,通过指定伸缩活动的ID、查询凭证、MaxResults等配置参数,查看伸缩活动发生时,生命周期挂钩执行操作的状态、标识符、挂起的ECS实例的ID等信息。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + .' - RegionId'."\n" + ."\n" + .' - LoadBalancerId'."\n" + ."\n" + .' > 如果需要修改负载均衡实例,请使用AttachLoadBalancers和DetachLoadBalancers接口。'."\n" + ."\n" + .' - DBInstanceId'."\n" + ."\n" + .' > 如果需要修改RDS实例,请使用AttachDBInstances和DetachDBInstances接口。'."\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。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyScalingGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + ], + 'ModifyScalingRule' => [ + 'summary' => '创建伸缩规则后,如果当前伸缩规则不再满足需求,您可以调用API ModifyScalingRule修改一项或多项伸缩规则属性,无需重新创建新的伸缩规则,避免不必要的重复操作,节约时间和资源成本。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '125398', - 'abilityTreeNodes' => [ - 'FEATUREess54US0Q', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '125391', + 'abilityTreeNodes' => ['FEATUREessRTZKQT'], ], 'parameters' => [ [ - 'name' => 'ScalingActivityId', + 'name' => 'ScalingRuleId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩活动的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asa-bp17mug9t0pegagw****', - ], + 'schema' => ['description' => '待修改伸缩规则的ID。', 'type' => 'string', 'required' => true, 'example' => 'asr-bp1dvirgwkoowxk7****'], ], [ - 'name' => 'LifecycleActionStatus', + 'name' => 'ScalingRuleName', 'in' => 'query', - 'schema' => [ - 'description' => '生命周期操作的状态。取值范围:'."\n" - ."\n" - .'- Pending:挂起中。表示ECS实例仍处于挂起中状态。'."\n" - .'- Timeout:已超时。表示已到达生命周期挂钩的超时时间,自动结束ECS实例的挂起中状态。'."\n" - .'- Completed:已处理。表示您手动提前结束了ECS实例的挂起中状态。', - 'type' => 'string', - 'required' => false, - 'example' => 'Pending', - ], + 'schema' => ['description' => '伸缩规则的名称,2~64个英文或中文字符,以数字、大小字母或中文开头,可包含数字、下划线(_)、短划线(-)或半角句号(.)。'."\n" + ."\n" + .'同一用户账号同一地域同一伸缩组内伸缩规则唯一。', 'type' => 'string', 'required' => false, 'example' => 'scalingrule****'], ], [ - 'name' => 'NextToken', + 'name' => 'Cooldown', 'in' => 'query', - 'schema' => [ - 'description' => '查询凭证,用于指定开始查询的位置。'."\n" - ."\n" - .'例如上次查询10条生命周期操作后,本次从第11条生命周期操作开始查询。取值为上次调用本接口返回的NextToken参数值,如果不填写取值则表示从头开始查询。', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAcSz4VTb1Nq****', - ], + 'schema' => ['description' => '伸缩规则的冷却时间,仅适用于简单规则。'."\n" + ."\n" + .'取值范围:0~86400,单位:秒。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '60'], ], [ - 'name' => 'MaxResults', + 'name' => 'MinAdjustmentMagnitude', 'in' => 'query', - 'schema' => [ - 'description' => '设置单页查询的最大条目数。取值范围:1~50。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '伸缩规则最小调整实例数,仅当伸缩规则类型为SimpleScalingRule或StepScalingRule,且`AdjustmentType`为`PercentChangeInCapacity`时生效。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'RegionId', + 'name' => 'AdjustmentType', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '伸缩规则的调整方式, 适用于简单规则和步进规则,且此时该项必选。取值范围: '."\n" + ."\n" + .'- QuantityChangeInCapacity:增加或减少指定数量的ECS实例。 '."\n" + .'- PercentChangeInCapacity:增加或减少指定比例的ECS实例。 '."\n" + .'- TotalCapacity: 将当前伸缩组的ECS实例数量调整到指定数量。 '."\n" + .' ', 'type' => 'string', 'required' => false, 'example' => 'QuantityChangeInCapacity'], ], - ], - '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' => [ - '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' => [ - 'description' => '该生命周期挂钩挂起的ECS实例的ID列表。', - 'type' => 'array', - 'items' => [ - 'description' => '该生命周期挂钩挂起的ECS实例的ID。', - 'type' => 'string', - 'example' => '["i-bp11m3fzlqrgk5vh****","i-bp11m3fzlqrgk5vh****"]', - ], - ], - ], - ], - ], - ], - ], + [ + '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'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAcSz4VTb1Nq****\\",\\n \\"RequestId\\": \\"42A742EB-FCF3-459E-9C62-E107048C17E3\\",\\n \\"TotalCount\\": 3,\\n \\"MaxResults\\": 3,\\n \\"LifecycleActions\\": [\\n {\\n \\"LifecycleHookId\\": \\"ash-bp18uoft0deax0f7****\\",\\n \\"LifecycleActionToken\\": \\"9C2E9DA7-F794-449A-ACF6-CEE24444****\\",\\n \\"LifecycleActionStatus\\": \\"Pending\\",\\n \\"LifecycleActionResult\\": \\"CONTINUE\\",\\n \\"InstanceIds\\": [\\n \\"[\\\\\\"i-bp11m3fzlqrgk5vh****\\\\\\",\\\\\\"i-bp11m3fzlqrgk5vh****\\\\\\"]\\"\\n ]\\n }\\n ]\\n}","type":"json"}]', - 'title' => '查看伸缩活动对应的生命周期操作详情', - 'description' => '如果发生了和生命周期挂钩适用类型一致的伸缩活动,每个生命周期挂钩都会触发一次生命周期操作,生命周期操作有三种状态:'."\n" - ."\n" - .'- Pending:挂起中。表示ECS实例仍处于挂起中状态。'."\n" - ."\n" - .'- Timeout:已超时。表示已超过生命周期挂钩的超时时间,自动结束了ECS实例的挂起中状态。'."\n" - ."\n" - .'- Completed:已处理。表示您手动提前结束了ECS实例的挂起中状态。'."\n" - ."\n" - .'如果在创建生命周期挂钩时没有设置后续动作,例如在结束挂起后触发执行指定的OOS模板。您可以调用本接口获取当前伸缩活动对应生命周期操作的标识符,以便自行定制后续动作。', - ], - 'CompleteLifecycleAction' => [ - 'summary' => '如果您为伸缩组配置了生命周期挂钩功能,您可以根据实际业务需要,调用API CompleteLifecycleAction提前结束伸缩活动的等待状态去执行下一步动作。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'EstimatedInstanceWarmup', + 'in' => 'query', + 'schema' => ['description' => '实例预热时间,适用于目标追踪规则和步进规则。处于预热状态的ECS实例将正常的加入伸缩组,但是期间将不会向云监控上报监控数据。'."\n" + .'> 动态计算需要扩缩容的ECS实例数量时,处于预热状态的实例不计入现有实例数量。'."\n" + ."\n" + .'取值范围:0~86400,单位:秒。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '60'], ], - ], - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '125379', - 'abilityTreeNodes' => [ - 'FEATUREessKFTMD6', + [ + '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'], ], - ], - 'parameters' => [ [ - 'name' => 'LifecycleHookId', + 'name' => 'TargetValue', 'in' => 'query', - 'schema' => [ - 'description' => '生命周期挂钩的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'ash-bp14g3ee6bt3sc98****', - ], + 'schema' => ['description' => '目标值,适用于目标追踪规则和预测规则。TargetValue最多保留小数点后三位,且必须大于0。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.125'], ], [ - 'name' => 'LifecycleActionToken', + 'name' => 'DisableScaleIn', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩活动的等待状态标识符,您可以从生命周期挂钩指定的MNS队列或MNS主题中获取该值。', - 'type' => 'string', - 'required' => true, - 'example' => 'aaaa-bbbbb-cccc-ddddd', - ], + 'schema' => ['description' => '是否禁用缩容,仅适用于目标追踪规则。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'LifecycleActionResult', + 'name' => 'ScaleInEvaluationCount', 'in' => 'query', - 'schema' => [ - 'description' => '生命周期挂钩等待状态结束后的下一步动作。取值范围:'."\n" - .'- CONTINUE:继续响应弹性扩张活动,将ECS实例添加至伸缩组;继续响应弹性收缩活动,将ECS实例从伸缩组移除。'."\n" - .'- ABANDON:终止弹性扩张活动,直接释放创建出来的ECS实例;继续响应弹性收缩活动,将ECS实例从伸缩组移除。'."\n" - .'- ROLLBACK:针对弹性收缩活动,会拒绝释放ECS实例,进行回滚;针对弹性扩张活动,效果同ABANDON一样。'."\n" - ."\n" - .'如您不指定该参数,生命周期挂钩等待状态结束后的下一步动作则仍然保持为生命周期挂钩设置的`DefaultResult`值。'."\n" - ."\n" - .'伸缩组中存在多个生命周期挂钩时同步触发,最终的下一步动作如下:'."\n" - .'- 对弹性收缩活动,在ABANDON或ROLLBACK类型生命周期挂钩触发的等待状态结束时,会将提前结束后续生命周期挂钩的等待状态。'."\n" - .'- 在挂起弹性收缩活动的生命周期挂钩类型为CONTINUE时,或者对弹性扩张活动,后续生命周期挂钩会继续挂起伸缩活动,直到最后一个生命周期挂钩触发的等待状态结束。最终的下一步动作以最后一个结束等待状态的生命周期挂钩类型为准。', - 'type' => 'string', - 'required' => false, - 'example' => 'CONTINUE', - ], + 'schema' => ['description' => '创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的缩容报警任务触发报警时,所需连续满足阈值条件的次数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '15'], ], [ - 'name' => 'ClientToken', + 'name' => 'ScaleOutEvaluationCount', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。'."\n" - ."\n" - .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的扩容报警任务触发报警时,所需连续满足阈值条件的次数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3'], ], [ - 'name' => 'RegionId', + 'name' => 'PredictiveScalingMode', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '预测规则的模式。取值范围:'."\n" + ."\n" + .'- PredictAndScale:产生预测结果并创建预测任务。'."\n" + .'- PredictOnly:产生预测结果,但不会创建预测任务。', 'type' => 'string', 'required' => false, 'example' => 'PredictAndScale'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE****', - ], - ], - ], + [ + 'name' => 'PredictiveValueBehavior', + 'in' => 'query', + 'schema' => ['description' => '预测规则最大值处理方式。取值范围:'."\n" + ."\n" + .'- MaxOverridePredictiveValue:初始最大值会覆盖预测值。预测值大于初始最大值时,预测任务的最大值采用初始最大值。'."\n" + .'- PredictiveValueOverrideMax:预测值会覆盖初始最大值。预测值大于初始最大值时, 预测任务的最大值采用预测值。'."\n" + .'- PredictiveValueOverrideMaxWithBuffer:预测值会附加一定比例。预测值会按照PredictiveValueBuffer比例增加,当增加后的值大于初始最大值时,会采用增加后的值。', 'type' => 'string', 'required' => false, 'example' => 'MaxOverridePredictiveValue'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE****\\"\\n}","type":"json"}]', - 'title' => '提前结束伸缩活动的等待状态', - 'description' => '允许设置结束等待状态后的下一步动作是继续响应伸缩活动(CONTINUE),还是弃用此次伸缩活动(ABANDON)或者进行回滚操作(ROLLBACK)。', - ], - 'DeleteLifecycleHook' => [ - 'summary' => '如果您不再需要一个生命周期挂钩,可以调用API DeleteLifecycleHook删除该生命周期挂钩,以空出挂钩配额。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'PredictiveValueBuffer', + 'in' => 'query', + 'schema' => ['description' => '`PredictiveValueBehavior`为`PredictiveValueOverrideMaxWithBuffer`时生效,预测值会按照该比例增加,当增加后的值大于初始最大值时,会采用增加后的值。取值范围:0~100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50'], ], - ], - 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '125343', - 'abilityTreeNodes' => [ - 'FEATUREessZQ2TYX', + [ + 'name' => 'PredictiveTaskBufferTime', + 'in' => 'query', + 'schema' => ['description' => '预测规则自动创建的预测任务默认均在整点执行,您可以设置预启动时间提前执行预测任务,预先准备资源。取值范围:0~60。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30'], ], - ], - 'parameters' => [ [ - 'name' => 'LifecycleHookId', + 'name' => 'InitialMaxSize', + 'in' => 'query', + 'schema' => ['description' => '伸缩组实例数上限,和`PredictiveValueBehavior`结合使用。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], + ], + [ + 'name' => 'StepAdjustments', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '生命周期挂钩的ID。', - 'type' => 'string', + '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, - 'example' => 'ash-bp14g3ee6bt3sc98****', + 'maxItems' => 20, ], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'AlarmDimensions', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', + '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-l1cbirz451yxu2dxxx'], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'asg-bp18p2yfxow2dloq****', + 'maxItems' => 5, ], ], [ - 'name' => 'LifecycleHookName', + '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' => '生命周期挂钩的名称。', - 'type' => 'string', + '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, - 'example' => 'lifecyclehook****', + 'maxItems' => 100, ], ], [ - 'name' => 'RegionId', + 'name' => 'AlarmOptions', 'in' => 'query', + 'style' => 'flat', 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', + '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, - 'example' => 'cn-hangzhou', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '删除生命周期挂钩返回信息。', + 'description' => '修改伸缩规则的返回信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], + ], + ], + ], + 'title' => '修改一条伸缩规则', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyScalingRule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '删除一个生命周期挂钩', - 'description' => '如果生命周期挂钩已触发伸缩活动等待状态,删除生命周期挂钩时,对应的等待状态会被提前结束。您可以通过以下两种方式删除生命周期挂钩:'."\n" - ."\n" - .'- 指定生命周期挂钩ID(`LifecycleHookId`),此时将忽略`ScalingGroupId`和`LifecycleHookName`参数。'."\n" - .'- 同时指定伸缩组ID(`ScalingGroupId`)与生命周期挂钩名称(`LifecycleHookName`)。', ], - 'CreateNotificationConfiguration' => [ - 'summary' => '调用API CreateNotificationConfiguration创建弹性伸缩事件及资源变化通知,帮助您及时掌握伸缩组的动态,进一步实现弹性伸缩事件的自动化管理。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'ModifyScheduledTask' => [ + 'summary' => '如果当前伸缩组的定时任务不能满足业务需求,您可以调用ModifyScheduledTask接口,通过指定定时任务的ID修改已有定时任务的配置参数:需要执行的伸缩规则、伸缩组内实例数量、任务执行频率、重试策略等。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '125368', - 'abilityTreeNodes' => [ - 'FEATUREess6E26FJ', - 'FEATUREessFY8KDA', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '125370', + 'abilityTreeNodes' => ['FEATUREessAWW1X1'], ], 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'ScheduledTaskId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1igpak5ft1flyp****', - ], + 'schema' => ['description' => '定时任务的ID。', 'type' => 'string', 'required' => true, 'example' => 'edRtShc57WGXdt8TlPbr****'], ], [ - 'name' => 'NotificationArn', + 'name' => 'ScheduledTaskName', '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****', - ], + 'schema' => ['description' => '定时任务的名称。2-64个字符,以大小写字母、数字或中文开头,可包含(.)、下划线(_)或中划线(-)。同一账号同一地域内唯一。', 'type' => 'string', 'required' => false, 'example' => 'scheduled****'], ], [ - 'name' => 'NotificationTypes', + 'name' => 'Description', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '一类或者多类弹性伸缩事件及资源变化通知。多个取值使用重复列表的形式。'."\n" - ."\n" - .'您可以调用API DescribeNotificationTypes接口查询参数取值。', - 'type' => 'array', - 'items' => [ - 'description' => '一类或者多类弹性伸缩事件及资源变化通知。多个取值使用重复列表的形式。'."\n" - ."\n" - .'您可以调用API DescribeNotificationTypes接口查询参数取值。', - 'type' => 'string', - 'required' => false, - 'example' => 'AUTOSCALING:SCALE_OUT_SUCCESS', - ], - 'required' => true, - 'maxItems' => 12, - ], + 'schema' => ['description' => '定时任务的描述信息。2-200个字符。', 'type' => 'string', 'required' => false, 'example' => 'Test scheduled task.'], ], [ - 'name' => 'RegionId', + 'name' => 'ScheduledAction', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing', - ], + 'schema' => ['description' => '如果伸缩方式为选择已有伸缩规则时,才会出现该配置项,请您选择已创建的伸缩规则,填写伸缩规则的唯一标识符,可在伸缩规则详情页查看。'."\n" + ."\n" + .'> 不支持同时设置`ScheduledAction`和`ScalingGroupId`。', 'type' => 'string', 'required' => false, 'example' => 'ari:acs:ess:cn-hangzhou:14069264****:scalingrule/asr-bp12tcnol686y1ik****'], ], [ - 'name' => 'TimeZone', + 'name' => 'RecurrenceEndTime', 'in' => 'query', - 'schema' => [ - 'description' => '消息通知的时区。'."\n" - .'时区相对于协调世界时的偏移量: 如 UTC+8(东八区)、UTC-7(西七区)等。', - 'type' => 'string', - 'required' => false, - 'example' => 'UTC+8', - ], + 'schema' => ['description' => '重复执行定时任务的结束时间。按照ISO8601标准表示,并需要使用UTC时间。格式为:YYYY-MM-DDThh:mmZ。不能填写自修改当天起365日后的时间。', 'type' => 'string', 'required' => false, 'example' => '2014-08-20T16:55Z'], ], [ - 'name' => 'MessageEncoding', + 'name' => 'LaunchTime', 'in' => 'query', - 'schema' => [ - 'description' => '消息通知内容的编码方式。取值范围:'."\n" - ."\n" - .'- PlainText:不编码,采用明文传输。'."\n" - .'- Base64:Base64 编码。'."\n" - ."\n" - .'默认值:Base64。'."\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****', - ], - ], - ], + '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'], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '创建弹性伸缩事件及资源变化通知', - 'description' => '- 您可以设置由云监控系统事件、轻量消息队列(原MNS)队列或轻量消息队列(原MNS)主题接收消息通知。当伸缩组发生指定类型的伸缩事件或者资源变化时,弹性伸缩会通知云监控或轻量消息队列(原MNS)。'."\n" - .'- 同一个伸缩组内的不同事件通知不可重复使用同一个接收端。'."\n" - ."\n" - .' 例如,不同的事件通知不能同时使用同一个云监控、同一个MNS主题或者同一个MNS队列。', - ], - 'ModifyNotificationConfiguration' => [ - 'summary' => '事件通知支持在发生指定类型的事件后,自动发送消息到云监控、MNS主题和MNS队列,可以帮助您及时掌握伸缩组的动态,进一步实现自动化管理。如果当前事件通知的类型不再满足业务需求,您可以调用API ModifyNotificationConfiguration修改弹性伸缩事件及资源变化通知,您无需重新创建新的事件通知,但不支持修改事件通知的通知方式。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + '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'], ], - ], - 'operationType' => 'readAndWrite', - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '125333', - 'abilityTreeNodes' => [ - 'FEATUREess6E26FJ', - 'FEATUREessFY8KDA', + [ + 'name' => 'TaskEnabled', + 'in' => 'query', + 'schema' => ['description' => '是否启动定时任务。取值范围:'."\n" + ."\n" + .'- true:启动定时任务。'."\n" + .'- false:停止定时任务。'."\n" + ."\n" + .'默认值:true。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], - ], - 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'LaunchExpirationTime', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1igpak5ft1flyp****', - ], + 'schema' => ['description' => '定时任务触发操作失败后,弹性伸缩将在重试过期时间内继续尝试执行定时任务。单位为秒,取值范围:0~1800。'."\n" + ."\n" + .'默认值:600。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '86400', 'minimum' => '0', 'example' => '600'], ], [ - 'name' => 'NotificationArn', + 'name' => 'MinValue', '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', - ], + 'schema' => ['description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的最小数量。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0'], ], [ - 'name' => 'NotificationTypes', + 'name' => 'MaxValue', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - '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', - 'required' => false, - 'example' => 'AUTOSCALING:SCALE_OUT_SUCCESS', - ], - 'required' => true, - 'maxItems' => 12, - ], + 'schema' => ['description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的最大数量。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'RegionId', + 'name' => 'DesiredCapacity', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing', - ], + 'schema' => ['description' => '定时任务的伸缩方式为设置伸缩组内实例数量时,指定伸缩组内实例的期望实例数。'."\n" + .'> 伸缩组必须支持设置期望实例数,即在创建该伸缩组时指定了`DesiredCapacity`。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'TimeZone', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '消息通知的时区。'."\n" - .'时区相对于协调世界时的偏移量: 如 UTC+8(东八区)、UTC-7(西七区)等。', - 'type' => 'string', - 'required' => false, - 'example' => 'UTC+8', - ], + 'schema' => ['description' => '如果伸缩方式为设置伸缩组内实例数量,才会出现该配置项,请您填写定时任务触发时需要修改实例数量的伸缩组ID。指定`ScalingGroupId`后,您需要为`MinValue`、`MaxValue`和`DesiredCapacity`中至少一个参数指定数量。'."\n" + ."\n" + .'> 不支持同时设置`ScheduledAction`和`ScalingGroupId`。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'MessageEncoding', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '消息通知内容的编码方式。取值范围:'."\n" - ."\n" - .'- PlainText:不编码,采用明文传输。'."\n" - .'- Base64:Base64 编码。'."\n" - ."\n" - .'默认值:Base64。'."\n" - .'> 仅支持MNS通知对象设置该参数。', - 'type' => 'string', - 'required' => false, - 'example' => 'PlainText', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], ], ], 'responses' => [ @@ -26184,64 +17083,82 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '修改一条弹性伸缩事件及资源变化通知', - ], - 'DescribeNotificationConfigurations' => [ - 'summary' => '调用API DescribeNotificationConfiguration,通过伸缩组ID查询该伸缩组的弹性伸缩事件及资源变化通知,包括事件通知类型和通知方式等。', - 'methods' => [ - 'post', - 'get', + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling.', 'description' => ''], + ], ], - 'schemes' => [ - 'http', - 'https', + 'title' => '修改一个定时任务的信息', + 'description' => '定时任务支持两种伸缩方式:'."\n" + .'- 通过`ScheduledAction`参数设置需要执行的伸缩规则。'."\n" + .'- 通过`ScalingGroupId`参数设置伸缩组内实例数量。'."\n" + .'> 不支持同时设置`ScheduledAction`和`ScalingGroupId`。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyScheduledTask', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'QueryHistoricalMetric' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '125360', - 'abilityTreeNodes' => [ - 'FEATUREess6E26FJ', - 'FEATUREessFY8KDA', - ], + 'abilityTreeCode' => '221688', + 'abilityTreeNodes' => ['FEATUREessHEBR5R'], ], 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => ['description' => '历史监控数据的开始时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" + ."\n" + .'格式为:yyyy-MM-ddTHH:mmZ。', 'type' => 'string', 'required' => true, 'example' => '2025-12-17T08:00Z'], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => ['description' => '历史监控数据的结束时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" + ."\n" + .'格式为:yyyy-MM-ddTHH:mmZ。', 'type' => 'string', 'required' => true, 'example' => '2025-12-18T08:00Z'], + ], [ 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1igpak5ft1flyp****', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp15oubotmrq11xe****'], ], [ - 'name' => 'RegionId', + 'name' => 'MetricName', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing', - ], + 'schema' => ['description' => '预测规则的监控指标名称,取值范围: '."\n" + .'- CpuUtilization:(ECS)平均CPU使用率。'."\n" + .'- IntranetRx:(ECS)内网入流量平均值。'."\n" + .'- IntranetTx :(ECS)内网出流量平均值。', 'type' => 'string', 'required' => true, 'example' => 'CpuUtilization'], ], ], 'responses' => [ @@ -26249,683 +17166,400 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'NotificationConfigurationModels' => [ - 'description' => '弹性伸缩事件及资源变化通知的集合。', - 'type' => 'array', - 'items' => [ - 'description' => '弹性伸缩事件及资源变化通知的集合。', - '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' => [ - 'description' => '弹性伸缩事件及资源变化通知类型列表。', - 'type' => 'array', - 'items' => [ - 'description' => '弹性伸缩事件及资源变化通知类型列表。', - 'type' => 'string', - 'example' => 'AUTOSCALING:SCALE_IN_SUCCESS', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'HistoricalMetrics' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'HistoricalMetric' => [ + 'description' => '预测规则的监控指标。', + 'type' => 'array', + 'items' => [ + 'description' => '预测规则的监控指标。', + 'type' => 'object', + 'properties' => [ + 'MetricValue' => ['description' => '指标值。', 'type' => 'string', 'example' => '10.0'], + 'Time' => ['description' => '监控指标时间点,按照 ISO8601 标准表示,格式为:yyyy-MM-ddTHH:mmZ。', 'type' => 'string', 'example' => '2025-12-17T16:00Z'], ], ], - 'TimeZone' => [ - 'description' => '消息通知的时区。'."\n" - .'时区相对于协调世界时的偏移量: 如 UTC+8(东八区)、UTC-7(西七区)等。', - 'type' => 'string', - 'example' => 'UTC+8', - ], - 'MessageEncoding' => [ - 'description' => '消息通知内容的编码方式。', - 'type' => 'string', - 'example' => 'PlainText', - ], ], ], + 'description' => '', ], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"NotificationConfigurationModels\\": [\\n {\\n \\"NotificationArn\\": \\"acs:mns:cn-beijing:161456884340****:topic/modifyLifecycleHo****\\",\\n \\"ScalingGroupId\\": \\"asg-bp1igpak5ft1flyp****\\",\\n \\"NotificationTypes\\": [\\n \\"AUTOSCALING:SCALE_IN_SUCCESS\\"\\n ],\\n \\"TimeZone\\": \\"UTC+8\\",\\n \\"MessageEncoding\\": \\"PlainText\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => '查询弹性伸缩事件及资源变化通知', - ], - 'DeleteNotificationConfiguration' => [ - 'summary' => '事件通知支持在发生指定类型的事件后,自动发送消息到云监控、MNS主题和MNS队列,以便您及时对事件进行定位和处理。如果当前事件通知不再使用,调用API DeleteNotificationConfiguration删除该条弹性伸缩事件及资源变化通知。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '查询历史监控数据', + 'summary' => '查询使用预测伸缩规则伸缩组的历史监控数据。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:QueryHistoricalMetric', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"HistoricalMetrics\\": {\\n \\"HistoricalMetric\\": [\\n {\\n \\"MetricValue\\": \\"10.0\\",\\n \\"Time\\": \\"2025-12-17T16:00Z\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'QueryPredictiveMetric' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '125346', - 'abilityTreeNodes' => [ - 'FEATUREessJ2FJEV', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '221689', + 'abilityTreeNodes' => ['FEATUREessHEBR5R'], ], 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'NotificationArn', + 'name' => 'StartTime', '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', - ], + 'schema' => ['description' => '预测监控数据的开始时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" + ."\n" + .'格式为:yyyy-MM-ddTHH:mmZ。', 'type' => 'string', 'required' => true, 'example' => '2025-12-17T08:00Z'."\n"], ], [ - 'name' => 'RegionId', + 'name' => 'EndTime', '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****', - ], - ], - ], + 'schema' => ['description' => '预测监控数据的结束时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" + ."\n" + .'格式为:yyyy-MM-ddTHH:mmZ。', 'type' => 'string', 'required' => true, 'example' => '2025-12-18T08:00Z'."\n"], ], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '删除一条弹性伸缩事件及资源变化通知', - ], - 'DescribeNotificationTypes' => [ - 'summary' => '调用DescribeNotificationTypes接口,查询弹性伸缩组的弹性伸缩事件及资源变化通知的类型,例如:扩容伸缩活动成功,缩容伸缩活动成功,定时任务到期提醒,弹性扩容活动部分成功等。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'ScalingGroupId', + 'in' => 'query', + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp1igpak5ft1flyp****'], ], - ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '125339', - 'abilityTreeNodes' => [ - 'FEATUREessFY8KDA', + [ + 'name' => 'MetricName', + 'in' => 'query', + 'schema' => ['description' => '预测规则的监控指标名称,取值范围: '."\n" + .'- CpuUtilization:(ECS)平均CPU使用率。'."\n" + .'- IntranetRx:(ECS)内网入流量平均值。'."\n" + .'- IntranetTx :(ECS)内网出流量平均值。', 'type' => 'string', 'required' => true, 'example' => 'CpuUtilization'], ], - 'tenantRelevance' => 'publicInformation', ], - 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'NotificationTypes' => [ - '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', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'CC107349-57B7-4405-B1BF-9BF5AF7F****'], + 'PredictiveMetrics' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'PredictiveMetric' => [ + 'description' => '预测监控指标。', + 'type' => 'array', + 'items' => [ + 'description' => '预测监控指标。', + 'type' => 'object', + 'properties' => [ + 'MetricValue' => ['description' => '预测指标值。', 'type' => 'string', 'example' => '10.0'], + 'Time' => ['description' => '指标时间点,按照 ISO8601 标准表示,格式为:yyyy-MM-ddTHH:mmZ。', 'type' => 'string', 'example' => '2025-12-17T16:00Z'], + ], + ], + ], ], + 'description' => '', ], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"NotificationTypes\\": [\\n \\"AUTOSCALING:SCALE_OUT_SUCCESS\\"\\n ]\\n}","type":"json"}]', - 'title' => '查询弹性伸缩事件及资源变化通知的类型', - ], - 'CreateDiagnoseReport' => [ - 'summary' => 'CreateDiagnoseReport', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '查询预测监控数据', + 'summary' => '查询预测监控数据。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:QueryPredictiveMetric', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CC107349-57B7-4405-B1BF-9BF5AF7F****\\",\\n \\"PredictiveMetrics\\": {\\n \\"PredictiveMetric\\": [\\n {\\n \\"MetricValue\\": \\"10.0\\",\\n \\"Time\\": \\"2025-12-17T16:00Z\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'QueryPredictiveTaskInfo' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ - 'AK' => [], - ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '221453', - 'abilityTreeNodes' => [ - 'FEATUREessO4WOGN', + 'AK' => [], ], ], + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '221691', + 'abilityTreeNodes' => ['FEATUREessHEBR5R'], + ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属地域的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'StartTime', 'in' => 'query', - 'schema' => [ - 'description' => '目标伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1f2f6oxc2*******', - ], + 'schema' => ['description' => '预测任务的开始时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" + ."\n" + .'格式为:yyyy-MM-ddTHH:mmZ。', 'type' => 'string', 'required' => true, 'example' => '2025-12-17T08:00Z'], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => ['description' => '预测任务的结束时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" + ."\n" + .'格式为:yyyy-MM-ddTHH:mmZ。', 'type' => 'string', 'required' => true, 'example' => '2025-12-18T08:00Z'], + ], + [ + 'name' => 'ScalingRuleId', + 'in' => 'query', + 'schema' => ['description' => '预测伸缩规则的ID。', 'type' => 'string', 'required' => true, 'example' => 'asr-bp1dp8yd9f8xxxxx'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request', - 'type' => 'string', - 'example' => '0189C6CB-07BA-5AFE-B533-D93892324774', - ], - 'ReportId' => [ - 'description' => '诊断报告ID,资源诊断报告的唯一标志。', - 'type' => 'string', - 'example' => 'dr-uf6enpbnri1xhcy9qc7s', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'TaskInfos' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'TaskInfo' => [ + 'description' => '预测规则产生的定时任务。', + 'type' => 'array', + 'items' => [ + 'description' => '预测规则产生的定时任务。', + 'type' => 'object', + 'properties' => [ + 'Time' => ['description' => '定时任务触发时间点,按照 ISO8601 标准表示,格式为:yyyy-MM-ddTHH:mmZ。', 'type' => 'string', 'example' => '2025-12-17T10:00Z'], + 'MinValue' => ['description' => '伸缩组最小值。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'MaxValue' => ['description' => '伸缩组最大值。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + ], + ], + ], + ], + 'description' => '', ], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0189C6CB-07BA-5AFE-B533-D93892324774\\",\\n \\"ReportId\\": \\"dr-uf6enpbnri1xhcy9qc7s\\"\\n}","type":"json"}]', - 'title' => '创建诊断报告', - ], - 'DescribeDiagnoseReports' => [ - 'summary' => '查询健康诊断报告列表。', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '查询预测任务信息', + 'summary' => '查询预测任务信息。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:QueryPredictiveTaskInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"TaskInfos\\": {\\n \\"TaskInfo\\": [\\n {\\n \\"Time\\": \\"2025-12-17T10:00Z\\",\\n \\"MinValue\\": 2,\\n \\"MaxValue\\": 10\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'QueryPredictiveValue' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'abilityTreeCode' => '221362', - 'abilityTreeNodes' => [ - 'FEATUREessA4Z14P', - ], + 'abilityTreeCode' => '221690', + 'abilityTreeNodes' => ['FEATUREessHEBR5R'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属地域的ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-shenzhen', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'StartTime', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-2vcis7yglxtm*****', - ], + 'schema' => ['description' => '伸缩组预测实例数的开始时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" + ."\n" + .'格式为:yyyy-MM-ddTHH:mmZ。', 'type' => 'string', 'required' => true, 'example' => '2025-12-17T08:00Z'."\n"], ], [ - 'name' => 'ReportIds', + 'name' => 'EndTime', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '诊断报告ID列表。最多支持20个ID。', - 'type' => 'array', - 'items' => [ - 'description' => '诊断报告ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'dr-j6c7wvdzk5103bkm8cx4', - ], - 'required' => false, - 'maxItems' => 20, - 'minItems' => 0, - ], + 'schema' => ['description' => '伸缩组预测实例数的结束时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" + ."\n" + .'格式为:yyyy-MM-ddTHH:mmZ。', 'type' => 'string', 'required' => true, 'example' => '2025-12-18T08:00Z'], ], [ - 'name' => 'PageNumber', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '当前页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-2zee0wsy0zkdxxxxx'], ], [ - 'name' => 'PageSize', + 'name' => 'MetricName', 'in' => 'query', - 'schema' => [ - 'description' => '每页行数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '预测规则的监控指标名称,取值范围:'."\n" + .'- CpuUtilization:(ECS)平均CPU使用率。'."\n" + .'- IntranetRx:(ECS)内网入流量平均值。'."\n" + .'- IntranetTx :(ECS)内网出流量平均值。', 'type' => 'string', 'required' => true, 'example' => 'CpuUtilization'], + ], + [ + 'name' => 'TargetValue', + 'in' => 'query', + 'schema' => ['description' => '预测规则的监控指标目前值。', 'type' => 'number', 'format' => 'float', 'required' => true, 'example' => '60'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request', - 'type' => 'string', - 'example' => 'ECA123C6-107B-5F70-A177-740A7224C996', - ], - 'Reports' => [ - 'description' => '诊断报告列表。', - 'type' => 'array', - 'items' => [ - 'description' => '报告详情。', - 'type' => 'object', - 'properties' => [ - 'UserId' => [ - 'description' => '伸缩组的用户ID。', - 'type' => 'string', - 'example' => '161456884*******', - ], - 'RegionId' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'example' => 'cn-qingdao', - ], - 'ScalingGroupId' => [ - 'description' => '伸缩组ID。', - 'type' => 'string', - 'example' => 'asg-bp124uve5iph3*****', - ], - 'Details' => [ - 'description' => '诊断报告详情。', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'DiagnoseType' => [ - 'description' => '诊断项类型。可能值:'."\n" - ."\n" - .'- AccountArrearage:账号欠费,检查用户账号是否欠费。'."\n" - ."\n" - .'- AccountNotEnoughBalance:账号余额不足,检查中国站用户账号余额大于等于100元。'."\n" - ."\n" - .'- ElasticStrength:库存健康度,检查伸缩组配置对应实例类型的库存健康度。'."\n" - ."\n" - .'- VSwitch:交换机状态,检查交换机是否可用,例如:是否被删除。'."\n" - ."\n" - .'- SecurityGroup:安全组状态,检查安全组是否可用,例如:是否被删除。'."\n" - ."\n" - .'- KeyPair: KeyPair状态,检查密钥对是否可用,例如:是否被删除。'."\n" - ."\n" - .'- SlbBackendServerQuota: 伸缩组下SLB实例挂载实例数,检查SLB默认分组和虚拟服务器组后端挂载的ECS数量是否超过配额。'."\n" - ."\n" - .'- AlbBackendServerQuota:伸缩组下ALB实例挂载实例数,检查ALB分组后端挂载的ECS数量是否超过配额。'."\n" - ."\n" - .'- NlbBackendServerQuota:伸缩组下NLB实例挂载实例数,检查NLB分组后端挂载的ECS数量是否超过配额。', - 'type' => 'string', - 'example' => 'AccountArrearage', - ], - 'ResourceId' => [ - 'description' => '资源ID。', - 'type' => 'string', - 'example' => 'sg-280ih****', - ], - 'Status' => [ - 'description' => '诊断项的诊断状态。可能有以下值:'."\n" - ."\n" - .'- Normal: 诊断结果正常。'."\n" - ."\n" - .'- Warn:诊断结果警告。'."\n" - ."\n" - .'- Critical:诊断结果严重。', - 'type' => 'string', - 'example' => 'Normal', - ], - 'ErrorCode' => [ - 'description' => '诊断项的错误码。可能得取值:'."\n" - ."\n" - .'- VSwitchIdNotFound: 交换机不存在。'."\n" - ."\n" - .'- SecurityGroupNotFound:安全组不存在。'."\n" - ."\n" - .'- KeyPairNotFound:KeyPair不存在。'."\n" - ."\n" - .'- SlbBackendServerQuotaExceeded:SLB默认分组和虚拟服务器组后端挂载的ECS数量超过配额。'."\n" - ."\n" - .'- AlbBackendServerQuotaExceeded: ALB分组后端挂载的ECS数量超过配额。'."\n" - ."\n" - .'- NlbBackendServerQuotaExceeded: NLB分组后端挂载的ECS数量超过配额。'."\n" - ."\n" - .'- AccountArrearage: 账号欠费。'."\n" - ."\n" - .'- AccountNotEnoughBalance:账号余额不足(小于100元)。'."\n" - ."\n" - .'- ElasticStrengthAlert:库存健康度差。', - 'type' => 'string', - 'example' => 'VSwitchIdNotFound', - ], - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'FA5F448E-DC84-5EBC-B6D5-F659ADxxxx'], + 'PredictiveValues' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'PredictiveValue' => [ + 'description' => '伸缩组预测实例数。', + 'type' => 'array', + 'items' => [ + 'description' => '伸缩组预测实例数。', + 'type' => 'object', + 'properties' => [ + 'Time' => ['description' => '时间点,按照 ISO8601 标准表示,格式为:yyyy-MM-ddTHH:mmZ。', 'type' => 'string', 'example' => '2025-12-17T10:00Z'], + 'Value' => ['description' => '实例数。', 'type' => 'integer', 'format' => 'int32', 'example' => '3'], ], ], - 'ReportId' => [ - 'description' => '诊断报告ID。', - 'type' => 'string', - 'example' => 'dr-bp14p0cjp7wvjob5l6hk', - ], - 'ProcessStatus' => [ - 'description' => '诊断报告状态,可能得取值:'."\n" - ."\n" - .'- Processing: 进行中。'."\n" - ."\n" - .'- Finished:已完成。', - 'type' => 'string', - 'example' => 'Finished', - ], - 'DiagnoseStatus' => [ - 'description' => '诊断状态,结果为诊断详情列表中最严重的项。可能有以下值:'."\n" - ."\n" - .'- Normal: 诊断结果正常。'."\n" - ."\n" - .'- Warn:诊断结果警告。'."\n" - ."\n" - .'- Critical:诊断结果严重。', - 'type' => 'string', - 'example' => 'Normal', - ], - 'CreationTime' => [ - 'description' => '诊断报告创建时间。', - 'type' => 'string', - 'example' => '2024-08-23T02:22:30Z', - ], ], ], - ], - 'PageNumber' => [ - 'description' => '查询起始页数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => '每页行数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => '诊断报告总数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', + 'description' => '', ], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"ECA123C6-107B-5F70-A177-740A7224C996\\",\\n \\"Reports\\": [\\n {\\n \\"UserId\\": \\"161456884*******\\",\\n \\"RegionId\\": \\"cn-qingdao\\",\\n \\"ScalingGroupId\\": \\"asg-bp124uve5iph3*****\\",\\n \\"Details\\": [\\n {\\n \\"DiagnoseType\\": \\"AccountArrearage\\",\\n \\"ResourceId\\": \\"sg-280ih****\\",\\n \\"Status\\": \\"Normal\\",\\n \\"ErrorCode\\": \\"VSwitchIdNotFound\\"\\n }\\n ],\\n \\"ReportId\\": \\"dr-bp14p0cjp7wvjob5l6hk\\",\\n \\"ProcessStatus\\": \\"Finished\\",\\n \\"DiagnoseStatus\\": \\"Normal\\",\\n \\"CreationTime\\": \\"2024-08-23T02:22:30Z\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 5\\n}","type":"json"}]', - 'title' => '查询诊断报告', - ], - 'DescribeScalingGroupDiagnoseDetails' => [ - 'summary' => '查询伸缩组最近的一次诊断详情,只有当存在诊断结果异常时才会返回结果。', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '查询预测值', + 'summary' => '查询伸缩组预测实例数。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:QueryPredictiveValue', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FA5F448E-DC84-5EBC-B6D5-F659ADxxxx\\",\\n \\"PredictiveValues\\": {\\n \\"PredictiveValue\\": [\\n {\\n \\"Time\\": \\"2025-12-17T10:00Z\\",\\n \\"Value\\": 3\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'RebalanceInstances' => [ + 'summary' => '如果由于库存不足等原因导致可用区之间ECS实例的数量不均衡,您可以通过调用API RebalanceInstances重新平衡多可用区伸缩组内ECS实例的分布。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '221455', - 'abilityTreeNodes' => [ - 'FEATUREessA4Z14P', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '125328', + 'abilityTreeNodes' => ['FEATUREessPV8ZVU'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-qingdao', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'ScalingGroupId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + '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 of the request', - 'type' => 'string', - 'example' => '688B18B8-FB1E-42EB-A1ED-7F55B090****', - ], - 'Details' => [ - 'description' => '诊断报告详情。', - 'type' => 'array', - 'items' => [ - 'description' => '诊断报告详情。', - 'type' => 'object', - 'properties' => [ - 'DiagnoseType' => [ - 'description' => '诊断项类型。可能值:'."\n" - ."\n" - .'- AccountArrearage:检查用户账号是否欠费。'."\n" - ."\n" - .'- AccountNotEnoughBalance:检查账号余额大于等于100元。AccountNotEnoughBalance:检查账号余额。'."\n" - ."\n" - .'- ElasticStrength:检查伸缩组配置对应实例类型的库存健康度。'."\n" - ."\n" - .'- VSwitch:检查交换机是否可用,例如:是否被删除。'."\n" - ."\n" - .'- SecurityGroup:检查安全组是否可用,例如:是否被删除。'."\n" - ."\n" - .'- KeyPair: 检查密钥对是否可用,例如:是否被删除。'."\n" - ."\n" - .'- SlbBackendServerQuota: 检查SLB默认分组和虚拟服务器组后端挂载的ECS数量是否超过配额。'."\n" - ."\n" - .'- AlbBackendServerQuota:检查ALB分组后端挂载的ECS数量是否超过配额。'."\n" - ."\n" - .'- NlbBackendServerQuota:检查NLB分组后端挂载的ECS数量是否超过配额。', - 'type' => 'string', - 'example' => 'SecurityGroup', - ], - 'ResourceId' => [ - 'description' => '诊断结果对应的资源ID。', - 'type' => 'string', - 'example' => 'sg-280ih****', - ], - 'Status' => [ - 'description' => '诊断项的诊断状态。可能有以下值:'."\n" - ."\n" - .'- Normal: 诊断结果正常。'."\n" - ."\n" - .'- Warn:诊断结果警告。'."\n" - ."\n" - .'- Critical:诊断结果严重。', - 'type' => 'string', - 'example' => 'Normal', - ], - 'ErrorCode' => [ - 'description' => '诊断项的错误码。可能得取值:'."\n" - ."\n" - .'- VSwitchIdNotFound: 交换机不存在。'."\n" - ."\n" - .'- SecurityGroupNotFound:安全组不存在。'."\n" - ."\n" - .'- KeyPairNotFound:KeyPair不存在。'."\n" - ."\n" - .'- SlbBackendServerQuotaExceeded:SLB默认分组和虚拟服务器组后端挂载的ECS数量超过配额。'."\n" - ."\n" - .'- AlbBackendServerQuotaExceeded: ALB分组后端挂载的ECS数量超过配额。'."\n" - ."\n" - .'- NlbBackendServerQuotaExceeded: NLB分组后端挂载的ECS数量超过配额。'."\n" - ."\n" - .'- AccountArrearage: 账号欠费。'."\n" - ."\n" - .'- AccountNotEnoughBalance:账号余额不足(小于100元)。AccountNotEnoughBalance:账号余额不足。'."\n" - ."\n" - .'- ElasticStrengthAlert:库存健康度差。', - 'type' => 'string', - 'example' => 'AccountArrearage', - ], - ], - ], - ], + 'ScalingActivityId' => ['description' => '伸缩活动的ID。', 'type' => 'string', 'example' => 'asa-kjgffgdfadah****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], + ], + ], + ], + '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" + .' >如果伸缩组的最大实例数的10%不是整数,则小数部分取整允许超出1台。例如,伸缩组最大实例数为15,取10%为1.5台,则暂时允许超出2台。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:RebalanceInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"688B18B8-FB1E-42EB-A1ED-7F55B090****\\",\\n \\"Details\\": [\\n {\\n \\"DiagnoseType\\": \\"SecurityGroup\\",\\n \\"ResourceId\\": \\"sg-280ih****\\",\\n \\"Status\\": \\"Normal\\",\\n \\"ErrorCode\\": \\"AccountArrearage\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => '查询伸缩组最近的一次诊断详情', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-kjgffgdfadah****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', ], - 'EnterStandby' => [ - 'summary' => '将伸缩组内的ECS实例设置为备用状态。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'RecordLifecycleActionHeartbeat' => [ + 'summary' => '如果伸缩组内生命周期挂钩触发后被挂起的ECS实例的等待时间不能满足您的自定义操作,在ECS实例被挂起状态下,调用RecordLifecycleActionHeartbeat,通过指定生命周期挂钩的ID、伸缩活动的等待状态标识符、需设置的等待时间等配置参数,延长挂起时间。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -26933,63 +17567,37 @@ ], 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '125322', - 'abilityTreeNodes' => [ - 'FEATUREessBFHJ1B', - ], + 'abilityTreeCode' => '125371', + 'abilityTreeNodes' => ['FEATUREessKFTMD6'], ], 'parameters' => [ [ - 'name' => 'ScalingGroupId', + 'name' => 'lifecycleHookId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1fo0dbtsbmqa9h****', - ], + 'schema' => ['description' => '生命周期挂钩的ID。', 'type' => 'string', 'required' => true, 'example' => 'ash-bp1fxuqyi98w0aib****'], ], [ - 'name' => 'ClientToken', + 'name' => 'lifecycleActionToken', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25965~~) 。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '伸缩活动的等待状态标识符,您可以在实例被挂起的状态下,从生命周期挂钩指定的MNS队列中,接收消息对应的详情页中获取。'."\n" + ."\n" + .'也可以调用[DescribeLifecycleActions](~~459333~~)获取。'."\n" + ."\n" + .'还可以从生命周期挂钩指定的MNS主题中获取该值。', 'type' => 'string', 'required' => true, 'example' => 'F324B880-900E-4968-85DD-81691113****'], ], [ - 'name' => 'InstanceIds', + 'name' => 'heartbeatTimeout', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'ECS实例的ID。', - 'type' => 'array', - 'items' => [ - 'description' => 'ECS实例的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'i-28wt4****', - ], - 'required' => true, - 'maxItems' => 20, - ], + 'schema' => ['description' => '生命周期挂钩为伸缩组活动设置的等待时间,等待状态超时后会执行默认执行策略。取值范围:30~21600,单位:秒。'."\n" + ."\n" + .'创建了生命周期挂钩后,您可以调用本接口延长ECS实例的等待时间,也可以调用[CompleteLifecycleAction](~~459335~~)提前结束伸缩活动的等待状态。'."\n" + ."\n" + .'默认值:600。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '600'], ], [ - 'name' => 'Async', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '是否采用异步任务方式执行。取值范围:'."\n" - ."\n" - .'- true:异步任务执行。'."\n" - .'- false:同步执行。'."\n" - ."\n" - .'默认值: false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], ], ], 'responses' => [ @@ -26997,115 +17605,146 @@ '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****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingActivityId\\": \\"asa-2zeb04oym05qaceq****\\"\\n}","type":"json"}]', - 'title' => '将伸缩组内的ECS实例设置为备用状态', - 'description' => '- 如果伸缩组关联了负载均衡实例,会把负载均衡中对应的ECS实例权重设置为0。'."\n" - .'- 当ECS实例处于备用状态时,如果您手动移出伸缩组并释放实例,可以正常移出伸缩组并释放。'."\n" - .'- 对于伸缩组数量变化或监控任务触发的自动缩容的伸缩活动,不会移出处于备用状态的ECS实例。'."\n" - .'- 当ECS实例处于备用状态时,ECS实例如果处于非健康状态(例如停止中、重启中等),ECS实例的健康检查状态不会被更新,并且不会触发移出不健康实例的伸缩活动,只有ECS实例退出备用状态后才会重新更新健康检查状态。', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - ], - 'ExitStandby' => [ - 'summary' => '伸缩组内发生伸缩活动时,不会移出处于备用状态的ECS实例或ECI实例。如果您需要再次使用该实例参与伸缩活动,可以调用API ExitStandby将伸缩组中处于备用状态的ECS实例或ECI实例移出备用状态并转化为运行状态。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '延长生命周期挂钩触发后ECS实例被挂起等待时间', + 'description' => '只能在ECS实例被挂起的状态下调用该接口来延长等待时间。'."\n" + ."\n" + .'ECS实例的等待时间不能超过6小时,每次等待状态最多能被延时20次。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:RecordLifecycleActionHeartbeat', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', + ], + 'RemoveInstances' => [ + 'summary' => '如果当前伸缩组状态为启用状态,且伸缩组内不存在执行中的伸缩活动,您可以调用API RemoveInstances从一个伸缩组删除一台或多台不再需要的实例。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '125359', - 'abilityTreeNodes' => [ - 'FEATUREessBFHJ1B', - ], + 'riskType' => 'high', + 'chargeType' => 'free', + 'abilityTreeCode' => '125337', + 'abilityTreeNodes' => ['FEATUREessDFX5TO'], ], 'parameters' => [ [ 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1fo0dbtsbmqa9h****', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'ClientToken', + 'name' => 'RemovePolicy', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。'."\n" - ."\n" - .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '指定被删除ECS实例的动作。取值范围:'."\n" + ."\n" + .'- recycle:ECS实例触发了节省停机效果。'."\n" + ."\n" + .' > 仅在`ScalingPolicy`为`recycle`时生效。'."\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" + .'- true:从伸缩组中删除一批实例时,会忽略其中无效的实例。如果存在无效的实例,并且有效的实例被成功删除时,伸缩活动执行状态也会显示为警告状态,可以从伸缩活动详情查看无效的实例。'."\n" + .'- false:从伸缩组中删除一批实例时,不会忽略无效的实例。如果一批实例中存在无效的实例,请求会报错。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ 'name' => 'InstanceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'ECS实例的ID。取值可以由多个实例ID组成一个JSON数组,最多支持20个ID,ID之间用半角逗号(,)隔开。', + 'description' => '待删除ECS实例的ID。', 'type' => 'array', - 'items' => [ - 'description' => 'ECS实例的ID。取值可以由多个实例ID组成一个JSON数组,最多支持20个ID,ID之间用半角逗号(,)隔开。', - 'type' => 'string', - 'required' => false, - 'example' => 'i-28wt4****', - ], + 'items' => ['description' => '待删除ECS实例的ID。', 'type' => 'string', 'required' => false, 'example' => 'i-28wt4****'], 'required' => true, - 'maxItems' => 20, + 'maxItems' => 1000, ], ], [ - 'name' => 'Async', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '是否采用异步任务方式执行。取值范围:'."\n" - ."\n" - .'- true:异步任务执行。'."\n" - .'- false:同步任务执行。'."\n" - ."\n" - .'默认值: false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], ], [ - 'name' => 'RegionId', + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持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' => '伸缩组所属的地域ID。', - 'type' => 'string', + 'description' => '生命周期挂钩上下文信息。', + 'type' => 'object', + 'properties' => [ + 'DisableLifecycleHook' => ['description' => '伸缩活动禁用所有生命周期挂钩。取值范围:'."\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, 'description' => ''], + ], 'required' => false, - 'example' => 'cn-hangzhou', ], ], ], @@ -27114,43 +17753,62 @@ '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****', + 'ScalingActivityId' => ['description' => '伸缩活动的ID。', 'type' => 'string', 'example' => 'asa-bp175o6f6ego3r2j****'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'IgnoredInstances' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceId' => ['type' => 'string', 'description' => ''], + 'Code' => ['type' => 'string', 'description' => ''], + 'Message' => ['type' => 'string', 'description' => ''], + ], + 'description' => '', + ], + 'description' => '', ], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScalingActivityId\\": \\"asa-2zeb04oym05qaceq****\\"\\n}","type":"json"}]', - 'title' => '使备用状态实例进入运行状态', - 'description' => '伸缩组中的实例移出备用状态后,您需要注意以下事项:'."\n" - ."\n" - .'- ECS实例或ECI实例会转为运行状态(即恢复服务状态)。'."\n" - ."\n" - .'- 如果ECS实例或ECI实例所在伸缩组关联了负载均衡实例,则该ECS实例或ECI实例再次加入负载均衡实例时,权重默认为50。'."\n" + 'errorCodes' => [ + 500 => [ + ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-bp175o6f6ego3r2j****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"IgnoredInstances\\": [\\n {\\n \\"InstanceId\\": \\"\\",\\n \\"Code\\": \\"\\",\\n \\"Message\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => '从一个伸缩组删除一台或多台实例', + 'description' => '- 调用本接口前请确保满足以下条件:'."\n" + .' - 伸缩组处于启用(Active)状态。'."\n" + .' - 伸缩组中没有正在执行的伸缩活动。'."\n" + .'> 当伸缩组没有执行中的伸缩活动时,该接口可以绕过冷却时间(DefaultCooldown)直接执行。'."\n" ."\n" - .'- 如果ECS实例或ECI实例被停止或者重启时,则该ECS实例或ECI实例会重新更新健康检查状态。'."\n" + .'- 如果一台ECS实例由弹性伸缩自动创建,或者您手动添加但已托管给伸缩组,从伸缩组删除该ECS实例时,ECS实例触发了节省停机效果或者被释放。'."\n" + .'- 如果一台ECS实例由您手动添加且未托管给伸缩组,从伸缩组删除该ECS实例时,ECS实例不会被停止或者释放。'."\n" + .'- 如果当前伸缩组的实例数(TotalCapacity)减去该接口指定的实例数小于伸缩组内最小实例数(MinSize),则调用失败。'."\n" ."\n" - .'- 当伸缩组发生收缩的伸缩活动时,弹性伸缩可以从伸缩组移出该ECS实例或ECI实例。', - ], - 'RebalanceInstances' => [ - 'summary' => '如果由于库存不足等原因导致可用区之间ECS实例的数量不均衡,您可以通过调用API RebalanceInstances重新平衡多可用区伸缩组内ECS实例的分布。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + .'调用该接口返回成功,只是表示弹性伸缩服务接受了该接口调用的请求,伸缩活动可以执行,但不代表伸缩活动能够执行成功。您需要通过返回的ScalingActivityId查看该伸缩活动的执行状态。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DetachInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + ], + 'ResumeInstanceRefresh' => [ + 'summary' => '恢复一个处于暂停状态的实例刷新任务。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -27158,31 +17816,24 @@ ], 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '125328', - 'abilityTreeNodes' => [ - 'FEATUREessPV8ZVU', - ], + 'abilityTreeCode' => '234877', + 'abilityTreeNodes' => ['FEATUREessPV8ZVU'], ], 'parameters' => [ [ 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], + ], + [ + 'name' => 'InstanceRefreshTaskId', + 'in' => 'query', + 'schema' => ['description' => '实例刷新任务ID。', 'type' => 'string', 'required' => true, 'example' => 'ir-a12ds234fasd*****'], ], ], 'responses' => [ @@ -27190,43 +17841,116 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'ScalingActivityId' => [ - 'description' => '伸缩活动的ID。', - 'type' => 'string', - 'example' => 'asa-kjgffgdfadah****', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + 'title' => '恢复暂停中的实例刷新任务', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ResumeInstanceRefresh', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ScalingActivityId\\": \\"asa-kjgffgdfadah****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - '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" - .' >如果伸缩组的最大实例数的10%不是整数,则小数部分取整允许超出1台。例如,伸缩组最大实例数为15,取10%为1.5台,则暂时允许超出2台。', ], - 'SetInstanceHealth' => [ - 'summary' => '在某些情况下,自动健康检查可能无法准确发现ECS实例或ECI实例的健康状态,通过手动设置实例的健康状态可以对故障实例进行快速识别和处理。此时,您可以调用API SetInstanceHealth设置伸缩组内ECS实例或ECI实例的健康状态,能够更好地应对实际的业务需求和运维情况。', - 'methods' => [ - 'post', - 'get', + 'ResumeProcesses' => [ + 'summary' => '您可以主动调用API ResumeProcesses恢复伸缩组中被暂停的流程,由伸缩组继续按功能逻辑执行指定流程。例如,您恢复健康检查流程后,如果伸缩组某实例被视为不健康就会自动被移出伸缩组。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '125388', + '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' => 'Processes', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '需要恢复的活动信息集合。', + 'type' => 'array', + 'items' => ['description' => '需要恢复的活动类型。取值范围:'."\n" + ."\n" + .'- ScaleIn:缩容流程。'."\n" + ."\n" + .'- ScaleOut:扩容流程。'."\n" + ."\n" + .'- HealthCheck:健康检查。'."\n" + ."\n" + .'- AlarmNotification:报警任务。'."\n" + ."\n" + .'- ScheduledAction:定时任务。'."\n" + ."\n" + .'目前支持恢复以上5种活动类型,如果您指定的活动类型超过以上5种,系统会自动去掉重复的活动类型。', 'type' => 'string', 'required' => false, 'example' => 'ScaleIn'], + 'required' => true, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-qingdao'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID', 'type' => 'string', 'example' => 'E38EB733-D714-4658-8A5F-0688AB68****'], + ], + ], + ], ], + 'title' => '恢复伸缩组中被暂停的流程', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ResumeProcesses', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E38EB733-D714-4658-8A5F-0688AB68****\\"\\n}","type":"json"}]', + ], + 'RollbackInstanceRefresh' => [ + 'summary' => '在实例刷新任务执行过程中,如果发现期望配置不符合需求,您可以调用此API来回滚实例刷新任务。在回滚时,系统将使用伸缩组当前生效的配置来创建新的实例,以替换那些基于期望配置创建的实例。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -27234,34 +17958,24 @@ ], 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '125393', - 'abilityTreeNodes' => [ - 'FEATUREessBFHJ1B', - ], + 'abilityTreeCode' => '234874', + 'abilityTreeNodes' => ['FEATUREessPV8ZVU'], ], 'parameters' => [ [ - 'name' => 'InstanceId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组内实例的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'i-bp1ap6bro51a7fsa****', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'HealthStatus', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '设置实例的健康状态,取值范围:'."\n" - ."\n" - .'- Healthy:设置为健康状态。'."\n" - .'- Unhealthy:设置为不健康状态。', - 'type' => 'string', - 'required' => true, - 'example' => 'Healthy', - ], + 'schema' => ['description' => '伸缩组所属地域的ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], + ], + [ + 'name' => 'InstanceRefreshTaskId', + 'in' => 'query', + 'schema' => ['description' => '实例刷新任务ID。', 'type' => 'string', 'required' => true, 'example' => 'ir-a12ds234fasd*****'], ], ], 'responses' => [ @@ -27269,148 +17983,295 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'B755AE57-6093-43E4-938E-DEA422A9****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'B13527BF-1FBD-4334-A512-20F5E9D3****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B755AE57-6093-43E4-938E-DEA422A9****\\"\\n}","type":"json"}]', - 'title' => '设置伸缩组内ECS实例的健康状态', - 'description' => '伸缩组会检测并移出处于不健康状态的ECS实例或ECI实例,如果您需要保留指定的ECS实例或ECI实例,请将ECS实例或ECI实例转入备用或者保护状态,更多信息,请参见[EnterStandby](~~459345~~)和[SetInstancesProtection](~~459342~~)。', - ], - 'SetInstancesProtection' => [ - 'summary' => '调用API SetInstancesProtection可以保护或停止保护伸缩组内的一台或者多台ECS实例。开启ECS实例的保护功能后,伸缩组自动缩容时该实例不会被终止或释放,仅可手动在控制台或通过调用API的RemoveInstances接口删除该实例。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B13527BF-1FBD-4334-A512-20F5E9D3****\\"\\n}","type":"json"}]', + 'title' => '回滚实例刷新任务', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:RollbackInstanceRefresh', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + ], + 'ScaleWithAdjustment' => [ + 'summary' => '区别于ExecuteScalingRule接口,您无需提前创建伸缩规则,直接调用API ScaleWithAdjustment接口快速基于指定调整规则触发弹性扩缩容。', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '125377', - 'abilityTreeNodes' => [ - 'FEATUREessBFHJ1B', - ], + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '125372', + 'abilityTreeNodes' => ['FEATUREessSQIS9M'], ], 'parameters' => [ [ 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'asg-j6c1o397427hyjdc****'], ], [ - 'name' => 'ProtectedFromScaleIn', + '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' => 'ParallelTask', + 'in' => 'query', + 'schema' => ['description' => '当前扩缩容任务是否支持并发。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + ], + [ + 'name' => 'Overrides', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '伸缩组自动缩容时是否保护ECS实例,使该实例不被终止或移出伸缩组。取值范围: '."\n" - ."\n" - .'- true:保护ECS实例。'."\n" - .'- false:不保护ECS实例。', - 'type' => 'boolean', - 'required' => true, - 'example' => 'true', + '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'], + 'ContainerOverrides' => [ + 'description' => '覆写容器列表参数。', + 'type' => 'array', + 'items' => [ + 'description' => '覆写容器列表参数。', + 'type' => 'object', + 'properties' => [ + 'Name' => ['description' => '容器名称。当需要覆写容器参数时,必须指定容器名称,容器名称与伸缩配置容器名称相匹配时,方可覆写容器参数。', 'type' => 'string', 'required' => false, 'example' => 'container-1'], + 'Args' => [ + 'description' => '容器启动命令对应的参数。最多10个。', + 'type' => 'array', + 'items' => ['description' => '容器启动命令对应的参数。最多10个。', 'type' => 'string', 'required' => false, 'example' => 'arg'], + 'required' => false, + ], + 'Commands' => [ + 'description' => '容器启动命令。最多20个。每个命令最多包含256个字符。', + 'type' => 'array', + 'items' => ['description' => '容器启动命令。最多20个。每个命令最多包含256个字符。', 'type' => 'string', 'required' => false, 'example' => 'sleep'], + '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/tomcat'], + ], + 'required' => false, + ], + 'required' => false, + ], + 'Cpu' => ['description' => '容器vCPU核数。单位:核。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '2'], + 'Memory' => ['description' => '容器内存大小。单位:GiB。', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '4'], + ], + 'required' => false, + ], + 'required' => false, + ], + 'UserData' => ['description' => 'ECS 实例的自定义数据,需要以 Base64 方式编码,编码前的原始数据最多为 32 KB。', 'type' => 'string', 'required' => false, 'example' => 'ZWNobyBoZWxsbyBlY3Mh'], + ], + 'required' => false, ], ], [ - 'name' => 'InstanceIds', + 'name' => 'LifecycleHookContext', 'in' => 'query', - 'style' => 'repeatList', + 'style' => 'json', 'schema' => [ - 'description' => 'ECS实例的ID列表。', - 'type' => 'array', - 'items' => [ - 'description' => 'ECS实例的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'i-28wt4****', + '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, 'description' => ''], ], - 'required' => true, - 'maxItems' => 20, + 'required' => false, ], ], + [ + 'name' => 'ActivityMetadata', + 'in' => 'query', + 'schema' => ['description' => '伸缩活动的元数据。', 'type' => 'string', 'required' => false, 'example' => '{"key":"value"}'], + ], + [ + 'name' => 'ExecutionMode', + 'in' => 'query', + 'schema' => ['description' => '执行模式'."\n" + .'可选值:'."\n" + ."\n" + .'- None:未指定,正常扩缩容。'."\n" + .'- PlanOnly:不触发扩缩容,仅执行弹性规划,在PlanResult中返回规划的结果,包括实例规格、可用区ID、付费类型和创建的实例数量等信息。'."\n" + ."\n" + .'默认为None。', 'type' => 'string', 'required' => false, 'example' => 'PlanOnly'], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', + '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" + .'* **Prepaid**:包年包月'."\n" + .'* **Postpaid**:按量付费', 'type' => 'string', 'example' => 'PostPaid'], + ], + 'description' => '', + ], + ], + ], ], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '开始或停止保护伸缩组内ECS实例', - 'description' => 'ECS实例开启保护状态后:'."\n" + 'title' => '基于指定调整规则触发性扩缩容', + 'description' => '- 调用该接口前,请确保满足以下条件:'."\n" + .' - 伸缩组处于Active状态。'."\n" + .' - 伸缩组内没有执行中的伸缩活动。'."\n" + .'- 当伸缩组没有执行中的伸缩活动时,该接口可以绕过冷却时间(Cooldown)直接执行伸缩活动。'."\n" + .'- 如果伸缩规则需要增加的ECS实例数加上当前伸缩组的实例数(Total Capacity)大于最大实例数(MaxSize),则按Total Capacity=MaxSize执行伸缩活动。'."\n" + .'- 如果当前伸缩组内的实例数(Total Capacity)减去伸缩规则需要减少的ECS实例数小于最小实例数(MinSize),则按Total Capacity=MinSize执行伸缩活动。'."\n" ."\n" - .'- 实例保持此状态,直至您停止保护状态。'."\n" - .'- 即使伸缩组内实例数量的变化和监控任务触发自动缩容的伸缩活动,也不会移除处于保护状态的ECS实例。您需要自行移出ECS实例后才能释放ECS实例。具体操作,请参见[移出ECS实例](~~459393~~)。'."\n" - .'- ECS实例被停止或者重启时,不会更新ECS实例的健康检查状态。', - ], - 'DescribeRegions' => [ - 'summary' => '在使用弹性伸缩前,您可以先通过调用API DescribeRegions查询可以在哪些地域使用弹性伸缩服务,方便您选择最适合的地域和可用区来使用弹性伸缩服务,确保在所选地域内获得良好的访问性能。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + .'调用该接口返回成功,只是表示弹性伸缩服务接受了该接口的调用请求,可以执行伸缩活动,但不代表伸缩活动能够执行成功。您需要通过返回的`ScalingActivityId`查看该伸缩活动的执行状态。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ScaleWithAdjustment', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]', + ], + 'SetGroupDeletionProtection' => [ + 'summary' => '如果开启伸缩组删除保护功能后,此时不能删除该伸缩组;如果关闭伸缩组删除保护功能,此时可直接删除该伸缩组,本文为您介绍如何调用API SetGroupDeletionProtection为伸缩组开启或关闭伸缩组删除保护功能。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '125375', - 'abilityTreeNodes' => [ - 'FEATUREessZ1KWHS', - ], - 'tenantRelevance' => 'publicInformation', + 'operationType' => 'update', + 'abilityTreeCode' => '125350', + 'abilityTreeNodes' => ['FEATUREessF87COY'], ], 'parameters' => [ [ - 'name' => 'AcceptLanguage', + 'name' => 'GroupDeletionProtection', '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', - ], + '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' => [ @@ -27418,69 +18279,32 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '73469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'Regions' => [ - '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', - ], - ], - ], - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'CCC29E24-3AEC-4F2C-8A14-78B14FA7****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"73469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"Regions\\": [\\n {\\n \\"ClassicUnavailable\\": false,\\n \\"RegionEndpoint\\": \\"ess.aliyuncs.com\\",\\n \\"LocalName\\": \\"华北2(北京)\\",\\n \\"VpcUnavailable\\": false,\\n \\"RegionId\\": \\"cn-beijing\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => '查询可以使用弹性伸缩服务的地域', - ], - 'TagResources' => [ - 'summary' => '调用API TagResources为指定的弹性伸缩资源列表统一创建并绑定标签,可以帮助您更好地管理和分类资源,通过标签了解资源使用情况,提高资源利用率。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '为伸缩组开启或关闭删除保护', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:SetGroupDeletionProtection', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CCC29E24-3AEC-4F2C-8A14-78B14FA7****\\"\\n}","type":"json"}]', + ], + 'SetInstanceHealth' => [ + 'summary' => '在某些情况下,自动健康检查可能无法准确发现ECS实例或ECI实例的健康状态,通过手动设置实例的健康状态可以对故障实例进行快速识别和处理。此时,您可以调用API SetInstanceHealth设置伸缩组内ECS实例或ECI实例的健康状态,能够更好地应对实际的业务需求和运维情况。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -27488,91 +18312,90 @@ ], 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '125392', - 'abilityTreeNodes' => [ - 'FEATUREessXN6KX4', - ], + 'abilityTreeCode' => '125393', + 'abilityTreeNodes' => ['FEATUREessBFHJ1B'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'InstanceId', 'in' => 'query', - 'schema' => [ - 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '伸缩组内实例的ID。', 'type' => 'string', 'required' => true, 'example' => 'i-bp1ap6bro51a7fsa****'], ], [ - 'name' => 'ResourceType', + 'name' => 'HealthStatus', 'in' => 'query', + 'schema' => ['description' => '设置实例的健康状态,取值范围:'."\n" + ."\n" + .'- Healthy:设置为健康状态。'."\n" + .'- Unhealthy:设置为不健康状态。', 'type' => 'string', 'required' => true, 'example' => 'Healthy'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '资源类型定义,目前仅支持伸缩组。取值:scalinggroup。', - 'type' => 'string', - 'required' => true, - 'example' => 'scalinggroup', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'B755AE57-6093-43E4-938E-DEA422A9****'], + ], ], ], - [ - 'name' => 'ResourceIds', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '资源ID。', - 'type' => 'array', - 'items' => [ - 'description' => '资源ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asg-2zej7nf7hea77k5a****', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B755AE57-6093-43E4-938E-DEA422A9****\\"\\n}","type":"json"}]', + 'title' => '设置伸缩组内ECS实例的健康状态', + 'description' => '伸缩组会检测并移出处于不健康状态的ECS实例或ECI实例,如果您需要保留指定的ECS实例或ECI实例,请将ECS实例或ECI实例转入备用或者保护状态,更多信息,请参见[EnterStandby](~~459345~~)和[SetInstancesProtection](~~459342~~)。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:SetInstanceHealth', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], - 'required' => true, - 'maxItems' => 51, ], ], + ], + ], + 'SetInstancesProtection' => [ + 'summary' => '调用API SetInstancesProtection可以保护或停止保护伸缩组内的一台或者多台ECS实例。开启ECS实例的保护功能后,伸缩组自动缩容时该实例不会被终止或释放,仅可手动在控制台或通过调用API的RemoveInstances接口删除该实例。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'Tags', + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '125377', + '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实例。', 'type' => 'boolean', 'required' => true, 'example' => 'true'], + ], + [ + 'name' => 'InstanceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '资源的标签信息。', + 'description' => 'ECS实例的ID列表。', 'type' => 'array', - 'items' => [ - 'description' => '资源的标签信息。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '资源的标签键。'."\n" - ."\n" - .'一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestKey', - ], - 'Value' => [ - 'description' => '资源的标签值。'."\n" - ."\n" - .'一旦传入该值,可以为空字符串。最多支持128个字符,不能包含`http://`或者`https://`。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestValue', - ], - 'Propagate' => [ - 'description' => '标识该标签是否为可传播标签,取值范围:'."\n" - .'- true:伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n" - .'- false:伸缩组上的标签不会传播到实例上。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - ], - 'required' => false, - ], + 'items' => ['description' => 'ECS实例的ID。', 'type' => 'string', 'required' => false, 'example' => 'i-28wt4****'], 'required' => true, - 'maxItems' => 21, + 'maxItems' => 20, ], ], ], @@ -27581,202 +18404,261 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '74C4E313-8570-479F-8791-DC25360D****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"74C4E313-8570-479F-8791-DC25360D****\\"\\n}","type":"json"}]', - 'title' => '为资源列表创建并绑定标签', - 'description' => '- 伸缩组最多支持绑定20个标签。'."\n" - .' >绑定标签前,阿里云会校验资源已有标签数量,超过限制值时返回报错信息。'."\n" - .'- 如果`Tags.Propagate`参数设置为`true`时,伸缩组设置的标签只会同步传播到伸缩组中新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n" - .'- 如果伸缩配置设置了标签,且将伸缩组设置的标签进行传播,则即将创建的实例标签预期如下:'."\n" - .' - 包含伸缩配置与伸缩组设置传播的所有标签。'."\n" - .' - 如果伸缩配置设置的标签与伸缩组传播的标签具有相同的标签键,则伸缩组传播的标签会被伸缩配置设置的标签覆盖。', - ], - 'ListTagResources' => [ - 'summary' => '调用API ListTagResources查询一个或多个弹性伸缩资源已经绑定的标签列表,可以帮助您更好地分类和管理弹性伸缩资源的使用情况,实现资源的自动化管理和权限控制等目标。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '开始或停止保护伸缩组内ECS实例', + 'description' => 'ECS实例开启保护状态后:'."\n" + ."\n" + .'- 实例保持此状态,直至您停止保护状态。'."\n" + .'- 即使伸缩组内实例数量的变化和监控任务触发自动缩容的伸缩活动,也不会移除处于保护状态的ECS实例。您需要自行移出ECS实例后才能释放ECS实例。具体操作,请参见[移出ECS实例](~~459393~~)。'."\n" + .'- ECS实例被停止或者重启时,不会更新ECS实例的健康检查状态。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:SetInstancesProtection', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + ], + 'StartInstanceRefresh' => [ + 'summary' => '在您需要将新的伸缩配置应用到伸缩组实例中时,或需要更新伸缩组中实例的镜像时,您可以调用本接口完成伸缩组中实例的刷新。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'write', 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '125324', - 'abilityTreeNodes' => [ - 'FEATUREess7569XW', - ], + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '234862', + 'abilityTreeNodes' => ['FEATUREessPV8ZVU', 'FEATUREess8Q01K5'], ], 'parameters' => [ + [ + 'name' => 'ScalingGroupId', + 'in' => 'query', + 'schema' => ['description' => '伸缩组ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~2679950~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ResourceType', + 'name' => 'MinHealthyPercentage', 'in' => 'query', - 'schema' => [ - 'description' => '资源类型,目前仅支持伸缩组。取值:scalinggroup。', - 'type' => 'string', - 'required' => true, - 'example' => 'scalinggroup', - ], + 'schema' => ['description' => '实例刷新期间,保持伸缩组中正常提供服务占伸缩组容量的比例。取值范围 0~100。'."\n" + .'默认值:80。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '80'], ], [ - 'name' => 'NextToken', + 'name' => 'MaxHealthyPercentage', 'in' => 'query', - 'schema' => [ - 'description' => '下一个查询开始的Token。', - 'type' => 'string', - 'required' => false, - 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', - ], + 'schema' => ['description' => '实例刷新期间,伸缩组中实例可以超出伸缩组容量的比例。取值范围 100~200。'."\n" + .'默认值:120。'."\n" + ."\n" + .'> 当MinHealthyPercentage = MaxHealthyPercentage = 100时,每次会刷新1个实例。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], ], [ - 'name' => 'ResourceIds', + 'name' => 'DesiredConfiguration', 'in' => 'query', - 'style' => 'repeatList', + 'style' => 'flat', 'schema' => [ - 'description' => '资源ID。', - 'type' => 'array', - 'items' => [ - 'description' => '资源ID。', - 'type' => 'string', - 'required' => false, - 'example' => ' asg-bp17xb4x1vr29lgt****', + 'description' => '实例刷新的期望配置。'."\n" + ."\n" + .'> - ScalingConfigurationId 、ImageId、LaunchTemplateId、Containers 不可以同时设置。当该参数为空时,以伸缩组当前生效的配置进行刷新。'."\n" + .'> - 实例刷新任务执行成功后,伸缩组生效的伸缩配置会更新为该配置。', + 'type' => 'object', + 'properties' => [ + 'ImageId' => ['description' => '镜像ID。'."\n" + ."\n\n" + ."\n" + .'> - 实例刷新任务执行成功后,伸缩组当前生效的配置信息中的镜像配置会更新为该镜像。'."\n" + .'> - 伸缩组当前生效的配置信息来源是启动模版时不支持设置该参数。'."\n" + .'> - 目前不支持设置带有数据盘的镜像。', 'type' => 'string', 'required' => false, 'example' => 'm-2ze8cqacj7opnf***'], + 'ScalingConfigurationId' => ['description' => '伸缩配置的ID。', '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' => '本参数用于指定实例规格,会覆盖启动模板中的实例规格。'."\n" + ."\n" + .'> 仅当LaunchTemplateId参数指定了启动模板时,本参数生效。', 'type' => 'string', 'required' => false, 'example' => 'ecs.c5.2xlarge'], + ], + 'required' => false, + ], + 'required' => false, + ], + 'Containers' => [ + 'description' => '实例包含的容器列表。'."\n" + ."\n" + .'> - 该参数仅支持ECI类型伸缩组。'."\n" + .'> - 只会刷新当前伸缩配置容器列表中和`Container.Name`相同的容器配置。', + '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' => '容器启动命令。最多 20 个。每个命令最多包含 256 个字符。', 'type' => 'string', 'required' => false, 'example' => 'sleep'], + 'required' => false, + ], + 'Args' => [ + 'description' => '容器启动命令对应的参数。最多 10 个。', + 'type' => 'array', + 'items' => ['description' => '容器启动命令对应的参数。最多10个。', '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, - 'maxItems' => 51, ], ], [ - 'name' => 'Tags', + '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' => '标签信息的集合。', + 'description' => '刷新任务检查点:指定在实例刷新过程中,当新实例占比达到设定值时自动暂停任务CheckpointPauseTime分钟。', 'type' => 'array', 'items' => [ - 'description' => '标签信息的集合。', + 'description' => '刷新任务检查点:指定在实例刷新过程中,当新实例占比达到设定值时自动暂停任务`CheckpointPauseTime`分钟。', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => '精确查找弹性伸缩资源时使用的标签键。标签键长度的取值范围:1~128。'."\n" - ."\n" - .'`Tags`用于精确查找绑定了指定标签的弹性伸缩资源,由一个键值对组成。'."\n" - .'- 仅指定`Tags.Key`时,则返回关联该标签键的所有资源。'."\n" - .'- 仅指定`Tags.Value`时,则出现`MissingParameter.TagKey`的报错提示。'."\n" - .'- 同时指定多个标签键值对时,仅同时满足所有标签键值对的弹性伸缩资源会被查找到。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestKey', - ], - 'Value' => [ - 'description' => '精确查找弹性伸缩资源时使用的标签值。标签值可以为空字符串,最多支持128个字符。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestValue', - ], + 'Percentage' => ['description' => '伸缩组中新实例占总实例的占比,到达该占比时任务自动暂停。取值范围:1 ~100 (%)。'."\n" + ."\n" + .'> 需要从小到大设置,且最后一个进度百分比需要为100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], 'required' => false, ], 'required' => false, - 'maxItems' => 21, + 'maxItems' => 100, ], ], + [ + 'name' => 'CheckpointPauseTime', + 'in' => 'query', + 'schema' => ['description' => '当进入刷新任务检查点时,暂停的时长。'."\n" + .'- 单位:分钟'."\n" + .'- 取值范围 : 1~ 2880'."\n" + .' - 默认值:60。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + ], + [ + 'name' => 'Strategy', + 'in' => 'query', + 'schema' => ['description' => '实例刷新任务的运行策略,取值范围:'."\n" + ."\n" + .'- Rolling:实例刷新任务通过创建新实例,释放旧实例的方式进行实例刷新。'."\n" + ."\n" + .'- ReplaceSystemDisk:在原有实例基础上更新系统盘,通过指定DesiredConfiguration.image 更新实例系统盘。'."\n" + ."\n" + .'默认值:Rolling。', 'type' => 'string', 'required' => false, 'example' => 'Rolling'], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '查询资源已绑定标签的返回信息集合。', 'type' => 'object', 'properties' => [ - 'NextToken' => [ - 'description' => '下一个查询开始的Token。', - 'type' => 'string', - 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'DE65F6B7-7566-4802-9007-96F2494A****', - ], - 'TagResources' => [ - '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', - ], - ], - ], - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'InstanceRefreshTaskId' => ['description' => '实例刷新任务ID。', 'type' => 'string', 'example' => 'ir-a12ds234fasd*****'], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"InstanceRefreshTaskId\\": \\"ir-a12ds234fasd*****\\"\\n}","type":"json"}]', + 'title' => '启动实例刷新任务', + 'description' => '- 伸缩组同时刻只能有一个正在运行中的实例刷新任务。'."\n" + .'- 目前该功能仅支持扩容策略为**优先级策略**的ECS伸缩组。**使用vCPU个数计算伸缩组容量**的伸缩组和实例回收模式为**停机回收模式**、**强制停机回收模式**的伸缩组不支持该功能。'."\n" + .'- 实例刷新期间,可以进行正常扩缩容,但扩容时会以实例刷新的期望配置进行扩容。'."\n" + .'- 伸缩组手动添加的实例、处于备用状态、保护状态的实例会被实例刷新任务忽略,不参与实例刷新。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:StartInstanceRefresh', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"RequestId\\": \\"DE65F6B7-7566-4802-9007-96F2494A****\\",\\n \\"TagResources\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"ResourceType\\": \\"ALIYUN::ESS::SCALINGGROUP\\",\\n \\"ResourceId\\": \\"asg-bp17xb4x1vr29lgt****\\",\\n \\"TagKey\\": \\"TestKey\\",\\n \\"Propagate\\": false\\n }\\n ]\\n}","type":"json"}]', - 'title' => '查询弹性伸缩资源已经绑定的标签列表', - 'description' => '- 请求参数中至少指定一个参数:`ResourceIds`或者`Tags`(即`Tags.Key`与`Tags.Value`),用以确定查询对象。'."\n" - .'- 如果同时指定参数`ResourceIds`和`Tags`时,返回结果中仅包含同时满足这两个条件的弹性伸缩资源。', ], - 'UntagResources' => [ - 'summary' => '调用API UntagResources为指定的弹性伸缩资源列表统一解绑标签,可以简化资源管理、提高系统性能优化、降低安全风险。解绑标签后,如果该标签没有绑定其他任何资源,则会被自动删除。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'SuspendInstanceRefresh' => [ + 'summary' => '实例刷新任务执行期间,如果您觉得配置存在问题,但不确定是否需要回滚,您可以调用此API暂停实例刷新任务,在此期间,您可以检查配置是否正确。', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -27784,79 +18666,24 @@ ], 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '125327', - 'abilityTreeNodes' => [ - 'FEATUREessXN6KX4', - ], + 'abilityTreeCode' => '234876', + 'abilityTreeNodes' => ['FEATUREessPV8ZVU'], ], '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', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '是否解绑资源上全部的标签。当请求参数中未设置`TagKeys`时,该参数才有效。取值范围:'."\n" - .'- true:解绑资源上的全部标签。'."\n" - .'- false:不解绑资源上的全部标签。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '伸缩组ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp18p2yfxow2dloq****'], ], [ - 'name' => 'ResourceIds', + 'name' => 'RegionId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '资源ID。', - 'type' => 'array', - 'items' => [ - 'description' => '资源ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asg-bp17xb4x1vr29lgt****', - ], - 'required' => true, - 'maxItems' => 51, - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'TagKeys', + 'name' => 'InstanceRefreshTaskId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '资源的标签键。', - 'type' => 'array', - 'items' => [ - 'description' => '资源的标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestKey', - ], - 'required' => false, - 'maxItems' => 21, - ], + 'schema' => ['description' => '实例刷新任务ID。', 'type' => 'string', 'required' => true, 'example' => 'ir-a12ds234fasd*****'], ], ], 'responses' => [ @@ -27864,86 +18691,95 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '3AEBB1B9-5B13-4311-951F-C3C7FA2B****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3AEBB1B9-5B13-4311-951F-C3C7FA2B****\\"\\n}","type":"json"}]', - 'title' => '为指定的弹性伸缩资源列表统一解绑标签', - ], - 'ListTagKeys' => [ - 'summary' => '调用API ListTagKeys查询弹性伸缩资源标签键的列表,有利于您对弹性伸缩资源进行分类、识别以及监控等,提供更灵活和便捷的资源管理。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', + 'title' => '暂停实例刷新任务', + 'description' => '- 处于回滚阶段的实例刷新任务不支持该操作。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:SuspendInstanceRefresh', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + ], + 'SuspendProcesses' => [ + 'summary' => '通过调用API SuspendProcesses主动暂停伸缩组某些指定流程,然后去执行其他操作,方便您更加精细地控制伸缩组活动。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREess7569XW', - ], - 'tenantRelevance' => 'publicInformation', + 'operationType' => 'update', + 'abilityTreeCode' => '125380', + 'abilityTreeNodes' => ['FEATUREess4ZDI6R'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'ScalingGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '弹性伸缩资源所属地域的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '伸缩组的ID。', 'type' => 'string', 'required' => true, 'example' => 'asg-bp15oubotmrq11xe****'], ], [ - 'name' => 'ResourceType', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '弹性伸缩资源类型。取值:`scalinggroup`,表示标签绑定的对象是伸缩组。', - 'type' => 'string', - 'required' => true, - 'example' => 'scalinggroup', - ], + 'schema' => ['description' => '保证请求幂等性。'."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25965~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'NextToken', + 'name' => 'Processes', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '下一个查询开始的Token,该参数值为空表示没有下一个。', - 'type' => 'string', - 'required' => false, - 'example' => 'caeba0bbb2be03f84eb48b699f0a****', + 'description' => '需要暂停的活动类型。取值范围:'."\n" + ."\n" + .'- ScaleIn:缩容流程。'."\n" + ."\n" + .'- ScaleOut:扩容流程。'."\n" + ."\n" + .'- HealthCheck:健康检查。'."\n" + ."\n" + .'- AlarmNotification:报警任务。'."\n" + ."\n" + .'- ScheduledAction:定时任务。'."\n" + ."\n" + .'目前系统仅支持暂停5种活动类型,如果您指定的活动超过以上5种,系统会自动去掉重复的活动类型。', + 'type' => 'array', + 'items' => ['description' => '需要暂停的活动类型。取值范围:'."\n" + ."\n" + .'- ScaleIn:缩容流程。'."\n" + ."\n" + .'- ScaleOut:扩容流程。'."\n" + ."\n" + .'- HealthCheck:健康检查。'."\n" + ."\n" + .'- AlarmNotification:报警任务。'."\n" + ."\n" + .'- ScheduledAction:定时任务。'."\n" + ."\n" + .'目前系统仅支持暂停5种活动类型,如果您指定的活动超过以上5种,系统会自动去掉重复的活动类型。', 'type' => 'string', 'required' => false, 'example' => 'ScaleIn'], + 'required' => true, + 'maxItems' => 100, ], ], [ - 'name' => 'PageSize', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时设置的每页行数。最大值:50。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '伸缩组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], ], ], 'responses' => [ @@ -27951,115 +18787,92 @@ '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' => [ - 'description' => '标签键信息。', - 'type' => 'array', - 'items' => [ - 'description' => '标签键信息。', - 'type' => 'string', - 'example' => 'ESS', - ], - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '3E2033F0-03B4-419D-BCE2-C2339DB51****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"RequestId\\": \\"DC09A6AA-2713-4E10-A2E9-E6C5C43A****\\",\\n \\"PageSize\\": 10,\\n \\"Keys\\": [\\n \\"ESS\\"\\n ]\\n}","type":"json"}]', - 'title' => '查询弹性伸缩资源标签键的列表', - ], - 'ListTagValues' => [ - 'summary' => '调用API ListTagValues查询弹性伸缩资源标签键对应的标签值,能够帮助您更好地了解弹性伸缩资源,实现资源的有效分类和管理。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '暂停伸缩组中的指定流程', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:SuspendProcesses', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3E2033F0-03B4-419D-BCE2-C2339DB51****\\"\\n}","type":"json"}]', + ], + 'TagResources' => [ + 'summary' => '调用API TagResources为指定的弹性伸缩资源列表统一创建并绑定标签,可以帮助您更好地管理和分类资源,通过标签了解资源使用情况,提高资源利用率。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREess7569XW', - ], - 'tenantRelevance' => 'publicInformation', + 'operationType' => 'update', + 'abilityTreeCode' => '125392', + 'abilityTreeNodes' => ['FEATUREessXN6KX4'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '弹性伸缩资源所属地域的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + '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,NextToken为空表示没有下一个。', - 'type' => 'string', - 'required' => false, - 'example' => 'caeba0bbb2be03f84eb48b699f0a****', - ], + 'schema' => ['description' => '资源类型定义,目前仅支持伸缩组。取值:scalinggroup。', 'type' => 'string', 'required' => true, 'example' => 'scalinggroup'], ], [ - 'name' => 'PageSize', + 'name' => 'ResourceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '分页查询时设置的每页行数。最大值:50。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', + 'description' => '资源ID。', + 'type' => 'array', + 'items' => ['description' => '资源ID。', 'type' => 'string', 'required' => false, 'example' => 'asg-2zej7nf7hea77k5a****'], + 'required' => true, + 'maxItems' => 51, ], ], [ - 'name' => 'Key', + 'name' => 'Tags', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '标签键。', - 'type' => 'string', + 'description' => '资源的标签信息。', + 'type' => 'array', + 'items' => [ + 'description' => '资源的标签信息。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => '资源的标签键。'."\n" + ."\n" + .'一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'], + 'Value' => ['description' => '资源的标签值。'."\n" + ."\n" + .'一旦传入该值,可以为空字符串。最多支持128个字符,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => 'TestValue'], + 'Propagate' => ['description' => '标识该标签是否为可传播标签,取值范围:'."\n" + .'- true:伸缩组上的标签只会传播到新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n" + .'- false:伸缩组上的标签不会传播到实例上。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + ], + 'required' => false, + ], 'required' => true, - 'example' => 'ESS', + 'maxItems' => 21, ], ], ], @@ -28068,108 +18881,123 @@ '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' => [ - 'description' => '标签值信息。', - 'type' => 'array', - 'items' => [ - 'description' => '标签值信息。', - 'type' => 'string', - 'example' => 'Doc', - ], - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '74C4E313-8570-479F-8791-DC25360D****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"RequestId\\": \\"AB444F46-1CFF-4B06-B8F0-B45D3158****\\",\\n \\"PageSize\\": 10,\\n \\"Values\\": [\\n \\"Doc\\"\\n ]\\n}","type":"json"}]', - 'title' => '查询弹性伸缩资源标签键对应的标签值', - ], - 'VerifyUser' => [ - 'summary' => '调用API VerifyUser验证是否已开通弹性伸缩服务,可以保证业务出现流量波动或负载变化时,系统能够自动扩缩容资源,有助于提高系统的稳定性、可用性和灵活性。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"74C4E313-8570-479F-8791-DC25360D****\\"\\n}","type":"json"}]', + 'title' => '为资源列表创建并绑定标签', + 'description' => '- 伸缩组最多支持绑定20个标签。'."\n" + .' >绑定标签前,阿里云会校验资源已有标签数量,超过限制值时返回报错信息。'."\n" + .'- 如果`Tags.Propagate`参数设置为`true`时,伸缩组设置的标签只会同步传播到伸缩组中新创建的实例上,而不会传播到已经在伸缩组中运行的实例上。'."\n" + .'- 如果伸缩配置设置了标签,且将伸缩组设置的标签进行传播,则即将创建的实例标签预期如下:'."\n" + .' - 包含伸缩配置与伸缩组设置传播的所有标签。'."\n" + .' - 如果伸缩配置设置的标签与伸缩组传播的标签具有相同的标签键,则伸缩组传播的标签会被伸缩配置设置的标签覆盖。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:TagResources', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], ], + ], + 'UntagResources' => [ + 'summary' => '调用API UntagResources为指定的弹性伸缩资源列表统一解绑标签,可以简化资源管理、提高系统性能优化、降低安全风险。解绑标签后,如果该标签没有绑定其他任何资源,则会被自动删除。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREessZ1KWHS', + 'operationType' => 'update', + 'abilityTreeCode' => '125327', + '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'], ], - 'tenantRelevance' => 'publicInformation', - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'All', 'in' => 'query', - 'allowEmptyValue' => false, + 'schema' => ['description' => '是否解绑资源上全部的标签。当请求参数中未设置`TagKeys`时,该参数才有效。取值范围:'."\n" + .'- true:解绑资源上的全部标签。'."\n" + .'- false:不解绑资源上的全部标签。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + ], + [ + 'name' => 'ResourceIds', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '需要使用弹性伸缩服务的地域ID。'."\n" - ."\n" - .'例如`cn-hangzhou`、`cn-shanghai`。更多信息,请参见[地域和可用区](~~40654~~)。', - 'type' => 'string', + 'description' => '资源ID。', + 'type' => 'array', + 'items' => ['description' => '资源ID。', 'type' => 'string', 'required' => false, 'example' => 'asg-bp17xb4x1vr29lgt****'], + 'required' => true, + 'maxItems' => 51, + ], + ], + [ + 'name' => 'TagKeys', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '资源的标签键。', + 'type' => 'array', + 'items' => ['description' => '资源的标签键。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'], 'required' => false, - 'example' => 'cn-hangzhou', + 'maxItems' => 21, ], ], ], '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****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '3AEBB1B9-5B13-4311-951F-C3C7FA2B****'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3AEBB1B9-5B13-4311-951F-C3C7FA2B****\\"\\n}","type":"json"}]', + 'title' => '为指定的弹性伸缩资源列表统一解绑标签', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:UntagResources', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '验证是否已开通弹性伸缩服务', ], 'VerifyAuthentication' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -28181,25 +19009,14 @@ [ 'name' => 'Uid', 'in' => 'query', - 'schema' => [ - 'description' => '您主账号的ID。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '12345678123*****', - ], + 'schema' => ['description' => '您主账号的ID。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '12345678123*****'], ], [ 'name' => 'OnlyCheck', 'in' => 'query', - 'schema' => [ - 'description' => '是否只检查授权情况。取值范围:'."\n" - .'- true:只检查授权,不创建服务关联角色。'."\n" - .'- false(默认):检查授权和资源使用情况。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => '是否只检查授权情况。取值范围:'."\n" + .'- true:只检查授权,不创建服务关联角色。'."\n" + .'- false(默认):检查授权和资源使用情况。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], ], 'responses' => [ @@ -28207,37 +19024,37 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], + '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.', - ], + ['errorCode' => 'UserNotAuthorizeEss', 'errorMessage' => 'Ess should be authorized in ram to operate user ecs resource.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', 'title' => '检测是否已授权弹性伸缩操作ECS和ECI资源', 'summary' => '调用VerifyAuthentication并指定主账号的ID,检测账号是否已有服务关联角色AliyunServiceRoleForAutoScaling,用于授权弹性伸缩操作ECS和ECI资源。', - ], - 'DescribeLimitation' => [ - 'summary' => '调用API DescribeLimitation查询资源配额限制。例如查询支持创建定时任务的最大值、支持关联负载均衡实例的最大数量、支持设置伸缩组内最大实例数以及伸缩配置最大数量等。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'ess:DescribeRegions', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'VerifyUser' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -28249,1424 +19066,1667 @@ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREessZ1KWHS', - ], + 'abilityTreeNodes' => ['FEATUREessZ1KWHS'], 'tenantRelevance' => 'publicInformation', ], - 'parameters' => [], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => ['description' => '需要使用弹性伸缩服务的地域ID。'."\n" + ."\n" + .'例如`cn-hangzhou`、`cn-shanghai`。更多信息,请参见[地域和可用区](~~40654~~)。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], + ], + ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', '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', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]', - 'title' => '查询资源配额限制', + 'title' => '验证是否已开通弹性伸缩服务', + 'summary' => '调用API VerifyUser验证是否已开通弹性伸缩服务,可以保证业务出现流量波动或负载变化时,系统能够自动扩缩容资源,有助于提高系统的稳定性、可用性和灵活性。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'ess:DescribeRegions', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', ], - 'ModifyInstanceAttribute' => [ - 'summary' => '调用ModifyInstanceAttribute,并指定伸缩组内实例的ID、伸缩组的ID、伸缩组所属的地域ID等参数,修改伸缩组中一台ECS实例的部分信息,目前仅支持修改手动添加到伸缩组中实例的生命周期托管属性。', - 'methods' => [ - 'post', - 'get', + ], + 'endpoints' => [ + ['regionId' => 'ap-northeast-1', 'regionName' => '日本(东京)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.ap-northeast-1.aliyuncs.com', 'endpoint' => 'ess.ap-northeast-1.aliyuncs.com', 'vpc' => 'ess-vpc.ap-northeast-1.aliyuncs.com'], + ['regionId' => 'ap-northeast-2', 'regionName' => '韩国(首尔)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.ap-northeast-2.aliyuncs.com', 'endpoint' => 'ess.ap-northeast-2.aliyuncs.com', 'vpc' => 'ess-vpc.ap-northeast-2.aliyuncs.com'], + ['regionId' => 'ap-southeast-1', 'regionName' => '新加坡', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.ap-southeast-1.aliyuncs.com', 'endpoint' => 'ess.ap-southeast-1.aliyuncs.com', 'vpc' => 'ess-vpc.ap-southeast-1.aliyuncs.com'], + ['regionId' => 'ap-southeast-2', 'regionName' => '澳大利亚(悉尼)已关停', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.ap-southeast-2.aliyuncs.com', 'endpoint' => 'ess.ap-southeast-2.aliyuncs.com', 'vpc' => 'ess-vpc.ap-southeast-2.aliyuncs.com'], + ['regionId' => 'ap-southeast-3', 'regionName' => '马来西亚(吉隆坡)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.ap-southeast-3.aliyuncs.com', 'endpoint' => 'ess.ap-southeast-3.aliyuncs.com', 'vpc' => 'ess-vpc.ap-southeast-3.aliyuncs.com'], + ['regionId' => 'ap-southeast-5', 'regionName' => '印度尼西亚(雅加达)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.ap-southeast-5.aliyuncs.com', 'endpoint' => 'ess.ap-southeast-5.aliyuncs.com', 'vpc' => 'ess-vpc.ap-southeast-5.aliyuncs.com'], + ['regionId' => 'ap-southeast-6', 'regionName' => '菲律宾(马尼拉)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.ap-southeast-6.aliyuncs.com', 'endpoint' => 'ess.ap-southeast-6.aliyuncs.com', 'vpc' => 'ess-vpc.ap-southeast-6.aliyuncs.com'], + ['regionId' => 'ap-southeast-7', 'regionName' => '泰国(曼谷)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.ap-southeast-7.aliyuncs.com', 'endpoint' => 'ess.ap-southeast-7.aliyuncs.com', 'vpc' => 'ess-vpc.ap-southeast-7.aliyuncs.com'], + ['regionId' => 'cn-beijing', 'regionName' => '华北2(北京)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.aliyuncs.com', 'endpoint' => 'ess.aliyuncs.com', 'vpc' => 'ess-vpc.cn-beijing.aliyuncs.com'], + ['regionId' => 'cn-chengdu', 'regionName' => '西南1(成都)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.cn-chengdu.aliyuncs.com', 'endpoint' => 'ess.cn-chengdu.aliyuncs.com', 'vpc' => 'ess-vpc.cn-chengdu.aliyuncs.com'], + ['regionId' => 'cn-fuzhou', 'regionName' => '华东6(福州-本地地域)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.cn-fuzhou.aliyuncs.com', 'endpoint' => 'ess.cn-fuzhou.aliyuncs.com', 'vpc' => 'ess-vpc.cn-fuzhou.aliyuncs.com'], + ['regionId' => 'cn-guangzhou', 'regionName' => '华南3(广州)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.cn-guangzhou.aliyuncs.com', 'endpoint' => 'ess.cn-guangzhou.aliyuncs.com', 'vpc' => 'ess-vpc.cn-guangzhou.aliyuncs.com'], + ['regionId' => 'cn-hangzhou', 'regionName' => '华东1(杭州)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.aliyuncs.com', 'endpoint' => 'ess.aliyuncs.com', 'vpc' => 'ess-vpc.cn-hangzhou.aliyuncs.com'], + ['regionId' => 'cn-heyuan', 'regionName' => '华南2(河源)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.cn-heyuan.aliyuncs.com', 'endpoint' => 'ess.cn-heyuan.aliyuncs.com', 'vpc' => 'ess-vpc.cn-heyuan.aliyuncs.com'], + ['regionId' => 'cn-hongkong', 'regionName' => '中国香港', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.cn-hongkong.aliyuncs.com', 'endpoint' => 'ess.cn-hongkong.aliyuncs.com', 'vpc' => 'ess-vpc.cn-hongkong.aliyuncs.com'], + ['regionId' => 'cn-huhehaote', 'regionName' => '华北5(呼和浩特)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.cn-huhehaote.aliyuncs.com', 'endpoint' => 'ess.cn-huhehaote.aliyuncs.com', 'vpc' => 'ess-vpc.cn-huhehaote.aliyuncs.com'], + ['regionId' => 'cn-nanjing', 'regionName' => '华东5(南京-本地地域)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.aliyuncs.com', 'endpoint' => 'ess.aliyuncs.com', 'vpc' => 'ess-vpc.cn-nanjing.aliyuncs.com'], + ['regionId' => 'cn-qingdao', 'regionName' => '华北1(青岛)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.aliyuncs.com', 'endpoint' => 'ess.aliyuncs.com', 'vpc' => 'ess-vpc.cn-qingdao.aliyuncs.com'], + ['regionId' => 'cn-shanghai', 'regionName' => '华东2(上海)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.aliyuncs.com', 'endpoint' => 'ess.aliyuncs.com', 'vpc' => 'ess-vpc.cn-shanghai.aliyuncs.com'], + ['regionId' => 'cn-shenzhen', 'regionName' => '华南1(深圳)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.aliyuncs.com', 'endpoint' => 'ess.aliyuncs.com', 'vpc' => 'ess-vpc.cn-shenzhen.aliyuncs.com'], + ['regionId' => 'cn-wuhan-lr', 'regionName' => '华中1(武汉-本地地域)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.cn-wuhan-lr.aliyuncs.com', 'endpoint' => 'ess.cn-wuhan-lr.aliyuncs.com', 'vpc' => 'ess-vpc.cn-wuhan-lr.aliyuncs.com'], + ['regionId' => 'cn-wulanchabu', 'regionName' => '华北6(乌兰察布)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.cn-wulanchabu.aliyuncs.com', 'endpoint' => 'ess.cn-wulanchabu.aliyuncs.com', 'vpc' => 'ess-vpc.cn-wulanchabu.aliyuncs.com'], + ['regionId' => 'cn-zhangjiakou', 'regionName' => '华北3(张家口)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.cn-zhangjiakou.aliyuncs.com', 'endpoint' => 'ess.cn-zhangjiakou.aliyuncs.com', 'vpc' => 'ess-vpc.cn-zhangjiakou.aliyuncs.com'], + ['regionId' => 'cn-zhengzhou-jva', 'regionName' => '郑州(联通合营)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.cn-zhengzhou-jva.aliyuncs.com', 'endpoint' => 'ess.cn-zhengzhou-jva.aliyuncs.com', 'vpc' => 'ess-vpc.cn-zhengzhou-jva.aliyuncs.com'], + ['regionId' => 'cn-zhongwei', 'regionName' => '西北2(中卫)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ess.cn-zhongwei.aliyuncs.com', 'endpoint' => 'ess.cn-zhongwei.aliyuncs.com', 'vpc' => 'ess-vpc.cn-zhongwei.aliyuncs.com'], + ['regionId' => 'us-west-1', 'regionName' => '美国(硅谷)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'ess.us-west-1.aliyuncs.com', 'endpoint' => 'ess.us-west-1.aliyuncs.com', 'vpc' => 'ess-vpc.us-west-1.aliyuncs.com'], + ['regionId' => 'us-southeast-1', 'regionName' => '美国(亚特兰大)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'ess.us-southeast-1.aliyuncs.com', 'endpoint' => 'ess.us-southeast-1.aliyuncs.com', 'vpc' => 'ess-vpc.us-southeast-1.aliyuncs.com'], + ['regionId' => 'us-east-1', 'regionName' => '美国(弗吉尼亚)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'ess.us-east-1.aliyuncs.com', 'endpoint' => 'ess.us-east-1.aliyuncs.com', 'vpc' => 'ess-vpc.us-east-1.aliyuncs.com'], + ['regionId' => 'na-south-1', 'regionName' => '墨西哥', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'ess.na-south-1.aliyuncs.com', 'endpoint' => 'ess.na-south-1.aliyuncs.com', 'vpc' => 'ess-vpc.na-south-1.aliyuncs.com'], + ['regionId' => 'eu-west-1', 'regionName' => '英国(伦敦)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'ess.eu-west-1.aliyuncs.com', 'endpoint' => 'ess.eu-west-1.aliyuncs.com', 'vpc' => 'ess-vpc.eu-west-1.aliyuncs.com'], + ['regionId' => 'eu-central-1', 'regionName' => '德国(法兰克福)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'ess.eu-central-1.aliyuncs.com', 'endpoint' => 'ess.eu-central-1.aliyuncs.com', 'vpc' => 'ess-vpc.eu-central-1.aliyuncs.com'], + ['regionId' => 'me-east-1', 'regionName' => '阿联酋(迪拜)', 'areaId' => 'middleEast', 'areaName' => '中东', 'public' => 'ess.me-east-1.aliyuncs.com', 'endpoint' => 'ess.me-east-1.aliyuncs.com', 'vpc' => 'ess-vpc.me-east-1.aliyuncs.com'], + ['regionId' => 'me-central-1', 'regionName' => '沙特(利雅得)', 'areaId' => 'middleEast', 'areaName' => '中东', 'public' => 'ess.me-central-1.aliyuncs.com', 'endpoint' => 'ess.me-central-1.aliyuncs.com', 'vpc' => 'ess-vpc.me-central-1.aliyuncs.com'], + ['regionId' => 'ap-south-1', 'regionName' => '印度(孟买)已关停', 'areaId' => 'middleEast', 'areaName' => '中东', 'public' => 'ess.ap-south-1.aliyuncs.com', 'endpoint' => 'ess.ap-south-1.aliyuncs.com', 'vpc' => 'ess-vpc.ap-south-1.aliyuncs.com'], + ['regionId' => 'cn-wulanchabu-gic-1', 'regionName' => '华北6(乌兰察布)通用行业云', 'areaId' => 'industryCloud', 'areaName' => '行业云', 'public' => 'ess.cn-wulanchabu-gic-1.aliyuncs.com', 'endpoint' => 'ess.cn-wulanchabu-gic-1.aliyuncs.com', 'vpc' => 'ess-vpc.cn-wulanchabu-gic-1.aliyuncs.com'], + ['regionId' => 'cn-shenzhen-finance-1', 'regionName' => '华南1 金融云', 'areaId' => 'industryCloud', 'areaName' => '行业云', 'public' => 'ess.aliyuncs.com', 'endpoint' => 'ess.aliyuncs.com', 'vpc' => 'ess-vpc.cn-shenzhen-finance-1.aliyuncs.com'], + ['regionId' => 'cn-shanghai-finance-1', 'regionName' => '华东2 金融云', 'areaId' => 'industryCloud', 'areaName' => '行业云', 'public' => 'ess.aliyuncs.com', 'endpoint' => 'ess.aliyuncs.com', 'vpc' => 'ess-vpc.cn-shanghai-finance-1.aliyuncs.com'], + ['regionId' => 'cn-north-2-gov-1', 'regionName' => '北京政务云', 'areaId' => 'industryCloud', 'areaName' => '行业云', 'public' => 'ess.aliyuncs.com', 'endpoint' => 'ess.aliyuncs.com', 'vpc' => 'ess-vpc.cn-north-2-gov-1.aliyuncs.com'], + ['regionId' => 'cn-heyuan-acdr-1', 'regionName' => '河源专属云汽车合规', 'areaId' => 'industryCloud', 'areaName' => '行业云', 'public' => 'ess.cn-heyuan-acdr-1.aliyuncs.com', 'endpoint' => 'ess.cn-heyuan-acdr-1.aliyuncs.com', 'vpc' => 'ess-vpc.cn-heyuan-acdr-1.aliyuncs.com'], + ['regionId' => 'cn-hangzhou-finance', 'regionName' => '华东1 金融云', 'areaId' => 'industryCloud', 'areaName' => '行业云', 'public' => 'ess.aliyuncs.com', 'endpoint' => 'ess.aliyuncs.com', 'vpc' => ''], + ['regionId' => 'cn-beijing-finance-1', 'regionName' => '华北2 金融云(邀测)', 'areaId' => 'industryCloud', 'areaName' => '行业云', 'public' => 'ess.aliyuncs.com', 'endpoint' => 'ess.aliyuncs.com', 'vpc' => ''], + ], + 'errorCodes' => [ + ['code' => 'AlbServerGroup.NotExist', 'message' => 'The ServerGroup "%s" do(es) not exist.', 'http_code' => 400, 'description' => '指定的ALB类型负载均衡服务器组不存在。'], + ['code' => 'CMSSystemError', 'message' => null, 'http_code' => null, 'description' => '请求失败'], + ['code' => 'ConsoleSystemError', 'message' => null, 'http_code' => null, 'description' => '请求失败'], + ['code' => 'CustomMetric.NotFound', 'message' => 'Can not find custom metric of specific dimension.', 'http_code' => 404, 'description' => '用户自定义的监控指标不存在。'], + ['code' => 'DiskCreatingSnapshot', 'message' => 'The operation is denied due to a snapshot of the specified disk is not completed yet.', 'http_code' => 400, 'description' => '指定的磁盘正在创建快照。'], + ['code' => 'Duplicate.TagKey', 'message' => 'The Tag.N.Key contain duplicate value.', 'http_code' => 400, 'description' => '标签中存在重复的键,请保持键的唯一性。'], + ['code' => 'Forbidden.Forbidden', 'message' => null, 'http_code' => null, 'description' => '操作被禁止'], + ['code' => 'Forbidden.RAM', 'message' => null, 'http_code' => null, 'description' => '未在RAM中授权,或者该API不支持RAM'], + ['code' => 'Forbidden.RiskControl', 'message' => null, 'http_code' => null, 'description' => '该操作被风险控制系统禁止。'], + ['code' => 'Forbidden.Unauthorized', 'message' => null, 'http_code' => null, 'description' => '用户并未向弹性伸缩完整授权Open API接口'], + ['code' => 'Forbidden.Unsubscribed', 'message' => null, 'http_code' => null, 'description' => '用户未开通弹性伸缩,无权调用该API'], + ['code' => 'Forbidden.UserVerification', 'message' => null, 'http_code' => null, 'description' => '无实名验证'], + ['code' => 'HostNameExhausted', 'message' => 'The HostName resource exhausted, please reset HostName.', 'http_code' => 400, 'description' => '伸缩配置设置的自增HostName中的begin number超过了定义的bits。'], + ['code' => 'IDEMPOTENCE_PROCESSING', 'message' => 'The previous request is still processing.', 'http_code' => 400, 'description' => '请求正在处理中。'], + ['code' => 'IDEMPOTENCE_SIGNATURE_MISMATCH', 'message' => 'There is a idempotence signature mismatch between this and last request.', 'http_code' => 400, 'description' => '幂等重试请求参数发生变化。'], + ['code' => 'IncorrectCapacity.MaxSize', 'message' => null, 'http_code' => null, 'description' => '加入的ECS实例数使得Total Capacity超过MaxSize。'], + ['code' => 'IncorrectCapacity.MinSize', 'message' => null, 'http_code' => null, 'description' => '移出的实例数使得Total Capacity小于MinSize。'], + ['code' => 'IncorrectCapacity.NoChange', 'message' => null, 'http_code' => null, 'description' => '伸缩规则未造成伸缩组实例数的变化'], + ['code' => 'IncorrectDBInstanceStatus', 'message' => null, 'http_code' => null, 'description' => '指定的RDS实例为非running状态'], + ['code' => 'IncorrectInstanceStatus', 'message' => null, 'http_code' => null, 'description' => '指定的ECS实例为非running状态'], + ['code' => 'IncorrectLoadBalancerHealthCheck', 'message' => null, 'http_code' => null, 'description' => '指定的SLB实例未开启健康检查'], + ['code' => 'IncorrectLoadBalancerHealthCheck', 'message' => 'The current health check type of specified load balancer does not support this action.', 'http_code' => null, 'description' => '指定的SLB实例未开启健康检查'], + ['code' => 'IncorrectLoadBalancerStatus', 'message' => null, 'http_code' => null, 'description' => '指定的SLB实例为非active状态'], + ['code' => 'IncorrectLoadBalancerStatus', 'message' => 'The current status of the specified load balancer does not support this action.', 'http_code' => null, 'description' => '指定的SLB实例为非active状态'], + ['code' => 'IncorrectScalingConfigurationLifecycleState', 'message' => null, 'http_code' => null, 'description' => '指定的伸缩配置为非inactive状态'], + ['code' => 'IncorrectScalingConfigurationLifecycleState', 'message' => 'The current lifecycle state of specified scaling configuration does not support this action.', 'http_code' => null, 'description' => '指定的伸缩配置为非inactive状态'], + ['code' => 'IncorrectScalingGroupStatus', 'message' => null, 'http_code' => null, 'description' => '当前伸缩组运行状态不支持该操作(请检查伸缩组是否为启用/删除状态)'], + ['code' => 'IncorrectStatus.serverGroup', 'message' => 'The status of %s [%s] is incorrect.', 'http_code' => 400, 'description' => '当前NLB服务组的状态不容许该操作。'], + ['code' => 'IncorrectVSwitchStatus', 'message' => null, 'http_code' => null, 'description' => '虚拟交换机不可用,还不能创建实例'], + ['code' => 'IncorrectVSwitchStatus', 'message' => 'The current status of virtual switch does not support this operation.', 'http_code' => null, 'description' => '虚拟交换机不可用,还不能创建实例'], + ['code' => 'InstanceChargeType.NotSupported', 'message' => 'Specific instance charge type "%s" is not supported.', 'http_code' => 400, 'description' => '实例添加到伸缩组并将生命周期托管给伸缩组时,当前实例的付费类型不支持托管。'], + ['code' => 'InstanceInUse', 'message' => null, 'http_code' => null, 'description' => '指定的伸缩配置还有关联的ECS实例未被删除'], + ['code' => 'InstanceType.Mismatch', 'message' => null, 'http_code' => null, 'description' => '指定的伸缩配置的实例规格与当前的伸缩配置的实例规格不匹配'], + ['code' => 'InsufficientBalance', 'message' => null, 'http_code' => null, 'description' => '账户余额不足,请先充值再操作。'], + ['code' => 'InternalError', 'message' => null, 'http_code' => null, 'description' => '服务器无法完成对请求的处理'], + ['code' => 'InvalidAccessKeyId.NotFound', 'message' => null, 'http_code' => null, 'description' => '无效的Access Key'], + ['code' => 'InvalidAction.NotFound', 'message' => 'Specified api is not found, please check your url and method.', 'http_code' => 404, 'description' => '无效的API。'], + ['code' => 'InvalidDataDiskSnapshotId.NotFound', 'message' => null, 'http_code' => null, 'description' => '指定的快照不存在'], + ['code' => 'InvalidDataDiskSnapshotId.SizeNotSupported', 'message' => null, 'http_code' => null, 'description' => '指定的快照的大小超过了磁盘大小的限制'], + ['code' => 'InvalidDBInstanceId.NotFound', 'message' => null, 'http_code' => null, 'description' => '指定的RDS实例在该用户账号下不存在。确认该实例是在当前账号下面,确定未被删除。'], + ['code' => 'InvalidDBInstanceId.RegionMismatch', 'message' => null, 'http_code' => null, 'description' => '指定的RDS实例与伸缩组所在的地域不匹配'], + ['code' => 'InvalidDevice.InUse', 'message' => null, 'http_code' => null, 'description' => '数据盘挂载点重复'], + ['code' => 'InvalidImageId.InstanceTypeMismatch', 'message' => null, 'http_code' => null, 'description' => '指定的实例规格不允许使用该指定的镜像'], + ['code' => 'InvalidImageId.NotFound', 'message' => null, 'http_code' => null, 'description' => '指定的镜像在该用户账号下不存在,请您检查镜像id是否正确。'], + ['code' => 'InvalidImageId.NotFound', 'message' => 'The specified image does not exist.', 'http_code' => null, 'description' => '指定的镜像在该用户账号下不存在,请您检查镜像id是否正确。'], + ['code' => 'InvalidInstanceId.InstanceTypeMismatch', 'message' => null, 'http_code' => null, 'description' => '指定的ECS实例与伸缩配置的实例规格不匹配'], + ['code' => 'InvalidInstanceId.InUse', 'message' => null, 'http_code' => null, 'description' => '指定的ECS实例已加入其它伸缩组'], + ['code' => 'InvalidInstanceId.NetworkTypeMismatch', 'message' => null, 'http_code' => null, 'description' => '指定的ECS实例的网络类型与伸缩组的网络类型不匹配'], + ['code' => 'InvalidInstanceId.NotFound', 'message' => null, 'http_code' => null, 'description' => '指定的ECS实例在该用户账号下不存在'], + ['code' => 'InvalidInstanceId.RegionMismatch', 'message' => null, 'http_code' => null, 'description' => '指定的ECS实例与伸缩组所处的地域不匹配'], + ['code' => 'InvalidInstanceId.VPCMismatch', 'message' => null, 'http_code' => null, 'description' => '指定的伸缩组与添加的ECS实例不在同一个VPC当中'], + ['code' => 'InvalidInstanceType.Mismatch', 'message' => 'Instance types don\'t match the specified disk category.', 'http_code' => 403, 'description' => '实例规格和云盘类型不匹配。'], + ['code' => 'InvalidInstanceType.NotAuthorized', 'message' => 'Instance types are not authorized.', 'http_code' => 403, 'description' => '实例规格无效。'], + ['code' => 'InvalidInstanceType.NotSupported', 'message' => 'The instance type "%s" is not supported by ess.', 'http_code' => 400, 'description' => '伸缩配置设置的实例规格无效。'], + ['code' => 'InvalidLoadBalancerId.IncorrectAddressType', 'message' => null, 'http_code' => null, 'description' => '在指定VswitchID后,指定的SLB实例为私网类型'], + ['code' => 'InvalidLoadBalancerId.IncorrectInstanceNetworkType', 'message' => null, 'http_code' => null, 'description' => '指定的SLB实例含有的ECS实例的网络类型与伸缩组的网络类型不匹配'], + ['code' => 'InvalidLoadBalancerId.IncorrectInstanceNetworkType', 'message' => 'The network type of the instance in specified load balancer does not support this action.', 'http_code' => null, 'description' => '指定的SLB实例含有的ECS实例的网络类型与伸缩组的网络类型不匹配'], + ['code' => 'InvalidLoadBalancerId.NotFound', 'message' => null, 'http_code' => null, 'description' => '指定的SLB实例在该用户账号下不存在'], + ['code' => 'InvalidLoadBalancerId.NotFound', 'message' => 'The specified Load Balancer does not exist.', 'http_code' => null, 'description' => '指定的SLB实例在该用户账号下不存在'], + ['code' => 'InvalidLoadBalancerId.RegionMismatch', 'message' => null, 'http_code' => null, 'description' => '指定的SLB实例与伸缩组所在的地域不匹配'], + ['code' => 'InvalidLoadBalancerId.VPCMismatch', 'message' => null, 'http_code' => null, 'description' => '指定的伸缩组的SLB实例含有的ECS实例与VSwitchId不在同一个VPC当中'], + ['code' => 'InvalidLoadBalancerId.VPCMismatch', 'message' => 'The specified virtual switch and the instance in specified load balancer are not in the same VPC.', 'http_code' => null, 'description' => '指定的伸缩组的SLB实例含有的ECS实例与VSwitchId不在同一个VPC当中'], + ['code' => 'InvalidNotificationArn', 'message' => 'The specified param "notificationArn" is invalid.', 'http_code' => 400, 'description' => '参数NotificationArn无效。'], + ['code' => 'InvalidOperation.Conflict', 'message' => 'Specific operation may conflicts with other operations, please retry later.', 'http_code' => 400, 'description' => '当前请求遇到冲突,请稍后重试。'], + ['code' => 'InvalidOperation.GroupDeletionProtection', 'message' => 'The operation is not allowed due to "%s" is protected by deletion protection.', 'http_code' => 403, 'description' => '删除伸缩组请求被拒绝。'], + ['code' => 'InvalidOperation.Suspended', 'message' => 'Specific operation is rejected while "%s" process is suspended.', 'http_code' => 400, 'description' => '伸缩组扩容或者缩容请求被拒绝。'], + ['code' => 'InvalidParameter', 'message' => 'The specified value of parameter %s is not valid.', 'http_code' => 400, 'description' => '参数%s无效。'], + ['code' => 'InvalidParameter', 'message' => 'The specified value of parameter "%s" is not valid.', 'http_code' => 400, 'description' => '参数"%s"无效。'], + ['code' => 'InvalidParameter', 'message' => 'The ServerGroupType of "%s" is not supported, only "Instance" ServerGroupType is currently supported.', 'http_code' => 400, 'description' => ' "%s" 的服务器类型不支持,当前仅支持 "Instance" 服务器类型。'], + ['code' => 'InvalidParameter.Conflict', 'message' => 'DesiredCapacity can\'t be less than the number of managed instances in the scaling group.', 'http_code' => 400, 'description' => '期望实例数不能小于伸缩组的托管实例数。'], + ['code' => 'InvalidParameter.Conflict', 'message' => 'MaxSize can\'t be less than the number of managed instances in the scaling group.', 'http_code' => 400, 'description' => '最大值不能小于伸缩组的托管实例数。'], + ['code' => 'InvalidParameter.Conflict', 'message' => 'The value of parameter PrivatePoolOptions.MatchCriteria and parameter ResourcePoolOptions are conflict, please use ResourcePoolOptions.', 'http_code' => 400, 'description' => '资源池策略与私有池策略冲突,请使用资源池策略'], + ['code' => 'InvalidParameter.Conflict', 'message' => 'Only InstanceTypes are supported when ResourcePoolOptions are used.', 'http_code' => 400, 'description' => '只支持指定实例规格参数时使用资源池策略。'], + ['code' => 'InvalidParameter.Conflict', 'message' => 'The value of parameter ImageId and parameter LaunchTemplateId are conflict.', 'http_code' => 400, 'description' => '启动模版与镜像冲突。'], + ['code' => 'InvalidParameter.Conflict', 'message' => 'The value of parameter ImageId and parameter ScalingConfigurationId'."\n" + .'are conflict.', 'http_code' => 400, 'description' => '伸缩配置与镜像冲突'], + ['code' => 'InvalidParameter.Conflict', 'message' => 'The value of parameter ScalingConfigurationId and parameter InstanceTypeOverrides are conflict.', 'http_code' => 400, 'description' => '伸缩配置与指定多种实例规格,并为不同的实例规格配置权重冲突'], + ['code' => 'InvalidParameter.Conflict', 'message' => 'The value of parameter LaunchTemplateId and parameter ScalingConfigurationId are conflict.', 'http_code' => 400, 'description' => '伸缩配置与启动模版冲突。'], + ['code' => 'InvalidParameter.Conflict', 'message' => 'The value of parameter ImageId and parameter ScalingConfigurationId are conflict.', 'http_code' => 400, 'description' => '镜像与伸缩配置冲突'], + ['code' => 'InvalidParameter.InvalidParameter', 'message' => null, 'http_code' => null, 'description' => '参数取值无效'], + ['code' => 'InvalidParameter.InvalidParameter.Conflict', 'message' => null, 'http_code' => null, 'description' => '指定的参数数值发生冲突'], + ['code' => 'InvalidParameter.TimeZone', 'message' => 'The specified parameter TimeZone is not valid.', 'http_code' => 400, 'description' => '指定的参数TimeZone不合法。'], + ['code' => 'InvalidRamRole.NotFound', 'message' => 'The specified RamRoleName does not exist.', 'http_code' => null, 'description' => '指定的 RamRoleName 不存在。'], + ['code' => 'InvalidRegionId.NotFound', 'message' => null, 'http_code' => null, 'description' => '指定的 RegionId 不存在,请您检查此产品在该地域是否可用。'], + ['code' => 'InvalidResourceId.NotFound', 'message' => 'The specified ResourceIds are not found in our records.', 'http_code' => 400, 'description' => '指定的资源不存在。'], + ['code' => 'InvalidScalingActivityId.NotFound', 'message' => 'The specified scaling activity does not exist.', 'http_code' => 400, 'description' => '指定的伸缩活动不存在。'], + ['code' => 'InvalidScalingConfigurationId.InstanceTypeMismatch', 'message' => null, 'http_code' => null, 'description' => '指定的伸缩配置的实例规格与当前生效的伸缩配置的实例规格不匹配'], + ['code' => 'InvalidScalingConfigurationId.NotFound', 'message' => null, 'http_code' => null, 'description' => '指定的伸缩配置不存在指定的伸缩组中'], + ['code' => 'InvalidScalingConfigurationId.NotFound', 'message' => 'The specified scaling configuration does not exist.', 'http_code' => null, 'description' => '指定的伸缩配置不存在指定的伸缩组中'], + ['code' => 'InvalidScalingConfigurationName.Duplicate', 'message' => null, 'http_code' => null, 'description' => '伸缩配置名已存在'], + ['code' => 'InvalidScalingGroupId.NotFound', 'message' => null, 'http_code' => null, 'description' => '指定的伸缩组在该用户账号下不存在'], + ['code' => 'InvalidScalingGroupId.NotFound', 'message' => 'The specified scaling group does not exist.', 'http_code' => null, 'description' => '指定的伸缩组在该用户账号下不存在'], + ['code' => 'InvalidScalingGroupName.Duplicate', 'message' => null, 'http_code' => null, 'description' => '伸缩组名已存在'], + ['code' => 'InvalidScalingRuleAri.NotFound', 'message' => null, 'http_code' => null, 'description' => '指定的伸缩规则在该用户账号下不存在'], + ['code' => 'InvalidScalingRuleId.NotFound', 'message' => null, 'http_code' => null, 'description' => '指定的伸缩规则在该用户账号下不存在'], + ['code' => 'InvalidScalingRuleId.NotFound', 'message' => 'The specified scaling rule "%s" does not exist.', 'http_code' => 400, 'description' => '指定的伸缩规则不存在。'], + ['code' => 'InvalidScalingRuleName.Duplicate', 'message' => null, 'http_code' => null, 'description' => '伸缩规则名字已存在'], + ['code' => 'InvalidScheduledTaskId.NotFound', 'message' => null, 'http_code' => null, 'description' => '指定的定时任务在该用户账号下不存在'], + ['code' => 'InvalidScheduledTaskId.NotFound', 'message' => 'The specified scheduled task does not exist.', 'http_code' => null, 'description' => '指定的定时任务在该用户账号下不存在'], + ['code' => 'InvalidScheduledTaskName.Duplicate', 'message' => null, 'http_code' => null, 'description' => '定时任务名已存在'], + ['code' => 'InvalidSecurityGroupId.IncorrectNetworkType', 'message' => null, 'http_code' => null, 'description' => '指定的安全组与伸缩组指定网络类型不一致'], + ['code' => 'InvalidSecurityGroupId.IncorrectNetworkType', 'message' => 'The network type of specified Security Group does not support this action.', 'http_code' => null, 'description' => '指定的安全组与伸缩组指定网络类型不一致'], + ['code' => 'InvalidSecurityGroupId.NotFound', 'message' => null, 'http_code' => null, 'description' => '指定的安全组在该用户账号下不存在,请您检查安全组id是否正确。'], + ['code' => 'InvalidSecurityGroupId.NotFound', 'message' => 'The specified security group does not exist.', 'http_code' => null, 'description' => '指定的安全组在该用户账号下不存在,请您检查安全组id是否正确。'], + ['code' => 'InvalidSecurityGroupId.VPCMismatch', 'message' => null, 'http_code' => null, 'description' => '指定的安全组和虚拟交换机不属于同一个虚拟专有网络'], + ['code' => 'InvalidSecurityGroupId.VPCMismatch', 'message' => 'The specified security group and the specified virtual switch are not in the same VPC.', 'http_code' => null, 'description' => '指定的安全组和虚拟交换机不属于同一个虚拟专有网络'], + ['code' => 'InvalidServerId.NotFound', 'message' => 'The specified ServerId does not exist.', 'http_code' => 400, 'description' => 'ECS或ECI 实例不存在。'], + ['code' => 'InvalidSnapshot.TooOld', 'message' => null, 'http_code' => null, 'description' => '该快照创建于2013年7月15日(含)之前,该次调用会被拒绝'], + ['code' => 'InvalidSystemDiskCategory.ValueUnauthorized', 'message' => null, 'http_code' => null, 'description' => '没有创建临时磁盘系统盘的权限'], + ['code' => 'InvalidSystemDiskSize.LessThanImageSize', 'message' => 'The specified parameter SystemDisk.Size is less than the image size.', 'http_code' => 400, 'description' => '系统盘设置的大小小于镜像大小。'], + ['code' => 'InvalidVSwitchId.NotFound', 'message' => null, 'http_code' => null, 'description' => '指定的虚拟交换机不存在'], + ['code' => 'InvalidVSwitchId.NotFound', 'message' => 'The specified virtual switch does not exist.', 'http_code' => null, 'description' => '指定的虚拟交换机不存在'], + ['code' => 'InvalidVSwitchId.NotFoundSpecifiedVSwitch', 'message' => 'The specified vSwitch(%s) does not exist.', 'http_code' => 404, 'description' => '指定的交换机不存在。'], + ['code' => 'LastActivity.NotFinished', 'message' => 'Last activity is not finished', 'http_code' => 400, 'description' => '上次伸缩活动未完成。'], + ['code' => 'LifecycleAction.InProcess', 'message' => 'The specified lifecycleHook you provided has in process lifecycle action.', 'http_code' => 400, 'description' => '生命周期挂钩正在触发中。'], + ['code' => 'LifecycleActionTokenCompleted', 'message' => 'The specified lifecycleActionToken you provided has been completed.', 'http_code' => 400, 'description' => '生命周期挂钩活动已经结束。'], + ['code' => 'LifecycleActionTokenExpired', 'message' => 'The specified lifecycleActionToken you provided has expired.', 'http_code' => 400, 'description' => '生命周期挂钩活动已经超时结束。'], + ['code' => 'LifecycleHookIdAndLifecycleActionToken.Invalid', 'message' => 'The specified lifecycleActionToken and lifecycleHookId you provided does not match any in process lifecycle action.', 'http_code' => 400, 'description' => '指定的LifecycleActionToken或者LifecycleHookId无效。'], + ['code' => 'MissingActiveScalingConfiguration', 'message' => null, 'http_code' => null, 'description' => '伸缩组中未指定生效的伸缩配置'], + ['code' => 'MissingParameter', 'message' => null, 'http_code' => null, 'description' => '缺少参数'], + ['code' => 'MissingParameter', 'message' => 'The input parameter that is mandatory for processing this request is not supplied.', 'http_code' => 400, 'description' => '缺少必需参数。'], + ['code' => 'MissingSecurityToken', 'message' => 'SecurityToken is mandatory for this action.', 'http_code' => 400, 'description' => '缺失必要的参数SecurityToken。'], + ['code' => 'NoSuchVersion', 'message' => null, 'http_code' => null, 'description' => '无效的版本'], + ['code' => 'NotExist.ResourceGroup', 'message' => 'NotExist.ResourceGroup', 'http_code' => 400, 'description' => '指定的资源组不存在。'], + ['code' => 'NotificationConfigurationExist', 'message' => 'The specified notificationConfiguration already exist for the scalingGroup.', 'http_code' => 400, 'description' => '指定的伸缩组事件接收对象已经存在。'], + ['code' => 'NotificationMetadata.UnsupportedFormat', 'message' => 'metadata for Oos execution only support \'JSON\' format.', 'http_code' => 400, 'description' => '生命周期挂钩设置的NotificationMetadata参数无效。'], + ['code' => 'OperationDenied', 'message' => 'This operation is denied because the specified scaling group does not support this action.', 'http_code' => 400, 'description' => '伸缩组当前不支持该操作。'], + ['code' => 'PAYFOR.ACCOUNT_MONEY_VALIDATE_ERROR', 'message' => null, 'http_code' => null, 'description' => '您的渠道商额度不足,请与渠道商联系'], + ['code' => 'PAYFOR.CREDIT_PAY_INSUFFICIENT_BALANCE', 'message' => null, 'http_code' => null, 'description' => '您的预算额度不足,请联系您的渠道商调整预算'], + ['code' => 'PostonlyOrTokenError', 'message' => null, 'http_code' => null, 'description' => '令牌已过期,请刷新再重试。'], + ['code' => 'PutMetricRuleTargets.Failed', 'message' => 'PutMetricRuleTargets for alarm has failed.', 'http_code' => 400, 'description' => '报警任务设置触发扩缩容失败。'], + ['code' => 'QUERY_QUOTA_BOOK_FAILED', 'message' => null, 'http_code' => null, 'description' => '信控额度查询失败'], + ['code' => 'QuotaExceeded.AfterpayInstance', 'message' => null, 'http_code' => null, 'description' => '按量付费ECS实例的使用个数达到上限'], + ['code' => 'QuotaExceeded.BackendServer', 'message' => 'Backend server quota exceeded in load balancer "%s".', 'http_code' => 400, 'description' => '伸缩组关联的CLB负载均衡可挂载的实例数量超出负载均衡限制。'], + ['code' => 'QuotaExceeded.DBInstanceSecurityIP', 'message' => null, 'http_code' => null, 'description' => '指定的RDS实例访问白名单的IP个数达到上限'], + ['code' => 'QuotaExceeded.EphemeralDiskSize', 'message' => null, 'http_code' => null, 'description' => '临时磁盘数据盘总容量超过2T(2008G)'], + ['code' => 'QuotaExceeded.Instance', 'message' => null, 'http_code' => null, 'description' => '用户的ECS实例个数使用达到上限'], + ['code' => 'QuotaExceeded.LoadBalancer', 'message' => 'LoadBalancer quota exceeded in scalingGroup.', 'http_code' => 400, 'description' => '伸缩组关联的CLB负载均衡超过伸缩组限制。'], + ['code' => 'QuotaExceeded.PrivateIpAddress', 'message' => null, 'http_code' => null, 'description' => '虚拟交换机下的私有IP已经被使用完,请您使用其他的虚拟交换机。'], + ['code' => 'QuotaExceeded.ScalingConfiguration', 'message' => null, 'http_code' => null, 'description' => '用户的伸缩配置使用个数达到上限'], + ['code' => 'QuotaExceeded.ScalingGroup', 'message' => null, 'http_code' => null, 'description' => '用户的伸缩组使用个数达到上限'], + ['code' => 'QuotaExceeded.ScalingInstance', 'message' => null, 'http_code' => null, 'description' => '弹性伸缩的ECS实例使用个数达到上限'], + ['code' => 'QuotaExceeded.ScalingRule', 'message' => null, 'http_code' => null, 'description' => '用户的伸缩规则使用个数达到上限'], + ['code' => 'QuotaExceeded.ScheduledTask', 'message' => null, 'http_code' => null, 'description' => '用户的定时任务使用个数达到上限'], + ['code' => 'QuotaExceeded.SecurityGroupInstance', 'message' => null, 'http_code' => null, 'description' => '指定的安全组已添加的ECS实例个数达到上限'], + ['code' => 'QuotaExceeded.VPCInstance', 'message' => null, 'http_code' => null, 'description' => '该vpc下的实例数超过配额限制'], + ['code' => 'QuotaExceeded.VServerGroup', 'message' => 'VServerGroup quota exceeded in the specified scaling group.', 'http_code' => 400, 'description' => '伸缩组关联的虚拟服务器组总数超过了伸缩组限制。'], + ['code' => 'RAM.UnknownCallerType', 'message' => 'Unknown caller type "%s".', 'http_code' => 403, 'description' => '请求设置的账号类型不支持。'], + ['code' => 'RecommendEmpty.DiskTypeNoStock', 'message' => 'The diskTypes are out of usage.', 'http_code' => 403, 'description' => '当前伸缩配置设置的云盘类型库存不足。'], + ['code' => 'RecommendEmpty.InstanceTypeNoStock', 'message' => 'The instanceTypes are out of usage.', 'http_code' => 403, 'description' => '当前伸缩配置设置的实例规格库存不足。'], + ['code' => 'RecommendEmpty.InstanceTypeNotAuthorized', 'message' => 'The recommend instanceTypes are not authorized.', 'http_code' => 403, 'description' => '实例规格无效。'], + ['code' => 'RecommendEmpty.InstanceTypeNotAuthorized', 'message' => 'The recommended instance type is unavailable or does not match the specified disk category.', 'http_code' => 403, 'description' => '实例规格和云盘不匹配。'], + ['code' => 'ResourceNotAvailable', 'message' => null, 'http_code' => null, 'description' => '指定的地域不支持弹性伸缩'], + ['code' => 'ResourceNotAvailable.ClassicNetwork', 'message' => null, 'http_code' => null, 'description' => '指定的区域无法创建指定网络类型的伸缩组'], + ['code' => 'ResourceNotAvailable.ClassicNetwork', 'message' => 'The specified region does not support classic network, or you are the default vpc user.', 'http_code' => 400, 'description' => '该地域下伸缩组不支持经典网络。'], + ['code' => 'ResourceNotAvailable.ECS', 'message' => null, 'http_code' => null, 'description' => '指定的区域无法创建指定的ECS实例类型或磁盘类型'], + ['code' => 'ScalingActivityInProgress', 'message' => null, 'http_code' => null, 'description' => '指定伸缩规则所属的伸缩组有伸缩活动正在进行'], + ['code' => 'ScalingRule.InvalidScalingRuleType', 'message' => 'Specific scaling rule type: %s can not be executed.', 'http_code' => 400, 'description' => '无效的伸缩规则类型。'], + ['code' => 'ScheduledAction.RegionMismatch', 'message' => null, 'http_code' => null, 'description' => '指定的ScheduledAction与定时任务所在的地域不匹配'], + ['code' => 'ServiceNotEnabled', 'message' => 'The OwnerId that your Access Key Id associated to has not enabled.', 'http_code' => 403, 'description' => '未开通mns服务。'], + ['code' => 'ServiceUnavailable', 'message' => null, 'http_code' => null, 'description' => '服务器当前无法处理请求'], + ['code' => 'ServiceUnavailable', 'message' => 'The request has failed due to a temporary failure of the server.', 'http_code' => 503, 'description' => '服务器当前无法处理请求,请稍后再试。'], + ['code' => 'SignatureDoesNotMatch', 'message' => null, 'http_code' => null, 'description' => '无效的签名'], + ['code' => 'TemplateMissingParameter.SecurityGroup', 'message' => 'The input parameter "SecurityGroup" that is mandatory for processing this request is not supplied.', 'http_code' => 400, 'description' => '启动模版缺少必要的安全组配置。'], + ['code' => 'TemplateVersion.NotNumber', 'message' => 'The input parameter "LaunchTemplateVersion" is supposed to be a string representing the version number.', 'http_code' => 400, 'description' => '启动模版的版本无效。'], + ['code' => 'Throttling', 'message' => null, 'http_code' => null, 'description' => '您这个时段的流量已经超限。如果不能满足现有业务要求可以提工单进行申请。'], + ['code' => 'UnsupportedOperation', 'message' => null, 'http_code' => null, 'description' => '无效的接口'], + ['code' => 'UnsupportedOperation', 'message' => 'The specified action is not supported.The specified action is not supported by ECS group.', 'http_code' => 403, 'description' => '不支持调用CreateEciScalingConfiguration API为ECS类型伸缩组创建伸缩配置。'], + ['code' => 'UnsupportedOperation', 'message' => 'There are currently no instances need to refresh.', 'http_code' => 400, 'description' => '伸缩组当前没有需要被刷新的实例。'], + ['code' => 'UnsupportedOperation', 'message' => 'The specified action is not supported. RecurrenceValue.', 'http_code' => 403, 'description' => '重复执行定时任务的数值不支持此操作'], + ['code' => 'UnsupportedOperation', 'message' => 'The specified action is not supported. This ScalingGroup is managed by %s.', 'http_code' => 403, 'description' => '渠道管理的伸缩组不支持该操作.'], + ['code' => 'UnsupportedOperation', 'message' => 'The specified action is not supported. The specified action is not supported by ECI group.', 'http_code' => 403, 'description' => 'ECI伸缩组不支持指定的操作。'], + ['code' => 'UnsupportedOperation', 'message' => 'The specified action is not supported. Your account has been deleted.', 'http_code' => 403, 'description' => '账号已被删除'], + ['code' => 'UnsupportedOperation', 'message' => 'The specified action is not supported. The specified action is not supported by weighted group.', 'http_code' => 403, 'description' => '加权伸缩组不支持指定的操作。'], + ['code' => 'UnsupportedOperation', 'message' => 'The specified action is not supported. Managed Instance can\'t be attached into ECI ScalingGroup.', 'http_code' => 403, 'description' => '托管实例无法添加到ECI类型的伸缩组。'], + ['code' => 'UnsupportedOperation', 'message' => 'The specified action is not supported. The specified action is not supported for Managed instance.', 'http_code' => 403, 'description' => '托管实例不支持指定的操作。'], + ['code' => 'UnsupportedOperation', 'message' => 'This operation is not supported because the Load Balancer is currently being processed. Please try again later or reduce the call frequency.', 'http_code' => 400, 'description' => '不支持此操作,因为负载均衡正在处理中。请稍后再试或降低重试频率。'], + ['code' => 'UnsupportedOperation', 'message' => 'This operation cannot be performed because a InstanceRefresh task is running.', 'http_code' => 400, 'description' => '无法执行此操作,因为实例刷新任务正在运行。'], + ['code' => 'UnsupportedOperation', 'message' => 'The current alarm task is not associated with simple scaling rules, so it does not support the modification of multi metric.', 'http_code' => 403, 'description' => '当前告警任务没有关联伸缩规则,因此不支持该操作。'], + ['code' => 'UserNotAuthorizeEss', 'message' => null, 'http_code' => null, 'description' => '需要为弹性伸缩服务在RAM中分配AliyunESSDefaultRole才能操作此资源'], + ['code' => 'UserNotAuthorizeEss', 'message' => 'Ess should be authorized in ram to operate user resource.', 'http_code' => 403, 'description' => '没有授权ESS获取其他云服务或云资源的访问权限。'], + ['code' => 'WeightedCapacity.NotFound', 'message' => 'Weighted capacity can not be found for instance type "%s".', 'http_code' => 400, 'description' => '实例规格的缺少权重配置。'], + ], + 'changeSet' => [], + 'ram' => [ + 'productCode' => 'AutoScaling', + 'productName' => '弹性伸缩', + 'ramCodes' => ['ess'], + 'ramLevel' => '操作级', + 'ramConditions' => [], + 'ramActions' => [ + [ + 'apiName' => 'DescribeUser', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeUser', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'DescribeScalingRules', + 'description' => '查询伸缩规则', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingRules', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'ModifyInstanceAttribute', + 'description' => '修改伸缩组内实例的部分信息', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyInstanceAttribute', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], - 'systemTags' => [ + [ + 'apiName' => 'DeactivateScalingConfiguration', + 'description' => '使指定伸缩配置进入失效状态', 'operationType' => 'update', - 'abilityTreeCode' => '201544', - 'abilityTreeNodes' => [ - 'FEATUREessBFHJ1B', + 'ramAction' => [ + 'action' => 'ess:DeactivateScalingConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'InstanceId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组内ECS实例的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'i-bp109k5j3dum1ce6****', + [ + 'apiName' => 'ListTagResources', + 'description' => '查询弹性伸缩资源已经绑定的标签列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:ListTagResources', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'ScalingGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', + ], + [ + 'apiName' => 'AttachLoadBalancers', + 'description' => '添加一个或多个负载均衡实例', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:AttachLoadBalancers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'Entrusted', - 'in' => 'query', - 'schema' => [ - 'description' => '手动添加到伸缩组的实例,是否将该实例的生命周期托管给伸缩组。取值范围:'."\n" - ."\n" - .'- true:托管。该实例的生命周期由弹性伸缩管理,与伸缩组自动创建的实例一致。实例被移出伸缩组(不包括通过调用DetachInstances参数移出的实例)时会自动释放。'."\n" - .'- false:不托管。该实例在被移出伸缩组时不会被释放。'."\n" - ."\n" - .'> 该参数仅支持手动添加到伸缩组的实例,而不支持在伸缩组内创建的实例。', - 'type' => 'boolean', - 'required' => false, - 'docRequired' => true, - 'example' => 'true', + ], + [ + 'apiName' => 'ModifyScalingRule', + 'description' => '修改一条伸缩规则', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyScalingRule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', + ], + [ + 'apiName' => 'AttachInstances', + 'description' => '为伸缩组手动添加实例', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:AttachInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'InstanceIds', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '实例ID列表。', - 'type' => 'array', - 'items' => [ - 'description' => '实例ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'i-bp109k5j3dum1ce6****', - ], - 'required' => false, - 'maxItems' => 20, + ], + [ + 'apiName' => 'RemoveInstances', + 'description' => '从一个伸缩组删除一台或多台实例', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DetachInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], + [ + 'apiName' => 'StartInstanceRefresh', + 'description' => '启动实例刷新任务', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:StartInstanceRefresh', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '修改伸缩组内实例的部分信息', - ], - 'DescribeAlertConfiguration' => [ - 'summary' => '调用DescribeAlertConfiguration接口,并指定伸缩组的ID、地域的ID,以查询伸缩组中需要发送短信、站内信和邮件通知的伸缩活动状态,例如伸缩活动执行成功、失败、被拒绝。', - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'DescribeRegions', + 'description' => '查询可以使用弹性伸缩服务的地域', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeRegions', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'CompleteLifecycleAction', + 'description' => '提前结束伸缩活动的等待状态', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:CompleteLifecycleAction', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'DescribeAlertConfig', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeAlertConfig', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'DetachAlbServerGroups', + 'description' => '移出一个或多个ALB服务器组', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DetachAlbServerGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + [ + 'apiName' => 'DescribeScalingGroups', + 'description' => '查询伸缩组列表', 'operationType' => 'get', - 'abilityTreeCode' => '208814', - 'abilityTreeNodes' => [ - 'FEATUREessFY8KDA', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'ScalingGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp18p2yfxow2dloq****', + [ + 'apiName' => 'DeleteScalingConfiguration', + 'description' => '删除一个ECS类型伸缩配置', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteScalingConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属地域的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', + ], + [ + 'apiName' => 'ExitStandby', + 'description' => '使备用状态实例进入运行状态', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ExitStandby', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + [ + 'apiName' => 'DescribeNotificationTypes', + 'description' => '查询弹性伸缩事件及资源变化通知的类型', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeNotificationTypes', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'QueryPredictiveTaskInfo', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:QueryPredictiveTaskInfo', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'AttachAlbServerGroups', + 'description' => '添加一个或多个ALB服务器组', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:AttachAlbServerGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + [ + 'apiName' => 'DescribeCapacityHistory', + 'description' => '', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'ess:DescribeCapacityHistory', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + [ + 'apiName' => 'DeleteScalingRule', + 'description' => '删除一条伸缩规则', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteScalingRule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + [ + 'apiName' => 'DescribeLimitation', + 'description' => '查询资源配额限制', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeLimitation', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DescribeScalingGroupDetail', + 'description' => '查询指定伸缩组详情', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingGroupDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + [ + 'apiName' => 'ModifyAlarm', + 'description' => '修改报警任务', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyAlarm', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + [ + 'apiName' => 'SuspendInstanceRefresh', + 'description' => '暂停实例刷新任务', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:SuspendInstanceRefresh', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + [ + 'apiName' => 'ResumeProcesses', + 'description' => '恢复伸缩组中被暂停的流程', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ResumeProcesses', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + [ + 'apiName' => 'CreateDiagnoseReport', + 'description' => '创建诊断报告', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateDiagnoseReport', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ModifyScalingConfiguration', + 'description' => '修改一个ECS类型伸缩配置', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyScalingConfiguration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'ScaleStatuses' => [ - 'description' => '伸缩组中设置需要发送短信、站内信和邮件通知的伸缩活动类型。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组开启需要发送短信、站内信和邮件通知的伸缩活动类型。可能值:'."\n" - .'- ScaleSuccessful:伸缩活动执行成功时发送通知。'."\n" - .'- ScaleRejected:伸缩活动被拒绝时发送通知。'."\n" - .'- ScaleFailed:伸缩活动执行失败时发送通知。', - 'type' => 'string', - 'example' => 'ScaleSuccessful', - ], - ], - ], + [ + 'apiName' => 'DeleteDiagnoseReport', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteDiagnoseReport', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ScaleStatuses\\": [\\n \\"ScaleSuccessful\\"\\n ]\\n}","type":"json"}]', - 'title' => '查询伸缩组中需要发送消息的伸缩活动状态', - ], - 'ModifyAlertConfiguration' => [ - 'summary' => '设置伸缩组中需要发送短信、邮件通知的伸缩活动状态。', - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'DescribeScalingActivities', + 'description' => '查询伸缩活动', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingActivities', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'CancelInstanceRefresh', + 'description' => '取消实例刷新任务', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:CancelInstanceRefresh', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'QueryPredictiveMetric', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:QueryPredictiveMetric', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'operationType' => 'write', - 'systemTags' => [ + [ + 'apiName' => 'ModifyNotificationConfiguration', + 'description' => '修改一条弹性伸缩事件及资源变化通知', 'operationType' => 'update', - 'abilityTreeCode' => '208812', - 'abilityTreeNodes' => [ - 'FEATUREess6E26FJ', - 'FEATUREessLTO4TI', + 'ramAction' => [ + 'action' => 'ess:ModifyNotificationConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'ScalingGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1eyv4qn8ssgv43****', + [ + 'apiName' => 'DescribeScheduledTasks', + 'description' => '查询定时任务的信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScheduledTasks', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'ScaleStatuses', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '需要发送短信、邮件通知的伸缩活动状态。', - 'type' => 'array', - 'items' => [ - 'description' => '需要发送短信、邮件通知的伸缩活动状态。取值范围:'."\n" - ."\n" - .'- ScaleSuccessful:伸缩活动执行成功时发送通知。'."\n" - .'- ScaleRejected:伸缩活动被拒绝时发送通知。'."\n" - .'- ScaleFailed:伸缩活动执行失败时发送通知。'."\n" - ."\n" - .'> 调用此API但不设置该参数,表示取消发送通知,当此参数为空时,表示取消全部通知。', - 'type' => 'string', - 'required' => false, - 'example' => 'ScaleSuccessful', - ], - 'required' => false, - 'maxItems' => 10, + ], + [ + 'apiName' => 'DescribeAlarms', + 'description' => '查询报警任务的信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeAlarms', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', + ], + [ + 'apiName' => 'DescribeScalingGroupDiagnoseDetails', + 'description' => '查询伸缩组最近的一次诊断详情', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingGroupDiagnoseDetails', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '73469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], + [ + 'apiName' => 'ScaleWithAdjustment', + 'description' => '基于指定调整规则触发性扩缩容', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ScaleWithAdjustment', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"73469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '设置伸缩组中需要发送消息通知的伸缩活动状态', - ], - 'DescribeInstanceCreateAndDeleteStatistics' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'DetachVServerGroups', + 'description' => '移除一个或者多个虚拟服务器组', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DetachVServerGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'ApplyEciScalingConfiguration', + 'description' => '基于配置文件管理伸缩配置', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:ApplyEciScalingConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'systemTags' => [ + [ + 'apiName' => 'QueryPredictiveValue', + 'description' => '', 'operationType' => 'get', - 'abilityTreeCode' => '221449', - 'abilityTreeNodes' => [ - 'FEATUREessJ54CHK', + 'ramAction' => [ + 'action' => 'ess:QueryPredictiveValue', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', + [ + 'apiName' => 'CreateScheduledTask', + 'description' => '创建一个定时任务', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateScheduledTask', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'ScalingGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asg-2ze4057nqfbxxxxxxxx', + ], + [ + 'apiName' => 'DescribeScalingConfigurations', + 'description' => '查询ECS类型伸缩配置信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingConfigurations', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'StartTime', - 'in' => 'query', - 'schema' => [ - 'description' => '统计区间开始时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。', - 'type' => 'string', - 'required' => true, - 'example' => '2025-12-15T08:00Z'."\n", + ], + [ + 'apiName' => 'DescribeScalingActivityStatistics', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingActivityStatistics', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'description' => '统计区间结束时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。', - 'type' => 'string', - 'required' => true, - 'example' => '2025-12-18T08:00Z', + ], + [ + 'apiName' => 'CreateScalingGroup', + 'description' => '创建一个伸缩组', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateScalingGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '086EFCD4-C76F-4DC6-9EE9-0D9B711E****', - ], - 'InstanceCreateAndDeleteStatistics' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Statistic' => [ - 'description' => '实例创建和删除统计指标。', - 'type' => 'array', - 'items' => [ - 'description' => '实例创建和删除统计指标。', - 'type' => 'object', - 'properties' => [ - 'DestroyedVmCount' => [ - 'description' => '释放的实例数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '34', - ], - 'CreatedVmCount' => [ - 'description' => '新建的实例数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '12', - ], - 'Time' => [ - 'description' => '统计数据生成的时间点(UTC时间),格式:yyyyMMddHH。', - 'type' => 'string', - 'example' => '2025121623', - ], - 'StoppedVmCount' => [ - 'description' => '进入停机不收费状态的实例数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'StartedVmCount' => [ - 'description' => '从停机不收费状态启动的实例数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - ], - ], - ], - ], - ], - ], + [ + 'apiName' => 'DetachDBInstances', + 'description' => '移除一个或多个RDS实例', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'ess:DetachDBInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"086EFCD4-C76F-4DC6-9EE9-0D9B711E****\\",\\n \\"InstanceCreateAndDeleteStatistics\\": {\\n \\"Statistic\\": [\\n {\\n \\"DestroyedVmCount\\": 34,\\n \\"CreatedVmCount\\": 12,\\n \\"Time\\": \\"2025121623\\",\\n \\"StoppedVmCount\\": 10,\\n \\"StartedVmCount\\": 5\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => '实例创建和删除统计', - 'summary' => '实例创建和删除统计。', - ], - 'QueryPredictiveValue' => [ - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'DescribeInstanceCreateAndDeleteStatistics', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeInstanceCreateAndDeleteStatistics', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'VerifyUser', + 'description' => '验证是否已开通弹性伸缩服务', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'ess:DescribeRegions', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'DescribePatternTypes', + 'description' => '根据实例属性查询实例规格', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'ess:DescribePatternTypes', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '221690', - 'abilityTreeNodes' => [ - 'FEATUREessHEBR5R', + [ + 'apiName' => 'ChangeResourceGroup', + 'description' => '更改伸缩组所属的资源组', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ChangeResourceGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', + [ + 'apiName' => 'ModifyScalingGroup', + 'description' => '修改一个伸缩组', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyScalingGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'StartTime', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组预测实例数的开始时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" - ."\n" - .'格式为:yyyy-MM-ddTHH:mmZ。', - 'type' => 'string', - 'required' => true, - 'example' => '2025-12-17T08:00Z'."\n", + ], + [ + 'apiName' => 'EnableAlarm', + 'description' => '启用一个报警任务', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:EnableAlarm', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组预测实例数的结束时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" - ."\n" - .'格式为:yyyy-MM-ddTHH:mmZ。', - 'type' => 'string', - 'required' => true, - 'example' => '2025-12-18T08:00Z', + ], + [ + 'apiName' => 'ListTagValues', + 'description' => '查询弹性伸缩资源标签键对应的标签值', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:ListTagValues', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'ScalingGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-2zee0wsy0zkdxxxxx', + ], + [ + 'apiName' => 'ModifyAlertConfiguration', + 'description' => '设置伸缩组中需要发送消息通知的伸缩活动状态', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyAlertConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'MetricName', - 'in' => 'query', - 'schema' => [ - 'description' => '预测规则的监控指标名称,取值范围:'."\n" - .'- CpuUtilization:(ECS)平均CPU使用率。'."\n" - .'- IntranetRx:(ECS)内网入流量平均值。'."\n" - .'- IntranetTx :(ECS)内网出流量平均值。', - 'type' => 'string', - 'required' => true, - 'example' => 'CpuUtilization', + ], + [ + 'apiName' => 'DescribeElasticStrength', + 'description' => '查询伸缩组的弹性强度', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeElasticStrength', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'TargetValue', - 'in' => 'query', - 'schema' => [ - 'description' => '预测规则的监控指标目前值。', - 'type' => 'number', - 'format' => 'float', - 'required' => true, - 'example' => '60', + ], + [ + 'apiName' => 'DeleteScalingGroup', + 'description' => '删除一个伸缩组', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteScalingGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'FA5F448E-DC84-5EBC-B6D5-F659ADxxxx', - ], - 'PredictiveValues' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'PredictiveValue' => [ - 'description' => '伸缩组预测实例数。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩组预测实例数。', - 'type' => 'object', - 'properties' => [ - 'Time' => [ - 'description' => '时间点,按照 ISO8601 标准表示,格式为:yyyy-MM-ddTHH:mmZ。', - 'type' => 'string', - 'example' => '2025-12-17T10:00Z', - ], - 'Value' => [ - 'description' => '实例数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - ], - ], - ], - ], - ], - ], + [ + 'apiName' => 'SetInstancesProtection', + 'description' => '开始或停止保护伸缩组内ECS实例', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:SetInstancesProtection', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FA5F448E-DC84-5EBC-B6D5-F659ADxxxx\\",\\n \\"PredictiveValues\\": {\\n \\"PredictiveValue\\": [\\n {\\n \\"Time\\": \\"2025-12-17T10:00Z\\",\\n \\"Value\\": 3\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => '查询预测值', - 'summary' => '查询伸缩组预测实例数。', - ], - 'QueryHistoricalMetric' => [ - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'DescribeInstanceRefreshes', + 'description' => '查询实例刷新任务列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeInstanceRefreshes', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'EnableScalingGroup', + 'description' => '启用一个伸缩组', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:EnableScalingGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'DetachLoadBalancers', + 'description' => '移除一个或多个负载均衡CLB实例', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DetachLoadBalancers', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], - 'systemTags' => [ + [ + 'apiName' => 'DescribeScalingActivityDetail', + 'description' => '查询一个伸缩活动的详细信息', 'operationType' => 'get', - 'abilityTreeCode' => '221688', - 'abilityTreeNodes' => [ - 'FEATUREessHEBR5R', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingActivityDetail', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', + [ + 'apiName' => 'ApplyScalingGroup', + 'description' => '基于配置文件管理伸缩组', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:ApplyScalingGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'StartTime', - 'in' => 'query', - 'schema' => [ - 'description' => '历史监控数据的开始时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" - ."\n" - .'格式为:yyyy-MM-ddTHH:mmZ。', - 'type' => 'string', - 'required' => true, - 'example' => '2025-12-17T08:00Z', + ], + [ + 'apiName' => 'AttachVServerGroups', + 'description' => '添加负载均衡实例下虚拟服务器组', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:AttachVServerGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'description' => '历史监控数据的结束时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" - ."\n" - .'格式为:yyyy-MM-ddTHH:mmZ。', - 'type' => 'string', - 'required' => true, - 'example' => '2025-12-18T08:00Z', + ], + [ + 'apiName' => 'SetInstanceHealth', + 'description' => '设置伸缩组内ECS实例的健康状态', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:SetInstanceHealth', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'ScalingGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp15oubotmrq11xe****', + ], + [ + 'apiName' => 'DetachServerGroups', + 'description' => '移除一个或多个负载均衡服务器组', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DetachServerGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'MetricName', - 'in' => 'query', - 'schema' => [ - 'description' => '预测规则的监控指标名称,取值范围: '."\n" - .'- CpuUtilization:(ECS)平均CPU使用率。'."\n" - .'- IntranetRx:(ECS)内网入流量平均值。'."\n" - .'- IntranetTx :(ECS)内网出流量平均值。', - 'type' => 'string', - 'required' => true, - 'example' => 'CpuUtilization', + ], + [ + 'apiName' => 'ListTagKeys', + 'description' => '查询弹性伸缩资源标签键的列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:ListTagKeys', + 'authLevel' => '', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'HistoricalMetrics' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'HistoricalMetric' => [ - 'description' => '预测规则的监控指标。', - 'type' => 'array', - 'items' => [ - 'description' => '预测规则的监控指标。', - 'type' => 'object', - 'properties' => [ - 'MetricValue' => [ - 'description' => '指标值。', - 'type' => 'string', - 'example' => '10.0', - ], - 'Time' => [ - 'description' => '监控指标时间点,按照 ISO8601 标准表示,格式为:yyyy-MM-ddTHH:mmZ。', - 'type' => 'string', - 'example' => '2025-12-17T16:00Z', - ], - ], - ], - ], - ], - ], - ], + [ + 'apiName' => 'ModifyLifecycleHook', + 'description' => '修改一个生命周期挂钩的信息', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyLifecycleHook', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"HistoricalMetrics\\": {\\n \\"HistoricalMetric\\": [\\n {\\n \\"MetricValue\\": \\"10.0\\",\\n \\"Time\\": \\"2025-12-17T16:00Z\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => '查询历史监控数据', - 'summary' => '查询使用预测伸缩规则伸缩组的历史监控数据。', - ], - 'QueryPredictiveTaskInfo' => [ - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'DeleteNotificationConfiguration', + 'description' => '删除一条弹性伸缩事件及资源变化通知', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteNotificationConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'SetGroupDeletionProtection', + 'description' => '为伸缩组开启或关闭删除保护', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:SetGroupDeletionProtection', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'RebalanceInstances', + 'description' => '重新平衡ECS实例分布', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:RebalanceInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '221691', - 'abilityTreeNodes' => [ - 'FEATUREessHEBR5R', + [ + 'apiName' => 'CreateNotificationConfiguration', + 'description' => '创建弹性伸缩事件及资源变化通知', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateNotificationConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', + [ + 'apiName' => 'DetachInstances', + 'description' => '从一个伸缩组移出一台或多台实例', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DetachInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'StartTime', - 'in' => 'query', - 'schema' => [ - 'description' => '预测任务的开始时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" - ."\n" - .'格式为:yyyy-MM-ddTHH:mmZ。', - 'type' => 'string', - 'required' => true, - 'example' => '2025-12-17T08:00Z', + ], + [ + 'apiName' => 'DisableAlarm', + 'description' => '停用一个报警任务', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DisableAlarm', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'description' => '预测任务的结束时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" - ."\n" - .'格式为:yyyy-MM-ddTHH:mmZ。', - 'type' => 'string', - 'required' => true, - 'example' => '2025-12-18T08:00Z', + ], + [ + 'apiName' => 'ResumeInstanceRefresh', + 'description' => '恢复暂停中的实例刷新任务', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ResumeInstanceRefresh', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'ScalingRuleId', - 'in' => 'query', - 'schema' => [ - 'description' => '预测伸缩规则的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asr-bp1dp8yd9f8xxxxx', + ], + [ + 'apiName' => 'QueryHistoricalMetric', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:QueryHistoricalMetric', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'TaskInfos' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'TaskInfo' => [ - 'description' => '预测规则产生的定时任务。', - 'type' => 'array', - 'items' => [ - 'description' => '预测规则产生的定时任务。', - 'type' => 'object', - 'properties' => [ - 'Time' => [ - 'description' => '定时任务触发时间点,按照 ISO8601 标准表示,格式为:yyyy-MM-ddTHH:mmZ。', - 'type' => 'string', - 'example' => '2025-12-17T10:00Z', - ], - 'MinValue' => [ - 'description' => '伸缩组最小值。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'MaxValue' => [ - 'description' => '伸缩组最大值。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - ], - ], - ], - ], - ], - ], + [ + 'apiName' => 'DescribeEciScalingConfigurations', + 'description' => '查询ECI类型伸缩组的伸缩配置信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeEciScalingConfigurations', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"TaskInfos\\": {\\n \\"TaskInfo\\": [\\n {\\n \\"Time\\": \\"2025-12-17T10:00Z\\",\\n \\"MinValue\\": 2,\\n \\"MaxValue\\": 10\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => '查询预测任务信息', - 'summary' => '查询预测任务信息。', - ], - 'QueryPredictiveMetric' => [ - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'EnterStandby', + 'description' => '将伸缩组内的ECS实例设置为备用状态', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:EnterStandby', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'DisableScalingGroup', + 'description' => '停用一个伸缩组', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:DisableScalingGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'RecordLifecycleActionHeartbeat', + 'description' => '延长生命周期挂钩触发后ECS实例被挂起等待时间', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:RecordLifecycleActionHeartbeat', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'systemTags' => [ + [ + 'apiName' => 'CreateLifecycleHook', + 'description' => '为伸缩组创建一个或多个生命周期挂钩', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateLifecycleHook', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + [ + 'apiName' => 'DescribeNotificationConfigurations', + 'description' => '查询弹性伸缩事件及资源变化通知', 'operationType' => 'get', - 'abilityTreeCode' => '221689', - 'abilityTreeNodes' => [ - 'FEATUREessHEBR5R', + 'ramAction' => [ + 'action' => 'ess:DescribeNotificationConfigurations', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', + [ + 'apiName' => 'TagResources', + 'description' => '为资源列表创建并绑定标签', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:TagResources', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'StartTime', - 'in' => 'query', - 'schema' => [ - 'description' => '预测监控数据的开始时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" - ."\n" - .'格式为:yyyy-MM-ddTHH:mmZ。', - 'type' => 'string', - 'required' => true, - 'example' => '2025-12-17T08:00Z'."\n", + ], + [ + 'apiName' => 'UntagResources', + 'description' => '为指定的弹性伸缩资源列表统一解绑标签', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:UntagResources', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'description' => '预测监控数据的结束时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。'."\n" - ."\n" - .'格式为:yyyy-MM-ddTHH:mmZ。', - 'type' => 'string', - 'required' => true, - 'example' => '2025-12-18T08:00Z'."\n", + ], + [ + 'apiName' => 'ModifyAlertConfig', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyAlertConfig', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'ScalingGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'asg-bp1igpak5ft1flyp****', + ], + [ + 'apiName' => 'ModifyScheduledTask', + 'description' => '修改一个定时任务的信息', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyScheduledTask', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'MetricName', - 'in' => 'query', - 'schema' => [ - 'description' => '预测规则的监控指标名称,取值范围: '."\n" - .'- CpuUtilization:(ECS)平均CPU使用率。'."\n" - .'- IntranetRx:(ECS)内网入流量平均值。'."\n" - .'- IntranetTx :(ECS)内网出流量平均值。', - 'type' => 'string', - 'required' => true, - 'example' => 'CpuUtilization', + ], + [ + 'apiName' => 'DescribeAlertConfiguration', + 'description' => '查询伸缩组中需要发送消息的伸缩活动状态', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeAlertConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'CC107349-57B7-4405-B1BF-9BF5AF7F****', - ], - 'PredictiveMetrics' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'PredictiveMetric' => [ - 'description' => '预测监控指标。', - 'type' => 'array', - 'items' => [ - 'description' => '预测监控指标。', - 'type' => 'object', - 'properties' => [ - 'MetricValue' => [ - 'description' => '预测指标值。', - 'type' => 'string', - 'example' => '10.0', - ], - 'Time' => [ - 'description' => '指标时间点,按照 ISO8601 标准表示,格式为:yyyy-MM-ddTHH:mmZ。', - 'type' => 'string', - 'example' => '2025-12-17T16:00Z', - ], - ], - ], - ], - ], - ], - ], + [ + 'apiName' => 'CreateScalingRule', + 'description' => '创建一条伸缩规则', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateScalingRule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CC107349-57B7-4405-B1BF-9BF5AF7F****\\",\\n \\"PredictiveMetrics\\": {\\n \\"PredictiveMetric\\": [\\n {\\n \\"MetricValue\\": \\"10.0\\",\\n \\"Time\\": \\"2025-12-17T16:00Z\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => '查询预测监控数据', - 'summary' => '查询预测监控数据。', - ], - 'DeleteDiagnoseReport' => [ - 'summary' => '删除伸缩组健康诊断报告。', - 'methods' => [ - 'get', - ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'CreateEciScalingConfiguration', + 'description' => '创建一个ECI类型伸缩配置', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateEciScalingConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'SuspendProcesses', + 'description' => '暂停伸缩组中的指定流程', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:SuspendProcesses', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'DeleteLifecycleHook', + 'description' => '删除一个生命周期挂钩', 'operationType' => 'delete', - 'abilityTreeCode' => '221454', - 'abilityTreeNodes' => [ - 'FEATUREessXZ2M1E', + 'ramAction' => [ + 'action' => 'ess:DeleteLifecycleHook', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '地域 ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', + [ + 'apiName' => 'CreateScalingConfiguration', + 'description' => '创建一个ECS类型伸缩配置', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateScalingConfiguration', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'ReportId', - 'in' => 'query', - 'schema' => [ - 'description' => '诊断报告ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'dr-j6c7wvdzk5103xxxxx', + ], + [ + 'apiName' => 'DescribeEciScalingConfigurationDetail', + 'description' => '查询ECI类型伸缩配置信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeEciScalingConfigurationDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - '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****', - ], - ], + [ + 'apiName' => 'ExecuteScalingRule', + 'description' => '执行一条伸缩规则', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ExecuteScalingRule', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', - 'title' => '删除伸缩组健康诊断报告', - ], - 'DescribeScalingActivityStatistics' => [ - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'AttachServerGroups', + 'description' => '添加一个或多个负载均衡服务器组', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:AttachServerGroups', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'DeleteScheduledTask', + 'description' => '删除一个定时任务', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteScheduledTask', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'AttachDBInstances', + 'description' => '添加一个或多个RDS实例', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:AttachDBInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], ], ], - 'operationType' => 'read', - 'systemTags' => [ + [ + 'apiName' => 'DescribeDiagnoseReports', + 'description' => '查询诊断报告', 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '221448', - 'abilityTreeNodes' => [ - 'FEATUREessL0GZCK', + 'ramAction' => [ + 'action' => 'ess:DescribeDiagnoseReports', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', + [ + 'apiName' => 'ModifyEciScalingConfiguration', + 'description' => '修改一个ECI类型伸缩配置', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:ModifyEciScalingConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'ScalingGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩组的ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'asg-8vbje5pofxxxxxxxx', + ], + [ + 'apiName' => 'RollbackInstanceRefresh', + 'description' => '回滚实例刷新任务', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ess:RollbackInstanceRefresh', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'StartTime', - 'in' => 'query', - 'schema' => [ - 'description' => '统计区间开始时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。', - 'type' => 'string', - 'required' => true, - 'example' => '2025-12-15T08:00Z', + ], + [ + 'apiName' => 'DeleteAlarm', + 'description' => '删除一个报警任务', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteAlarm', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], - [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'description' => '统计区间结束时间,按照 ISO8601 标准表示,并需要使用 UTC 时间。', - 'type' => 'string', - 'required' => true, - 'example' => '2025-12-18T08:00Z', + ], + [ + 'apiName' => 'VerifyAuthentication', + 'description' => '检测是否已授权弹性伸缩操作ECS和ECI资源', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'ess:DescribeRegions', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - 'name' => 'MetricType', - 'in' => 'query', - 'schema' => [ - 'description' => '伸缩活动统计的指标名称,取值范围:'."\n" - ."\n" - .'- ScalingActivityStatus:统计区间内不同状态的伸缩活动分布。'."\n" - ."\n" - .'- ScalingActivityErrorCodes:统计区间内失败的伸缩活动中,不同错误码的分布。'."\n" - ."\n" - .'默认值:ScalingActivityStatus。', - 'type' => 'string', - 'required' => false, - 'example' => 'ScalingActivityStatus', + ], + [ + 'apiName' => 'DescribeLifecycleHooks', + 'description' => '查询生命周期挂钩详情', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeLifecycleHooks', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'A8F44B4D-BAB4-5176-8705-5984xxxxx', - ], - 'ScalingActivityStatusStatistics' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Statistic' => [ - 'description' => '伸缩活动状态统计指标。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩活动状态统计指标。', - 'type' => 'object', - 'properties' => [ - 'Time' => [ - 'description' => '统计数据生成的时间点(UTC时间),格式:yyyyMMddHH。', - 'type' => 'string', - 'example' => '2025121623', - ], - 'SuccessActivityCount' => [ - 'description' => '成功的伸缩活动数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'FailedActivityCount' => [ - 'description' => '失败的伸缩活动数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'WarningActivityCount' => [ - 'description' => '部分执行成功的伸缩活动数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - ], - ], - ], - ], - ], - 'ScalingActivityErrorCodeStatistics' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'ErrorStatistic' => [ - 'description' => '伸缩活动错误信息统计指标。', - 'type' => 'array', - 'items' => [ - 'description' => '伸缩活动错误信息统计指标。', - 'type' => 'object', - 'properties' => [ - 'ErrorCode' => [ - 'description' => '伸缩活动错误码', - 'type' => 'string', - 'example' => 'QuotaExceeded.PrivateIpAddress', - ], - 'Count' => [ - 'description' => '失败的伸缩活动数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4', - ], - 'Time' => [ - 'description' => '统计数据生成的时间点(UTC时间),格式:yyyyMMddHH。', - 'type' => 'string', - 'example' => '2025121623', - ], - ], - ], - ], - ], - ], - ], + [ + 'apiName' => 'DeleteEciScalingConfiguration', + 'description' => '删除一个ECI类型伸缩配置', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ess:DeleteEciScalingConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + [ + 'apiName' => 'DescribeScalingInstances', + 'description' => '查询伸缩组内ECS实例列表', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeScalingInstances', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + [ + 'apiName' => 'DescribeLifecycleActions', + 'description' => '查看伸缩活动对应的生命周期操作详情', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ess:DescribeLifecycleActions', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ], + ], + ], + [ + 'apiName' => 'CreateAlarm', + 'description' => '创建一个报警任务', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ess:CreateAlarm', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'AutoScaling', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A8F44B4D-BAB4-5176-8705-5984xxxxx\\",\\n \\"ScalingActivityStatusStatistics\\": {\\n \\"Statistic\\": [\\n {\\n \\"Time\\": \\"2025121623\\",\\n \\"SuccessActivityCount\\": 10,\\n \\"FailedActivityCount\\": 1,\\n \\"WarningActivityCount\\": 2\\n }\\n ]\\n },\\n \\"ScalingActivityErrorCodeStatistics\\": {\\n \\"ErrorStatistic\\": [\\n {\\n \\"ErrorCode\\": \\"QuotaExceeded.PrivateIpAddress\\",\\n \\"Count\\": 4,\\n \\"Time\\": \\"2025121623\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => '伸缩活动统计', - 'summary' => '统计一段时间内不同状态的伸缩活动分布。', - ], - ], - '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', + 'resourceTypes' => [ + ['validationType' => 'always', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}'], + ['validationType' => 'always', 'resourceType' => 'ScalingGroup', 'arn' => 'acs:ess:{#regionId}:{#accountId}:scalinggroup/*'], ], ], ]; -- cgit v1.2.3