API标准及多语言预置SDK
本产品(Ess/2014-08-28)的OpenAPI采用RPC签名风格。我们已经为开发者封装了常见编程语言的SDK,开发者可通过下载SDK直接调用本产品OpenAPI而无需关心技术细节。如果现有SDK不能满足使用需求,可通过签名机制进行自签名对接。由于自签名细节非常复杂,需花费 5个工作日左右。因此建议加入我们的服务钉钉群(147535001692),在专家指导下进行签名对接。
在使用API前,您需要准备好身份账号及访问密钥(AccessKey),才能有效通过客户端工具(SDK、CLI等)访问API。细节请参见获取AccessKey。
自定义签名场景
若您的业务场景有特殊需求,需通过自签名方式对接 API,建议优先咨询我们的技术支持团队(服务钉钉群:147535001692),获取专业指导以确保高效接入。
账号与安全准备
阿里云账号具备对所有资源的完全管理权限。一旦 AccessKey 泄露,所有相关资源都将面临未经授权访问的风险。为确保安全,建议创建一个仅具备 API 访问权限的RAM用户并配置其 AccessKey,同时基于最小权限原则 (PoLP) 配置 RAM 策略。仅在明确需要阿里云账号权限的特定场景下,才使用阿里云账号。
伸缩组
|
API |
标题 |
API概述 |
| CreateScalingGroup | 创建一个伸缩组 | 如果您需要根据业务变动需求与策略自动增加或减少指定类型的实例数量,则可以通过调用API CreateScalingGroup创建伸缩组来自动调整您的业务计算能力(即实例数量)。 |
| DeleteScalingGroup | 删除一个伸缩组 | 删除一个伸缩组。 |
| ModifyScalingGroup | 修改一个伸缩组 | 修改一个伸缩组。 |
| EnableScalingGroup | 启用一个伸缩组 | 启用一个伸缩组。 |
| DisableScalingGroup | 停用一个伸缩组 | 停用一个伸缩组。 |
| SetGroupDeletionProtection | 为伸缩组开启或关闭删除保护 | 为伸缩组开启或关闭删除保护。 |
| AttachLoadBalancers | 添加一个或多个负载均衡实例 | 添加一个或多个负载均衡实例。 |
| DetachLoadBalancers | 移除一个或多个负载均衡实例 | 移除一个或多个负载均衡实例。 |
| DetachDBInstances | 移除一个或多个RDS实例 | 移除一个或多个RDS实例。 |
| AttachDBInstances | 添加一个或多个RDS实例 | 添加一个或多个RDS实例。 |
| AttachVServerGroups | AttachVServerGroups | 添加负载均衡实例下的一个或者多个虚拟服务器组。 。 |
| DetachVServerGroups | DetachVServerGroups | 移除一个或者多个虚拟服务器组。 |
| DescribeScalingGroups | 查询伸缩组列表 | 查询伸缩组。 |
| DescribeScalingInstances | 查询伸缩组内实例列表 | 查询伸缩组内ECS实例、ECI实例或托管实例的列表,并列出ECS实例、ECI实例或托管实例的信息。 |
| DescribeScalingActivities | 查询伸缩活动 | 查询伸缩活动。 |
| DescribeScalingActivityDetail | 查询一个伸缩活动的详细信息 | 查询一个伸缩活动的详细信息。 |
| DescribeLimitation | 查询资源配额限制 | 查询资源配额限制。 |
| DescribeElasticStrength | 查询伸缩组的弹性强度 | 伸缩组配置的有效性很大程度决定了扩容过程的成功率。弹性伸缩通过弹性强度描述伸缩配置的有效性,让配置的优良程度量化,帮助用户针对性的优化伸缩配置。 |
| VerifyAuthentication | 检测是否已授权弹性伸缩操作ECS资源 | 检测是否已授权弹性伸缩调操作ECS资源。 |
| SuspendProcesses | 暂停伸缩组中的指定流程 | 暂停伸缩组中的指定流程。 |
| ResumeProcesses | 恢复伸缩组中被暂停的流程 | 恢复伸缩组中被暂停的流程。 |
| VerifyUser | 验证是否已开通弹性伸缩服务 | 验证是否已开通弹性伸缩服务。 |
伸缩配置
|
API |
标题 |
API概述 |
| CreateScalingConfiguration | CreateScalingConfiguration | 通过调用CreateScalingConfiguration接口,并指定伸缩组ID、实例规格、实例镜像等信息,为伸缩组创建一个ECS类型的伸缩配置。 |
| DeleteScalingConfiguration | 删除一个伸缩配置 | 删除一个伸缩配置。 |
| ModifyScalingConfiguration | ModifyScalingConfiguration | 如果当前的伸缩配置不满足业务需求,您可以通过调用API ModifyScalingConfiguration修改ECS类型的伸缩配置(即待扩容的ECS实例模板)。 |
| DescribeScalingConfigurations | 查询伸缩配置的信息 | 查询伸缩配置的信息。 |
| DeactivateScalingConfiguration | 使指定伸缩配置进入失效状态 | 使指定伸缩配置进入失效状态。 |
伸缩规则
|
API |
标题 |
API概述 |
| CreateScalingRule | CreateScalingRule | 创建一条伸缩规则。 |
| DeleteScalingRule | 删除一条伸缩规则 | 删除一条伸缩规则。 |
| ModifyScalingRule | 修改一条伸缩规则 | 修改一条伸缩规则。 |
| DescribeScalingRules | 查询伸缩规则 | 查询伸缩组下的伸缩规则,并列出伸缩规则的信息。 |
触发任务
|
API |
标题 |
API概述 |
| AttachInstances | 为伸缩组手动添加ECS实例 | 为伸缩组手动添加ECS实例。 |
| DetachInstances | 从一个伸缩组移出一台或多台ECS实例 | 从一个伸缩组移出一台或多台ECS实例。 |
| ExecuteScalingRule | 执行一条伸缩规则 | 执行一条伸缩规则。 |
| RemoveInstances | 从一个伸缩组删除一台或多台ECS实例 | 从一个伸缩组删除一台或多台ECS实例。 |
定时任务
|
API |
标题 |
API概述 |
| CreateScheduledTask | 创建一个定时任务 | 创建一个定时任务。 |
| DeleteScheduledTask | 删除一个定时任务 | 删除一个定时任务。 |
| ModifyScheduledTask | 修改一个定时任务的信息 | 修改一个定时任务的信息。 |
| DescribeScheduledTasks | 查询定时任务的信息 | 查询定时任务的信息。 |
生命周期挂钩
|
API |
标题 |
API概述 |
| CreateLifecycleHook | 为伸缩组创建一个或多个生命周期挂钩 | 为伸缩组创建一个或多个生命周期挂钩。 |
| DeleteLifecycleHook | 删除一个生命周期挂钩 | 删除一个生命周期挂钩。 。 |
| ModifyLifecycleHook | 修改一个生命周期挂钩的信息 | 修改一个生命周期挂钩的信息。 。 |
| DescribeLifecycleActions | 查询 Lifecycle Token | 根据伸缩活动ID和状态查询 Lifecycle Token。 |
| DescribeLifecycleHooks | DescribeLifecycleHooks | 查询生命周期挂钩。 |
| RecordLifecycleActionHeartbeat | 延长生命周期挂钩触发后被挂起等待时间 | 延长一个生命周期挂钩触发后被挂起的ECS实例的等待时间。 |
| CompleteLifecycleAction | 提前结束伸缩活动的等待状态 | 提前结束伸缩活动的等待状态。 |
事件通知
|
API |
标题 |
API概述 |
| CreateNotificationConfiguration | 创建弹性伸缩事件及资源变化通知 | 创建弹性伸缩事件及资源变化通知。 。 |
| DeleteNotificationConfiguration | 删除一条弹性伸缩事件及资源变化通知 | 删除一条弹性伸缩事件及资源变化通知。 |
| ModifyNotificationConfiguration | 修改一条弹性伸缩事件及资源变化通知 | 修改一条弹性伸缩事件及资源变化通知。 |
| DescribeNotificationConfigurations | 查询弹性伸缩事件及资源变化通知 | 查询您创建的弹性伸缩事件及资源变化通知。 。 |
| DescribeNotificationTypes | 查询弹性伸缩事件及资源变化通知的类型 | 查询弹性伸缩事件及资源变化通知的类型。 。 |
实例
|
API |
标题 |
API概述 |
| SetInstancesProtection | 开始或停止保护伸缩组内ECS实例 | 开始保护或者停止保护伸缩组内的一台或者多台ECS实例。 |
| SetInstanceHealth | 设置伸缩组内ECS实例的健康状态 | 设置伸缩组内ECS实例的健康状态。 |
| EnterStandby | 将伸缩组内的ECS实例设置为备用状态 | 将伸缩组内的ECS实例设置为备用状态。 |
| ExitStandby | 使备用状态实例进入运行状态 | 使伸缩组内处于备用状态的ECS实例进入运行状态。 |
| RebalanceInstances | 重新平衡ECS实例分布 | 重新平衡多可用区伸缩组内ECS实例的分布。 |
地域
|
API |
标题 |
API概述 |
| DescribeRegions | 查询可以使用弹性伸缩服务的地域 | 查询可以使用弹性伸缩服务的地域。 |
标签
|
API |
标题 |
API概述 |
| ListTagResources | ListTagResources | 查询一个或多个弹性伸缩资源已经绑定的标签列表。 |
| ListTagKeys | 查询弹性伸缩资源标签键的列表 | 查询弹性伸缩资源标签键的列表。 |
| ListTagValues | 查询弹性伸缩资源标签键对应的标签值 | 查询弹性伸缩资源标签键对应的标签值。 |
| TagResources | TagResources | 为指定的弹性伸缩资源列表统一创建并绑定标签。 |
| UntagResources | 为指定的弹性伸缩资源列表统一解绑标签 | 解绑后,如果该标签没有绑定其他任何资源,会被自动删除。 |
报警
|
API |
标题 |
API概述 |
| CreateAlarm | 创建一个报警任务 | 创建一个报警任务。 |
| DeleteAlarm | 删除一个报警任务 | 删除一个报警任务。 |
| DisableAlarm | 停用一个报警任务 | 停用一个报警任务。 |
| EnableAlarm | 启用一个报警任务 | 启用一个报警任务。 |
| ModifyAlarm | ModifyAlarm | 修改一个报警任务。 |
| DescribeAlarms | 查询报警任务的信息 | 查询报警任务的信息。 |
其他
|
API |
标题 |
API概述 |
| AttachAlbServerGroups | 添加一个或多个ALB服务器组 | 向伸缩组添加一个或多个ALB服务器组。 |
| CreateEciScalingConfiguration | 创建一个伸缩配置 | 创建一个ECI类型的伸缩配置。 |
| DeleteEciScalingConfiguration | 删除一个伸缩配置 | 删除一个ECI类型的伸缩配置。 |
| DescribeEciScalingConfigurations | 查询伸缩配置的信息 | 查询ECI类型的伸缩配置信息。 |
| DetachAlbServerGroups | 移出一个或多个ALB服务器组 | 从伸缩组移出一个或多个ALB服务器组。 |
| ModifyEciScalingConfiguration | 修改一个伸缩配置 | 调用ModifyScalingConfiguration修改一个ECI类型的伸缩配置。 |
| ScaleWithAdjustment | 基于指定调整规则触发弹性扩缩容 | 基于指定调整规则触发弹性扩缩容。 |
| ChangeResourceGroup | 更改伸缩组所属的资源组 | 将一个伸缩组作为资源加入一个资源组。 |
| AttachServerGroups | 添加一个或多个负载均衡服务器组 | 从伸缩组添加一个或多个负载均衡服务器组,支持的服务器组类型包括:应用型负载均衡ALB (Application Load Balancer)、网络型负载均衡NLB (Network Load Balancer)。 |
| DetachServerGroups | 移除一个或多个负载均衡服务器组 | 从伸缩组移除一个或多个负载均衡服务器组,支持的服务器组类型包括应用型负载均衡ALB(Application Load Balancer)和网络型负载均衡NLB(Network Load Balancer)。 |
| ModifyInstanceAttribute | 修改伸缩组中一台ECS实例的部分信息 | 调用API ModifyInstanceAttribute修改伸缩组中一台ECS实例的部分信息,目前仅支持修改手动添加到伸缩组中的实例的生命周期托管属性,方便弹性伸缩更加灵活地管理伸缩组中的ECS实例。 |
| DescribePatternTypes | DescribePatternTypes | 使用指定实例属性方式配置伸缩配置时,调用API DescribePatternTypes接口根据指定实例的vCPU核数、内存大小、规格族级别以及可接受的最高价格等属性,筛选出符合要求的实例规格。 |
| ApplyScalingGroup | ApplyScalingGroup | 如果您需要通过配置文件方式快速创建和管理ECI类型的伸缩组,则可以通过调用API ApplyScalingGroup来实现该功能。 |
| ModifyAlertConfiguration | ModifyAlertConfiguration | 伸缩活动在执行成功、失败或者被拒绝时,弹性伸缩支持通过短信、邮件方式发送消息通知,您需要在接收到消息后自行处理相关事件。您可以调用API ModifyAlertConfiguration设置伸缩组中需要发送短信、邮件通知的伸缩活动状态,方便您及时了解某个伸缩活动的变化,快速响应提高扩缩容效率。 |
| DescribeAlertConfiguration | DescribeAlertConfiguration | 伸缩活动在执行成功、失败或者被拒绝时,弹性伸缩支持通过短信、邮件方式发送消息通知,您需要在接收到消息后自行处理相关事件。您可以调用API DescribeAlertConfiguration查询伸缩组中的发送短信、邮件通知的伸缩活动状态,方便您及时了解某个伸缩活动的变化,快速响应提高扩缩容效率。 |
| SuspendInstanceRefresh | SuspendInstanceRefresh | 实例刷新任务执行期间,如果您觉得配置存在问题,但不确定是否需要回滚,您可以调用此API暂停实例刷新任务,在此期间,您可以检查配置是否正确。 |
| ResumeInstanceRefresh | ResumeInstanceRefresh | 恢复一个处于暂停状态的实例刷新任务。 |
| CancelInstanceRefresh | CancelInstanceRefresh | 取消实例刷新任务,会保留已经完成替换和扩容的新实例。 |
| DescribeInstanceRefreshes | DescribeInstanceRefreshes | 如果您需要查看实例刷新任务的基本信息、 实例刷新任务的进度等信息,您可以调用DescribeInstanceRefreshes查询该伸缩组的实例刷新任务。 |
| RollbackInstanceRefresh | RollbackInstanceRefresh | 在实例刷新任务执行过程中,如果发现期望配置不符合需求,您可以调用此API来回滚实例刷新任务。在回滚时,系统将使用伸缩组当前生效的配置来创建新的实例,以替换那些基于期望配置创建的实例。 |
| StartInstanceRefresh | StartInstanceRefresh | 在您需要将新的伸缩配置应用到伸缩组实例中时,或需要更新伸缩组中实例的镜像时,您可以调用本接口完成伸缩组中实例的刷新。 |