更新镜像信息
功能介绍
更新镜像信息接口,主要用于镜像属性的修改。
当前仅支持可用(active)状态的镜像更新相关信息。
请求消息
- 请求参数
参数
是否必选
参数类型
描述
[数组]
是
Array of objects
详情请参见表2。
表2 [数组]字段说明 参数
是否必选
参数类型
描述
op
是
String
操作类型,目前取值为add、replace和remove。
path
是
String
需要操作的属性名称,需要在属性名称前加“/”。
目前用户可以修改以下属性:
- name:镜像名称。
- __description:镜像描述。
- __support_kvm:支持kvm虚拟化。
- __support_xen:支持xen虚拟化。
- __support_largememory:表示该镜像支持超大内存。如果镜像支持超大内存,取值为true,否则无需增加该属性。
- __support_diskintensive:支持密集存储。
- __support_highperformance:支持高性能计算。
- __support_xen_gpu_type:支持xen虚拟化gpu类型。
- __support_kvm_gpu_type:支持kvm虚拟化gpu类型。
- __support_xen_hana:如果镜像支持XEN虚拟化下HANA类型,取值为true。否则,无需添加该属性。该属性与“__support_xen”和“__support_kvm”属性不共存。
- __is_config_init:是否完成初始化配置。
- enterprise_project_id:企业项目ID。
- min_ram:镜像支持的最小内存,单位为MB。取值可以参考云服务器规格限制,一般不设置。
- max_ram:镜像支持的最大内存,单位为MB。取值可以参考云服务器规格限制,一般不设置。
- hw_vif_multiqueue_enabled:支持网卡多队列。
- hw_firmware_type:启动方式,取值为bios或uefi。
- __support_kvm_infiniband:如果镜像支持KVM虚拟化下Infiniband网卡类型,取值为true。否则,无需添加该属性。该属性与“__support_xen”属性不共存。
- __support_fc_inject:表示当前镜像支持Cloud-Init密码/密钥注入方式。如果取值为“true”,表示该镜像不支持Cloud-Init注入密码/密钥,其他取值时表示支持Cloud-Init注入密钥/密码。
- __support_amd:是否是AMD架构类型的镜像。取值为“true”或者“false”。
- __support_kvm_hi1822_hisriov:如果镜像支持sriov直通,取值为true,否则无需增加该属性。
- __support_kvm_hi1822_hivirtionet:如果镜像支持Virtio-net直通规格,取值为true,否则无需增加该属性。
用户可以自定义添加或者删除一些自有的扩展属性。
说明:用户自定义添加的自有扩展属性不支持大写字母。
value
是
String
需要操作的属性的值。参数说明请参考镜像属性。
请求示例
更新镜像名称为ims_test。
1 2 3 4 5 6 7 8 |
PATCH https://{Endpoint}/v2/cloudimages/33ad552d-1149-471c-8190-ff6776174a00 [ { "op": "replace", "path": "/name", "value": "ims_test" } ] |
响应消息
- 响应参数
参数
参数类型
描述
file
String
镜像文件下载和上传链接。
owner
String
镜像属于哪个租户。
id
String
镜像ID。
size
Long
目前暂时不使用。
self
String
镜像链接信息。
schema
String
镜像视图。
status
String
镜像状态。取值如下:
- queued:表示镜像元数据已经创建成功,等待上传镜像文件。
- saving:表示镜像正在上传文件到后端存储。
- deleted:表示镜像已经删除。
- killed:表示镜像上传错误。
- active:表示镜像可以正常使用。
tags
Array of strings
镜像标签列表,提供用户可以自定义管理私有镜像的能力。用户可以通过镜像标签接口为每个镜像增加不同的标签,在查询接口中可以根据标签进行过滤。
visibility
String
是否被其他租户可见。取值如下:
- private:私有镜像
- public:公共镜像
- shared:共享镜像
name
String
镜像名称。name参数说明请参考镜像属性。
checksum
String
目前暂时不使用。
protected
Boolean
是否是受保护的,受保护的镜像不允许删除。取值为true或false。
container_format
String
容器类型。
min_ram
Integer
镜像运行需要的最小内存,单位为MB。参数取值依据云服务器的规格限制,默认设置为0。
max_ram
String
镜像支持的最大内存,单位为MB。参数取值可以参考云服务器的规格限制,默认不设置。
updated_at
String
更新时间。格式为UTC时间。
__os_bit
String
操作系统位数,一般取值为“32”或者“64”。
__os_version
String
操作系统具体版本。
__description
String
镜像描述信息。_description参数说明请参考镜像属性。
disk_format
String
镜像格式,目前支持zvhd2、vhd、zvhd、raw、qcow2、iso。非iso格式时默认值是zvhd2。
__isregistered
String
是否是注册过的镜像,取值为“true”或者“false”。
__platform
String
镜像平台分类,取值为Windows、Ubuntu、Red Hat、SUSE、CentOS、Debian、OpenSUSE、Oracle Linux、Fedora、Other、CoreOS、EulerOS。
__os_type
String
操作系统类型,目前取值Linux、Windows、Other。
__system__cmkid
String
加密镜像所使用的密钥ID。
min_disk
Integer
镜像运行需要的最小磁盘容量,单位为GB 。linux操作系统取值为10~1024GB,Windows操作系统取值为20~1024GB。
virtual_env_type
String
镜像使用环境类型:FusionCompute、Ironic、DataImage、IsoImage。
- 如果是云服务器镜像(即系统盘镜像),则取值为FusionCompute。
- 如果是数据盘镜像,则取值是DataImage。
- 如果是裸金属服务器镜像,则取值是Ironic。
- 如果是ISO镜像,则取值是IsoImage。
__image_source_type
String
镜像后端存储类型,目前只支持uds。
__imagetype
String
镜像类型,目前支持:
- 公共镜像(gold)
- 私有镜像(private)
- 共享镜像(shared)
- 市场镜像(market)
created_at
String
创建时间。格式为UTC时间。
__image_displayname
String
对外展示名称。
virtual_size
Integer
目前暂时不使用。
__originalimagename
String
父镜像ID。
公共镜像或通过文件创建的私有镜像,取值为空。
__backup_id
String
备份ID。如果是备份创建的镜像,则填写为备份的ID,否则无此参数。
__productcode
String
市场镜像的产品ID。
__image_size
String
镜像文件的大小,单位为字节。必须大于0。
__data_origin
String
镜像来源。
公共镜像为空。
__root_origin
String
表示当前镜像来源是从外部导入。取值:file。
__lazyloading
String
镜像是否支持延迟加载。取值为true、false、True或False。
active_at
String
镜像状态变为正常的时间。
__os_feature_list
String
镜像附加属性。该属性采用JSON格式来标识镜像支持的高级特性清单。
__account_code
String
收费镜像标识。
hw_firmware_type
String
云服务器的启动方式。目前支持:
- bios:表示bios引导启动。如果无此参数,表示bios启动方式。
- uefi:表示uefi引导启动。
hw_vif_multiqueue_enabled
String
镜像是否支持网卡多队列。取值为“true”或者“false”。
__support_kvm
String
如果镜像支持KVM,取值为true,否则无需增加该属性。
__support_xen
String
如果镜像支持XEN,取值为true,否则无需增加该属性。
__support_largememory
String
表示该镜像是否支持超大内存特性。如果镜像支持超大内存,取值为true,否则无此属性。
镜像操作系统类型请参考“弹性云服务器类型与支持的操作系统版本”。
__support_diskintensive
String
表示该镜像是否支持密集存储性特性。如果镜像支持密集存储性能,则值为true,否则无此属性。
__support_highperformance
String
表示该镜像是否支持高计算性能的特性。如果镜像支持高计算性能,则值为true,否则无此属性。
__support_xen_gpu_type
String
表示该镜像是支持XEN虚拟化平台下的GPU类型,取值参考表2。如果不支持,则无此属性。该属性与“__support_xen”和“__support_kvm”属性不共存。
__support_kvm_gpu_type
String
表示该镜像是支持KVM虚拟化平台下的GPU类型,取值参考表3。
如果不支持,则无此属性。该属性与“__support_xen”和“__support_kvm”属性不共存。
__support_xen_hana
String
如果镜像支持XEN虚拟化下HANA类型,取值为true。否则,无此属性。
该属性与“__support_xen”和“__support_kvm”属性不共存。
__support_kvm_infiniband
String
如果镜像支持KVM虚拟化下Infiniband网卡类型,取值为true。否则,无此属性。
该属性与“__support_xen”属性不共存。
__system_support_market
Boolean
表示当前镜像是否支持发布为市场镜像。
- true:支持
- false:不支持
__is_offshelved
String
表示当前市场镜像是否下架。
- true:已下架
- false:未下架
enterprise_project_id
String
表示当前镜像所属的企业项目。
- 取值为0或无该值,表示属于default企业项目。
- 取值为UUID,表示属于该UUID对应的企业项目。
关于企业项目特性的详细信息,请参考“企业中心总览”。
__sequence_num
String
表示当前镜像对应云服务器的系统盘插槽位置。
目前暂不使用。
__support_fc_inject
String
表示当前镜像支持Cloud-Init密码/密钥注入方式。
如果取值为“true”,表示该镜像不支持Cloud-Init注入密码/密钥,其他取值时表示支持Cloud-Init注入密钥/密码。
说明:该特性参数只对ECS系统盘镜像生效,其他类型镜像不生效。
__support_arm
String
是否为ARM架构类型的镜像。取值为“true”或者“false”。
__support_agent_list
String
镜像是否支持主机安全或主机监控。
- hss:主机安全
- ces:主机监控
取值样例:
"__support_agent_list": "hss,ces"
说明:如果查询结果无此字段,表示镜像不支持主机安全或主机监控。
__support_amd
String
是否是AMD架构类型的镜像。取值为“true”或者“false”。
__support_kvm_hi1822_hisriov
String
如果镜像支持sriov直通,取值为true,否则无需增加该属性。
__support_kvm_hi1822_hivirtionet
String
如果镜像支持Virtio-net直通规格,取值为true,否则无需增加该属性。
- 响应样例
STATUS CODE 200
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
{ "file": "/v2/images/33ad552d-1149-471c-8190-ff6776174a00/file", "owner": "0b1e494e2660441a957313163095fe5c", "id": "33ad552d-1149-471c-8190-ff6776174a00", "size": 2, "self": "/v2/images/33ad552d-1149-471c-8190-ff6776174a00", "schema": "/v2/schemas/image", "status": "active", "tags": [], "visibility": "private", "name": "ims_test", "checksum": "99914b932bd37a50b983c5e7c90ae93b", "hw_vif_multiqueue_enabled": "true", "protected": false, "container_format": "bare", "min_ram": 0, "updated_at": "2015-12-08T02:30:49Z", "__os_bit": "64", "__os_version": "Ubuntu 14.04 server 64bit", "__description": "ims test", "disk_format": "vhd", "__isregistered": "true", "__platform": "Ubuntu", "__os_type": "Linux", "min_disk": 40, "virtual_env_type": "FusionCompute", "__image_source_type": "uds", "__imagetype": "private", "created_at": "2015-12-04T09:45:33Z", "virtual_size": 0, "__originalimagename": "33ad552d-1149-471c-8190-ff6776174a00", "__backup_id": "", "__productcode": "", "__image_size": "449261568", "__support_fc_inject":"true", "__data_origin": null, "hw_firmware_type": "bios" }
返回值
- 正常
- 异常
返回值
说明
400 Bad Request
请求错误,具体返回错误码请参见错误码。
401 Unauthorized
鉴权失败。
403 Forbidden
没有操作权限。
404 Not Found
找不到资源。
500 Internal Server Error
服务内部错误。
503 Service Unavailable
服务不可用。