OpenStack—Q Glance安裝
Glance安裝
一、映象服務概述
映象服務(Glance)允許使用者發現、註冊和檢索虛擬機器映象。它提供了一個REST API,使你能夠查詢虛擬機器映象元資料並檢索實際映象。你可以在不同的位置儲存通過影象服務提供的虛擬機器映象,從簡單的檔案系統到像OpenStack物件儲存這樣的物件儲存系統。
注:為簡單起見,本指南配置Glance以使用file back,它在負責影象服務的Controller節點上的目錄上傳和儲存。預設情況下,這個目錄是/var/lib/glance/images/ 。在安裝Glance之前,請確保controller節點至少有幾個gb的空間在這個目錄中可用。請記住,由於檔案後端通常是Controller節點的本地,所以它通常不適合多節點的glance部署。
OpenStack 的Glance服務是基礎設施即服務(IaaS)的核心。它接受對磁碟或伺服器映象的API請求,以及來自終端使用者或OpenStack計算元件的元資料定義。它還支援在各種儲存庫型別上儲存磁碟或伺服器映像,包括OpenStack物件儲存。
在OpenStack影象服務上執行的一些週期性程序支援快取。複製服務通過叢集確保一致性和可用性。其他的週期過程包括auditors, updaters, and reapers。
OpenStack的Glance服務包括以下元件:
Glance-api
接受影象API呼叫,用於影象發現、檢索和儲存。
Glance-registry
儲存、處理和檢索關於影象的元資料。元資料包括大小和型別等專案。
注:registry是一個用於OpenStack影象服務的私有內部服務。不要將此服務公開給使用者。在Queens發行版中,glance-registry服務及其API已經被棄用,並在“開發週期”開始時被刪除。
Database
儲存影象元資料,您可以根據自己的喜好選擇資料庫。大多數部署都使用MySQL或SQLite。
Storage repository for image files
支援各種儲存庫型別,包括正常的檔案系統(或安裝在glance-apiController節點上的任何檔案系統)、物件儲存、RADOS塊裝置、VMware資料儲存和HTTP。注意,有些儲存庫只支援只讀用法。
Metadata definition service
為vendors, admins, services, 和 users提供一個通用的API,以有效地定義他們自己的定製元資料。這些元資料可以用於不同型別的資源,如images, artifacts, volumes, flavors, 和aggregates。定義包括新屬性的鍵、描述、約束和它可以關聯的資源型別。
本節描述如何在Controller節點上安裝和配置Glance服務。為了簡單起見,這種配置將映象儲存在本地檔案系統上。
二、基礎配置
Controller節點
在安裝和配置映像服務之前,您必須建立一個數據庫、服務憑證和API端點。
1.建立glance資料庫,並授權
# mysql -uroot -p123456
MariaDB [(none)]> grant all privileges on glance.* to 'glance'@'localhost' identity by '123456';
MariaDB [(none)]> grant all privileges on glance.* to 'glance'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.01 sec)
MariaDB [(none)]> grant all privileges on glance.* to 'glance'@'%' identified by '123456';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> ^DBye
2.獲取admin使用者的環境變數,並建立服務認證
# . admin-openrc
建立glance使用者(密碼設為:123456)
# openstack user create --domain default --password-prompt glance
User Password:
Repeat User Password:
把admin使用者新增到glance使用者和專案中(無返回值)
# openstack role add --project service --user glance admin
建立glance服務
# openstack service create --name glance --description "OpenStack Image" image
3. 建立映象服務API端點
# openstack endpoint create --region RegionOne image public http://controller:9292
# openstack endpoint create --region RegionOne image internal http://controller:9292
# openstack endpoint create --region RegionOne image admin http://controller:9292
三、安裝和配置元件
Controller節點
1.安裝軟體包
# yum install -y openstack-glance
2.編輯/etc/glance/glance-api.conf檔案
在[database]選項,配置資料庫連結
[database]
connection = mysql+pymysql://glance:[email protected]/glance
在[[keystone_authtoken]和[paste_deploy]選項,配置身份服務訪問
[keystone_authtoken]
auth=uri = http://controller:5000
auth_url = http://controller:5000
memcached_servers = controller:11211
auth_type = password (這裡別輸入你的密碼,應為password)
project_domain_name = Default
user_domain_name = Default
project_name = service
username = glance
password = 123456
[paste_deploy]
flavor = keystone
在[glance_store]選項,配置本地檔案儲存和本地映象檔案的位置
[glance_store]
stores = file,http
default_store = file
filesystem_store_datadir = /var/lib/glance/images
4.編輯/etc/glance/glance-registry.conf檔案
注:在Queens版本中,Glance-registry service和Glance-registry api已經被棄用
在[database]選項,配置資料庫連結
[database]
connection = mysql+pymysql://glance:[email protected]/glance
在[[keystone_authtoken]和[paste_deploy]選項,配置身份服務訪問
[keystone_authtoken]
auth=uri = http://controller:5000
auth_url = http://controller:5000
memcached_servers = controller:11211
auth_type = password (這裡別輸入你的密碼,應為password)
project_domain_name = Default
user_domain_name = Default
project_name = service
username = glance
password = 123456
[paste_deploy]
flavor = keystone
5.同步Glance資料庫服務
# su -s /bin/sh -c "glance-manage db_sync" glance
Database is synced successfully.(同步資料庫成功)
6.啟動Glance服務並將其配置為在系統啟動時啟動
# systemctl enable openstack-glance-api.service openstack-glance-registry.service
# systemctl restart openstack-glance-api.service openstack-glance-registry.service
四、驗證Glance服務
Controller節點
使用CirrOS來驗證影象服務的操作,這是一個幫助您測試OpenStack部署的小型Linux映像。
1.獲取admin憑證以獲得對admin-only CLI命令的訪問權
# . admin-openrc
2.下載映象
# yum install -y wget
# wget http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img
3.使用QCOW2磁碟格式、bare container格式和公共可見性講映象上傳到Glance服務中,這樣所有專案都可以訪問它。
# openstack image create "cirros" --file cirros-0.4.0-x86_64-disk.img \
--disk-format qcow2 --container-format bare –public
4. 確認映象的上傳和驗證屬性
# openstack image list
glance具體配置選項:https://docs.openstack.org/glance/queens/configuration/index.html