调用ReplaceSystemDisk更换一台ECS实例的系统盘或者操作系统。

接口说明

调用该接口时,您需要注意:

  • 您不能更换系统盘的云盘类型。
  • 换系统盘不能修改云盘的类型和计费方式,但是会改变系统盘的云盘ID,原云盘会被释放。
  • 实例的状态必须为已停止(Stopped)状态。如果您的专有网络VPC类型实例开启了VPC内实例停机不收费功能后,为防止地域内ECS实例资源不足而引起更换系统盘后无法重启实例,您需要在停止实例时关闭停机不收费功能。更多详情,请参见StopInstance
  • 安全控制的ECS实例的OperationLocks不能标记为"LockReason" : "security"
  • 实例不能为欠费状态。
  • 您可以通过参数SystemDisk.Size重新指定系统盘的容量大小,SystemDisk.Size的值必须大于等于max{20, 当前系统盘容量}。超过max{20, 更换前的系统盘容量}的云盘容量部分,将收取额外费用。

调试

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

请求参数

名称 类型 是否必选 示例值 描述
InstanceId String i-instanceid1

指定实例的ID。

Action String ReplaceSystemDisk

系统规定参数。对于您自行拼凑HTTP/HTTPS URL发起的API请求,Action为必选参数。取值:ReplaceSystemDisk

Architecture String i386

系统架构。取值范围:

  • i386
  • x86_64
ClientToken String 123e4567-e89b-12d3-a456-426655440000

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

ImageId String m-imageid1

重置系统时使用的镜像ID。

KeyPairName String JoshuaCentOS

密钥对名称。

  • Windows系统ECS实例,忽略该参数。默认为空。即使填写了该参数,仍旧只执行Password的内容。
  • Linux系统ECS实例的密码登录方式会被初始化成禁止。
Password String EcsV587!

实例的密码。长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号中的三类字符。特殊符号可以是:


