调用RebootInstances重启一台或多台处于运行中(Running)状态的ECS实例。接口调用成功后,ECS实例先进入停止中(Stopping)状态,最终进入运行中(Running)状态。

接口说明

  • ECS实例的状态必须为运行中Running)。
  • 支持批量操作,可以通过参数BatchOptimization设置批量操作模式。
  • 支持强制重启(ForceReboot),强制重启等同于传统服务器的断电重启,可能丢失实例操作系统中未写入块存储的数据。
  • 查询ECS实例信息时,如果返回数据中包含{"OperationLocks": {"LockReason" : "security"}},则禁止一切操作。

调试

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

请求参数

名称 类型 是否必选 示例值 描述
Action String RebootInstances

系统规定参数。取值:RebootInstances

InstanceId.N RepeatList i-bp67acfmxazb4p****

实例ID。N的取值范围:1~100。

RegionId String cn-hangzhou

实例所在的地域。您可以调用DescribeRegions查看最新的阿里云地域列表。

DryRun Boolean false

是否只预检此次请求。取值范围:

  • true:发送检查请求,不会重启实例。检查项包括是否填写了必需参数、请求格式、实例状态。如果检查不通过,则返回对应错误。如果检查通过,则返回DRYRUN.SUCCESS
    说明 如果参数BatchOptimization被设置为SuccessFirst,对应的DryRun=true的预检结果只会返回DRYRUN.SUCCESS
  • false:发送正常请求,通过检查后直接重启实例。

默认值:false

ForceReboot Boolean false

是否强制重启。取值范围:

  • true:强制重启。相当于典型的断电操作,所有未写入存储设备的缓存数据会丢失。
  • false:正常重启。

默认值:false

BatchOptimization String AllTogether

设置批量操作模式。取值范围:

  • AllTogether:该模式下,如果实例全部重启成功,则返回成功信息;如果任意一个实例校验不通过,则所有实例重启失败,并返回失败信息。
  • SuccessFirst:该模式下,分别重启每个实例,返回结果包含每个实例的操作结果信息。

默认值:AllTogether

返回数据

名称 类型 示例值 描述
InstanceResponses Array of InstanceResponse

由InstanceResposne组成的数组格式,返回每个实例操作的前后状态及操作结果。

InstanceResponse
Code String 200

实例操作结果错误码。返回值200为成功,更多请参见下文错误码列表。

CurrentStatus String Stopping

实例当前状态。

InstanceId String i-bp1g6zv0ce8oghu7****

实例ID。

Message String success

实例操作返回错误信息。返回值Success为成功,更多请参见下文错误码列表。

PreviousStatus String Running

实例操作前状态。

RequestId String 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E

请求ID。

示例

请求示例

https://ecs.aliyuncs.com/?Action=RebootInstances
&InstanceId.1=i-bp1g6zv0ce8oghu7****
&InstanceId.2=i-bp1g6zv0ce8oghu7****
&InstanceId.3=i-TestID
&RegionId=cn-hangzhou
&ForceReboot=false
$BatchOptimization=SuccessFirst
&<公共请求参数>

正常返回示例

XML 格式

<RebootInstancesResponse>
      <RequestId>FF53E96D-3F1A-42F0-8373-1C2B39D72D44</RequestId>
      <InstanceResponses>
            <InstanceResponse>
                  <Message>success</Message>
                  <InstanceId>i-bp1g6zv0ce8oghu7****</InstanceId>
                  <PreviousStatus>Running</PreviousStatus>
                  <CurrentStatus>Stopping</CurrentStatus>
                  <Code>200</Code>
            </InstanceResponse>
            <InstanceResponse>
                  <Message>success</Message>
                  <InstanceId>i-bp1g6zv0ce8oghu7****</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></PreviousStatus>
                  <CurrentStatus></CurrentStatus>
                  <Code>InvalidInstanceId.NotFound</Code>
            </InstanceResponse>
      </InstanceResponses>
</RebootInstancesResponse>

JSON 格式

{
    "RequestId": "FF53E96D-3F1A-42F0-8373-1C2B39D72D44",
    "InstanceResponses": {
        "InstanceResponse": [
            {
                "Message": "success",
                "InstanceId": "i-bp1g6zv0ce8oghu7****",
                "PreviousStatus": "Running",
                "CurrentStatus": "Stopping",
                "Code": "200"
            },
            {
                "Message": "success",
                "InstanceId": "i-bp1g6zv0ce8oghu7****",
                "PreviousStatus": "Running",
                "CurrentStatus": "Stopping",
                "Code": "200"
            },
            {
                "Message": "The specified InstanceId does not exist.",
                "InstanceId": "i-TestID",
                "PreviousStatus": "",
                "CurrentStatus": "",
                "Code": "InvalidInstanceId.NotFound"
            }
        ]
    }
}

错误码

HttpCode 错误码 错误信息 描述
404 InvalidInstanceId.NotFound %s 指定的实例不存在,请确认参数InstanceId是否正确。
403 IncorrectInstanceStatus %s 当前实例的状态不支持此操作。
500 InternalError The request processing has failed due to some unknown error. 内部错误,请重试。如果多次尝试失败,请提交工单。
404 InvalidInstanceId.NotFound The specified InstanceId does not exist. 指定的实例不存在,请您检查实例ID是否正确。
403 InsufficientBalance Your account does not have enough balance. 账户余额不足,请先充值再操作。
403 InstanceNotReady The specified instance is not ready for use. 该资源目前的状态不支持此操作,请您等待一段时间再进行操作,并确认实例目前状态与操作是否冲突。

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