検索

4.8. スパイン/リーフ型デプロイメントへの新たなリーフの追加

download PDF

ネットワーク容量の増加や、新しい物理サイトの追加を行う場合には、Red Hat OpenStack Platform (RHOSP) のスパイン/リーフネットワークに新たなリーフが必要になる場合があります。

前提条件

  • RHOSP デプロイメントでスパイン/リーフ型ネットワークトポロジーが使用されている。

手順

  1. アンダークラウドホストに stack ユーザーとしてログインします。
  2. source コマンドでアンダークラウドの認証情報ファイルを読み込みます。

    $ source ~/stackrc
  3. /usr/share/openstack-tripleo-heat-templates/network_data_spine_leaf.yaml ファイルの適切なベースネットワークの下にリーフサブネットを追加して、追加する新しいリーフ用のコンポーザブルネットワーク項目としてリーフサブネットを追加します。

    以下の例では、新しいリーフ (leaf3) のサブネットエントリーが追加されました。

    - name: InternalApi
      name_lower: internal_api
      vip: true
      vlan: 10
      ip_subnet: '172.18.0.0/24'
      allocation_pools: [{'start': '172.18.0.4', 'end': '172.18.0.250'}]
      gateway_ip: '172.18.0.1'
      subnets:
        internal_api_leaf1:
          vlan: 11
          ip_subnet: '172.18.1.0/24'
          allocation_pools: [{'start': '172.18.1.4', 'end': '172.18.1.250'}]
          gateway_ip: '172.18.1.1'
        internal_api_leaf2:
          vlan: 12
          ip_subnet: '172.18.2.0/24'
          allocation_pools: [{'start': '172.18.2.4', 'end': '172.18.2.250'}]
          gateway_ip: '172.18.2.1'
        internal_api_leaf3:
          vlan: 13
          ip_subnet: '172.18.3.0/24'
          allocation_pools: [{'start': '172.18.3.4', 'end': '172.18.3.250'}]
          gateway_ip: '172.18.3.1'
  4. 追加する新しいリーフ用のロールデータファイルを作成します。

    1. 追加する新しいリーフ用にリーフ Compute およびリーフ Ceph Storage ファイルをコピーします。

      この例では、Compute1.yaml および CephStorage1.yaml が新しいリーフ (Compute3.yaml および CephStorage3.yaml) にコピーされ、再度実行されます。

      $ cp ~/roles/Compute1.yaml ~/roles/Compute3.yaml
      $ cp ~/roles/CephStorage1.yaml ~/roles/CephStorage3.yaml
    2. それぞれのリーフパラメーターと整合するように、新しい leaf ファイルの nameHostnameFormatDefault、および deprecated_nic_config_name パラメーターを編集します。

      たとえば、Leaf 1 Compute ファイルのパラメーター値は、以下のように設定します。

      - name: ComputeLeaf1
        HostnameFormatDefault: '%stackname%-compute-leaf1-%index%'
        deprecated_nic_config_name: 'computeleaf1.yaml'

      Leaf 1 Ceph Storage ファイルのパラメーター値は、以下のように設定します。

      - name: CephStorageLeaf1
        HostnameFormatDefault: '%stackname%-cephstorage-leaf1-%index%'
        deprecated_nic_config_name: 'ceph-strorageleaf1.yaml'
    3. それぞれのリーフネットワークのパラメーターと整合するように、新しい Leaf ファイルの networks パラメーターを編集します。

      たとえば、Leaf 1 Compute ファイルのパラメーター値は、以下のように設定します。

      - name: ComputeLeaf1
        networks:
          InternalApi:
            subnet: internal_api_leaf1
          Tenant:
            subnet: tenant_leaf1
          Storage:
            subnet: storage_leaf1

      Leaf 1 Ceph Storage ファイルのパラメーター値は、以下のように設定します。

      - name: CephStorageLeaf1
        networks:
          Storage:
            subnet: storage_leaf1
          StorageMgmt:
            subnet: storage_mgmt_leaf1
    4. ロールの設定が完了したら、以下のコマンドを実行して完全なロールデータファイルを生成します。ネットワークにすべてのリーフと、新たに追加するリーフを含めます。

      以下の例では、leaf3 が leaf0、leaf1、および leaf2 に追加されます。

      $ openstack overcloud roles generate --roles-path ~/roles -o roles_data_spine_leaf.yaml Controller Compute Compute1 Compute2 Compute3 CephStorage CephStorage1 CephStorage2 CephStorage3

      これにより、各リーフネットワーク用の全カスタムロールが含まれた完全な roles_data_spine_leaf.yaml ファイルが作成されます。

  5. 追加するリーフ用のカスタム NIC 設定を作成します。

    1. 追加する新しいリーフ用のリーフ Compute およびリーフ Ceph Storage NIC 設定ファイルをコピーします。

      この例では、computeleaf1.yaml および ceph-storageleaf1.yaml が新しいリーフ (computeleaf3.yaml および ceph-storageleaf3.yaml) にコピーされます。

      $ cp ~/templates/spine-leaf-nics/computeleaf1.yaml ~/templates/spine-leaf-nics/computeleaf3.yaml
      $ cp ~/templates/spine-leaf-nics/ceph-storageleaf1.yaml ~/templates/spine-leaf-nics/ceph-storageleaf3.yaml
    2. /usr/share/openstack-tripleo-heat-templates/network_data_spine_leaf.yaml のファイルの resource_registry セクションで、::Net::SoftwareConfig リソースのセットを追加して、各 NIC テンプレートにマップします。

      以下の例では、新たなリーフ NIC 設定ファイル (computeleaf3.yaml および ceph-storageleaf3.yaml) が追加されました。

      resource_registry:
        OS::TripleO::Controller::Net::SoftwareConfig: /home/stack/templates/spine-leaf-nics/controller.yaml
        OS::TripleO::ComputeLeaf0::Net::SoftwareConfig: /home/stack/templates/spine-leaf-nics/computeleaf0.yaml
        OS::TripleO::ComputeLeaf1::Net::SoftwareConfig: /home/stack/templates/spine-leaf-nics/computeleaf1.yaml
        OS::TripleO::ComputeLeaf2::Net::SoftwareConfig: /home/stack/templates/spine-leaf-nics/computeleaf2.yaml
        OS::TripleO::ComputeLeaf3::Net::SoftwareConfig: /home/stack/templates/spine-leaf-nics/computeleaf3.yaml
        OS::TripleO::CephStorageLeaf0::Net::SoftwareConfig: /home/stack/templates/spine-leaf-nics/ceph-storageleaf0.yaml
        OS::TripleO::CephStorageLeaf1::Net::SoftwareConfig: /home/stack/templates/spine-leaf-nics/ceph-storageleaf1.yaml
        OS::TripleO::CephStorageLeaf2::Net::SoftwareConfig: /home/stack/templates/spine-leaf-nics/ceph-storageleaf2.yaml
        OS::TripleO::CephStorageLeaf3::Net::SoftwareConfig: /home/stack/templates/spine-leaf-nics/ceph-storageleaf3.yaml

      これらのリソースマッピングは、デプロイメント時にデフォルトのリソースマッピングをオーバーライドします。

      上記の手順を実施すると、NIC テンプレートのセットと共に、必要な ::Net::SoftwareConfig リソースをそれらのテンプレートにマッピングする環境ファイルが作成されます。最終的に openstack overcloud deploy コマンドを実行する際には、環境ファイルを以下の順番で追加するようにしてください。

    3. /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml: ネットワーク分離を有効にします。

      director はこのファイルを network-isolation.j2.yaml Jinja2 テンプレートからレンダリングする点に注意してください。

    4. /usr/share/openstack-tripleo-heat-templates/environments/network-environment.yaml: デフォルトの NIC リソースマッピングが含まれるデフォルトのネットワーク環境ファイル。

      director はこのファイルを network-environment.j2.yaml Jinja2 テンプレートからレンダリングする点に注意してください。

    5. /home/stack/templates/spine-leaf-nics.yaml: カスタム NIC リソースマッピングが含まれるこのファイルは、デフォルトの NIC リソースマッピングをオーバーライドします。

      以下のコマンドスニペットに、環境ファイルの順番を示します。

      $ openstack overcloud deploy --templates
          ...
          -e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml \
          -e /usr/share/openstack-tripleo-heat-templates/environments/network-environment.yaml \
          -e /home/stack/templates/spine-leaf-nics.yaml \
          ...
  6. コントロールプレーンのパラメーターを更新します。

    ~/templates/spine-leaf-ctlplane.yamlparameter_defaults セクションに、新しいリーフネットワーク用のコントロールプレーンのサブネットマッピングを追加します。

    以下の例では、新しいリーフ (leaf3) エントリーを追加します。

    parameter_defaults:
      ...
      ControllerControlPlaneSubnet: leaf0
      Compute0ControlPlaneSubnet: leaf0
      Compute1ControlPlaneSubnet: leaf1
      Compute2ControlPlaneSubnet: leaf2
      Compute3ControlPlaneSubnet: leaf3
      CephStorage0ControlPlaneSubnet: leaf0
      CephStorage1ControlPlaneSubnet: leaf1
      CephStorage2ControlPlaneSubnet: leaf2
      CephStorage3ControlPlaneSubnet: leaf3
  7. 新しいリーフネットワークをマッピングします。

    ~/templates/spine-leaf-separate.yamlparameter_defaults セクションで、新規リーフネットワーク用の外部ネットワークのマッピングを追加します。

    • フラットネットワークのマッピングの場合には、NeutronFlatNetworks パラメーターの新しいリーフ (leaf3) をリスト表示し、新しいリーフの NeutronBridgeMappings パラメーターを設定します。

      parameter_defaults:
        NeutronFlatNetworks: leaf0,leaf1,leaf2, leaf3
        Controller0Parameters:
          NeutronBridgeMappings: "leaf0:br-ex"
        Compute0Parameters:
          NeutronBridgeMappings: "leaf0:br-ex"
        Compute1Parameters:
          NeutronBridgeMappings: "leaf1:br-ex"
        Compute2Parameters:
          NeutronBridgeMappings: "leaf2:br-ex"
        Compute3Parameters:
          NeutronBridgeMappings: "leaf3:br-ex"
    • VLAN ネットワークのマッピングの場合には、さらに NeutronNetworkVLANRanges を設定して、新しいリーフネットワーク用 (leaf3) に VLAN をマッピングします。

        NeutronNetworkType: 'geneve,vlan'
        NeutronNetworkVLANRanges: 'leaf0:1:1000,leaf1:1:1000,leaf2:1:1000,leaf3:1:1000'
  8. 「スパイン/リーフ対応のオーバークラウドのデプロイ」に記載の手順に従って、スパイン/リーフ型のオーバークラウドを再デプロイします。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.