5.1 镜像
5.1.1 查询镜像列表
功能介绍
根据不同条件查询镜像列表信息。
调试
您可以在API Explorer中调试该接口。
URI
GET /v2/cloudimages{?
__isregistered,__imagetype,__whole_image,__system__cmkid,protected,visibility,ow ner,id,status,name,flavor_id,container_format,disk_format,min_ram,min_disk,__os_
bit,__platform,marker,limit,sort_key,sort_dir,__os_type,tag,member_status,__suppor t_kvm,__support_xen,__support_largememory,__support_diskintensive,__support_hi ghperformance,__support_xen_gpu_type,__support_kvm_gpu_type,__support_xen_h ana,__support_kvm_infiniband,virtual_env_type,enterprise_project_id,created_at,up dated_at,architecture}
说明
可以在URI后面用‘?’和‘&’添加不同的查询条件组合,请参考请求样例。
表5-1 查询参数
参数 是否必选 参数类型 描述
__isregiste
red 否 String 镜像是否可用,取值为true,扩展接口会默 认为true,普通用户只能查询取值为true的
参数 是否必选 参数类型 描述 __imagety
pe 否 String 镜像类型,目前支持以下类型:
● 公共镜像:gold
● 私有镜像:private
● 共享镜像:shared 说明
当前租户共享给其他租户的私有镜像或当前租户 接受的共享镜像中,__imagetype均为shared,
可用owner字段进行区分。当前租户接受的共享 镜像可用member_status进行过滤查询。
__whole_i
mage 否 Boolean 是否为整机镜像,取值为true/false。
__system_
_cmkid 否 String 加密镜像所使用的密钥ID。可以从镜像服务 控制台获取,或者调用查询镜像详情
(OpenStack原生)API查询。
protected 否 Boolean 镜像是否是受保护,取值为true/false,一 般查询公共镜像时候取值为true,查询私有 镜像可以不指定。
visibility 否 String 是否被其他租户可见,取值如下:
● public:公共镜像
● private:私有镜像
● shared:共享镜像 owner 否 String 镜像属于哪个租户。
id 否 String 镜像ID。
status 否 String 镜像状态。取值如下:
● queued:表示镜像元数据已经创建成 功,等待上传镜像文件。
● saving:表示镜像正在上传文件到后端 存储。
● deleted:表示镜像已经删除。
● killed:表示镜像上传错误。
● active:表示镜像可以正常使用。
name 否 String 镜像名称,匹配规则为精确匹配。name参 数说明请参考镜像属性。
参数 是否必选 参数类型 描述
flavor_id 否 String 用于通过云服务器规格过滤出可用公共镜 像,取值为规格ID。
format 否 String 容器类型,取值为bare。
disk_form
at 否 String 镜像格式,目前支持vhd、zvhd、raw、
qcow2、iso。默认值是zvhd2。
min_ram 否 Integer 镜像运行需要的最小内存,单位为MB。参 数取值依据云服务器的规格限制,一般设置 为0。
云服务器的规格限制,请参见规格清单。
min_disk 否 Integer 镜像运行需要的最小磁盘,单位为GB 。取 值为40~1024GB。
__os_bit 否 String 操作系统位数,一般取值为32或者64。
__platform 否 String 镜像平台分类,取值为Windows、
Ubuntu、RedHat、SUSE、CentOS、
Debian、OpenSUSE、Oracle Linux、
Fedora、Other、CoreOS和EulerOS。
marker 否 String 用于分页,表示从哪个镜像开始查询,取值 为镜像ID。
limit 否 Integer 用于分页,表示查询几条镜像记录,取值为 整数,默认取值为500。
sort_key 否 String 用于排序,表示按照哪个字段排序。取值为 镜像属性name、container_format、
disk_format、status、id、size、
created_at字段,默认为创建时间。
sort_dir 否 String 用于排序,表示升序还是降序,取值为asc 和desc。与sort_key一起组合使用,默认为 降序desc。
参数 是否必选 参数类型 描述
__os_type 否 String 镜像系统类型,取值如下:
● Linux
tatus 否 String 成员状态。目前取值有accepted、
rejected、pending。accepted表示已经接
kvm 否 String 如果镜像支持KVM,取值为true,否则无需 增加该属性。
__support_
xen 否 String 如果镜像支持XEN,取值为true,否则无需 增加该属性。
否 String 表示该镜像是支持XEN虚拟化平台下的GPU 优化类型,取值参考表9-2。如果不支持
否 String 表示该镜像是支持KVM虚拟化平台下的 GPU类型,取值参考表9-3。如果不支持 KVM虚拟化下GPU类型,无需添加该属 性。该属性与“__support_xen”和
“__support_kvm”属性不共存。
参数 是否必选 参数类型 描述 __support_
xen_hana 否 String 如果镜像支持XEN虚拟化下HANA类型,取 值为true。否则,无需添加该属性。
该属性与“__support_xen”和
“__support_kvm”属性不共存。
__support_
kvm_infini band
否 String 如果镜像支持KVM虚拟化下Infiniband网卡 类型,取值为true。否则,无需添加该属 性。
该属性与“__support_xen”属性不共存。
virtual_en
v_type 否 String 镜像使用环境类型:FusionCompute、
Ironic、DataImage、IsoImage。
● 如果是云服务器镜像(即系统盘镜 像),则取值为FusionCompute。
● 如果是数据盘镜像,则取值是 DataImage。
● 如果是裸金属服务器镜像,则取值是 Ironic。
● 如果是ISO镜像,则取值是IsoImage。
enterprise
_project_id 否 String 表示查询某个企业项目下的镜像。
● 取值为0,表示查询属于default企业项 目下的镜像。
● 取值为UUID,表示查询属于该UUID对 应的企业项目下的镜像。
● 取值为all_granted_eps,表示查询当前 用户所有企业项目下的镜像。
关于企业项目ID的获取及企业项目特性 的详细信息,请参考“企业中心总 览”。
参数 是否必选 参数类型 描述
created_at 否 String 镜像创建时间。支持按照时间点过滤查询,
取值格式为“操作符:UTC时间”。
其中操作符支持如下几种:
● gt:大于
● gte:大于等于
● lt:小于
● lte:小于等于
● eq:等于
● neq:不等于
时间格式支持:yyyy-MM-ddThh:mm:ssZ 或者yyyy-MM-dd hh:mm:ss
例如,查询创建时间在2018-10-28
10:00:00之前的镜像,可以通过如下条件过 滤:
created_at=lt:2018-10-28T10:00:00Z updated_a
t 否 String 镜像修改时间。支持按照时间点过滤查询,
取值格式为“操作符:UTC时间”。
其中操作符支持如下几种:
● gt:大于
● gte:大于等于
● lt:小于
● lte:小于等于
● eq:等于
● neq:不等于
时间格式支持:yyyy-MM-ddThh:mm:ssZ 或者yyyy-MM-dd hh:mm:ss
例如,查询修改时间在2018-10-28
10:00:00之前的镜像,可以通过如下条件过 滤:
updated_at=lt:2018-10-28T10:00:00Z architectur
e 否 String 镜像架构类型。取值包括:
● x86
● arm
请求消息
● 请求参数 无
● 请求样例
GET https://{Endpoint}/v2/cloudimages?__imagetype=gold&sort_key=name&limit=1
常用列表查询方法
● 公共镜像列表查询
GET /v2/cloudimages?__imagetype=gold&visibility=public&protected=true
● 私有镜像列表查询
GET /v2/cloudimages?owner={project_id}
● 可以使用的共享镜像列表 GET /v2/cloudimages?
member_status=accepted&visibility=shared&__imagetype=shared
● 被拒绝的共享镜像列表 GET /v2/cloudimages?
member_status=rejected&visibility=shared&__imagetype=shared
● 未接受的共享镜像列表 GET /v2/cloudimages?
member_status=pending&visibility=shared&__imagetype=shared
● 裸金属服务器某规格支持的公共镜像列表 GET /v2/cloudimages?
__imagetype=gold&__support_xxx=true&virtual_env_type=Ironic
响应消息
● 响应参数
参数 参数类型 描述
images Array of
objects 镜像详情。
具体请参见表5-2。
表5-2 images 字段说明
参数 参数类型 描述
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_for
mat 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 镜像的格式,目前支持vhd、zvhd、raw、
qcow2、iso。默认值是vhd。
参数 参数类型 描述
__isregistered String 是否是注册过的镜像,取值为“true”或者
“false”。
__platform String 镜像平台分类,取值为Windows、Ubuntu、
RedHat、SUSE、CentOS、Debian、
OpenSUSE、Oracle Linux、Fedora、
Other、CoreOS和EulerOS。
__os_type String 操作系统类型,目前取值Linux、Windows、
Other。
min_disk Integer 镜像运行需要的最小磁盘,单位为GB 。取值 为40~1024GB。
virtual_env_t
ype String 镜像使用环境类型:FusionCompute、
Ironic、DataImage、IsoImage。
● 如果是云服务器镜像,则取值为 FusionCompute。
● 如果是数据卷镜像,则取值是 DataImage。
● 如果是裸金属服务器镜像,则取值是 Ironic。
● 如果是ISO镜像,则取值是IsoImage。
__image_sour
ce_type String 镜像后端存储类型,目前支持uds。
__imagetype String 镜像类型,目前支持以下类型:
● 公共镜像:gold
● 私有镜像:private
● 共享镜像:shared
created_at String 创建时间。格式为UTC时间。
virtual_size Integer 目前暂时不使用。
__originalima
gename String 父镜像ID。
公共镜像或通过文件创建的私有镜像,取值 为空。
__backup_id String 备份ID。如果是备份创建的镜像,则填写为 备份的ID,否则为空。
__productcod
e String 市场镜像的产品ID。
__image_size String 镜像文件的大小,单位为字节。
__data_origin String 镜像来源。
公共镜像为空。
参数 参数类型 描述
__lazyloading String 镜像是否支持延迟加载。取值为“True”或
“False”。
active_at String 镜像状态变为正常的时间。
__os_feature_
list String 镜像附加属性。该属性采用JSON格式来标识 镜像支持的高级特性清单。
__support_kv
m String 如果镜像支持KVM,取值为true,否则无需 增加该属性。
__support_xe
n String 如果镜像支持XEN,取值为true,否则无需增 加该属性。
__support_lar
gememory String 表示该镜像支持超大内存。如果镜像支持超 大内存,取值为true,否则无需增加该属 性。
__support_dis
kintensive String 表示该镜像支持密集存储。如果镜像支持密 集存储性能,则值为true,否则无需增加该
n_gpu_type String 表示该镜像是支持XEN虚拟化平台下的GPU 优化类型,取值参考表9-2。如果不支持XEN 虚拟化下GPU类型,无需添加该属性。该属 性与“__support_xen”和
“__support_kvm”属性不共存。
__support_kv
m_gpu_type String 表示该镜像是支持KVM虚拟化平台下的GPU 类型,取值参考表9-3。
如果不支持KVM虚拟化下GPU类型,无需添 加该属性。该属性与“__support_xen”和
“__support_kvm”属性不共存。
__support_xe
n_hana String 如果镜像支持XEN虚拟化下HANA类型,取值 为true。否则,无需添加该属性。
该属性与“__support_xen”和
“__support_kvm”属性不共存。
__support_kv
m_infiniband String 如果镜像支持KVM虚拟化下Infiniband网卡 类型,取值为true。否则,无需添加该属 性。
该属性与“__support_xen”属性不共存。
该属性与“__support_xen”属性不共存。