4.11. 스파인-리프 배포에 새 리프 추가


네트워크 용량을 늘리거나 새 물리적 사이트를 추가할 때 RHOSP(Red Hat OpenStack Platform) 스파인-리프 네트워크에 새 리프를 추가해야 할 수 있습니다.

사전 요구 사항

  • RHOSP 배포에서는 스파인-리프트 네트워크 토폴로지를 사용합니다.

프로세스

  1. 언더클라우드 호스트에 stack 사용자로 로그인합니다.
  2. stackrc 언더클라우드 인증 정보 파일을 소싱합니다.

    $ source ~/stackrc
  3. 네트워크 정의 템플릿을 엽니다(예: /home/stack/templates/spine-leaf-networks-data.yaml ). 적절한 기본 네트워크에서 리프 서브넷을 추가할 새 리프에 대한 구성 가능 네트워크 항목으로 추가합니다.

    예제

    이 예에서는 새 리프(leaf3)의 subnet 항목이 추가되었습니다.

    - 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.yamlCephStorage1.yaml 은 각각 새 리프, Compute3.yamlCephStorage3.yaml 에 대해 복사됩니다.

      $ cp ~/roles/Compute1.yaml ~/roles/Compute3.yaml
      $ cp ~/roles/CephStorage1.yaml ~/roles/CephStorage3.yaml
    2. 새 리프 파일에서 nameHostnameFormatDefault 매개변수를 편집하여 해당 리프 매개 변수와 일치하도록 합니다.

      예제

      예를 들어 Leaf 1 Compute 파일의 매개변수에는 다음과 같은 값이 있습니다.

      - name: ComputeLeaf1
        HostnameFormatDefault: '%stackname%-compute-leaf1-%index%'

      예제

      Leaf 1 Ceph Storage 매개변수에는 다음과 같은 값이 있습니다.

      - name: CephStorageLeaf1
        HostnameFormatDefault: '%stackname%-cephstorage-leaf1-%index%'
    3. 해당 Leaf 네트워크 매개변수와 일치하도록 새 리프 파일에서 network 매개변수를 편집합니다.

      예제

      예를 들어 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 Controller1 Controller2 Compute Compute1 Compute2 Compute3 CephStorage CephStorage1 CephStorage2 CephStorage3

      이렇게 하면 각 리프 네트워크에 대한 모든 사용자 지정 역할을 포함하는 전체 roles_data_spine_leaf.yaml 파일이 생성됩니다.

  5. 추가할 리프에 대한 사용자 정의 NIC 구성을 생성합니다.

    1. 추가하려는 새 리프에 대한 리프 Compute 및 리프 Ceph Storage NIC 구성 파일을 복사합니다.

      예제

      이 예에서 computeleaf1.yamlceph-storageleaf1.yaml 은 각각 새 leaf, computeleaf3.yamlceph-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
  6. 각 역할의 역할 및 사용자 지정 NIC 템플릿 매핑이 포함된 사용자 정의 환경 파일을 엽니다(예: spine-leaf-nic-roles-map.yaml). 추가할 새 리프의 각 역할에 대한 항목을 삽입합니다.

    parameter_defaults:
      %%ROLE%%NetworkConfigTemplate: <path_to_ansible_jinja2_nic_config_file>

    예제

    이 예에서는 ComputeLeaf3NetworkConfigTemplateCephStorage3NetworkConfigTemplate 항목이 추가되었습니다.

    parameter_defaults:
      Controller0NetworkConfigTemplate: '/home/stack/templates/spine-leaf-nics/single-nic-vlans.j2'
      Controller1NetworkConfigTemplate: '/home/stack/templates/spine-leaf-nics/single-nic-vlans.j2'
      Controller2NetworkConfigTemplate: '/home/stack/templates/spine-leaf-nics/single-nic-vlans.j2'
      ComputeLeaf0NetworkConfigTemplate: '/home/stack/templates/spine-leaf-nics/single-nic-vlans.j2'
      ComputeLeaf1NetworkConfigTemplate: '/home/stack/templates/spine-leaf-nics/single-nic-vlans.j2'
      ComputeLeaf2NetworkConfigTemplate: '/home/stack/templates/spine-leaf-nics/single-nic-vlans.j2'
      ComputeLeaf3NetworkConfigTemplate: '/home/stack/templates/spine-leaf-nics/single-nic-vlans.j2'
      CephStorage0NetworkConfigTemplate: '/home/stack/templates/spine-leaf-nics/single-nic-vlans.j2'
      CephStorage1NetworkConfigTemplate: '/home/stack/templates/spine-leaf-nics/single-nic-vlans.j2'
      CephStorage2NetworkConfigTemplate: '/home/stack/templates/spine-leaf-nics/single-nic-vlans.j2'
      CephStorage3NetworkConfigTemplate: '/home/stack/templates/spine-leaf-nics/single-nic-vlans.j2'
  7. 별도의 네트워크 매핑이 포함된 사용자 정의 네트워크 환경 파일을 열고 오버클라우드의 컨트롤 플레인 네트워크에 대한 액세스를 설정합니다(예: spine-leaf-ctlplane.yaml ).

    parameter_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 네트워크 매핑의 경우 새 리프(leaf3) 네트워크의 VLAN을 매핑하도록 NeutronNetworkVLANRanges 를 추가로 설정합니다.

        NeutronNetworkType: 'geneve,vlan'
        NeutronNetworkVLANRanges: 'leaf0:1:1000,leaf1:1:1000,leaf2:1:1000,leaf3:1:1000'

      예제

      이 예에서는 플랫 네트워크 매핑이 사용되며 새 리프(leaf3) 항목이 추가됩니다.

      parameter_defaults:
        NeutronFlatNetworks: leaf0,leaf1,leaf2,leaf3
        Controller0Parameters:
          NeutronBridgeMappings: "leaf0:br-ex"
        ControllerControlPlaneSubnet: leaf0
        Controller1Parameters:
          NeutronBridgeMappings: "leaf0:br-ex"
        Controller1ControlPlaneSubnet: leaf0
        Controller2Parameters:
          NeutronBridgeMappings: "leaf0:br-ex"
        Controller2ControlPlaneSubnet: leaf0
        Compute0Parameters:
          NeutronBridgeMappings: "leaf0:br-ex"
        Compute0ControlPlaneSubnet: leaf0
        Compute1Parameters:
          NeutronBridgeMappings: "leaf1:br-ex"
        Compute1ControlPlaneSubnet: leaf1
        Compute2Parameters:
          NeutronBridgeMappings: "leaf2:br-ex"
        Compute2ControlPlaneSubnet: leaf2
        Compute3Parameters:
          NeutronBridgeMappings: "leaf3:br-ex"
        Compute3ControlPlaneSubnet: leaf3
  8. 수정된 네트워크를 프로비저닝합니다.

    자세한 내용은 오버클라우드 네트워크 및 오버클라우드 VIP 프로비저닝을 참조하십시오.

  9. 이전에 생성한 베어 메탈 노드 정의 파일(예: spine-leaf-baremetal-nodes.yaml )에서 network_config_update 변수가 true 로 설정되어 있는지 확인합니다.

    예제

    - name: Controller
      count: 3
      defaults:
        networks:
        - network: ctlplane
          vif: true
        - network: external
          subnet: external_subnet
        - network: internal_api
          subnet: internal_api_subnet01
        - network: storage
          subnet: storage_subnet01
        - network: storage_mgmt
          subnet: storage_mgmt_subnet01
        - network: tenant
          subnet: tenant_subnet01
        network_config:
          template: /home/stack/templates/spine-leaf-nics/single-nic-vlans.j2
          default_route_network:
          - external
        network_config_update: true

  10. 수정된 노드를 프로비저닝합니다.

    자세한 내용은 베어 메탈 노드 프로비저닝 을 참조하십시오.

  11. 스파인-리프가 활성화된 오버클라우드 배포 단계에 따라 스파인-리프가 활성화된 오버클라우드를 재배포합니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.