華為云計算 云知識 查詢鏡像列表(OpenStack原生)GlanceListImages
查詢鏡像列表(OpenStack原生)GlanceListImages

 

功能介紹

獲取 鏡像 列表。

使用本接口查詢鏡像列表時,需要使用分頁查詢才能返回全部的鏡像列表。

分頁說明

分頁是指返回一組鏡像的一個子集,在返回的時候會存在下個子集的鏈接和首個子集的鏈接,默認返回的子集中數(shù)量為25,用戶也可以通過使用limit和marker兩個參數(shù)自己分頁,指定返回子集中需要返回的數(shù)量。

響應(yīng)中的參數(shù)first是查詢首頁的URL。next是查詢下一頁的URL。當查詢鏡像列表最后一頁時,不存在next。

調(diào)試

您可以在API Explorer中調(diào)試該接口。

URI

GET /v2/images

  • 可以在URI后面用‘?’和‘&’添加不同的查詢條件組合,請參考請求樣例。
  • 如需使用OpenStack Queens版本API,請在請求消息頭中包含X-Api-Version。當X-Api-Version取值大于M則返回Queens版本的結(jié)果,小于等于M,返回Mitaka版本結(jié)果 。
參數(shù)說明請參見表1。
表1 參數(shù)說明

參數(shù)

是否必選

參數(shù)類型

描述

__isregistered

String

鏡像是否可用,取值為true,擴展接口會默認為true,普通用戶只能查詢?nèi)≈禐閠rue的鏡像。

__imagetype

String

鏡像類型,目前支持以下類型:

  • 公共鏡像:gold
  • 私有鏡像:private
  • 共享鏡像:shared
  • 市場鏡像:market

protected

Boolean

鏡像是否是受保護,取值為true/false。一般查詢公共鏡像時候取值為true,查詢私有鏡像可以不指定。

visibility

String

是否被其他租戶可見,取值如下:

  • public:公共鏡像
  • private:私有鏡像
  • shared:共享鏡像

owner

String

鏡像屬于哪個租戶。

id

String

鏡像ID。

status

String

鏡像狀態(tài)。取值如下:

  • queued:表示鏡像元數(shù)據(jù)已經(jīng)創(chuàng)建成功,等待上傳鏡像文件。
  • saving:表示鏡像正在上傳文件到后端存儲。
  • deleted:表示鏡像已經(jīng)刪除。
  • killed:表示鏡像上傳錯誤。
  • active:表示鏡像可以正常使用。

name

String

鏡像名稱,匹配規(guī)則為精確匹配。name參數(shù)說明請參考鏡像屬性

container_format

String

容器類型。默認值是bare。

disk_format

String

鏡像格式,目前支持zvhd2、vhd、zvhd、raw、qcow2、iso。非iso格式時默認值是zvhd2。

min_ram

Integer

鏡像運行需要的最小內(nèi)存,單位為MB。參數(shù)取值依據(jù) 云服務(wù)器 的規(guī)格限制,一般設(shè)置為0。

云服務(wù)器的規(guī)格限制,請參見規(guī)格清單。

min_disk

Integer

鏡像運行需要的最小磁盤,單位為GB 。取值為40~1024GB。

__os_bit

String

操作系統(tǒng)位數(shù),一般取值為32或者64。

__platform

String

鏡像平臺分類,取值為Windows、Ubuntu、Red Hat、SUSE、CentOS、Debian、OpenSUSE、Oracle Linux、Fedora、Other、CoreOS和EulerOS。

marker

String

用于分頁,表示從哪個鏡像開始查詢,取值為鏡像ID。

limit

Integer

用于分頁,表示查詢幾條鏡像記錄,取值為整數(shù),默認返回25條鏡像記錄。

sort_key

String

用于排序,表示按照哪個字段排序。取值為鏡像屬性name、container_format、disk_format、status、id、size、created_at字段,默認為創(chuàng)建時間。

sort_dir

String

用于排序,表示升序還是降序,取值為asc和desc。與sort_key一起組合使用,默認為降序desc。

__os_type

