安裝和配置OpenStack客戶端(Jesse翻譯)
安裝和配置OpenStack客戶端(Jesse翻譯)原文來自icehouse的OpenStack文件
回憶:在前面部分,你已經使用了keystone客戶端。
你必須安裝客戶端工具去完成剩餘的安裝工作
概述
你可以使用OpenStack命令列去執行簡單的命令(完成API呼叫)。你可以從命令列中執行這些命令或者在指令碼中自動化的去執行任務。如果你可以提供OpenStack憑證,你可以執行在任何計算機上這些命令。
本質上,每個客戶端命令執行cURL命令嵌入了API請求。OpenStackAPIs是RESTful
API(使用http協議,包括方法,URIs,媒體型別,響應程式碼
這些開源的Python客戶端執行在Linux或者Mac OS x系統,易學易用。每一個OpenStack服務有它自己的命令列客戶端。針對部分客戶端命令,你可以使用debug引數去顯示API請求。
這是熟悉OpenStackAPI呼叫的比較好的途徑。
服務 |
客戶端 |
包 |
描述 |
Block storage |
Cinder |
Python-cinderclient |
建立和管理卷 |
Compute |
Nova |
Python-novaclient |
建立和管理image,例項,flavors |
Database service |
Trove |
Python-troveclient |
建立和管理資料庫 |
Identity |
keystone |
Python-keystoneclient |
建立和管理使用者,tenants,角色,介面和憑證 |
Image service |
Glance |
Python-glanceclient |
建立和管理image |
Networking |
Neutron |
Python-swiftclient |
配置網路。這個客戶端先前叫quantum |
Object storage |
swift |
Python-heatclient |
收集統計,列舉專案,更新元資料和上傳下載,刪除儲存在物件儲存服務中的檔案。授權訪問一個物件儲存 |
telemetry |
ceilometer |
Python-ceilometerclient |
建立和收集度量值 |
一個OpenStack common客戶端處於開發中。
安裝OpenStack命令列客戶端
安裝先決條件軟體
下表中列出了你執行命令列客戶端的軟體,提供安裝指令。
安裝客戶端
當按照本章節的指令時,用客戶端的小寫的名字代替PROJECT去安裝客戶端,例如nova。替代每一個客戶端。下列值是有效的:
• ceilometer- Telemetry API
• cinder- Block Storage API and extensions
• glance- Image Service API
• heat- Orchestration API
• keystone- Identity service API and extensions
• neutron- Networking API
• nova- Compute API and extensions
• swift- Object Storage API
• trove- Database Service API
下列例子顯示用pip安裝nova客戶端的命令
#pipinstall python-novaclient
用pip安裝
使用pip在Linux,MacOS X,或者windows系統上安裝OpenStack客戶端。它易用且確保你從python package index上獲取最後版本的客戶端。同樣,pip使你能夠更新或刪除一個包。
通過使用以下命令安裝每個客戶端。
MacOS或者Linux
#pipinstall python-PROJECTclient
Windows
Pipinstall python-PROJECTclient
使用OpenStack RC檔案設定環境變數
為OpenStack命令列客戶端設定必需的環境變數,你必須建立一個環境檔案(OpenStack rc檔案或者openrc.sh)。這個工程特定的環境檔案包含所有的OpenStack服務使用的憑證。
當你source這個檔案時,環境變數被設定到你當前的shell中。變數確保OpenStack客戶端命令與雲中的其他的OpenStack服務進行通訊。
-
文字編輯器中,建立一個檔名PROJECT-openrc.sh檔案和新增以下認證資訊:
下例子中顯示了一個project(叫admin)的資訊,OS使用者名稱也叫admin,識別主機位於controller上。
exportOS_USERNAME=admin
exportOS_PASSWORD=ADMIN_PASS
exportOS_TENANT_NAME=admin
exportOS_AUTH_URL=http://controller:35357/v2.0
-
你想執行OpenStack命令,sourcePROJECT-openrc.sh檔案。在這個例子中,你sourceadmin-openrc.sh檔案(為admin工程)
$source admin-openrc.sh
覆蓋環境變數值
當你執行OpenStack客戶端命令時,你可以通過使用所列的選項覆蓋一些環境變數。例如你可以覆蓋OS_PASSWORD設定(在PROJECT-openrc.sh),通過指定一個password
$keystone –os-password PASSWORD service-list
建立openrc.sh檔案
建立下面PROJECT-openrc.sh檔案
Admin-openrc.sh----管理員使用者
Demo-oepnrc.sh----普通使用者:
exportOS_USERNAME=demo
export OS_PASSWORD=DEMO_PASS
export OS_TENANT_NAME=demo
export OS_AUTH_URL=http://controller:35357/v2.0