本節(jié)描述如何在控制器節(jié)點(diǎn)上安裝和配置 OpenStack 身份服務(wù)(代號(hào)為 keystone)譬淳。出于可伸縮性的目的筑舅,該配置部署了 Fernet 令牌和 Apache HTTP 服務(wù)器來(lái)處理請(qǐng)求茵典。
先決條件
在安裝和配置身份服務(wù)之前赋荆,必須創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)邪狞。
1挖垛、使用數(shù)據(jù)庫(kù)客戶端作為 root 用戶連接到數(shù)據(jù)庫(kù)服務(wù)器:
# mysql
2、創(chuàng)建 keystone
數(shù)據(jù)庫(kù):
MariaDB [(none)]> CREATE DATABASE keystone;
3婉支、授予對(duì) keystone 數(shù)據(jù)庫(kù)的適當(dāng)訪問(wèn)權(quán)限:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' \
IDENTIFIED BY 'KEYSTONE_DBPASS';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' \
IDENTIFIED BY 'KEYSTONE_DBPASS';
用適當(dāng)?shù)拿艽a替換 KEYSTONE_DBPASS
鸯隅。
4、退出數(shù)據(jù)庫(kù)客戶端向挖。
安裝和配置組件
默認(rèn)配置文件因發(fā)行版而異蝌以。您可能需要添加這些部分和選項(xiàng),而不是修改現(xiàn)有的部分和選項(xiàng)何之。同時(shí)跟畅,配置片段中的省略號(hào) (
…
) 表示您應(yīng)該保留的潛在的默認(rèn)配置選項(xiàng)。
該指南使用 Apache HTTP 服務(wù)器與 mod_wsgi 來(lái)服務(wù)端口 5000 和 35357 的身份服務(wù)請(qǐng)求溶推。默認(rèn)情況下徊件,keystone 服務(wù)仍在監(jiān)聽(tīng)這些端口奸攻。該包處理您所有的 Apache 配置(包括在 Apache 中激活 mod_wsgi apache2 模塊和 keystone 配置)。
1虱痕、運(yùn)行以下命令安裝包:
apt install keystone
2睹耐、編輯 /etc/keystone/keystone.conf
文件并完成以下操作:
在 [database]
部分,配置數(shù)據(jù)庫(kù)訪問(wèn):
[database]
# ...
connection = mysql+pymysql://keystone:KEYSTONE_DBPASS@controller/keystone
用您為數(shù)據(jù)庫(kù)選擇的密碼替換 KEYSTONE_DBPASS
部翘。
注釋掉或刪除
[database]
部分中的任何其他connection
選項(xiàng)硝训。
在 [token]
部分中,配置 Fernet 令牌提供者:
[token]
# ...
provider = fernet
3略就、填寫身份服務(wù)數(shù)據(jù)庫(kù):
su -s /bin/sh -c "keystone-manage db_sync" keystone
4、初始化 Fernet 密鑰存儲(chǔ)庫(kù):
keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
keystone-manage credential_setup --keystone-user keystone --keystone-group keystone
5晃酒、引導(dǎo)認(rèn)證服務(wù):
keystone-manage bootstrap --bootstrap-password ADMIN_PASS \
--bootstrap-admin-url http://controller:35357/v3/ \
--bootstrap-internal-url http://controller:5000/v3/ \
--bootstrap-public-url http://controller:5000/v3/ \
--bootstrap-region-id RegionOne
將 ADMIN_PASS
替換為管理用戶的適當(dāng)密碼表牢。
配置 Apache HTTP 服務(wù)器
1、編輯 /etc/apache2/apache2.conf
文件并配置 ServerName
選項(xiàng)以引用控制器節(jié)點(diǎn):
ServerName controller
完成安裝
1贝次、重新啟動(dòng) Apache 服務(wù)并刪除默認(rèn)的 SQLite 數(shù)據(jù)庫(kù):
service apache2 restart
rm -f /var/lib/keystone/keystone.db
2崔兴、配置管理賬戶
$ export OS_USERNAME=admin
$ export OS_PASSWORD=ADMIN_PASS
$ export OS_PROJECT_NAME=admin
$ export OS_USER_DOMAIN_NAME=Default
$ export OS_PROJECT_DOMAIN_NAME=Default
$ export OS_AUTH_URL=http://controller:35357/v3
$ export OS_IDENTITY_API_VERSION=3
在 keystone - install - configure
中使用 keystone - manage bootstrap
命令中的密碼替換 ADMIN_PASS
。