CentOS 7
Sponsored Link

OpenStack Train : Keystone 設定#12019/10/25

OpenStack Identity Service (Keystone) をインストールします。
当例では以下のような環境に Keystone をインストールします。
|    [ Control Node ]   |
|                       |
|  MariaDB    RabbitMQ  |
|  Memcached  httpd     |
|  Keystone             |

[1] Keystone 用のユーザーとデータベースを MariaDB に登録しておきます。
[root@dlp ~]#
mysql -u root -p

Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 8
Server version: 10.3.10-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>
create database keystone;

Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]>
grant all privileges on keystone.* to keystone@'localhost' identified by 'password';

Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]>
grant all privileges on keystone.* to keystone@'%' identified by 'password';

Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]>
flush privileges;

Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]>

[2] Keystone をインストールします。
# Train, EPEL からインストール

[root@dlp ~]#
yum --enablerepo=centos-openstack-train,epel -y install openstack-keystone openstack-utils python-openstackclient httpd mod_wsgi
[3] Keystone の基本設定です。
[root@dlp ~]#
vi /etc/keystone/keystone.conf
# 431行目:追記 (Memcache サーバー指定)

memcache_servers =
# 571行目:追記 (MariaDB に登録したDB)

connection = mysql+pymysql://keystone:password@
# 2435行目:コメント解除

provider = fernet
[root@dlp ~]#
su -s /bin/bash keystone -c "keystone-manage db_sync"
# キー初期化

[root@dlp ~]#
keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone

[root@dlp ~]#
keystone-manage credential_setup --keystone-user keystone --keystone-group keystone
# 自ホスト(コントローラーホスト)定義

[root@dlp ~]#
export controller=
# keystone ブートストラップ (adminpassword の箇所は任意の管理者パスワードを設定)

[root@dlp ~]#
keystone-manage bootstrap --bootstrap-password adminpassword \
--bootstrap-admin-url http://$controller:5000/v3/ \
--bootstrap-internal-url http://$controller:5000/v3/ \
--bootstrap-public-url http://$controller:5000/v3/ \
--bootstrap-region-id RegionOne
[4] SELinux を有効にしている場合は、ブール値の変更が必要です。
[root@dlp ~]#
setsebool -P httpd_use_openstack on

[root@dlp ~]#
setsebool -P httpd_can_network_connect on

[root@dlp ~]#
setsebool -P httpd_can_network_connect_db on

[5] Firewalld を有効にしている場合は、サービスポートの許可が必要です。
[root@dlp ~]#
firewall-cmd --add-port=5000/tcp --permanent

[root@dlp ~]#
firewall-cmd --reload

[6] Keystone 用の設定ファイルを有効にして Apache httpd を起動します。
[root@dlp ~]#
ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/

[root@dlp ~]#
systemctl start httpd

[root@dlp ~]#
systemctl enable httpd