Menu Close

Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

11.2. Data Processing サービスの設定

Data Processing サービス (Sahara) を設定するには、以下のタスクを行う必要があります。
  • Data Processing サービスのデータベース接続の設定
  • Data Processing API サーバーが Identity サービスで認証を行うための設定
  • ファイアウォールが Data Processing サービスのサービストラフィックを (ポート 8386 で) 許可する設定

11.2.1. Data Processing サービスデータベースの作成

Data Processing API サービスで使用するデータベースおよびデータベースのユーザーを作成します。Data Processing サービスのデータベースの接続文字列は、/etc/sahara/sahara.conf ファイルで定義します。 Data Processing API サービス (openstack-sahara-api) を起動する前に、有効なデータベースサーバーを参照するように更新する必要があります。

手順11.1 Data Processing API サービスのデータベースの作成および設定

  1. データベースサービスに接続します。
    # mysql -u root -p
  2. sahara データベースを作成します。
    mysql> CREATE DATABASE sahara;
  3. sahara データベースユーザーを作成し、sahara データベースへのアクセスを許可します。
    mysql> GRANT ALL ON sahara.* TO 'sahara'@'%' IDENTIFIED BY 'PASSWORD';
    mysql> GRANT ALL ON sahara.* TO 'sahara'@'localhost' IDENTIFIED BY 'PASSWORD';
    PASSWORD は、このユーザーとしてデータベースサーバーとの認証を行う際に使用するセキュアなパスワードに置き換えます。
  4. mysql クライアントを終了します。
    mysql> quit
  5. sql_connection 設定キーの値を設定します。
    # openstack-config --set /etc/sahara/sahara.conf \
        database connection mysql://sahara:PASSWORD@IP/sahara
    以下の値を置き換えてください。
    • PASS は選択したデータベースユーザーのパスワードに置き換えます。
    • IP は、データベースサービスをホストするシステムの IP アドレスまたはホスト名に置き換えます。
  6. sahara データベースのスキーマを設定します。
    # sahara-db-manage --config-file /etc/sahara/sahara.conf upgrade head

重要

この接続設定キーに指定する IP アドレスまたはホスト名は、Data Processing サービスのデータベースの作成時に Data Processing サービスのデータベースユーザーがアクセスを許可された IP アドレスまたはホスト名と一致する必要があります。また、データベースがローカルでホストされ、Data Processing サービスのデータベースの作成時に「localhost」へのアクセス権を付与した場合には、「localost」と入力する必要があります。

11.2.2. Data Processing サービス用のアイデンティティーレコードの作成

Data Processing サービスで必要な Identity サービスを作成して設定します。これらのエントリーは、Data Processing サービスによって提供されるボリューム機能を検索してアクセスを試みる他の OpenStack サービスを補助します。
以下の手順では、管理ユーザーと services テナントが作成済みであることを前提としています。詳しい説明は、以下のリンクを参照してください。
以下の手順は、Identity サービスのサーバーまたは keystonerc_admin ファイルをコピーして keystone コマンドラインユーティリティーをインストールした任意のマシンで実行してください。