String

鏡像系統(tǒng)類型,取值為Linux、Windows、Other。

tag

String

標簽,用戶為鏡像增加自定義標簽后可以通過該參數(shù)過濾查詢。

說明:

系統(tǒng)近期對標簽功能進行了升級。如果之前添加的Tag為“Key.Value”的形式,則查詢的時候需要使用“Key=Value”的格式來查詢。例如:之前添加的tag為“a.b”,則升級后,查詢時需使用“tag=a=b”。

member_status

String

成員狀態(tài)。目前取值有accepted、rejected、pending。accepted表示已經(jīng)接受共享的鏡像,rejected表示已經(jīng)拒絕了其他用戶共享的鏡像,pending表示需要確認的其他用戶的共享鏡像。需要在查詢時,設(shè)置“visibility”參數(shù)為“shared”。

__support_kvm

String

如果鏡像支持KVM,取值為true,否則無需增加該屬性。

__support_xen

String

如果鏡像支持XEN,取值為true,否則無需增加該屬性。

__support_largememory

String

表示該鏡像支持超大內(nèi)存。如果鏡像支持超大內(nèi)存,取值為true,否則無需增加該屬性。

__support_diskintensive

String

表示該鏡像支持密集存儲。如果鏡像支持密集存儲性能,則值為true,否則無需增加該屬性。

__support_highperformance

String

表示該鏡像支持高計算性能。如果鏡像支持高計算性能,則值為true,否則無需增加該屬性。

__support_xen_gpu_type

String

表示該鏡像是支持XEN虛擬化平臺下的GPU類型。支持GPU加速型實例的鏡像操作系統(tǒng)類型請參考表2。如果不支持XEN虛擬化下GPU類型,無需添加該屬性。該屬性與“__support_xen”和“__support_kvm”屬性不共存。

__support_kvm_gpu_type

String

表示該鏡像是支持KVM虛擬化平臺下的GPU類型,取值參考表3。如果不支持KVM虛擬化下GPU類型,無需添加該屬性。該屬性與“__support_xen”和“__support_kvm”屬性不共存。

__support_xen_hana

String

如果鏡像支持XEN虛擬化下HANA類型,取值為true。否則,無需添加該屬性。

該屬性與“__support_xen”和“__support_kvm”屬性不共存。

__support_kvm_infiniband

String

如果鏡像支持KVM虛擬化下Infiniband網(wǎng)卡類型,取值為true。否則,無需添加該屬性。

該屬性與“__support_xen”屬性不共存。

created_at

String

鏡像創(chuàng)建時間。支持按照時間點過濾查詢,取值格式為“ 操作符:UTC時間”。

其中操作符支持如下幾種:

  • gt:大于
  • gte:大于等于
  • lt:小于
  • lte:小于等于
  • eq:等于
  • neq:不等于

時間格式支持:yyyy-MM-ddThh:mm:ssZ或者yyyy-MM-dd hh:mm:ss

例如,查詢創(chuàng)建時間在2018-10-28 10:00:00之前的鏡像,可以通過如下條件過濾:

created_at=lt:2018-10-28T10:00:00Z

updated_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之前的鏡像,可以通過如下條件過濾:

updated_at=lt:2018-10-28T10:00:00Z

常用列表查詢方法

  • 公共鏡像列表查詢

    GET /v2/images?__imagetype=gold&visibility=public&protected=true

  • 私有鏡像列表查詢

    GET /v2/images?owner={project_id}

  • 可以使用的共享鏡像列表

    GET /v2/images?member_status=accepted&visibility=shared&__imagetype=shared

  • 被拒絕的共享鏡像列表

    GET /v2/images?member_status=rejected&visibility=shared&__imagetype=shared

  • 未接受的共享鏡像列表

    GET /v2/images?member_status=pending&visibility=shared&__imagetype=shared

請求消息

請求參數(shù)

請求示例

查詢鏡像列表。

GET https://{Endpoint}/v2/images

