openstack API debug OpenstackEveryProject_CLI,curl_based
1,基于Openstack 每個服務組件client客戶端,eg,nova 客戶端軟件包名稱是python-novaclient,
別的都一樣,把python-novaclient (nova替換成組件名稱)
在使用組件客戶端調用API前你必須得配置admin管理rc文件或是在調用時直接輸入--os-auth-username= 個人感覺配置rc文件很方便,不知你是怎么認為的.
admin (superUser admin 的Rc文件)
Example,rc OS_AUTH_URL根據你的環境自行配置修改.
Example demo tenant
調用
....基于Openstack components 的各自CLI 調用調試OpenStack API自己根據man 來哦,Ruiy認為人貴于勤;
<二,基于curl調用Openstack components API>
1,基于租戶的用戶認證獲取API(其實這里Ruiy又得說一句了,其實我們在調用API的過程中輸入每個用戶的token和TenantAuthenticate(TenantName/passwd))
關于租戶UserCredential和project間的關系
Ruiy認為類似于svn下的項目和權限用戶一樣的概念;
1,基于curl調用API獲取toekn
curl -i 'http://5.10.124.181:5000/v2.0/tokens' -X POST -H "Content-Type: application/json" -H "Accept: application/json"? -d '{"auth": {"tenantName": "demo", "passwordCredentials": {"username": "demo", "password": "321"}}}'
2,not know tenantName or id,you can send an authentication request
with an empty tenant (基于passwordCredential獲取租戶id)
curl -i 'http://5.10.124.181:5000/v2.0/tokens' -X POST -H "Content-Type: application/json" -H "Accept: application/json"? -d '{"auth": {"tenantName": "", "passwordCredentials": {"username": "demo", "password": "321"}}}'
3,Use the Identity API to request a list of tenants
curl -i http://5.10.124.181:5000/v2.0/tenants -X GET -H "User-Agent: python-keystoneclient" -H "X-Auth-Token: 3be3f0b35ecf498596d79cdac92f8482"
4,Use the Identity API to request a list of endpoints
curl -i -X GET http://5.10.124.181:35357/v2.0/endpoints -H "User-Agent: python-keystoneclient" -H "X-Auth-Token: 09e5cd53f9464b549ef40270ce050141"
Ruiy在此隨便說點,關于每個OpenStack的endpointServiceCatalog的3個管理url
adminurl,internalurl,publicurl;
?
5,Use the Compute API to list servers
curl -v -H "X-Auth-Token:3da1d59d15354f299593f96ab0c1e135" http://5.10.124.181:8774/v2/f963230ce6d54dc2a4a7b42b3f9989b4/servers
基于Openstack 組件CLI調試API
組件客戶端程序安裝(使用pip(python index package)tool)
pip install [--upgrade] python-PROJECTclient (update更新repo,git repo) (upgrade,升級基于git repo安裝的軟件包的版本)注意了升級一個軟件包的完整命令是pip install --upgrade python-PROJECTclient 當然我們這里演示的是openstack 項目組件客戶端程序的 安裝及升級
卸載的 話
pip uninstall python-novaclient
Example,演示基于CLI命令launch an vm(VSI) instance
To launch instances, you must choose a name, an image, and a flavor for your instance(這里實例化一個VSI virtual server instance稍微和one有點不同,但也僅僅是基于命令行,基于web的展開虛機實例)
一樣,即直接運行一個完整的鏡像即可.
1,獲取鏡像
2,獲取flavor
?nova boot --image 2a20a472-b5dc-4565-b1a3-28978091d010 --flavor 3 my_instance
顯示查看我們剛剛創建的虛機的詳細的信息
查看rc environment variable
總結
以上是生活随笔為你收集整理的openstack API debug OpenstackEveryProject_CLI,curl_based的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Fix Missing Scripts
- 下一篇: cacti 整合nagios,以及总是o