9.2. コンポーザブルネットワークの追加

コンポーザブルネットワークを使用して、さまざまなサービス用のネットワークを追加します。たとえば、ストレージバックアップトラフィック専用のネットワークがある場合には、ネットワークを複数のロールに提供できます。

手順

  1. デフォルトの network_data.yaml ファイルのコピーします。

    $ cp /usr/share/openstack-tripleo-heat-templates/network_data.yaml /home/stack/.
  2. network_data.yaml ファイルのローカルコピーを編集し、新規ネットワーク用のセクションを追加します。

    - name: StorageBackup
      name_lower: storage_backup
      vlan: 21
      vip: true
      ip_subnet: '172.21.1.0/24'
      allocation_pools: [{'start': '171.21.1.4', 'end': '172.21.1.250'}]
      gateway_ip: '172.21.1.1'

    network_data.yaml ファイルでは、以下のパラメーターを使用することができます。

    name
    人間が判読可能なネットワークの名前を設定します。必須のパラメーターは、このパラメーターだけです。判読性を向上させるために、name_lower を使用して名前を正規化することもできます。たとえば、InternalApiinternal_api に変更します。
    name_lower
    ネットワーク名の小文字バージョンを設定します。director は、この名前を roles_data.yaml ファイルのロールに割り当てられる該当ネットワークにマッピングします。
    vlan
    このネットワークに使用する VLAN を設定します。
    vip: true
    新規ネットワーク上に仮想 IP アドレス (VIP) を作成します。この IP は、サービス/ネットワーク間のマッピングパラメーター (ServiceNetMap) にリスト表示されるサービスのターゲット IP として使用されます。仮想 IP は Pacemaker を使用するロールにしか使用されない点に注意してください。オーバークラウドの負荷分散サービスにより、トラフィックがこれらの IP から対応するサービスのエンドポイントにリダイレクトされます。
    ip_subnet
    デフォルトの IPv4 サブネットを CIDR 形式で設定します。
    allocation_pools
    IPv4 サブネットの IP 範囲を設定します。
    gateway_ip
    ネットワークのゲートウェイを設定します。
    routes

    ネットワークに新たなルートを追加します。それぞれの追加ルートが含まれる JSON リストを使用します。それぞれのリスト項目には、ディクショナリーの値のマッピングが含まれます。構文例を以下に示します。

      routes: [{'destination':'10.0.0.0/16', 'nexthop':'10.0.2.254'}]
    subnets

    このネットワーク内にある追加のルーティングされたサブネットを作成します。このパラメーターでは、ルーティングされたサブネット名の小文字バージョンが含まれる dict 値をキーとして指定し、vlanip_subnetallocation_pools、および gateway_ip パラメーターをサブネットにマッピングする値として指定します。このレイアウトの例を以下に示します。

    - name: StorageBackup
      name_lower: storage_backup
      vlan: 200
      vip: true
      ip_subnet: '172.21.0.0/24'
      allocation_pools: [{'start': '171.21.0.4', 'end': '172.21.0.250'}]
      gateway_ip: '172.21.0.1'
      subnets:
        storage_backup_leaf1:
          vlan: 201
          ip_subnet: '172.21.1.0/24'
          allocation_pools: [{'start': '171.21.1.4', 'end': '172.21.1.250'}]
          gateway_ip: '172.19.1.254'

    このマッピングは、スパイン/リーフ型デプロイメントで一般的に使用されます。詳しくは、Spine Leaf Networking を参照してください。

  3. 仮想 IP を含むコンポーザブルネットワークを追加し、一部の API サービスをこのネットワークにマッピングする場合は、CloudName{network.name} 定義を使用して API エンドポイントの DNS 名を設定します。

    CloudName{{network.name}}

    以下に例を示します。

    parameter_defaults:
      ...
      CloudNameOcProvisioning: baremetal-vip.example.com
  4. -n オプションを使用して、カスタム network_data.yaml ファイルをデプロイメントに含めます。-n オプションを指定しないと、デプロイメントコマンドはデフォルトのネットワークセットを使用します。
  5. 予測可能な仮想 IP アドレス (VIP) が必要な場合は、カスタムネットワークの VirtualFixedIPs パラメーターを heat 環境ファイルの parameter_defaults セクションに追加します (例: my_network_vips.yaml)。

    <% my_customer_network %>VirtualFixedIPs:  [{'ip_address':'<% ipaddres %>'}]

    以下に例を示します。

    parameter_defaults:
      ...
      # Predictable VIPs
      StorageBackuptVirtualFixedIPs:  [{'ip_address':'172.21.1.9'}]
  6. -e オプションを使用して、heat 環境ファイル my_network_vips.yaml をデプロイメントコマンドに含めます。

関連情報