功能介紹
修改 鏡像 信息。
約束與限制
更新鏡像目前只能更新用戶自定義屬性,或者鏡像的名稱和描述信息,其他屬性不允許用戶更新。
調(diào)試
您可以在API Explorer中調(diào)試該接口。
URI
PATCH /v2/images/{image_id}
請求消息
- 請求參數(shù)
Glance有兩種方式的更新操作,通過http header里的Content-Type指定,當(dāng)前支持“application/openstack-images-v2.0-json-patch”、“application/openstack-images-v2.1-json-patch”兩種Content-Type。不同的Content-Type區(qū)別只是請求消息體格式不同。
表3 [數(shù)組]字段說明 參數(shù)
參數(shù)類型
是否必選
描述
op
String
是
所需進行的更新操作的類型:替換、添加、刪除。
取值范圍:replace、add、remove
path
String
是
所要操作的屬性名稱。
replace和remove操作取值只能是鏡像當(dāng)前已有的屬性;add操作取值可以為當(dāng)前已有屬性和不存在的屬性,如果為已有屬性則執(zhí)行效果同replace,如果是不存在的屬性則執(zhí)行add,需要在屬性名稱前加“/”。
value
String
否
所需更新/添加屬性的值。
根據(jù)op的value決定,replace、add需要指定,remove不需要
表5 [數(shù)組]字段說明 參數(shù)
參數(shù)類型
是否必選
描述
replace
String
取值三選一
key為replace表示替換鏡像的相關(guān)屬性,值為所要替換的屬性需要在屬性名稱前加“/”
add
String
key為add表示添加鏡像屬性,值為所要添加的屬性名稱,需要在屬性名稱前加“/”
remove
String
key為remove表示刪除鏡像屬性,值為所要刪除的屬性名稱需要在屬性名稱前加“/”
value
String
根據(jù)前面的key決定,replace和add需要指定,remove不需要。
所需更新/添加的屬性的值。參數(shù)說明請參考鏡像屬性。
請求示例
- 通過V2.1版本更新鏡像名稱為ims_test01。
PATCH https://{Endpoint}/v2/images/33ad552d-1149-471c-8190-ff6776174a00 "Content-Type:application/openstack-images-v2.1-json-patch" [ { "op": "replace", "path": "/name", "value": "test01" } ]
- 通過V2.0版本更新鏡像名稱為ims_test01。
PATCH https://{Endpoint}/v2/images/33ad552d-1149-471c-8190-ff6776174a00 "Content-Type:application/openstack-images-v2.0-json-patch" [ { "replace": "/name", "value": "test01" } ]
響應(yīng)消息
- 響應(yīng)參數(shù)
參數(shù)
參數(shù)類型
描述
file
String
鏡像文件下載和上傳鏈接。
owner
String
鏡像屬于哪個租戶。
id
String
鏡像ID。
size
Long
目前暫時不使用。
self
String
鏡像鏈接信息。
schema
String
鏡像視圖。
status
String
鏡像狀態(tài)。取值如下:
- queued:表示鏡像元數(shù)據(jù)已經(jīng)創(chuàng)建成功,等待上傳鏡像文件。
- saving:表示鏡像正在上傳文件到后端存儲。
- deleted:表示鏡像已經(jīng)刪除。
- killed:表示鏡像上傳錯誤。
- active:表示鏡像可以正常使用。
tags
Array of strings
鏡像標(biāo)簽列表,提供用戶可以自定義管理私有鏡像的能力。用戶可以通過鏡像標(biāo)簽接口為每個鏡像增加不同的標(biāo)簽,在查詢接口中可以根據(jù)標(biāo)簽進行過濾。
visibility
String
是否被其他租戶可見。取值如下:
- private:私有鏡像
- public:公共鏡像
- shared:共享鏡像
name
String
鏡像名稱。name參數(shù)說明請參考鏡像屬性。
checksum
String
目前暫時不使用。
protected
Boolean
是否是受保護的,受保護的鏡像不允許刪除。取值為true或false。
container_format
String
容器類型。
min_ram
Integer
鏡像運行需要的最小內(nèi)存,單位為MB。參數(shù)取值依據(jù) 云服務(wù)器 的規(guī)格限制,默認設(shè)置為0。
云服務(wù)器的規(guī)格限制,請參見規(guī)格清單。
max_ram
String
鏡像支持的最大內(nèi)存,單位為MB。參數(shù)取值可以參考云服務(wù)器的規(guī)格限制,默認不設(shè)置。
云服務(wù)器的規(guī)格限制,請參見規(guī)格清單。
updated_at
String
更新時間。格式為UTC時間。
__os_bit
String
操作系統(tǒng)位數(shù),一般取值為“32”或者“64”。
__os_version
String
操作系統(tǒng)具體版本。
__description
String
鏡像描述信息。_description參數(shù)說明請參考鏡像屬性。
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
操作系統(tǒng)類型,目前取值Linux、Windows、Other。
__system__cmkid
String
加密鏡像所使用的密鑰ID。
min_disk
Integer
鏡像運行需要的最小磁盤容量,單位為GB 。取值為40~1024GB。
virtual_env_type
String
鏡像使用環(huán)境類型:FusionCompute、Ironic、DataImage、IsoImage。
- 如果是云服務(wù)器鏡像(即系統(tǒng)盤鏡像),則取值為FusionCompute。
- 如果是數(shù)據(jù)盤鏡像,則取值是DataImage。
- 如果是 裸金屬服務(wù)器 鏡像,則取值是Ironic。
- 如果是ISO鏡像,則取值是IsoImage。
__image_source_type
String
鏡像后端存儲類型,目前只支持uds。
__imagetype
String
鏡像類型,目前支持:
- 公共鏡像(gold)
- 私有鏡像(private)
- 共享鏡像(shared)
- 市場鏡像(market)
created_at
String
創(chuàng)建時間。格式為UTC時間。
virtual_size
Integer
目前暫時不使用。
__originalimagename
String
父鏡像ID。
公共鏡像或通過文件創(chuàng)建的私有鏡像,取值為空。
__backup_id
String
備份ID。如果是備份創(chuàng)建的鏡像,則填寫為備份的ID,否則無此參數(shù)。
__productcode
String
市場鏡像的產(chǎn)品ID。
__image_size
String
鏡像文件的大小,單位為字節(jié)。必須大于0。
__data_origin
String
鏡像來源。
公共鏡像為空。
__root_origin
String
表示當(dāng)前鏡像來源是從外部導(dǎo)入。取值:file。
__lazyloading
String
鏡像是否支持延遲加載。取值為true、false、True或False。
active_at
String
鏡像狀態(tài)變?yōu)檎5臅r間。
__os_feature_list
String
鏡像附加屬性。該屬性采用JSON格式來標(biāo)識鏡像支持的高級特性清單。
__account_code
String
收費鏡像標(biāo)識。
hw_firmware_type
String
云服務(wù)器的啟動方式。目前支持:
- bios:表示bios引導(dǎo)啟動。如果無此參數(shù),表示bios啟動方式。
- uefi:表示uefi引導(dǎo)啟動。
說明:當(dāng)鏡像的架構(gòu)類型為ARM時,啟動方式只支持uefi。
hw_vif_multiqueue_enabled
String
鏡像是否支持網(wǎng)卡多隊列。取值為“true”或者“false”。
__support_kvm
String
如果鏡像支持KVM,取值為true,否則無需增加該屬性。
__support_xen
String
如果鏡像支持XEN,取值為true,否則無需增加該屬性。
__support_largememory
String
表示該鏡像是否支持超大內(nèi)存特性。如果鏡像支持超大內(nèi)存,取值為true,否則無此屬性。
鏡像操作系統(tǒng)類型請參考“彈性云服務(wù)器類型與支持的操作系統(tǒng)版本”。
__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網(wǎng)卡類型,取值為true。否則,無此屬性。
該屬性與“__support_xen”屬性不共存。
__is_offshelved
String
表示當(dāng)前市場鏡像是否下架。
- true:已下架
- false:未下架
enterprise_project_id
String
表示當(dāng)前鏡像所屬的企業(yè)項目。
- 取值為0或無該值,表示屬于default企業(yè)項目。
- 取值為UUID,表示屬于該UUID對應(yīng)的企業(yè)項目。
關(guān)于企業(yè)項目特性的詳細信息,請參考“企業(yè)中心總覽”。
__sequence_num
String
表示當(dāng)前鏡像對應(yīng)云服務(wù)器的系統(tǒng)盤插槽位置。
目前暫不使用。
__support_fc_inject
String
表示當(dāng)前鏡像支持Cloud-Init密碼/密鑰注入方式。
如果取值為“true”,表示該鏡像不支持Cloud-Init注入密碼/密鑰,其他取值時表示支持Cloud-Init注入密鑰/密碼。
說明:該特性參數(shù)只對ECS系統(tǒng)盤鏡像生效,其他類型鏡像不生效。
__support_arm
String
是否為ARM架構(gòu)類型的鏡像。取值為“true”或者“false”。
__image_location
String
鏡像的存儲位置。
__is_config_init
String
是否完成了初始化配置。取值為“true”或者“false”。
__support_amd
String
是否是AMD架構(gòu)類型的鏡像。取值為“true”或者“false”。
__support_agent_list
String
鏡像是否支持 企業(yè)主機安全 或主機監(jiān)控。
- hss:企業(yè) 主機安全
企業(yè)主機安全(Host Security Service, HSS )是提升服務(wù)器整體安全性的服務(wù),通過主機管理、風(fēng)險防御、入侵檢測、安全運營、網(wǎng)頁防篡改功能,可全面識別并管理云服務(wù)器中的信息資產(chǎn),實時監(jiān)測云服務(wù)器中的風(fēng)險,降低服務(wù)器被入侵的風(fēng)險。
- ces:主機監(jiān)控
監(jiān)控是保持彈性云服務(wù)器可靠性、可用性和性能的重要部分,通過監(jiān)控,用戶可以觀察彈性云服務(wù)器資源。為使用戶更好地掌握自己的彈性云服務(wù)器運行狀態(tài),云服務(wù)平臺提供了 云監(jiān)控 。您可以使用該服務(wù)監(jiān)控您的彈性云服務(wù)器,執(zhí)行自動實時監(jiān)控、告警和通知操作,幫助您更好地了解彈性云服務(wù)器的各項性能指標(biāo)。
取值樣例:
"__support_agent_list": "hss,ces"
說明:如果查詢結(jié)果無此字段,表示鏡像不支持企業(yè)主機安全或主機監(jiān)控。
- 響應(yīng)樣例
STATUS CODE 200
{ "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", "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", "__data_origin": null, "hw_firmware_type":"bios" }
返回值
- 正常
- 異常
返回值
說明
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ù)不可用。