()`~!@#$%^&*-_+=|{}[]:;'<>,.?/

其中,Windows实例不能以斜线号(/)为密码首字符。

说明 如果传入Password参数,建议您使用HTTPS协议发送请求,避免密码泄露。
PasswordInherit Boolean false

是否使用镜像预设的密码。使用该参数时,Password参数必须为空,同时您需要确保使用的镜像已经设置了密码。

默认值:false

Platform String CentOS

操作系统发行版。取值为CentOS、Ubuntu等。

SecurityEnhancementStrategy String Active

当指定的云盘为系统盘时,您可以设置是否开启安全加固,加载云安全中心插件等。取值范围:

  • Active:启用安全加固,使用云安全中心免费版。该值仅支持公共镜像。
  • DeactiveDeactive:不启用安全加固,禁止加载云安全中心插件。该值支持所有镜像。
SystemDisk.Size Integer 80

新的系统盘容量,单位为GiB。取值范围:Max{20, 参数ImageId对应的镜像大小}~500

默认值:Max{40, 参数ImageId对应的镜像大小}。

UseAdditionalService Boolean true

是否使用阿里云提供的虚拟机系统配置(Windows:NTP、KMS;Linux:NTP、YUM)。

说明 挂载系统盘时(即设备名为/dev/xvda)有效。

返回数据

名称 类型 示例值 描述
DiskId String d-j6cam2z21u4ks3dj6***

新系统盘的云盘ID。

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

请求ID。

示例

请求示例

https://ecs.aliyuncs.com/?Action=ReplaceSystemDisk
&InstanceId=i-instanceid1
&ImageId=m-imageid1
&SystemDisk.Size=80
&ClientToken=123e4567-e89b-12d3-a456-426655440000
&Password=EcsV587!
&PasswordInherit=false
&KeyPairName=JoshuaCentOS
&SecurityEnhancementStrategy=Active
&<公共请求参数>

正常返回示例

XML 格式

<ReplaceSystemDiskResponse>
      <DiskId>d-j6cam2z21u4ks3dj6***</DiskId>
      <RequestId>F3CD6886-D8D0-4FEE-B93E-1B73239673DE</RequestId>
</ReplaceSystemDiskResponse>

JSON 格式

{
	"RequestId":"337568C5-64F3-4B76-8CDD-D3D8C57B5B8C",
	"DiskId":"d-j6cam2z21u4ks3dj6***"
}

错误码

HttpCode 错误码 错误信息 描述
404 InvalidInstanceId.NotFound The specified InstanceId does not exist. 指定的实例不存在,请您检查实例ID是否正确。
400 InvalidSystemDiskSize.ValueNotSupported The specified parameter SystemDisk.Size is invalid. 指定的 SystemDisk.Size 不合法。
404 InvalidInstanceId.NotFound The specified instance does not exist. 指定的实例不存在,请您检查实例ID是否正确。
404 InvalidImageId.NotFound The specified ImageId does not exist. 指定的镜像在该用户账号下不存在,请您检查镜像id是否正确。
403 IncorrectInstanceStatus The current status of the resource does not support this operation. 该资源目前的状态不支持此操作。
403 InstanceLockedForSecurity The instance is locked due to security. 您的资源被安全锁定,拒绝操作。
403 ImageNotSubscribed The specified image has not be subscribed. 指定的镜像未在镜像市场订阅。
403 ImageRemovedInMarket The specified market image is not available, Or the specified user defined image includes product code because it is based on an image subscribed from marketplace, and that image in marketplace includeing exact the same product code has been removed. 指定的云市场镜像不可用。
500 OperationDenied Internal Error. 内部错误。
400 InvalidParameter.Conflict The specified image does not support the specified instance type. 指定的镜像不能用于指定的实例规格。
404 InvalidSystemDiskSize.MoreThanMaxSize The specified SystemDisk.Size parameter exceeds the maximum size. 指定的系统盘大小超出最大容量。
500 InternalError The request processing has failed due to some unknown error. 内部错误,请重试。如果多次尝试失败,请提交工单。
403 InstanceExpiredOrInArrears The specified operation is denied as your prepay instance is expired (prepay mode) or in arrears (afterpay mode). 包年包月实例已过期,请您续费后再进行操作。
403 ChargeTypeViolation The operation is not permitted due to charge type of the instance. 付费方式不支持该操作,请您检查实例的付费类型是否与该操作冲突。
403 DiskCreatingSnapshot The operation is denied due to a snapshot of the specified disk is not completed yet. 指定的磁盘正在创建快照。
403 IoOptimized.NotSupported The specified image is not support IoOptimized Instance. 指定的镜像不支持 I/O 优化型实例。
403 ImageNotSupportInstanceType The specified image don not support the InstanceType instance. 指定的镜像不支持此类实例规格。
403 QuotaExceed.BuyImage The specified image is from the image market,You have not bought it or your quota has been exceeded. 您暂时不能使用指定的市场镜像。
404 InvalidSystemDiskSize.LessThanImageSize The specified parameter SystemDisk.Size is less than the image size. 指定的参数 SytemDisk.Size 小于镜像文件大小数值。
404 InvalidSystemDiskSize.LessThanMinSize The specified parameter SystemDisk.Size is less than the min size. 指定的系统盘小于最低容量。
404 NoSuchResource The specified resource is not found. 指定的资源不存在。
400 InvalidSystemDiskSize.ImageNotSupportResize The specified image does not support resize. 指定的镜像不支持扩容。
400 InvalidSystemDiskSize The specified parameter SystemDisk.Size is invalid. 指定的 SystemDisk.Size 不合法。
403 INST_HAS_UNPAID_ORDER The instance has unpaid order. 该实例有未完成的账单。
400 InvalidSystemDiskSize.ValueNotSupported The specified parameter SystemDisk.Size is invalid 指定的 SystemDisk.Size 不合法。
400 InvalidPassword.Malformed The specified parameter "Password" is not valid. 指定的 Password 参数不合法。
400 InvalidPasswordParam.Mismatch The input password should be null when passwdInherit is true. 启用PasswdInherit后,不允许指定用户名密码。
400 OperationDenied The specified image contains the snapshot of the data disk,does not support this operation. 指定的镜像包含了数据盘快照的映射,不支持导出。
400 InvalidDiskCategory.ValueNotSupported The specified parameter "DiskCategory" is not valid. 参数 DiskCategory 不合法。
403 OperationDenied.InstanceCreating The specified instance is creating. 指定的实例已存在。
400 InvalidParameter.Conflict %s 参数冲突。
400 InvalidSystemDiskSize.ValueNotSupported %s 参数不支持。
400 InvalidKeyPairName.NotFound The specified KeyPairName does not exist. 指定的 KeyPairName 不存在。
400 DependencyViolation.IoOptimize The specified parameter InstanceId is not valid. 指定的实例 ID 不合法。
403 InvalidParameter.NotMatch %s 参数冲突。
400 MissingParameter.Architecture Architecture should not be null. 缺失必需参数。
400 InvalidArchitecture.Malformed Architecture is not valid. 指定的参数无效。
400 MissingParameter.Platform Platform should not be null. 参数缺失。
400 InvalidPlatform.Malformed Platform is not valid. 指定的平台类型无效。
400 InvalidParameter.AllEmpty %s 缺失必需参数。
400 InvalidDiskId.NotFound The specified disk do not exist. 指定的磁盘不存在。
400 InvalidDatadisk.DiskStatusViolation The operation is not permitted due to status of the Datadisk. 不支持指定的数据盘类型。
400 InvalidDatadisk.DiskCategoryViolation The operation is not permitted due to category of the Datadisk. 不支持指定的数据盘类型。
403 ResourcesNotInSameZone The specified instance and disk are not in the same zone. 指定的实例和磁盘不在同一可用区。
400 InvalidSystemDiskSize.ValueNotSupported The specified SystemDiskSize is not valid. 指定的 SystemDisk.Size 不合法。
400 MissingParameter The input parameter "ImageId" that is mandatory for processing this request is not supplied. 参数 ImageId 不得为空。
403 ImageNotSupportInstanceType The specified instanceType is not supported by instance with marketplace image. 指定的市场镜像不支持该实例规格。
500 InternalError The request processing has failed due to some unknown error, exception or failure. 发生未知错误。

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