4.4. BGP용 데이터 플레인 네트워크 생성


데이터 플레인 네트워크를 생성하려면 NetConfig CR(사용자 정의 리소스)을 정의하고 데이터 플레인 네트워크의 모든 서브넷을 지정합니다. 데이터 플레인에 대해 하나 이상의 컨트롤 플레인 네트워크를 정의해야 합니다. VLAN 네트워크를 정의하여 구성 가능 네트워크(예: InternalAPI,Storage, External )에 대한 네트워크 격리를 생성할 수도 있습니다. 각 네트워크 정의에는 IP 주소 할당이 포함되어야 합니다.

작은 정보

다음 명령을 사용하여 NetConfig CRD 정의 및 사양 스키마를 확인합니다.

$ oc describe crd netconfig

$ oc explain netconfig.spec

프로세스

  1. 워크스테이션에 netconfig_bgp.yaml 이라는 파일을 생성합니다.
  2. netconfig_bgp.yaml 에 다음 구성을 추가하여 NetConfig CR을 생성합니다.

    apiVersion: network.openstack.org/v1beta1
    kind: NetConfig
    metadata:
      name: bgp-netconfig
      namespace: openstack
  3. netconfig_bgp.yaml 파일에서 각 데이터 플레인 네트워크의 토폴로지를 정의합니다. OpenShift(RHOSO) 네트워크에서 기본 Red Hat OpenStack Services를 사용하려면 각 네트워크에 대한 사양을 정의해야 합니다. 기본 RHOSO 네트워크에 대한 자세한 내용은 BGP의 OpenShift 네트워크의 기본 Red Hat OpenStack Services를 참조하십시오. 다음 예제에서는 데이터 플레인에 대한 격리된 네트워크를 생성합니다.

    apiVersion: network.openstack.org/v1beta1
    kind: NetConfig
    metadata:
      name: bgp-netconfig
      namespace: openstack
    spec:
      networks:
      - name: ctlplane 
    1
    
        dnsDomain: ctlplane.example.com
        serviceNetwork: ctlplane
        mtu: 1500
        subnets: 
    2
    
        - name: subnet1 
    3
    
          allocationRanges: 
    4
    
          - end: 192.168.122.120
            start: 192.168.122.100
          - end: 192.168.122.200
            start: 192.168.122.150
          cidr: 192.168.122.0/24
          gateway: 192.168.122.1
        - name: subnet2
          allocationRanges:
          - end: 192.168.123.120
            start: 192.168.123.100
          - end: 192.168.123.200
            start: 192.168.123.150
          cidr: 192.168.123.0/24
          gateway: 192.168.123.1
        - name: subnet3
          allocationRanges:
          - end: 192.168.124.120
            start: 192.168.124.100
          - end: 192.168.124.200
            start: 192.168.124.150
          cidr: 192.168.124.0/24
          gateway: 192.168.124.1
      - name: internalapi
        dnsDomain: internalapi.example.com
        serviceNetwork: internalapi
        mtu: 1500
        subnets:
        - name: subnet1
          allocationRanges:
          - end: 172.17.0.250
            start: 172.17.0.100
          cidr: 172.17.0.0/24
        vlan: 20 
    5
    
      - name: external
        dnsDomain: external.example.com
        mtu: 1500
        subnets:
        - name: subnet1
          allocationRanges:
          - end: 192.168.32.250
            start: 192.168.32.130
          cidr: 192.168.32.0/20
        vlan: 99
      - name: storage
        dnsDomain: storage.example.com
        mtu: 1500
        subnets:
        - name: subnet1
          allocationRanges:
          - end: 172.18.0.250
            start: 172.18.0.100
        cidr: 172.18.0.0/24
        vlan: 21
      - name: tenant
        dnsDomain: tenant.example.com
        mtu: 1500
        subnets:
        - name: subnet1
          allocationRanges:
          - end: 172.19.0.250
            start: 172.19.0.100
          cidr: 172.19.0.0/24
        vlan: 22
    1
    네트워크 이름(예: CtlPlane )
    2
    IPv4 서브넷 사양입니다.
    3
    서브넷의 이름입니다(예: subnet1 ).
    4
    NetConfig allocationRange. allocationRange 는 MetalLB IPAddressPool 범위 및 IP 주소 풀 범위와 겹치지 않아야 합니다.
    5
    네트워크 VLAN입니다. 기본 RHOSO 네트워크에 대한 자세한 내용은 BGP의 OpenShift 네트워크의 기본 Red Hat OpenStack Services를 참조하십시오.
  4. netconfig_bgp.yaml 파일에서 각 영역 내에서 연결을 설정하는 네트워크 인터페이스를 정의합니다. 다음 예제에서는 eth2 의 경우 bgpnet0 및 'eth3의 경우 bgpnet1 두 개의 네트워크 인터페이스를 정의합니다. 각 영역의 서브넷이 있습니다.

      - name: bgpnet0 
    1
    
        dnsDomain: bgpnet0.example.com
        serviceNetwork: bgpnet0
        mtu: 1500
        subnets:
        - name: subnet0
          allocationRanges:
          - end: 100.64.0.36
            start: 100.64.0.1
          cidr: 100.64.0.0/24
          gateway: 100.64.0.1
          routes:
          - destination: 0.0.0.0/0
            nexthop: 100.64.0.1
        - name: subnet1
          allocationRanges:
          - end: 100.64.1.36
            start: 100.64.1.1
          cidr: 100.64.1.0/24
          gateway: 100.64.1.1
          routes:
          - destination: 0.0.0.0/0
            nexthop: 100.64.1.1
        - name: subnet2
          allocationRanges:
          - end: 100.64.2.36
            start: 100.64.2.1
          cidr: 100.64.2.0/24
          gateway: 100.64.2.1
          routes:
          - destination: 0.0.0.0/0
            nexthop: 100.64.2.1
      - name: bgpnet1 
    2
    
        dnsDomain: bgpnet1.example.com
        serviceNetwork: bgpnet1
        mtu: 1500
        subnets:
        - name: subnet0
          allocationRanges:
          - end: 100.65.0.36
            start: 100.65.0.1
          cidr: 100.65.0.0/24
          gateway: 100.65.0.1
          routes:
          - destination: 0.0.0.0/0
            nexthop: 100.65.0.1
        - name: subnet1
          allocationRanges:
          - end: 100.65.1.36
            start: 100.65.1.1
          cidr: 100.65.1.0/24
          gateway: 100.65.1.1
          routes:
          - destination: 0.0.0.0/0
            nexthop: 100.65.1.1
        - name: subnet2
          allocationRanges:
          - end: 100.65.2.36
            start: 100.65.2.1
          cidr: 100.65.2.0/24
          gateway: 100.65.2.1
          routes:
          - destination: 0.0.0.0/0
            nexthop: 100.65.2.1
    1
    bgpnet0 은 데이터 플레인 노드에서 BGP 피어와 통신하는 데 사용하는 네트워크입니다.
    2
    bgpnet1 은 데이터 플레인 노드에서 BGP 피어와 통신하는 데 사용하는 네트워크입니다.
  5. netconfig_bgp.yaml 파일에서 각 노드에서 서로 통신하는 데 사용되는 루프백 인터페이스 bgpmainnet 의 IP 주소를 구성합니다.

      - name: bgpmainnet
        dnsDomain: bgpmainnet.example.com
        serviceNetwork: bgpmainnet
        mtu: 1500
        subnets:
        - name: subnet0
          allocationRanges:
          - end: 99.99.0.36
            start: 99.99.0.2
          cidr: 99.99.0.0/24
        - name: subnet1
          allocationRanges:
          - end: 99.99.1.36
            start: 99.99.1.2
          cidr: 99.99.1.0/24
        - name: subnet2
          allocationRanges:
          - end: 99.99.2.36
            start: 99.99.2.2
          cidr: 99.99.2.0/24
  6. ' netconfig_bgp.yaml' 정의 파일을 저장합니다.
  7. 데이터 플레인 네트워크를 생성합니다.

    $ oc create -f  netconfig_bgp.yaml -n openstack
  8. bgpconfig.yml 이라는 BGPConfiguration CR 파일을 생성하여 BGP를 통해 Pod의 IP 주소를 알립니다.

    apiVersion: network.openstack.org/v1beta1
    kind: BGPConfiguration
    metadata:
      name: bgpconfiguration
      namespace: openstack
    spec: {}
  9. BGPConfiguration CR을 생성하여 각 Pod에 필요한 FRR 구성을 생성합니다.

    $ oc create -f bgpconfig.yml

검증

  1. 데이터 플레인 네트워크가 생성되었는지 확인합니다.

    $ oc get netconfig/openstacknetconfig -n openstack

    오류가 표시되면 기본 network-attach-definition 및 노드 네트워크 구성 정책을 확인합니다.

    $ oc get network-attachment-definitions -n openstack
    $ oc get nncp
  2. FRR 구성이 생성되었는지 확인합니다.

    $ oc get frrconfigurations  -n metallb-system
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동