重装裸金属服务器操作系统
功能介绍
重装裸金属服务器的操作系统。快速发放裸金属服务器支持裸金属服务器数据盘不变的情况下,使用原镜像重装系统盘。重装操作系统支持密码或者密钥注入。
确定裸金属服务器是否为快速发放,请参考查询规格详情和规格扩展信息列表API。
重装操作系统属于异步API,接口调用成功只表示请求下发成功,任务执行结果请通过查询Job状态API获取。
约束
- 使用私有镜像创建的裸金属服务器,请确保已经安装了Cloud-init(Linux镜像)或Cloudbase-init(Windows镜像)。如使用未安装Cloud-init或Cloudbase-init的镜像,该接口不能注入密钥或密码。公共镜像默认已安装Cloud-init或Cloudbase-init。
- 执行重装操作系统任务时,请勿并行执行其他任务,否则可能会引起重装操作系统失败。
- 关机状态或者重装操作系统失败的裸金属服务器,才能执行重装操作。
- 目前Windows镜像不支持注入密码,Linux镜像的user_data为加密后的密码。
URI
POST /v1/{project_id}/baremetalservers/{server_id}/reinstallos
参数 |
是否必选 |
描述 |
---|---|---|
project_id |
是 |
项目ID。 获取方式请参见获取项目ID。 |
server_id |
是 |
裸金属服务器ID。 可以从裸金属服务器控制台查询,或者通过调用查询裸金属服务器列表(废弃)获取。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
os-reinstall |
是 |
Object |
标记为重装裸金属服务器操作。详情请参见表2。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
adminpass |
否 |
String |
裸金属服务器管理员账号的初始登录密码。 其中,Linux管理员账户为root,Windows管理员账户为Administrator。 建议密码复杂度如下:
说明:
|
keyname |
否 |
String |
密钥名称。 密钥可以通过创建和导入SSH密钥(OpenStack原生)API创建,或者使用查询SSH密钥列表(OpenStack原生)API查询已有的密钥。 |
userid |
否 |
String |
用户ID(登录管理控制台,进入我的凭证,即可看到“用户ID”)。 |
metadata |
否 |
Object |
重装裸金属服务器的元数据。详情请参见表3。 |
参数 |
是否必选 |
参数类型 |
描述 |
||||||
---|---|---|---|---|---|---|---|---|---|
user_data |
否 |
String |
重装裸金属服务器过程中待注入的Linux镜像root密码,用户自定义初始化密码。 注:修改密码脚本需经base64编码。 建议密码复杂度如下:
示例:
其中,$6$V6azyeLwcD3CHlpY$BN3VVq18fmCkj66B4zdHLWevqcxlig为密文密码,生成方法如下:
|
请求示例
1
|
POST https://{BMS Endpoint}/v1/bbf1946d374b44a0a2a95533562ba954/baremetalservers/cf2a8b97-b5c6-47ef-9714-eb27adf26e5b/reinstallos |
1 2 3 4 5 6 7 8 9 |
{ "os-reinstall": { "keyname": "$key_name", "userid": "7e25b1da389f4697a79df3a0e5bd494e", "metadata": { "user_data": "$USER_DATA" } } } |
响应参数
名称 |
参数类型 |
说明 |
---|---|---|
job_id |
String |
提交任务成功后返回的任务ID,用户可以使用该ID对任务执行情况进行查询。 如何根据job_id来查询Job的执行状态,请参考查询Job状态。 |
名称 |
参数类型 |
说明 |
---|---|---|
error |
字典数据结构 |
提交任务异常时返回的异常信息,详情请参见表6。 |
响应示例
- 正常响应
{ "job_id": "70a599e0-31e7-49b7-b260-868f441e862b" }
错误码
请参考错误码。