接口功能介绍
该接口提供用户重装一台云主机功能,通过填写相应云主机ID、镜像ID对云主机进行重装。
准备工作:
构造请求:在调用前需要了解如何构造请求,详情查看构造请求
认证鉴权:openapi请求需要进行加密调用,详细查看认证鉴权
注意事项:
单台操作:当前接口只能操作单台云主机,重装多台云主机请使用接口重装多台云主机进行操作
异步接口:该接口为异步接口,请求过后会拿到任务ID(jobID),后续可以调用查询一个异步任务的结果来查询操作是否成功
监控安装:在云服务器创建成功后,3-5分钟内将完成详细监控Agent安装,即开启云服务器CPU,内存,网络,磁盘,进程等指标详细监控,若不开启,则无任何监控数据。
接口约束
1. 确保当前请求资源池下,该云主机、镜像存在(即instanceID、imageID真实存在且与regionID相对应)
2. 云主机需要处于关机状态(stopped),您可以调用查询一台云主机详细信息或获取多台云主机的状态信息查询结果中的instanceStatus字段来确认当前云主机状态
3. 重装使用用户自定义数据需要以Base64方式对其进行编码
4. 若当前云主机存在快照,不允许执行重装操作,您可以调用查询云主机快照列表或查询云主机快照个数统计确定云主机是否存在快照
5. 若当前云主机存在系统盘快照,不允许执行重装操作,您可以调用查询云硬盘快照列表输入当前云主机系统盘ID,来查询是否存在系统盘快照
6. 确保云主机上的硬盘均处于已挂载状态(in-use),您可以调用查询云硬盘详情(基于diskID)查询当前云硬盘状态
7. 重装镜像大小不可大于当前云主机系统盘,您可以分别调用查询云硬盘详情(基于diskID)和查询镜像详细信息查询当前云硬盘大小与镜像大小
8. 云主机不可挂载文件系统 9. 云主机不可存在执行中的整机镜像任务
URI
POST /v4/ecs/rebuild-instance
路径参数
无
Query参数
无
请求参数
请求头header参数
无
请求体body参数
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
clientToken | 否 | String | 客户端存根,用于保证订单幂等性。要求单个云平台账户内唯一,使用同一个ClientToken值,则代表为同一个请求,保留时间为24小时。 注:当涉及付费镜像时,该参数必填;当不涉及时,该参数不支持。 |
||
regionID | 是 | String | 资源池ID,您可以查看地域和可用区来了解资源池 获取: 查 资源池列表查询 |
bb9fdb42056f11eda1610242ac110002 | |
instanceID | 是 | String | 云主机ID,您可以查看弹性云主机了解云主机的相关信息 获取: 查 查询云主机列表 创 创建一台按量付费或包年包月的云主机 创 批量创建按量付费或包年包月云主机 |
adc614e0-e838-d73f-0618-a6d51d09070a | |
password | 是 | String | 用户密码,满足以下规则: 长度在8~30个字符; 必须包含大写字母、小写字母、数字以及特殊符号中的三项; 特殊符号可选: ()`~!@#%^&*_-+=\|{}[]:;'<>,.?/ <br />且不能以斜线号/开头用户密码,满足以下规则:<br />长度在8~30个字符;<br />必须包含大写字母、小写字母、数字以及特殊符号中的三项;<br />特殊符号可选:()`~!@#%^&*_-+=|{}[]:;'<>,.?/\且不能以斜线号 / 开头; 不能包含3个及以上连续字符; Linux镜像不能包含镜像用户名(root)、用户名的倒序(toor)、用户名大小写变化(如RoOt、rOot等); Windows镜像不能包含镜像用户名(Administrator)、用户名大小写变化(adminiSTrator等) |
rebuildTest01 | |
imageID | 否 | String | 镜像ID,您可以查看镜像概述来了解云主机镜像 获取: 查 查询可以使用的镜像资源 创 创建私有镜像(云主机系统盘) 注:不填默认以原镜像进行重装 |
b1d896e1-c977-4fd4-b6c2-5432549977be | |
userData | 否 | String | 用户自定义数据,需要以Base64方式编码,Base64编码后的长度限制为1-16384字符。注:非多可用区类型资源池暂不支持该参数 | UmVidWlsZFRlc3QyMDIyMTEyNDEzMTE= | |
instanceName | 否 | String | 云主机名称。不同操作系统下,云主机名称规则有差异。 Windows:长度为2 其他操作系统:长度为2 注:如果不填,默认值为原来云主机名称 |
ecm-3300 | |
monitorService | 否 | Boolean | 监控参数,支持通过该参数指定云主机在创建后是否开启详细监控,取值范围: false(不开启), true(开启) 若指定该参数为true或不指定该参数,云主机内默认开启最新详细监控服务。 若指定该参数为false,默认公共镜像不开启最新监控服务;私有镜像使用镜像中保留的监控服务。 说明:仅部分资源池支持monitorService参数,详细请参考监控Agent概览。 |
true | |
payImage | 否 | Boolean | 付费镜像,当重装镜像为付费镜像时,该参数为True;当重装镜像为免费镜像时,该参数为False。注:默认为False |
响应参数
参数 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|
statusCode | Integer | 返回状态码(800为成功,900为失败) | 800 | |
errorCode | String | 错误码,为product.module.code三段式码 | Openapi.PatternCheck.NotValid | |
error | String | 错误码,为product.module.code三段式码 | Openapi.PatternCheck.NotValid | |
message | String | 失败时的错误描述,一般为英文描述 | SUCCESS | |
description | String | 失败时的错误描述,一般为中文描述 | 成功 | |
returnObj | Object | 成功时返回的数据 | returnObj |
表 returnObj
参数 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|
jobID | String | 重装任务ID,您可以调用查询一个异步任务的结果来查询操作是否成功。 注:当免费镜像重装时,返回该参数;当付费镜像重装时,不返回该参数 |
a8e88ab8-888e-8888-8b88-c8f88a88e8bf | |
masterOrderNO | String | 订单ID。注:当付费镜像重装时,返回该参数;当免费镜像重装时,不返回该参数; | ||
regionID | String | 资源池ID。注:当付费镜像重装时,返回该参数;当免费镜像重装时,不返回该参数; | ||
masterOrderID | String | 主订单ID。调用方在拿到masterOrderID之后,可以使用materOrderID进一步确认订单状态及资源状态 查询订单状态及资源UUID: 查 根据masterOrderID查询云主机ID。 注:当付费镜像重装时,返回该参数;当免费镜像重装时,不返回该参数 |
235145e4489811eda8330242ac110002 |
枚举参数
无
请求示例
请求url
无
请求头header
无
请求体body
示例1: 使用原镜像进行重装云主机
在华东1资源池以原镜像重装一台云主机
{
"regionID": "bb9fdb42056f11eda1610242ac110002",
"instanceID": "adc614e0-e838-d73f-0618-a6d51d09070a",
"password": "rebuildTest01"
}
示例2:使用其他镜像进行重装,并增加用户自定义数据
在华东1资源池使用镜像名为“Ubuntu 18.04 64位”的共有镜像重装一台云主机,并注入自定义数据
{
"regionID": "bb9fdb42056f11eda1610242ac110002",
"instanceID": "adc614e0-e838-d73f-0618-a6d51d09070a",
"imageID": "26ec204c-ebe5-47b9-bff9-32da77026228",
"password": "rebuildTest02",
"userData": "UmVidWlsZFRlc3QyMDIyMTEyNDEzMTE="
}
示例3:使用收费镜像进行重装
在华东1资源池以付费镜像重装一台云主机
{
"clientToken": "rebuildTest001",
"regionID": "bb9fdb42056f11eda1610242ac110002",
"instanceID": "adc614e0-e838-d73f-0618-a6d51d09070a",
"imageID": "83d3f3a8-9f27-458e-90bd-980a1986a9f5",
"password": "rebuildTest02",
"payImage": True
}
响应示例
示例1:使用免费镜像进行重装
{
"returnObj": {
"jobID": "a8e88ab8-888e-8888-8b88-c8f88a88e8bf"
},
"errorCode": "",
"message": "SUCCESS",
"description": "成功",
"statusCode": 800
}
示例2:使用付费镜像进行重装
{
"returnObj": {
"masterOrderNO": "20240607155648951441",
"regionID": "81f7728662dd11ec810800155d307d5b",
"masterOrderID": "7d71ea9024a311ef9d100242ac110006"
},
"errorCode": "",
"message": "SUCCESS",
"description": "成功",
"statusCode": 800
}
状态码
请参考 状态码
错误码
请参考 错误码