本接口用于停止一台或多台 ECS 实例,支持通过设置参数来选择不同的关机方式、停机模式以及批量操作模式。
接口说明
该接口为异步接口,实例的停止不是立即完成的,成功调用后,实例会先进入停止中(Stoping)状态,你可以调用 DescribeInstanceStatus 查看实例状态,当返回的状态为Stoped
时代表启动成功。
使用须知
- 被安全锁定的实例不能通过调用该接口停止。更多信息,请参见资源安全锁定对调用 API 的影响。
- 按量付费实例开启 VPC 内实例节省停机模式后,您可以通过设置
StoppedMode=KeepCharging
开启普通停机模式,ECS 实例停止后会继续计费,并为您保留 ECS 实例规格库存和公网 IP 地址。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用背景高亮的方式表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
ecs:StopInstances | update | *Instance acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId} |
| 无 |
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
DryRun | boolean | 否 | 是否只预检此次请求。取值范围:
说明
如果参数 BatchOptimization 被设置为SuccessFirst ,对应的DryRun=true 的预检结果只会返回DRYRUN.SUCCESS 。
默认值:false。 | false |
RegionId | string | 是 | 实例所在的地域。您可以调用 DescribeRegions 查看最新的阿里云地域列表。 | cn-hangzhou |
ForceStop | boolean | 否 | 是否强制关机。取值范围:
默认值:false。 | false |
StoppedMode | string | 否 | 停止按量付费 ECS 实例时,设置的停止模式。取值:
默认值:如果您在 ECS 控制台上开启 VPC 内实例节省停机模式(更多信息,请参见打开默认启用节省停机模式),并符合开启条件,则默认值为 | KeepCharging |
BatchOptimization | string | 否 | 设置批量操作模式。取值范围:
默认值:AllTogether。 | AllTogether |
InstanceId | array | 是 | 实例 ID 数组。数组长度:1~100。 | |
string | 是 | 实例 ID。 | i-bp67acfmxazb4p**** |
返回参数
示例
正常返回示例
JSON
格式
{
"RequestId": "1C488B66-B819-4D14-8711-C4EAAA13AC01",
"InstanceResponses": {
"InstanceResponse": [
{
"Code": "200",
"Message": "success",
"InstanceId": "i-bp67acfmxazb4p****",
"CurrentStatus": "Stopping",
"PreviousStatus": "Running"
}
]
}
}
错误码
HTTP status code | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | InvalidParameter.KMSKeyId.CMKNotEnabled | The CMK needs to be added ECS tag | - |
400 | InvalidParameter.KMSKeyId.CMKNotEnabled | The CMK needs to be enabled. | 加密云盘设置了 KMSKeyId 后,CMK必须处于启用状态。您可以调用密钥管理服务的 DescribeKey 接口查询指定CMK的相关信息。 |
400 | InvalidParameter.KMSKeyId.KMSUnauthorized | ECS service account have no right to access your KMS. | ECS 服务无权访问您的 KMS |
400 | DRYRUN.SUCCESS | This request is a dryrun request with successful result. | 您设置了预检此次请求,并且检查通过。 |
400 | InvalidParameter.Encrypted.KmsNotEnable | Failed to perform this operation because KMS is not activated. | 您需要开通KMS密钥托管服务。 |
403 | InvalidInstanceId.NotFound | InstanceId should not be null. | - |
403 | InvalidParameter.TooManyInstanceIds | Instance ids cannot be more than 100. | - |
403 | Abs.InvalidInstanceIds.MalFormed | The specified instanceIds is not valid. | 指定的InstanceId参数不合法 |
403 | InstanceLockedForSecurity | %s | - |
403 | InstanceExpiredOrInArrears | %s | - |
403 | IncorrectInstanceStatus | %s | 当前实例的状态不支持此操作。 |
403 | InvalidInstanceId.NotSupport | %s | - |
403 | InsufficientBalance | Your account does not have enough balance. | 账户余额不足,请先充值再操作。 |
403 | InstanceNotReady | The specified instance is not ready for use. | 该资源目前的状态不支持此操作,请您等待一段时间再进行操作,并确认实例目前状态与操作是否冲突。 |
403 | InvalidOperation.KMSKeyIdNotFound | The specified KMSKeyId not found, %s. | 无法找到关联的KMS加密密钥,请确认该KMS加密密钥有效性。 |
403 | InvalidOperation.KMSServiceNotOpen | KMS service is currently not open. | KMS服务尚未启用. |
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. | 指定的InstanceId不存在。 |
409 | InvalidOperation.Conflict | Request was denied due to conflict with a previous request, please try again later. | 请求操作的资源与之前的请求冲突 |
500 | InternalError | The request processing has failed due to some unknown error. | 内部错误,请重试。 |
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 |
---|
暂无变更历史