響應(yīng)消息

  • 響應(yīng)參數(shù)

    參數(shù)

    參數(shù)類型

    描述

    first

    String

    查詢首頁的URL。

    next

    String

    查詢下一頁的URL。當查詢鏡像列表最后一頁時,不存在next。

    schema

    String

    描述鏡像列表模式的URL。

    images

    Array of objects

    資源類型。

    具體請參見表2。

    表2 images字段說明

    參數(shù)

    參數(shù)類型

    描述

    __backup_id

    String

    備份ID。如果是備份創(chuàng)建的鏡像,則填寫為備份的ID,否則無此參數(shù)。

    __data_origin

    String

    鏡像來源。公共鏡像為空。

    __description

    String

    鏡像描述信息。

    __image_location

    String

    鏡像的存儲位置。

    __image_size

    String

    鏡像文件的大小,單位為字節(jié)。目前取值為大于0的字符串。

    __image_source_type

    String

    鏡像后端存儲類型,目前只支持uds。

    __is_config_init

    String

    是否完成了初始化配置。取值為“true”或“false”。

    __isregistered

    String

    鏡像是否可用,取值為true,擴展接口會默認為true,普通用戶只能查詢?nèi)≈禐閠rue的鏡像。

    __lazyloading

    String

    鏡像是否支持延遲加載。取值為true、false、True或False。

    __originalimagename

    String

    父鏡像ID。公共鏡像或通過文件創(chuàng)建的私有鏡像,取值為空。

    __imagetype

    String

    鏡像類型,目前支持以下類型:

    • 公共鏡像:gold
    • 私有鏡像:private
    • 共享鏡像:shared
    • 市場鏡像:market

    protected

    Boolean

    鏡像是否是受保護,查詢公共鏡像時候取值為true,查詢私有鏡像可以不指定。

    virtual_env_type

    String

    鏡像使用的環(huán)境類型:FusionCompute、Ironic、DataImage、IsoImage。

    • 如果是云服務(wù)器鏡像(即系統(tǒng)盤鏡像),則取值為FusionCompute。
    • 如果是數(shù)據(jù)盤鏡像,則取值是DataImage。
    • 如果是 裸金屬服務(wù)器 鏡像,則取值是Ironic。
    • 如果是ISO鏡像,則取值是IsoImage。

    virtual_size

    Integer

    目前暫時不使用。

    visibility

    String

    是否被其他租戶可見。取值如下:

    • public:表示公共鏡像。
    • private:表示私有鏡像。
    • shared:表示共享鏡像。

    owner

    String

    鏡像屬于哪個租戶。

    id

    String

    鏡像ID。

    status

    String

    鏡像狀態(tài)。取值如下:

    • queued:表示鏡像元數(shù)據(jù)已經(jīng)創(chuàng)建成功,等待上傳鏡像文件。
    • saving:表示鏡像正在上傳文件到后端存儲。
    • deleted:表示鏡像已經(jīng)刪除。
    • killed:表示鏡像上傳錯誤。
    • active:表示鏡像可以正常使用。

    name

    String

    鏡像名稱。name參數(shù)說明請參考鏡像屬性。

    container_format

    String

    容器類型。

    disk_format

    String

    鏡像格式,目前支持zvhd2、vhd、zvhd、raw、qcow2、iso。非iso格式時默認值是zvhd2。

    min_ram

    Integer

    鏡像運行需要的最小內(nèi)存,單位為MB。參數(shù)取值依據(jù)云服務(wù)器的規(guī)格限制,一般為0。

    云服務(wù)器的規(guī)格限制,請參見規(guī)格清單。

    max_ram

    String

    鏡像支持的最大內(nèi)存,單位為MB。

    min_disk

    Integer

    鏡像運行需要的最小磁盤容量,單位為GB 。取值為40~1024GB。

    __os_bit

    String

    操作系統(tǒng)位數(shù),一般取值為32或者64。

    __os_feature_list

    String

    鏡像附加屬性。該屬性采用JSON格式來標識鏡像支持的高級特性清單。

    __platform

    String

    鏡像平臺分類,取值為Windows、Ubuntu、Red Hat、SUSE、CentOS、Debian、OpenSUSE、Oracle Linux、Fedora、Other、CoreOS和EulerOS。

    schema

    String

    鏡像視圖。

    self

    String

    鏡像鏈接信息。

    size

    Integer

    目前暫時不使用。

    __os_type

    String

    鏡像系統(tǒng)類型,取值為Linux、Windows、Other。

    __os_version

    String

    操作系統(tǒng)具體版本。

    tags

    Array of strings

    鏡像標簽列表,提供用戶可以自定義管理私有鏡像的能力。

    __support_kvm

    String

    如果鏡像支持KVM,取值為true,否則無此屬性。

    __support_xen

    String

    如果鏡像支持XEN,取值為true,否則無此屬性。

    __support_largememory

    String

    表示該鏡像支持超大內(nèi)存。如果鏡像支持超大內(nèi)存,取值為true,否則無此屬性。

    __support_diskintensive

    String

    表示該鏡像支持密集存儲。如果鏡像支持密集存儲性能,則值為true,否則無此屬性。

    __support_highperformance

    String

    表示該鏡像支持高計算性能。如果鏡像支持高計算性能,則值為true,否則無此屬性。

    __support_xen_gpu_type

    String

    表示該鏡像是支持XEN虛擬化平臺下的GPU類型。支持GPU加速型實例的鏡像操作系統(tǒng)類型請參考表2。如果不支持XEN虛擬化下GPU類型,無此屬性。該屬性與“__support_xen”和“__support_kvm”屬性不共存。

    __support_kvm_gpu_type

    String

    表示該鏡像是支持KVM虛擬化平臺下的GPU類型,取值參考表3。如果不支持KVM虛擬化下GPU類型,無此屬性。該屬性與“__support_xen”和“__support_kvm”屬性不共存。

    __support_xen_hana

    String

    如果鏡像支持XEN虛擬化下HANA類型,取值為true。否則,無此屬性。

    該屬性與“__support_xen”和“__support_kvm”屬性不共存。

    __support_kvm_infiniband

    String

    如果鏡像支持KVM虛擬化下Infiniband網(wǎng)卡類型,取值為true。否則,無此屬性。

    該屬性與“__support_xen”屬性不共存。

    __productcode

    String

    市場鏡像的產(chǎn)品ID。

    __root_origin

    String

    表示當前鏡像來源是從外部導(dǎo)入。取值樣例:file。

    __sequence_num

    String

    表示當前鏡像對應(yīng)云服務(wù)器的系統(tǒng)盤插槽位置。

    取值樣例:0。

    __support_fc_inject

    String

    表示當前鏡像支持Cloud-Init密碼/密鑰注入方式。

    如果取值為“true”,表示該鏡像不支持Cloud-Init注入密碼/密鑰,其他取值時表示支持Cloud-Init注入密鑰/密碼。

    說明:

    該特性參數(shù)只對ECS系統(tǒng)盤鏡像生效,其他類型鏡像不生效。

    __is_offshelved

    String

    表示當前市場鏡像是否下架。

    • true:已下架
    • false:未下架

    created_at

    String

    創(chuàng)建時間。格式為UTC時間。

    updated_at

    String

    更新時間。格式為UTC時間。

    active_at

    String

    鏡像狀態(tài)變?yōu)檎5臅r間。

    checksum

    String

    目前暫時不使用。

    hw_firmware_type

    String

    云服務(wù)器的啟動方式。目前支持:

    • bios:表示bios引導(dǎo)啟動。
    • uefi:表示uefi引導(dǎo)啟動。

    file

    String

    鏡像文件下載和上傳鏈接。

    enterprise_project_id

    String

    表示當前鏡像所屬的企業(yè)項目。

    • 取值為0或無該值,表示屬于default企業(yè)項目。
    • 取值為UUID,表示屬于該UUID對應(yīng)的企業(yè)項目。

    __support_arm

    String

    是否是ARM架構(gòu)類型的鏡像。取值為“true”或者“false”。

    __support_agent_list

    String

    鏡像是否支持 企業(yè)主機安全 或主機監(jiān)控。

    取值樣例:

    "__support_agent_list": "hss,ces"

    說明:

    如果查詢結(jié)果無此字段,表示鏡像不支持企業(yè)主機安全或主機監(jiān)控。

    __account_code

    string

    收費鏡像標識。

    __support_amd

    String

    是否是AMD架構(gòu)類型的鏡像。取值為“true”或者“false”。

    __system__cmkid

    String

    加密鏡像所使用的密鑰ID。

    hw_vif_multiqueue_enabled

    String

    鏡像是否支持網(wǎng)卡多隊列。取值為“true”或者“false”。

  • 響應(yīng)樣例
    STATUS CODE 200
    {
      "schema": "/v2/schemas/images",
      "next": "/v2/images?__isregistered=true&marker=0328c25e-c840-4496-81ac-c4e01b214b1f&__imagetype=gold&limit=2",
      "images": [
        {
          "schema": "/v2/schemas/image",
          "min_disk": 100,
          "created_at": "2018-09-06T14:03:27Z",
          "__image_source_type": "uds",
          "container_format": "bare",
          "file": "/v2/images/bc6bed6e-ba3a-4447-afcc-449174a3eb52/file",
          "updated_at": "2018-09-06T15:17:33Z",
          "protected": true,
          "checksum": "d41d8cd98f00b204e9800998ecf8427e",
          "id": "bc6bed6e-ba3a-4447-afcc-449174a3eb52",
          "__isregistered": "true",
          "min_ram": 2048,
          "__lazyloading": "true",
          "owner": "1bed856811654c1cb661a6ca845ebc77",
          "__os_type": "Linux",
          "__imagetype": "gold",
          "visibility": "public",
          "virtual_env_type": "FusionCompute",
          "tags": [],
          "__platform": "CentOS",
          "size": 0,
          "__os_bit": "64",
          "__os_version": "CentOS 7.3 64bit",
          "name": "CentOS 7.3 64bit vivado",
          "self": "/v2/images/bc6bed6e-ba3a-4447-afcc-449174a3eb52",
          "disk_format": "zvhd2",
          "virtual_size": null,
          "hw_firmware_type": "bios",
          "status": "active"
        },
        {
          "schema": "/v2/schemas/image",
          "min_disk": 100,
          "created_at": "2018-09-06T14:03:05Z",
          "__image_source_type": "uds",
          "container_format": "bare",
          "file": "/v2/images/0328c25e-c840-4496-81ac-c4e01b214b1f/file",
          "updated_at": "2018-09-25T14:27:40Z",
          "protected": true,
          "checksum": "d41d8cd98f00b204e9800998ecf8427e",
          "id": "0328c25e-c840-4496-81ac-c4e01b214b1f",
          "__isregistered": "true",
          "min_ram": 2048,
          "__lazyloading": "true",
          "owner": "1bed856811654c1cb661a6ca845ebc77",
          "__os_type": "Linux",
          "__imagetype": "gold",
          "visibility": "public",
          "virtual_env_type": "FusionCompute",
          "tags": [],
          "__platform": "CentOS",
          "size": 0,
          "__os_bit": "64",
          "__os_version": "CentOS 7.3 64bit",
          "name": "CentOS 7.3 64bit with sdx",
          "self": "/v2/images/0328c25e-c840-4496-81ac-c4e01b214b1f",
          "disk_format": "zvhd2",
          "virtual_size": null,
          "hw_firmware_type": "bios",
          "status": "active"
        }
      ],
      "first": "/v2/images?__isregistered=true&__imagetype=gold&limit=2"
    }
    

返回值

  • 正常

    200

  • 異常

    返回值

    說明

    400 Bad Request

    請求錯誤,具體返回錯誤碼請參考錯誤碼

    401 Unauthorized

    鑒權(quán)失敗。

    403 Forbidden

    沒有操作權(quán)限。

    404 Not Found

    找不到資源。

    500 Internal Server Error

    服務(wù)內(nèi)部錯誤。

    503 Service Unavailable

    服務(wù)不可用。