将云硬盘导出为镜像
功能介绍
将系统盘或数据盘的数据导出为IMS镜像,导出的镜像在IMS的私有镜像列表中可以查看并使用。
接口约束
如果云硬盘处于“in-use”状态,那么在调用该接口时需要将云硬盘所挂载的云服务器关机。对于共享盘,需要关闭所有挂载的云服务器。
URI
- URI格式
- 参数说明
参数
是否必选
描述
project_id
是
项目ID。
获取方法请参见获取项目ID。
volume_id
是
云硬盘ID。
请求消息
- 请求参数
参数
参数类型
是否必选
描述
os-volume_upload_image
Object
是
标记将云硬盘导出为镜像的操作,请参见•os-volume_upload_image参数说明。
- os-volume_upload_image参数说明
参数
参数类型
是否必选
描述
disk_format
String
否
云硬盘导出镜像的格式。
目前支持vhd、zvhd、zvhd2、raw、qcow2。默认是zvhd2。
image_name
String
是
云硬盘导出镜像的名称。- 名称的首尾字母不能为空格。
- 名称的长度范围为1~128位。
- 名称包含以下字符:大写字母、小写字母、中文、数字、特殊字符包含“-”、“.”、“_”和空格。
force
Boolean
否
强制导出镜像的标示,默认值是false。
- 当force标记为false时,云硬盘处于正在使用状态时,不能强制导出镜像。
- 当force标记为true时,即使云硬盘处于正在使用状态时,仍可以导出镜像。
container_format
String
否
云硬盘导出镜像的容器类型。
目前支持ami、ari、aki、ovf、bare。默认是bare。
__os_type
String
否
云硬盘导出镜像的系统类型。目前只支持“windows”和“linux”,默认值是“linux”。
说明:- 参数名“os”前面为两个“_”,“os”后面为一个“_”。
- 只有云硬盘的volume_image_metadata信息中无“__os_type”字段且云硬盘状态为“available”时,设置的__os_type才会生效。
- 如果不传递该参数,则使用默认的“linux”值作为镜像的系统类型。
- 请求样例
{ "os-volume_upload_image": { "image_name": "sxmatch2", "force": true, "container_format": "bare", "disk_format": "vhd", "__os_type": "linux" } }
响应消息
- 响应参数
参数
参数类型
描述
os-volume_upload_image
Object
标记将云硬盘导出为镜像的操作,请参见•os-volume_upload_image参...。
error
Object
出现错误时,返回的错误信息,具体请参见•error参数说明。
- os-volume_upload_image参数说明
参数
参数类型
描述
status
String
云硬盘导出镜像后的状态,正常值为“uploading”。
image_id
String
云硬盘导出镜像的ID。
image_name
String
云硬盘导出镜像的名称。
volume_type
Object
云硬盘类型的信息,请参见•volume_type参数说明。
container_format
String
云硬盘导出镜像的容器类型。
目前支持ami、ari、aki、ovf、bare。默认是bare。
size
Integer
云硬盘容量,单位为GB。
disk_format
String
云硬盘导出镜像的格式。
目前支持vhd、zvhd、zvhd2、raw、qcow2。默认是vhd。
id
String
云硬盘ID。
display_description
String
云硬盘描述信息。
updated_at
String
云硬盘更新时间。
时间格式:UTC YYYY-MM-DDTHH:MM:SS.XXXXXX
- volume_type参数说明
参数
参数类型
描述
id
String
云硬盘类型ID。
name
String
云硬盘类型名称。
deleted
Boolean
云硬盘类型是否被删除标识。
is_public
Boolean
预留属性。
extra_spec
Object
云硬盘类型的规格,请参见•extra_specs参数说明。
description
Integer
云硬盘类型的描述信息。
created_at
String
云硬盘类型的创建时间。
时间格式:UTC YYYY-MM-DDTHH:MM:SS.XXXXXX
updated_at
String
云硬盘类型的更新时间。
时间格式:UTC YYYY-MM-DDTHH:MM:SS.XXXXXX
deleted_at
String
云硬盘类型的删除时间。
时间格式:UTC YYYY-MM-DDTHH:MM:SS.XXXXXX
- extra_specs参数说明
参数
参数类型
描述
volume_backend_name
String
预留属性。
availability-zone
String
预留属性。
HW:availability_zone
String
预留属性。
- error参数说明
参数
参数类型
描述
message
String
出现错误时,返回的错误消息。
code
String
出现错误时,返回的错误码。
错误码和其对应的含义请参考错误码。
- 响应样例
{ "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> iaas blockstorage_SAS <or> iaas blockstorage_SAS <or> iaas blockstoragesas", "XX:availability_zone": "az-dc-1" }, "is_public": true, "deleted_at": null, "id": "8247b6ed-37f0-4c48-8ef1-f0027fb332bc", "name": "SAS" }, "container_format": "bare", "disk_format": "vhd", "display_description": "", "updated_at": "2018-01-11T01:50:25.800931" } }
或者{ "error": { "message": "XXXX", "code": "XXX" } }
其中error是泛指的错误,有badRequest、itemNotFound等,如报错:{ "itemNotFound": { "message": "XXXX", "code": "XXX" } }
错误码
请参考错误码。