open stack基礎服務
要想使下面的服務就需要重啟這個服務
[root@controller ~]# source /etc/keystone/admin-openrc.sh
每一條命令輸出的結果基本上都是MySQL建立表的那種情況,如果不是那就有問題。
Keystone服務運維
1.keystibe運維命令
(1)建立使用者
建立一個名稱為“alice”賬戶,密碼為“mypassword123”,郵箱為“[email protected]”。
[root@controller ~]# openstack user create --password mypassword123 --email [email protected] --domain demo alice
(2)建立專案
一個Project就是一個專案、團隊或組織,當請求OpenStack服務時,必須定義一個專案。
[root@controller ~]# openstack project create --domain demo acme
(3)建立角色
角色限定了使用者的操作許可權。例如,建立一個角色“compute-user”。
[root@controller ~]# openstack role create compute-user
2.Keystone基礎查詢命令
(1)使用者列表查詢
OpenStack平臺所使用的使用者可以通過Keystone元件進行查詢。查詢當前所有使用者列表資訊。
[root@controller ~]# openstack user list
可以通過命令查詢到具體使用者的詳細資訊,可以檢視到使用者當前的狀態。
[root@controller ~]# openstack user show alice
(2)專案列表查詢
通過命令,可以查詢所建立的專案“acme”,也可以查詢當前OpenStack平臺中所有存在專案列表,
[root@controller ~]# openstack project list
通過命令可以查詢“acme”專案的詳細資訊內容。
[root@controller ~]# openstack project show acme
(3)角色列表查詢
通過命令查詢建立的角色“compute-user”,通過Keystone元件查詢角色列表資訊。
[root@controller ~]# openstack role list
通過命令查詢“compute-user”角色的詳細資訊。
[root@controller ~]# openstack role show compute-user
(4)端點地址查詢
Keystone元件管理OpenStack平臺中所有服務端點資訊,通過命令可以查詢平臺中所有服務所使用的端點地址資訊。
[root@controller ~]# openstack endpoint list
Glance服務運維
1. Glance管理映象
(1)建立映象
建立一個名稱為“cirros”映象,映象檔案使用提供的“cirros-0.3.4-x86_64-disk.img”。(首先要有這個映象)
[root@controller ~]# glance image-create --name "cirros" --disk-format qcow2 --container-format bare --progress < cirros-0.3.4-x86_64-disk.img
(2)檢視映象列表
[root@controller ~]# glance image-list
2. Glance映象運維
(1)檢視映象詳情
通過glance image-show命令檢視映象的詳細資訊(id引數可以是對應映象id或者映象名稱)。
[root@controller ~]# glance image-show bdd8d652-7d10-4a77-8a9b-b8563df42d5a
(2)更改映象
可以使用glance image-update更新映象資訊,使用glance image-delete刪除映象資訊。如果需要改變映象啟動硬碟最低要求值(min-disk)時,min-disk預設單位為G。使用glance image-update命令更新映象資訊操作如下。
[root@controller ~]# glance image-update --min-disk=1 bdd8d652-7d10-4a77-8a9b-b8563df42d5a
(3)刪除映象
[root@controller ~]# glance image-delete bdd8d652-7d10-4a77-8a9b-b8563df42d5a
(4)檢視所以映象
[root@controller ~]# glance image-list
Nova服務運維
1. Nova運維命令
(1)Nova管理安全組規則
安全組(security group)是一些規則的集合,用來對虛擬機器的訪問流量加以限制,這反映到底層,就是使用iptables,給虛擬機器所在的宿主機新增iptables規則。可以定義n個安全組,每個安全組可以有n個規則,可以給每個例項繫結n個安全組。Nova中總是有一個default安全組,這個是不能被刪除的。建立例項的時候,如果不指定安全組,會預設使用這個default安全組。現在Nova中安全組應該會移到Neutron中,並且會增加對虛擬機器外出流量的控制。
注意:Nova中的安全組只是對進入虛擬機器的流量加以控制,對虛擬機器外出流量沒有加以限制。
常用的安全組命令。
[root@controller ~]# nova secgroup-create
功能:建立安全組。
建立一個名為test的安全組,描述為'test the nova command about the rules',命令及執行結果如下所示:
[root@controller ~]# nova secgroup-create test 'test the nova command about the rules'
(2)Nova管理虛擬機器型別
虛擬機器型別是在建立例項的時候,分配給例項的資源情況,接下來介紹Nova對虛擬機器型別的管理。
[root@controller ~]# nova flavor-create
功能:建立一個虛擬機器型別。
使用命令建立一個名為test,ID為6,記憶體為2048 MB,磁碟為20 GB,vCPU數量為2的雲主機型別。具體命令及執行結果如下所示。
[root@controller ~]# nova flavor-create test 6 2048 20 2
檢視test雲主機型別的詳細資訊如下所示:
[root@controller ~]# nova flavor-show test
2. Nova例項管理
(1)啟動例項
Nova可對雲平臺中的例項進行管理,包括建立例項、啟動例項、刪除例項和例項遷移等操作。
[root@controller ~]# nova boot
(2)刪除例項
[root@controller ~]# nova delete
Neutron服務運維
1. Neutron查詢
使用Neutron相關命令查詢網路服務的列表資訊中的“binary”一列,程式碼如下所示。
[root@xiandian ~]# neutron agent-list -c binary
2. 查詢網路詳情
查詢網路詳細資訊的命令和執行結果如下。
[root@xiandian ~]# neutron net-list
3. 查詢Neutron相關元件服務
使用Neutron相關命令查詢網路服務DHCP agent的詳細資訊(id為查詢到DHCP agent服務對應id)。
[root@xiandian ~]# neutron agent-list
Cinder服務運維
1. 建立雲硬碟
建立一個2 GB的雲硬碟extend-demo。
[root@controller ~]# cinder create --name cinder-volume-demo 2
通過cinder-list命令檢視雲硬碟資訊。
[root@controller ~]# cinder list
2. 建立雲硬碟卷型別
建立type標識的卷型別。
可以通過cinder type-create命令來建立卷型別,建立了一個名為“lvm”的卷型別。
[root@controller ~]# cinder type-create lvm
可以通過cinder type-list命令來檢視現有的卷型別。
[root@controller ~]# cinder type-list
3. 建立帶標識雲硬碟
下面以type標識為例,建立一塊帶“lvm”標識的雲硬碟。
[root@controller ~]# cinder create --name type_test_demo --volume-type lvm 1
建立成功後可以通過命令檢視結果,可以看到該卷的volume_type欄位已修改為“lvm”,查詢命令如下。
[root@controller ~]# cinder show type_test_demo
刪除指定的Cinder卷,刪除Cinder卷的方法比較簡單,使用者可以通過命令“cinder delete <volume> [<volume> ...]”來刪除一個或多個Cinder卷,刪除命令如下所示。
[root@controller ~]# cinder delete cinder-volume-demo
Swift服務運維
1. Swift查詢命令
(1)建立容器
通過命令列實現對Swift上資料的操作,首先需要建立一個名稱為“test”的容器,命令如下。
[root@controller ~]# swift post test
(2)查詢容器
檢視“test”容器裡面的內容。
[root@controller ~]# swift list test
通過顯示結果可以看出目前“test”容器裡面的內容是空的,這時使用者希望將本地的file目錄內容遞迴上傳到“test”容器內。首先建立file目錄,並同時新建3個檔案one.txt、two.doc和three.png。具體命令如下:
[root@controller ~]# mkdir file
[root@controller ~]# touch one.txt
[root@controller ~]# touch two.doc
[root@controller ~]# touch three.png
2.Swift上傳和下載
(1)上傳檔案至容器
上傳時首先需要上傳一個空白的“file”目錄。
[root@controller ~]# swift upload test file/
將one.txt檔案上傳到“test”容器內file目錄內。
[root@controller ~]# swift upload test/file one.txt
換一種方式將剩下的two.doc和three.png遞迴上傳到“test”容器下的file目錄內。
[root@controller ~]# mv two.doc three.png file/
[root@controller ~]# swift upload test file/
file/three.png
file/two.doc
(2)從容器中下載檔案
資料在Swift叢集內儲存,隨時供使用者下載使用,現在下載three.png檔案,命令和執行結果如下:
[root@controller ~]# swift download test file/three.png
file/three.png [auth 0.445s, headers 0.870s, total 0.871s, 0.000 MB/s]
(3)從容器中刪除檔案
目前磁碟容量有限,需要刪除一些相對價值低的資料,空出更多的空間。這時已經將three.png下載到本地,所以暫時將three.png從物件儲存伺服器中刪除,命令和執行結果如下:
[root@controller ~]# swift delete test file/three.png
file/three.png
(4)檢視容器服務狀態
使用者還可以通過swift stat命令來檢視整個Account賬戶下Swift狀態,命令和執行結果如下:
[root@controller ~]# swift stat