功能介绍
切换弹性云服务器操作系统。支持弹性云服务器数据盘不变的情况下,使用新镜像重装系统盘。
调用该接口后,系统将卸载系统盘,然后使用新镜像重新创建系统盘,并挂载至弹性云服务器,实现切换操作系统功能。
接口约束
- 该接口仅支持安装了Cloud-init或Cloudbase-init的镜像。
- 关机状态或者重装/切换操作系统失败的弹性云服务器才能执行切换操作。
- 不包含系统盘的弹性云服务器不能切换操作系统。
- 执行切换操作系统任务时,请勿并行执行其他任务,否则可能会引起切换操作系统失败。
- 该接口仅支持安装了Cloud-init或Cloudbase-init的镜像,如使用未安装Cloud-init或Cloudbase-init的镜像,该接口不能注入密钥或密码。
URI
POST /v2/{project_id}/cloudservers/{server_id}/changeos
参数说明请参见 表1。
表1 参数说明 |
参数 | 是否必选 | 描述 |
project_id | 是 | 项目ID。 获取方法请参见获取项目ID。 |
server_id | 是 | 弹性云服务器ID。 |
请求消息
请求参数
请求参数如 表2所示。
表2 请求参数 |
参数 | 是否必选 | 参数类型 | 描述 |
表3 os-change字段数据结构说明 |
参数 | 是否必选 | 参数类型 | 描述 |
os-change | 是 | Dict | 切换弹性云服务器操作系统。 |
adminpass | 否 | String | 云服务器管理员帐户的初始登录密码。 其中,Windows管理员帐户的用户名为Administrator。 建议密码复杂度如下: - 长度为8-26位。
- 密码至少必须包含大写字母、小写字母、数字和特殊字符(!@$%^-_=+[{}]:,./?)中的三种。
说明: - Windows云服务器的密码,不能包含用户名或用户名的逆序,不能包含用户名中超过两个连续字符的部分。
- adminpass和keyname不能同时有值。
- adminpass和keyname如果同时为空,此时,metadata中的user_data属性必须有值。
- 对于已安装Cloud-init的云服务器,使用adminpass字段切换操作系统时,系统如果提示您使用keypair方式切换操作系统,表示当前区域暂不支持使用密码方式。
|
keyname | 否 | String | 密钥名称。 |
userid | 否 | String | 用户ID。 |
imageid | 是 | String | 切换系统所使用的新镜像的ID,格式为UUID。 |
metadata | 否 | 字典数据结构 | 切换云服务器的元数据。 更多信息,请参见表4。 |
表4 metadata字段数据结构说明 |
参数 | 是否必选 | 参数类型 | 描述 |
user_data | 否 | String | 切换云服务器操作系统过程中注入用户数据。 支持注入文本、文本文件或gzip文件。注入内容最大长度32KB。注入内容,需要进行base64格式编码。 |
响应消息
请参考响应(任务类)。
示例
- {
- "os-change": {
- "keyname": "KeyPair-350b",
- "userid": "7e25b1da389f4697a79df3a0e5bd494e",
- "imageid": "e215580f-73ad-429d-b6f2-5433947433b0",
- "metadata": {
- "BYOL": "false"
- }
- }
}
返回值
请参考通用请求返回值。
错误码
请参考错误码说明。