第7章 オーバークラウドのプロビジョニングとデプロイ

オーバークラウドを作成するには、以下のタスクを実行する必要があります。

  1. 物理ネットワークのネットワークリソースをプロビジョニングします。

    1. ネットワークの分離またはカスタム設定可能ネットワークをデプロイする場合は、ネットワーク定義ファイルを YAML 形式で作成します。
    2. ネットワーク定義ファイルを含め、ネットワークプロビジョニングコマンドを実行します。
    3. YAML 形式でネットワーク仮想 IP (VIP) 定義ファイルを作成します。
    4. ネットワーク VIP 定義ファイルを含め、ネットワーク VIP プロビジョニングコマンドを実行します。
  2. ベアメタルノードをプロビジョニングします。

    1. ノード定義ファイルを yaml 形式で作成します。
    2. ノード定義ファイルを含め、ベアメタルノードプロビジョニングコマンドを実行します。
  3. オーバークラウドをデプロイします。

    1. プロビジョニングコマンドにより生成される heat 環境ファイルを指定して、デプロイメントコマンドを実行します。

7.1. オーバークラウドネットワークのプロビジョニング

Red Hat OpenStack Platform (RHOSP) 物理ネットワーク環境のネットワークリソースを設定するには、次のタスクを実行する必要があります。

  1. オーバークラウドのネットワークリソースを設定およびプロビジョニングします。
  2. オーバークラウドのネットワーク仮想 IP を設定およびプロビジョニングします。

7.1.1. オーバークラウドのネットワーク定義の設定とプロビジョニング

YAML 形式のネットワーク定義ファイルで、オーバークラウドの物理ネットワークを設定します。プロビジョニングプロセスでは、ネットワーク仕様を含むネットワーク定義ファイルから heat 環境ファイルが作成されます。オーバークラウドをデプロイするときに、デプロイメントコマンドにこの heat 環境ファイルを含めます。

前提条件

  • アンダークラウドがインストールされます。詳しくは、Installing director を参照してください。

手順

  1. source コマンドで stackrc アンダークラウド認証情報ファイルを読み込みます。

    $ source ~/stackrc
  2. 必要なサンプルネットワーク定義テンプレートを /usr/share/openstack-tripleo-heat-templates/network-data-samples から環境ファイルディレクトリーにコピーします。

    (undercloud)$ cp /usr/share/openstack-tripleo-heat-templates/network-data-samples/default-network-isolation.yaml /home/stack/templates/network_data.yaml
  3. ネットワーク環境に合わせてネットワーク定義ファイルを設定します。たとえば、外部ネットワーク定義を更新できます。

    - name: External
      name_lower: external
      vip: true
      mtu: 1500
      subnets:
        external_subnet:
          ip_subnet: 10.0.0.0/24
          allocation_pools:
            - start: 10.0.0.4
              end: 10.0.0.250
          gateway_ip: 10.0.0.1
          vlan: 10
  4. 環境のその他のネットワークとネットワーク属性を設定します。ネットワーク定義ファイルでネットワーク属性の設定に使用できるプロパティーの詳細は、オーバークラウドネットワークの設定 を参照してください。
  5. オーバークラウドネットワークをプロビジョニングします。

    (undercloud)$ openstack overcloud network provision \
     [--templates <templates_directory> \]
     --output  <deployment_file> \
     /home/stack/templates/<networks_definition_file>
    • オプション: --templates オプションを含めて、/usr/share/openstack-tripleo-heat-templates にあるデフォルトテンプレートの代わりに独自のテンプレートを使用します。<templates_directory> は、テンプレートを含むディレクトリーへのパスに置き換えます。
    • <deployment_file> は、デプロイメントコマンドに追加するために生成する heat 環境ファイルの名前に置き換えます (例 :/home/stack/templates/overcloud-networks-deployed.yaml)
    • <networks_definition_file> は、ネットワーク定義ファイルの名前 (network_data.yaml など) に置き換えます。
  6. ネットワークのプロビジョニングが完了したら、次のコマンドを使用して、作成されたネットワークとサブネットを確認できます。

    (undercloud)$ openstack network list
    (undercloud)$ openstack subnet list
    (undercloud)$ openstack network show <network>
    (undercloud)$ openstack subnet show <subnet>
    • <network> は、確認するネットワークの名前または UUID に置き換えます。
    • <subnet> は、確認するサブネットの名前または UUID に置き換えます。

7.1.2. オーバークラウドのネットワーク VIP の設定とプロビジョニング

YAML 形式のネットワーク VIP 定義ファイルで、オーバークラウドのネットワーク仮想 IP (VIP) を設定します。プロビジョニングプロセスでは、VIP 仕様を含む VIP 定義ファイルから Heat 環境ファイルが作成されます。オーバークラウドをデプロイするときに、デプロイメントコマンドにこの heat 環境ファイルを含めます。

前提条件

手順

  1. source コマンドで stackrc アンダークラウド認証情報ファイルを読み込みます。

    $ source ~/stackrc
  2. 必要なサンプルネットワーク VIP 定義テンプレートを /usr/share/openstack-tripleo-heat-templates/network-data-samples から環境ファイルディレクトリーにコピーします。

    (undercloud)$ cp /usr/share/openstack-tripleo-heat-templates/network-data-samples/vip-data-default-network-isolation.yaml /home/stack/templates/vip_data.yaml
  3. オプション: 環境に合わせて VIP 定義ファイルを設定します。たとえば、次の例では、外部ネットワークとコントロールプレーンの VIP を定義しています。

    - name: external_vip
      network: external
      ip_address: 10.0.0.0
      subnet: external_vip_subnet
      dns_name: overcloud
    - name: ctlplane_vip
      network: ctlplane
      ip_address: 192.168.122.0
      subnet: ctlplane_vip_subnet
      dns_name: overcloud

    VIP 定義ファイルでネットワーク VIP 属性を設定するために使用できるプロパティーの詳細は、ネットワーク VIP 属性のプロパティー を参照してください。

  4. ネットワーク VIP をプロビジョニングします。

    (undercloud)$ openstack overcloud network vip provision \
     [--templates <templates_directory> \]
     --stack <stack> \
     --output <deployment_file> \
     /home/stack/templates/<vip_definition_file>
    • オプション: --templates オプションを含めて、/usr/share/openstack-tripleo-heat-templates にあるデフォルトテンプレートの代わりに独自のテンプレートを使用します。<templates_directory> は、テンプレートを含むディレクトリーへのパスに置き換えます。
    • <stack> は、ネットワーク VIP がプロビジョニングされているスタックの名前 (overcloud など) に置き換えます。
    • <deployment_file> は、デプロイメントコマンドに含めるために生成する heat 環境ファイルの名前に置き換えます (例 :/home/stack/templates/overcloud-vip-deployed.yaml)
    • <vip_definition_file> は VIP 定義ファイルの名前 (vip_data.yaml など) に置き換えます。
  5. ネットワーク VIP のプロビジョニングが完了したら、次のコマンドを使用して、作成された VIP を確認できます。

    (undercloud)$ openstack port list
    (undercloud)$ openstack port show <port>
    • <port> は、確認するポートの名前または UUID に置き換えます。