Menu Close

Red Hat Training

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

17.4. TLS を使用するエンドポイントの設定

本セクションでは、既存のデプロイメントで TLS によるエンドポイントの暗号化を有効にする方法、さらにエンドポイントが正しく設定されていることを確認する方法について説明します。

TLS everywhere を有効にする場合、ドメインの構造化方法に応じて、さまざまなアップグレードパスを利用することができます。以下の例では、サンプルドメイン名を使用してアップグレードパスを説明します。

  • オーバークラウドドメイン(lab.local)が IdM ドメイン(lab.local)と一致する 内部 および管理 エンドポイントで、既存のパブリックエンドポイント証明書を再利用して TLS everywhere を有効にする。
  • オーバークラウドドメイン(lab.local)が IdM ドメイン(lab.local)と一致する 内部 および管理 エンドポイントで、IdM が新しいパブリックエンドポイント証明書を発行し、TLS everywhere を有効にすることを許可します。
  • オーバークラウドドメイン(site1.lab.local)が IdM ドメイン(lab.local)のサブドメインである場合に、既存のパブリックエンドポイント証明書を再利用して、内部 および管理 エンドポイントで TLS everywhere を有効にする。
  • オーバークラウドドメイン(site1.lab.local)が IdM ドメイン(lab.local)のサブドメインである場合に、IdM が新しい パブリックエンドポイント 証明書を発行するのを許可して、内部 および管理エンドポイントで TLS everywhere を有効にする。

本セクションの以降の手順で、上記のさまざまな組み合わせを使用して、この統合を設定する方法について説明します。

17.4.1. IdM と同じドメインを使用するデプロイメントのアンダークラウドインテグレーションの設定

以下の手順では、IdM と同じドメインを使用するデプロイメントのアンダークラウドインテグレーションを設定する方法について説明します。

Red Hat OpenStack Platform は novajoin を使用して Red Hat Identity Management(IdM)と統合し、暗号化証明書を発行および管理します。以下の手順では、アンダークラウドを IdM に登録し、トークンを生成し、アンダークラウド設定でトークンを有効にしてから、アンダークラウドおよびオーバークラウドのデプロイメントスクリプトを再実行します。たとえば、以下のようになります。

  1. IdM との統合のために python-novajoin をインストールします。

    [stack@undercloud-0 ~]$ sudo yum install python-novajoin
  2. novajoin 設定スクリプトを実行し、IdM デプロイメントの設定情報を指定します。たとえば、以下のようになります。

    [stack@undercloud-0 ~]$ sudo novajoin-ipa-setup --principal admin --password ComplexRedactedPassword \
      --server ipa.lab.local --realm lab.local --domain lab.local \
      --hostname undercloud-0.lab.local --precreate
    ...
    0Uvua6NyIWVkfCSTOmwbdAobsqGH2GONRJrW24MoQ4wg

    この出力には、IdM のワンタイムパスワード (OTP) が含まれますが、この値はご自分のデプロイメントとは異なります。

  3. novajoin を使用するようにアンダークラウドを設定し、ワンタイムパスワード(OTP)を追加し、DNS 用の IdM IP アドレスを使用し、オーバークラウドドメインを記述します。実際のデプロイメントに合わせて、この例を修正する必要があります。

    [stack@undercloud ~]$ vi undercloud.conf
    ...
    enable_novajoin = true
    ipa_otp = 0Uvua6NyIWVkfCSTOmwbdAobsqGH2GONRJrW24MoQ4wg
    undercloud_hostname = undercloud-0.lab.local
    undercloud_nameservers = X.X.X.X
    overcloud_domain_name = lab.local
    ...
  4. アンダークラウドに novajoin サービスをインストールします。

    [stack@undercloud ~]$ openstack undercloud install
  5. オーバークラウドの IP アドレスを DNS に追加します。実際のデプロイメントに合わせて、この例を修正する必要があります。

    注記: オーバークラウドの network-environment.yaml をチェックして、各ネットワークの範囲内の仮想 IP アドレスを選択します。

    [root@ipa ~]$ ipa dnsrecord-add lab.local overcloud --a-rec=10.0.0.101
    [root@ipa ~]# ipa dnszone-add ctlplane.lab.local
    [root@ipa ~]# ipa dnsrecord-add ctlplane.lab.local overcloud --a-rec 192.168.24.101
    [root@ipa ~]# ipa dnszone-add internalapi.lab.local
    [root@ipa ~]# ipa dnsrecord-add internalapi.lab.local overcloud --a-rec 172.17.1.101
    [root@ipa ~]# ipa dnszone-add storage.lab.local
    [root@ipa ~]# ipa dnsrecord-add storage.lab.local overcloud --a-rec 172.17.3.101
    [root@ipa ~]# ipa dnszone-add storagemgmt.lab.local
    [root@ipa ~]# ipa dnsrecord-add storagemgmt.lab.local overcloud --a-rec 172.17.4.101
  6. すべての エンドポイントについて public_vip.yaml マッピングを作成します。

    Parameter_defaults:
        PublicVirtualFixedIPs: [{'ip_address':'10.0.0.101'}]
        ControlFixedIPs: [{'ip_address':'192.168.24.101'}]
        InternalApiVirtualFixedIPs: [{'ip_address':'172.17.1.101'}]
        StorageVirtualFixedIPs: [{'ip_address':'172.17.3.101'}]
        StorageMgmtVirtualFixedIPs: [{'ip_address':'172.17.4.101'}]
        RedisVirtualFixedIPs: [{'ip_address':'172.17.1.102'}]