AttachDBInstances

通过调用API AttachDBInstances为伸缩组添加一个或多个RDS实例,可实现根据您的需要随时调整伸缩组内的RDS实例数量,增加您使用上的灵活性与实用性。

接口说明

向伸缩组添加RDS实例时需要满足以下条件:

  • RDS实例与伸缩组必须属于同一账号。
  • RDS实例必须处于未锁定状态,关于锁定策略,请参见RDS使用须知
  • RDS实例必须处于运行中状态。
  • 如果将伸缩组中已存在的RDS实例再次添加到伸缩组,则伸缩组内的RDS实例数量不会改变,但系统会尝试把当前伸缩组内的ECS实例私网IP全部加入到RDS实例的IP白名单中。
说明 添加RDS实例后,RDS IP白名单的default分组中包含的IP不能超过1000条。关于IP白名单,请参见设置白名单

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称

类型

是否必选

示例值

描述

Action String AttachDBInstances

系统规定参数。取值:AttachDBInstances

ScalingGroupId String asg-bp1avr6ensitts3w****

伸缩组的ID。

ForceAttach Boolean false

当RDS实例添加到伸缩组时,是否把当前伸缩组内实例的私网IP全部添加到RDS实例IP白名单中。取值范围:

  • true:添加。
  • false:不添加。

默认值:false。

ClientToken String 123e4567-e89b-12d3-a456-42665544****

保证请求幂等性。

从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参见如何保证幂等性

DBInstance.N String rm-bp12cy3****

RDS实例的ID,N的取值范围:1~5。

RegionId String cn-qingdao

伸缩组所属的地域ID。

AttachMode String SecurityIp

伸缩组与数据库关联方式。取值范围:

  • SecurityIp:修改IP白名单模式,通过将扩容实例自动添加到数据库白名单(目前仅RDS数据库支持)进行关联。
  • SecurityGroup:安全组模式,通过将伸缩配置安全组添加至数据库安全组白名单进行关联,实现安全组下实例数据库访问。

默认值:SecurityIp。

Type String RDS

数据库类型。取值范围:

  • RDS。
  • Redis。
  • MongoDB。

默认值:RDS。

返回数据

名称

类型

示例值

描述

RequestId String 473469C7-AA6F-4DC5-B3DB-A3DC0DE3****

请求ID。

示例

请求示例

http(s)://ess.aliyuncs.com/?Action=AttachDBInstances
&ScalingGroupId=asg-bp1avr6ensitts3w****
&ForceAttach=false
&ClientToken=123e4567-e89b-12d3-a456-42665544****
&DBInstance=["rm-bp12cy3****"]
&RegionId=cn-qingdao
&AttachMode=SecurityIp
&Type=RDS
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<AttachDBInstancesResponse>
    <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>
</AttachDBInstancesResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}

错误码

访问错误中心查看更多错误码。

HttpCode

错误码

错误信息

描述

404

InvalidScalingGroupId.NotFound

The specified scaling group does not exist.

账号下不存在指定的伸缩组。

400

QuotaExceeded.RDS

"RDS" quota exceeded.

伸缩组中RDS实例超出配额限制。

400

InvalidDBInstanceId.NotFound

The specified value of parameter "%s" is not valid.

不存在指定的RDS实例。

400

IncorrectDBInstanceStatus

The current status of DB instance "%s" does not support this action.

当前RDS实例状态不支持该操作。

400

QuotaExceeded.DBInstanceSecurityIP

Security IP quota exceeded in DB instance "%s".

RDS实例后端IP白名单个数超出配额。

400

InvalidInstanceIds.PrivateIpNotFound

Can not find all private ips of instances in specific scaling group.

无法获取组内RDS实例的私网IP。