インストールと設定

インストールと設定

このセクションでは、コントローラーノードに OpenStack Identity サービス (コード名 keystone) をインストールして設定する方法を説明します。スケーラビリティーを重視し、この設定では Fernet トークンを使用し、 Apache HTTP サーバーを使ってリクエストを処理します。

前提条件

OpenStack Identity サービスを設定する前に、データベースと管理トークンを作成する必要があります。

  1. 以下の作業を実行して、データベースを作成します。

    • データベースクライアントを使用して、データベースサーバーに root ユーザーとして接続します。

      $ mysql -u root -p
      
    • keystone データベースを作成します。

      mysql> CREATE DATABASE keystone;
      
    • keystone データベースに適切なアクセス権を付与します。

      mysql> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' \
        IDENTIFIED BY 'KEYSTONE_DBPASS';
      mysql> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' \
        IDENTIFIED BY 'KEYSTONE_DBPASS';
      

      KEYSTONE_DBPASS を適切なパスワードに置き換えます。

    • データベースクライアントを終了します。

コンポーネントのインストールと設定

注釈

設定ファイルのデフォルトは、ディストリビューションにより異なります。これらの既存のセクションとオプションを編集するのではなく、追加する必要があるかもしれません。また、設定のスニペットにある 省略 (...) は、保持すべきデフォルトの設定オプションを意味します。

注釈

このガイドは、Apache HTTP server の mod_wsgi を使用して、5000 番と 35357 番のポートで Identity サービスのリクエストを処理します。デフォルトでは、今も keystone サービスがこれらのポートをリッスンします。そのため、このガイドでは手動で keystone サービスを無効化します。

  1. 以下のコマンドを実行して、パッケージをインストールします。

    # zypper install openstack-keystone apache2-mod_wsgi
    
  1. /etc/keystone/keystone.conf ファイルを編集し、以下の作業をすべて行います。

    • [database] セクションで、データベースのアクセス方法を設定します。

      [database]
      ...
      connection = mysql+pymysql://keystone:KEYSTONE_DBPASS@controller/keystone
      

      KEYSTONE_DBPASS をデータベース用に選択したパスワードで置き換えます。

      注釈

      [database] セクションにある他の connection オプションは、コメントアウトまたは削除します。

    • [token] セクションで Fernet トークンプロバイダーを設定します。

      [token]
      ...
      provider = fernet
      
  2. Identity サービスデータベースを展開します。

    # su -s /bin/sh -c "keystone-manage db_sync" keystone
    
  3. Fernet 鍵リポジトリーを初期化します。

    # keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
    # keystone-manage credential_setup --keystone-user keystone --keystone-group keystone
    
  4. Identity サービスを初期設定を行います。

    # keystone-manage bootstrap --bootstrap-password ADMIN_PASS \
      --bootstrap-admin-url http://controller:35357/v3/ \
      --bootstrap-internal-url http://controller:35357/v3/ \
      --bootstrap-public-url http://controller:5000/v3/ \
      --bootstrap-region-id RegionOne
    

    ADMIN_PASS は管理ユーザーの適切なパスワードに置き換えます。

Apache HTTP Server の設定

  1. /etc/sysconfig/apache2 ファイルを編集し、APACHE_SERVERNAME オプションがコントローラーノードを参照するように設定します。

    APACHE_SERVERNAME="controller"
    
  2. /etc/apache2/conf.d/wsgi-keystone.conf を以下の内容で作成します。

    Listen 5000
    Listen 35357
    
    <VirtualHost *:5000>
        WSGIDaemonProcess keystone-public processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
        WSGIProcessGroup keystone-public
        WSGIScriptAlias / /usr/bin/keystone-wsgi-public
        WSGIApplicationGroup %{GLOBAL}
        WSGIPassAuthorization On
        ErrorLogFormat "%{cu}t %M"
        ErrorLog /var/log/apache2/keystone.log
        CustomLog /var/log/apache2/keystone_access.log combined
    
        <Directory /usr/bin>
            Require all granted
        </Directory>
    </VirtualHost>
    
    <VirtualHost *:35357>
        WSGIDaemonProcess keystone-admin processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
        WSGIProcessGroup keystone-admin
        WSGIScriptAlias / /usr/bin/keystone-wsgi-admin
        WSGIApplicationGroup %{GLOBAL}
        WSGIPassAuthorization On
        ErrorLogFormat "%{cu}t %M"
        ErrorLog /var/log/apache2/keystone.log
        CustomLog /var/log/apache2/keystone_access.log combined
    
        <Directory /usr/bin>
            Require all granted
        </Directory>
    </VirtualHost>
    
  3. /etc/keystone ディレクトリーの所有権を再帰的に変更します。

    # chown -R keystone:keystone /etc/keystone
    

インストールの最終手順

  1. Apache HTTP サービスを起動し、システム起動時に起動するよう設定します。

    # systemctl enable apache2.service
    # systemctl start apache2.service
    
  1. 管理アカウントの設定

    $ 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-manage bootstrap コマンドに使用したパスワードで ADMIN_PASS を置き換えます。

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.