手順11.2 Data Processing サービス用のアイデンティティーレコードの作成

  1. Keystone に管理ユーザーとしてアクセスするためのシェルを設定します。
    # source ~/keystonerc_admin
  2. sahara ユーザーを作成します。
    [(keystone_admin)]# openstack user create --password PASSWORD sahara
    +----------+----------------------------------+
    | Field    | Value                            |
    +----------+----------------------------------+
    | email    | None                             |
    | enabled  | True                             |
    | id       | 1fc5b7ac48b646ab850854e565ac1cfc |
    | name     | sahara                           |
    | username | sahara                           |
    +----------+----------------------------------+
    PASSWORD は、Data Processing サービスが Identity サービスとの認証を行う際に使用するセキュアなパスワードに置き換えます。
  3. services テナントのコンテキスト内で、sahara ユーザーと admin ロールを関連付けます。
    [(keystone_admin)]# openstack role add --project services --user sahara admin
  4. sahara エンドポイントエントリーを作成します。
    [(keystone_admin)]# openstack service create --name sahara \
    --description "OpenStack Data Processing" \
    data-processing
  5. sahara エンドポイントエントリーを作成します。
    [(keystone_admin)]# openstack endpoint create \
       --publicurl 'http://SAHARA_HOST:8386/v1.1/%(tenant_id)s' \
       --adminurl 'http://SAHARA_HOST:8386/v1.1/%(tenant_id)s' \
       --internalurl 'http://SAHARA_HOST:8386/v1.1/%(tenant_id)s' \
       --region RegionOne \
       sahara
    SAHARA_HOST は Data Processing サービスをホストするサーバーの IP アドレスまたは完全修飾ドメイン名に置き換えます。

    注記

    デフォルトでは、エンドポイントはデフォルトのリージョンである RegionOne で作成されます (この値は大文字小文字の区別があります)。エンドポイントの作成時に異なるリージョンを指定するには、--region 引数を使用して指定してください。
    詳しい情報は 「サービスのリージョン」 を参照してください。

11.2.3. Data Processing サービスの認証設定

Data Processing API サービス (openstack-sahara-api) が認証に Identity サービスを使用するように設定します。以下の手順に記載するステップはすべて、Data Processing API サービスをホストするサーバーに root ユーザーとしてログインして実行する必要があります。

手順11.3 Data Processing API サービスが Identity サービスを使用して認証を行うための設定

  1. Data Processing API サービスが使用する必要のある Identity サービスホストを設定します。
    # openstack-config --set /etc/sahara/sahara.conf \
       keystone_authtoken auth_uri http://IP:5000/v2.0/
    # openstack-config --set /etc/sahara/sahara.conf \
       keystone_authtoken identity_uri http://IP:35357
    IP は、Identity サービスをホストするサーバーの IP アドレスに置き換えます。
  2. Data Processing API サービスが正しいテナントとして認証を行うように設定します。
    # openstack-config --set /etc/sahara/sahara.conf \
       keystone_authtoken admin_tenant_name services
    services は、Data Processing サービスを使用するために作成したテナントの名前に置き換えます。本ガイドの例では、services を使用しています。
  3. Data Processing API サービスが sahara 管理ユーザーアカウントを使用して認証を行うように設定します。
    # openstack-config --set /etc/sahara/sahara.conf \
       keystone_authtoken admin_user sahara
  4. Data Processing API サービスが正しい sahara 管理ユーザーアカウントのパスワードを使用するように設定します。
    # openstack-config --set /etc/sahara/sahara.conf \
       keystone_authtoken admin_password PASSWORD
    PASSWORD は、sahara ユーザーの作成時に設定したパスワードに置き換えます。

11.2.4. OpenStack Data Processing サービスのトラフィックを許可するためのファイアウォール設定

Data Processing サービスは、ポート 8386 で接続を受信します。このサービスノードのファイアウォールは、このポートのネットワークトラフィックを許可するように設定する必要があります。以下の手順に記載するステップはすべて、Data Processing サービスをホストするサーバーに root ユーザーとしてログインして実行する必要があります。

手順11.4 Data Processing サービスのトラフィックを許可するためのファイアウォール設定

  1. テキストエディターで /etc/sysconfig/iptables ファイルを開きます。
  2. ポート 8386 で TCP トラフィックを許可する INPUT ルールを追加します。新規ルールは、トラフィックを REJECT する INPUT ルールよりも前に記載する必要があります。
    -A INPUT -p tcp -m multiport --dports 8386 -j ACCEPT
  3. /etc/sysconfig/iptables ファイルへの変更を保存します。
  4. iptables サービスを再起動して、変更を有効にします。
    # systemctl restart iptables.service