将云硬盘导出为镜像 - CinderExportToImageV3
功能介绍
将系统盘或数据盘的数据导出为IMS镜像,导出的镜像在IMS的私有镜像列表中可以查
看并使用。
调用方法
请参见如何调用API。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权,具体权限要求请参见权限和授权项。
- 如果使用身份策略授权,当前API调用无需身份策略权限。
URI
POST /v3/{project_id}/volumes/{volume_id}/action
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
project_id | 是 | String | 项目ID。获取方法请参见获取项目ID。 |
volume_id | 是 | String | 云硬盘ID |
请求参数
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
X-Auth-Token | 是 | String | 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
os-volume_upload_image | 是 | CinderExportToImageOption object | 标记将云硬盘导出为镜像的操作。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
container_format | 否 | String | 云硬盘导出镜像的容器类型。 目前支持ami、ari、aki、ovf、bare。默认是bare。 |
disk_format | 否 | String | 云硬盘导出镜像的格式。 目前支持vhd、zvhd、zvhd2、raw、qcow2。默认是vhd。 |
force | 否 | Boolean | 强制导出镜像的标示,默认值是false。 当force标记为false时,云硬盘处于正在使用状态时,不能强制导出镜像。 当force标记为true时,即使云硬盘处于正在使用状态时,仍可以导出镜像。 |
image_name | 是 | String | 云硬盘导出镜像的名称。 名称的长度范围为1~128位。 名称只能包含以下字符:大写字母、小写字母、中文、数字、特殊字符包含“-”、“.”、“_”和空格。 |
__os_type | 否 | String | 云硬盘导出镜像的系统类型。目前只支持“windows”和“linux”,默认值是“linux”。说明:只有云硬盘的volume_image_metadata信息中无“__os_type”字段且云硬盘状态为“available”时,设置的__os_type才会生效。如果不传递该参数,则使用默认的“linux”值作为镜像的系统类型。 |
响应参数
状态码:202
参数 | 参数类型 | 描述 |
|---|---|---|
os-volume_upload_image | Image object | 标记将云硬盘导出为镜像的操作。 |
参数 | 参数类型 | 描述 |
|---|---|---|
container_format | String | 云硬盘导出镜像的容器类型。 目前支持ami、ari、aki、ovf、bare。默认是bare。 |
disk_format | String | 云硬盘导出镜像的格式。 目前支持vhd、zvhd、zvhd2、raw、qcow2。默认是vhd。 |
display_description | String | 云硬盘描述信息。 |
id | String | 云硬盘ID。 |
image_id | String | 云硬盘导出镜像的ID。 |
image_name | String | 云硬盘导出镜像的名称。 |
size | Integer | 云硬盘容量。 |
status | String | 云硬盘导出镜像后的状态,正常值为 “uploading”。 |
updated_at | String | 云硬盘更新时间。 时间格式:UTC YYYY-MM-DDTHH:MM:SS.XXXXXX |
volume_type | VolumeType object | 云硬盘类型的信息。 |
参数 | 参数类型 | 描述 |
|---|---|---|
id | String | 云硬盘类型的ID。 |
name | String | 云硬盘类型名称。 |
extra_specs | VolumeTypeExtraSpecs object | 云硬盘类型的规格。 |
description | String | 云硬盘类型的描述信息。 |
qos_specs_id | String | 预留属性。 |
is_public | Boolean | 预留属性。 |
参数 | 参数类型 | 描述 |
|---|---|---|
RESKEY:availability_zones | String | 支持当前云硬盘类型的可用区列表,列表的元素以逗号分隔。 若没有该参数,则表示当前云硬盘类型支持所有可用区。 |
availability-zone | String | 预留属性。 |
os-vendor-extended:sold_out_availability_zones | String | 当前云硬盘类型已售罄的可用区列表,列表的元素以逗号分隔。 |
volume_backend_name | String | 预留属性。 |
HW:availability_zone | String | 预留属性。 |
状态码:400
参数 | 参数类型 | 描述 |
|---|---|---|
error | Error object | 参数解释 出现错误时,返回的错误信息。 取值范围 不涉及。 |
参数 | 参数类型 | 描述 |
|---|---|---|
code | String | 参数解释 出现错误时,返回的错误码。 取值范围 错误码和其对应的含义请参考错误码说明。 |
message | String | 参数解释 出现错误时,返回的错误消息。 取值范围 不涉及。 |
请求示例
POST https://{endpoint}/v3/{project_id}/volumes/{volume_id}/action
{
"os-volume_upload_image" : {
"image_name" : "sxmatch2",
"force" : true,
"container_format" : "bare",
"disk_format" : "vhd",
"__os_type" : "linux"
}
} 响应示例
状态码:202
Accepted
{
"os-volume_upload_image" : {
"status" : "uploading",
"size" : 40,
"id" : "16369c5d-384d-4e64-b37a-56d898769362",
"image_id" : "c5333daa-fbc8-4d1d-bf79-b0567bb45d15",
"image_name" : "evs-ims-test1027",
"volume_type" : {
"description" : "None",
"deleted" : false,
"created_at" : "2015-05-24T14:47:22.132268",
"updated_at" : "2017-07-29T11:29:33.730076",
"extra_specs" : {
"volume_backend_name" : "<or> FusionStorage_SATA <or> FusionStorage_SAS <or> fusionstoragesata",
"XX:availability_zone" : "kvmxen.dc1"
},
"is_public" : true,
"deleted_at" : null,
"id" : "8247b6ed-37f0-4c48-8ef1-f0027fb332bc",
"name" : "SATA"
},
"container_format" : "bare",
"disk_format" : "vhd",
"display_description" : "",
"updated_at" : "2018-01-11T01:50:25.800931"
}
} 状态码:400
Bad Request
{
"error" : {
"message" : "XXXX",
"code" : "XXX"
}
} 状态码
状态码 | 描述 |
|---|---|
202 | Accepted |
400 | Bad Request |
错误码
请参见错误码。

