调用StopInstances停止一台或多台运行中(Running)的ECS实例。调用接口成功后,ECS实例先进入停止中(Stopping)状态,最终进入已停止(Stopped)状态。
接口说明
- 查询ECS实例信息时,如果返回数据中包含
{"OperationLocks": {"LockReason" : "security"}}
,则禁止一切操作。 - 按量付费实例开启VPC内实例节省停机模式后,您可以通过设置
StoppedMode=KeepCharging
开启普通停机模式,ECS实例停止后会继续计费,并为您保留ECS实例规格库存和公网IP地址。 - 支持批量操作,可以通过参数
BatchOptimization
设置批量操作模式。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | StopInstances | 系统规定参数。取值:StopInstances。 |
DryRun | Boolean | 否 | false | 是否只预检此次请求。取值范围:
默认值:false |
RegionId | String | 是 | cn-hangzhou | 实例所在的地域。您可以调用DescribeRegions查看最新的阿里云地域列表。 |
ForceStop | Boolean | 否 | false | 是否强制关机。取值范围:
默认值:false |
StoppedMode | String | 否 | KeepCharging | 停止按量付费ECS实例时,设置的停止模式。取值:
默认值:如果您在ECS控制台上开启VPC内实例节省停机模式(更多信息,请参见打开默认启用节省停机模式),并符合开启条件,则默认值为 |
BatchOptimization | String | 否 | AllTogether | 设置批量操作模式。取值范围:
默认值:AllTogether |
InstanceId.N | String | 是 | i-bp67acfmxazb4p**** | 实例ID。N的取值范围:1~100 |
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
RequestId | String | 1C488B66-B819-4D14-8711-C4EAAA13AC01 | 请求ID。 |
InstanceResponses | Array of InstanceResponse | 由InstanceResposne组成的数组格式,返回每个实例操作的前后状态及操作结果。 |
|
InstanceResponse | |||
Code | String | 200 | 实例操作结果错误码。返回值200为成功,更多请参见下文错误码列表。 |
Message | String | success | 实例操作返回错误信息。返回值Success为成功,更多请参见下文错误码列表。 |
InstanceId | String | i-bp67acfmxazb4p**** | 实例ID。 |
CurrentStatus | String | Stopping | 实例当前状态。 |
PreviousStatus | String | Running | 实例操作前状态。 |
示例
请求示例
http(s)://ecs.aliyuncs.com/?Action=StopInstances
&InstanceId.1=i-bp67acfmxazb4p****
&InstanceId.2=i-bp67acfmxazb4p****
&RegionId=cn-hangzhou
&ForceStop=false
&StoppedMode=KeepCharging
$BatchOptimization=SuccessFirst
&公共请求参数
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<StopInstancesResponse>
<RequestId>FF53E96D-3F1A-42F0-8373-1C2B39D72D44</RequestId>
<InstanceResponses>
<InstanceResponse>
<Message>success</Message>
<InstanceId>i-bp67acfmxazb4p****</InstanceId>
<PreviousStatus>Running</PreviousStatus>
<CurrentStatus>Stopping</CurrentStatus>
<Code>200</Code>
</InstanceResponse>
<InstanceResponse>
<Message>success</Message>
<InstanceId>i-bp67acfmxazb4p****</InstanceId>
<PreviousStatus>Running</PreviousStatus>
<CurrentStatus>Stopping</CurrentStatus>
<Code>200</Code>
</InstanceResponse>
<InstanceResponse>
<Message>The specified InstanceId does not exist.</Message>
<InstanceId>i-TestID</InstanceId>
<PreviousStatus/>
<CurrentStatus/>
<Code>InvalidInstanceId.NotFound</Code>
</InstanceResponse>
</InstanceResponses>
</StopInstancesResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "FF53E96D-3F1A-42F0-8373-1C2B39D72D44",
"InstanceResponses" : {
"InstanceResponse" : [ {
"Message" : "success",
"InstanceId" : "i-bp67acfmxazb4p****",
"PreviousStatus" : "Running",
"CurrentStatus" : "Stopping",
"Code" : "200"
}, {
"Message" : "success",
"InstanceId" : "i-bp67acfmxazb4p****",
"PreviousStatus" : "Running",
"CurrentStatus" : "Stopping",
"Code" : "200"
}, {
"Message" : "The specified InstanceId does not exist.",
"InstanceId" : "i-TestID",
"PreviousStatus" : "",
"CurrentStatus" : "",
"Code" : "InvalidInstanceId.NotFound"
} ]
}
}
错误码
HttpCode | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | InvalidParameter.KMSKeyId.CMKNotEnabled | The CMK needs to be enabled. | 加密云盘设置了 KMSKeyId 后,CMK必须处于启用状态。您可以调用密钥管理服务的 DescribeKey 接口查询指定CMK的相关信息。 |
400 | DRYRUN.SUCCESS | This request is a dryrun request with successful result. | 您设置了预检此次请求,并且检查通过。 |
403 | Abs.InvalidInstanceIds.MalFormed | The specified instanceIds is not valid. | 指定的InstanceId参数不合法 |
403 | IncorrectInstanceStatus | %s | 当前实例的状态不支持此操作。 |
403 | InsufficientBalance | Your account does not have enough balance. | 账户余额不足,请先充值再操作。 |
403 | InstanceNotReady | The specified instance is not ready for use. | 该资源目前的状态不支持此操作,请您等待一段时间再进行操作,并确认实例目前状态与操作是否冲突。 |
404 | InvalidInstanceId.NotFound | %s | 指定的实例不存在,请确认参数 InstanceId 是否正确。 |
404 | InvalidInstanceIds.NotFound | The specified InstanceIds does not exist. | 指定的 InstanceId 不存在。请检查 InstanceId 参数值是否正确。您可以调用 DescribeInstances 查询指定实例的状态。 |
404 | InvalidInstanceId.NotFound | The specified InstanceId does not exist. | 指定的实例不存在,请您检查实例ID是否正确。 |
500 | InternalError | The request processing has failed due to some unknown error. | 内部错误,请重试。 |
访问错误中心查看更多错误码。