OpenStack/controller初期インストール




このページの作業はcontrollerノードで実施します。

mariadbのインストール

パッケージをインストールします。
# yum install mariadb mariadb-server MySQL-python

/etc/my.cnfの[mysqld]セクションに下記の行を追加します。
default-storage-engine = innodb
innodb_file_per_table
collation-server = utf8_general_ci
init-connect = 'SET NAMES utf8'
character-set-server = utf8
skip-name-resolve

起動します。
# systemctl start mariadb
# systemctl enable mariadb

メッセージングサーバーのインストール

該当パッケージをインストールします。
# yum install rabbitmq-server

起動します。
# systemctl start rabbitmq-server
# systemctl enable rabbitmq-server

rabbitmqのゲストアカウントにパスワードを設定します。
# rabbitmqctl change_password guest [任意のパスワード]

Identityの追加

データベースを設定します。
# mysql -u root -p

> create database keystone;
> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY '[任意のパスワード]';
> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY '[任意のパスワード]';

パッケージをインストールします。
# yum install openstack-keystone python-keystoneclient

opensslコマンドでランダムトークンを生成します。
後程使うのでメモしておきましょう。
# openssl rand -hex 10

/etc/keystone/keystone.confを編集します。
admin_tokenを先程生成した物に設定します。
#admin_token=ADMIN
↓
#admin_token=[先程生成したトークン]
データベース接続の情報を設定します。
#connection=mysql://keystone:keystone@localhost/keystone
↓
connection=mysql://keystone:[先程設定したパスワード]@localhost/keystone
プロバイダーを設定します。
#provider=<None>
↓
provider=keystone.token.providers.uuid.Provider
ドライバーを設定します。
#driver=keystone.token.persistence.backends.sql.Token
↓
driver=keystone.token.persistence.backends.sql.Token

鍵と証明書を生成します。
# keystone-manage pki_setup --keystone-user keystone --keystone-group keystone
# chown -R keystone:keystone /var/log/keystone
# chown -R keystone:keystone /etc/keystone/ssl
# chmod -R o-rwx /etc/keystone/ssl

データベースに初期データを投入します。
# su -s /bin/sh -c "keystone-manage db_sync" keystone

identityサービスを起動します。
# systemctl start openstack-keystone
# systemctl enable openstack-keystone

テナント、ユーザー、ロールの作成

まず環境変数を設定します。
$ export OS_SERVICE_TOKEN=[keystone.confのadmin_tokenで設定した値]
$ export OS_SERVICE_ENDPOINT=http://[コントローラーノードのホスト名]:35357/v2.0

管理作業のために管理テナントを作成します。
$ keystone tenant-create --name admin --description "Admin Tenant"

adminユーザーを作成します。
$ keystone user-create --name admin --pass [任意のパスワード] --email [任意のメールアドレス]

adminロールを作成します。
$ keystone role-create --name admin

作成したadminユーザーにadminロールを与え、adminテナントに結び付けます。
$ keystone user-role-add --user admin --tenant admin --role admin

通常のテナントを作成します。
ここではdemoという名前で作成します。
$ keystone tenant-create --name demo --description "Demo Tenant"

demoユーザーを作成します。
$ keystone user-create --name demo --tenant demo --pass [任意のパスワード] --email [任意のメールアドレス]

サービス用テナントを作成します。
$ keystone tenant-create --name service --description "Service Tenant"

identityサービス用のエンティティを作成します。
$ keystone service-create --name keystone --type identity --description "OpenStack Identity"

identityサービスのエンドポイントを作成します。
keystone endpoint-create \
  --service-id $(keystone service-list | awk '/ identity / {print $2}') \
  --publicurl http://[コントローラーノードのホスト名]:5000/v2.0 \
  --internalurl http://[コントローラーノードのホスト名]:5000/v2.0 \
  --adminurl http://[コントローラーノードのホスト名]:35357/v2.0 \
  --region regionOne

どこでもいいのでadmin-openrc.shを作成します。
とりあえずユーザーディレクトリ配下に作っておきましょう。
export OS_TENANT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=[adminユーザーのパスワード]
export OS_AUTH_URL=http://[コントローラーノードのホスト名]:35357/v2.0

demo-openrc.shを作成します。
export OS_TENANT_NAME=demo
export OS_USERNAME=demo
export OS_PASSWORD=[demoユーザーのパスワード]
export OS_AUTH_URL=http://[コントローラーノードのホスト名]:5000/v2.0




  • 最終更新:2016-01-25 14:30:14

このWIKIを編集するにはパスワード入力が必要です

認証パスワード