本節(jié)描述如何在控制節(jié)點(diǎn)上安裝和配置鏡像服務(wù)兰吟,代號為 glance。為簡單起見鼻忠,該配置將映像存儲在本地文件系統(tǒng)上。
先決條件
在安裝和配置鏡像服務(wù)之前杈绸,您必須創(chuàng)建一個數(shù)據(jù)庫帖蔓、服務(wù)憑證和 API 端點(diǎn)。
1瞳脓、要創(chuàng)建數(shù)據(jù)庫塑娇,請完成以下步驟:
使用數(shù)據(jù)庫客戶端以 root 用戶連接到數(shù)據(jù)庫服務(wù)器:
# mysql
創(chuàng)建 glance
數(shù)據(jù)庫:
MariaDB [(none)]> CREATE DATABASE glance;
授予對 glance 數(shù)據(jù)庫的適當(dāng)訪問權(quán)限:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' \
IDENTIFIED BY 'GLANCE_DBPASS';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' \
IDENTIFIED BY 'GLANCE_DBPASS';
用適當(dāng)?shù)拿艽a替換 GLANCE_DBPASS
。
退出數(shù)據(jù)庫客戶端連接劫侧。
2埋酬、Source admin
憑證獲取對 admin 專用 CLI 命令的訪問權(quán)限:
$ . admin-openrc
3、要創(chuàng)建服務(wù)憑據(jù)烧栋,請完成以下步驟:
創(chuàng)建 glance
用戶:
$ openstack user create --domain default --password-prompt glance
User Password:
Repeat User Password:
+---------------------+----------------------------------+
| Field | Value |
+---------------------+----------------------------------+
| domain_id | default |
| enabled | True |
| id | 3f4e777c4062483ab8d9edd7dff829df |
| name | glance |
| options | {} |
| password_expires_at | None |
+---------------------+----------------------------------+
將 admin
角色添加到 glance
用戶和 service
項目:
$ openstack role add --project service --user glance admin
這個命令不提供輸出写妥。
創(chuàng)建 glance
服務(wù)實(shí)體:
$ openstack service create --name glance \
--description "OpenStack Image" image
+-------------+----------------------------------+
| Field | Value |
+-------------+----------------------------------+
| description | OpenStack Image |
| enabled | True |
| id | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
| name | glance |
| type | image |
+-------------+----------------------------------+
4、創(chuàng)建鏡像服務(wù) API 端點(diǎn):
$ openstack endpoint create --region RegionOne \
image public http://controller:9292
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | 340be3625e9b4239a6415d034e98aace |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
| service_name | glance |
| service_type | image |
| url | http://controller:9292 |
+--------------+----------------------------------+
$ openstack endpoint create --region RegionOne \
image internal http://controller:9292
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | a6e4b153c2ae4c919eccfdbb7dceb5d2 |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
| service_name | glance |
| service_type | image |
| url | http://controller:9292 |
+--------------+----------------------------------+
$ openstack endpoint create --region RegionOne \
image admin http://controller:9292
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | 0c37ed58103f4300a84ff125a539032d |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
| service_name | glance |
| service_type | image |
| url | http://controller:9292 |
+--------------+----------------------------------+
安裝和配置組件
默認(rèn)配置文件因發(fā)行版而異审姓。您可能需要添加這些部分和選項珍特,而不是修改現(xiàn)有的部分和選項。同時魔吐,配置片段中的省略號 (
…
) 表示您應(yīng)該保留的潛在的默認(rèn)配置選項扎筒。
1莱找、安裝包:
apt install glance
2、編輯 /etc/glance/glance-api.conf
文件并完成以下操作:
在 [database]
部分嗜桌,配置數(shù)據(jù)庫訪問:
[database]
# ...
connection = mysql+pymysql://glance:GLANCE_DBPASS@controller/glance
用您選擇的鏡像服務(wù)數(shù)據(jù)庫的密碼替換 GLANCE_DBPASS
奥溺。
在 [keystone_authtoken]
和 [paste_deploy]
部分中,配置身份服務(wù)訪問:
[keystone_authtoken]
# ...
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = glance
password = GLANCE_PASS
[paste_deploy]
# ...
flavor = keystone
將 GLANCE_PASS
替換為在身份服務(wù)中為 glance
用戶選擇的密碼症脂。
注釋掉或刪除
[keystone_authtoken]
部分中的其他選項谚赎。
在 [glance_store]
部分,配置本地文件系統(tǒng)存儲和鏡像文件位置:
[glance_store]
# ...
stores = file,http
default_store = file
filesystem_store_datadir = /var/lib/glance/images/
3诱篷、編輯 /etc/glance/glance-registry.conf
文件并完成以下操作:
在 [database]
部分,配置數(shù)據(jù)庫訪問:
[database]
# ...
connection = mysql+pymysql://glance:GLANCE_DBPASS@controller/glance
用您選擇的鏡像服務(wù)數(shù)據(jù)庫的密碼替換 GLANCE_DBPASS
雳灵。
在 [keystone_authtoken]
和 [paste_deploy]
部分中棕所,配置身份服務(wù)訪問:
[keystone_authtoken]
# ...
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = glance
password = GLANCE_PASS
[paste_deploy]
# ...
flavor = keystone
將 GLANCE_PASS
替換為在身份服務(wù)中為 glance
用戶選擇的密碼。
注釋掉或刪除
[keystone_authtoken]
部分中的其他選項悯辙。
4琳省、同步鏡像服務(wù)數(shù)據(jù)庫
su -s /bin/sh -c "glance-manage db_sync" glance
忽略該輸出中的任何棄用消息。
完成安裝
1躲撰、重啟鏡像服務(wù):
service glance-registry restart
service glance-api restart