glance api 的實驗(curl)
發表于 2012 年 3 月 24 日 由 refactor
參考文檔:
http://docs.openstack.org/api/openstack-image-service/1.0/content/requesting-detailed-metadata-on-public-vm-images.html
http://glance.openstack.org/glanceapi.html
http://glance.openstack.org/formats.html
1、登入、擷取 token
curl -X POST -d '{"auth": {"tenantName": "admin", "passwordCredentials":{"username": "admin", "password": "nova"}}}' -H "Content-type: application/json"http://127.0.0.1:35357/v2.0/tokens | python -mjson.tool
curl -X POST -d '{"auth": {"tenantId": "6a524dbe23dd4e4ab672cd163c85a27d", "passwordCredentials":{"username": "admin", "password": "nova"}}}' -H "Content-type: application/json" http://127.0.0.1:35357/v2.0/tokens | python -mjson.tool
2、glance的api實驗
擷取 images 清單
curl -H "X-Auth-Token: 32efbc8c22af4ad6a8f03d051dc3413b" http://127.0.0.1:9292/v1/images |python -mjson.tool
擷取 images清單(詳情)
curl -H "X-Auth-Token: 32efbc8c22af4ad6a8f03d051dc3413b" http://127.0.0.1:9292/v1/images/detail |python -mjson.tool
可以使用 name, container_format, disk_format, status, size_min, size_max進行帥選
可以使用 sort_key 進行排序, sort_dir (asc, desc(預設))決定正序、倒序
擷取某個image的詳細Metadata:
curl -I -X HEAD -H "X-Auth-Token: 32efbc8c22af4ad6a8f03d051dc3413b" http://127.0.0.1:9292/v1/images/32b518d8-2dcf-451a-9f8b-ccf5264e17f3
下載下傳某個image, 和上面的方法,相差就是 HEAD和 GET 的方法差別:
curl -X GET -H "X-Auth-Token: 32efbc8c22af4ad6a8f03d051dc3413b" http://127.0.0.1:9292/v1/images/32b518d8-2dcf-451a-9f8b-ccf5264e17f3
删除某個image:
curl -X DELETE -H "X-Auth-Token: 32efbc8c22af4ad6a8f03d051dc3413b" http://127.0.0.1:9292/v1/images/258ad2d5-d48b-4f95-94f4-10e60ace6e67
檢視 image 的Memberships:
curl -H "X-Auth-Token: 32efbc8c22af4ad6a8f03d051dc3413b" http://127.0.0.1:9292/v1/images/32b518d8-2dcf-451a-9f8b-ccf5264e17f3/members |python -mjson.tool
檢視某個 tenant 共享的image:
curl -H "X-Auth-Token: 32efbc8c22af4ad6a8f03d051dc3413b" http://127.0.0.1:9292/v1/shared-images/admin |python -mjson.tool
增加某個成員共享:
curl -X PUT -H "X-Auth-Token: 32efbc8c22af4ad6a8f03d051dc3413b" http://127.0.0.1:9292/v1/images/32b518d8-2dcf-451a-9f8b-ccf5264e17f3/members/demo
預設,can_share 是false,可以加入body:
{'member':
{'can_share': true}
}
删除某個成員共享:
curl -X DELETE -H "X-Auth-Token: 32efbc8c22af4ad6a8f03d051dc3413b" http://127.0.0.1:9292/v1/images/32b518d8-2dcf-451a-9f8b-ccf5264e17f3/members/demo