2.2. NetworkAttachmentDefinition을 사용하여 기본 네트워크 생성


다음 섹션에서는 NetworkAttachmentDefinition (NAD) 리소스를 사용하여 기본 네트워크를 생성하고 관리하는 방법을 설명합니다.

2.2.1. 기본 네트워크를 관리하는 방법

다음 두 가지 접근 방법 중 하나를 사용하여 controlPlaneD에서 생성한 기본 네트워크의 라이프 사이클을 관리할 수 있습니다.

  • CNO(Cluster Network Operator) 구성을 수정합니다. 이 방법을 사용하면 CNO가 NetworkAttachmentDefinition 오브젝트를 자동으로 생성하고 관리합니다. 오브젝트 라이프사이클을 관리하는 것 외에도 CNO는 DHCP 할당된 IP 주소를 사용하는 기본 네트워크에 DHCP를 사용할 수 있도록 합니다.
  • YAML 매니페스트를 적용하여 다음을 수행합니다. 이 방법을 사용하면 NetworkAttachmentDefinition 오브젝트를 생성하여 기본 네트워크를 직접 관리할 수 있습니다. 이 방법을 사용하면 Pod에 기본 네트워크 인터페이스를 연결하기 위해 여러 CNI 플러그인을 호출할 수 있습니다.

각 접근 방식은 함께 사용할 수 없으며 한 번에 기본 네트워크를 관리하기 위한 하나의 접근 방식만 사용할 수 있습니다. 두 방법 모두 기본 네트워크는 구성하는 CNI(Container Network Interface) 플러그인에 의해 관리됩니다.

참고

OVN SDN을 사용하여 RHOSP(Red Hat OpenStack Platform)에 여러 네트워크 인터페이스가 있는 OpenShift Container Platform 노드를 배포할 때 보조 인터페이스의 DNS 구성이 기본 인터페이스의 DNS 구성보다 우선할 수 있습니다. 이 경우 다음 명령을 실행하여 보조 인터페이스에 연결된 서브넷 ID의 DNS 이름 서버를 제거합니다.

$ openstack subnet set --dns-nameserver 0.0.0.0 <subnet_id>
Copy to Clipboard Toggle word wrap

2.2.2. Cluster Network Operator를 사용하여 기본 네트워크 연결 생성

CNO(Cluster Network Operator)는 추가 네트워크 정의를 관리합니다. 생성할 기본 네트워크를 지정하면 CNO가 NetworkAttachmentDefinition CRD(사용자 정의 리소스 정의)를 자동으로 생성합니다.

중요

CNO가 관리하는 NetworkAttachmentDefinition CRD를 편집하지 마십시오. 이렇게 하면 기본 네트워크의 네트워크 트래픽이 중단될 수 있습니다.

사전 요구 사항

  • OpenShift CLI(oc)를 설치합니다.
  • cluster-admin 권한이 있는 사용자로 로그인합니다.

프로세스

  1. 선택 사항: 기본 네트워크의 네임스페이스를 생성합니다.

    $ oc create namespace <namespace_name>
    Copy to Clipboard Toggle word wrap
  2. CNO 구성을 편집하려면 다음 명령을 입력합니다.

    $ oc edit networks.operator.openshift.io cluster
    Copy to Clipboard Toggle word wrap
  3. 다음 예제 CR과 같이 생성 중인 기본 네트워크의 구성을 추가하여 생성 중인 CR을 수정합니다.

    apiVersion: operator.openshift.io/v1
    kind: Network
    metadata:
      name: cluster
    spec:
      # ...
      additionalNetworks:
      - name: tertiary-net
        namespace: namespace2
        type: Raw
        rawCNIConfig: |-
          {
            "cniVersion": "0.3.1",
            "name": "tertiary-net",
            "type": "ipvlan",
            "master": "eth1",
            "mode": "l2",
            "ipam": {
              "type": "static",
              "addresses": [
                {
                  "address": "192.168.1.23/24"
                }
              ]
            }
          }
    Copy to Clipboard Toggle word wrap
  4. 변경 사항을 저장하고 텍스트 편집기를 종료하여 변경 사항을 커밋합니다.

검증

  • CNO가 다음 명령을 실행하여 NetworkAttachmentDefinition CRD를 생성했는지 확인합니다. CNO가 CRD를 생성하기 전에 지연이 존재할 수 있습니다. 예상되는 출력에는 CryostatD CRD의 이름과 생성 기간이 분 단위로 표시됩니다.

    $ oc get network-attachment-definitions -n <namespace>
    Copy to Clipboard Toggle word wrap

    다음과 같습니다.

    <namespace>
    CNO 구성에 추가한 네트워크 연결의 네임스페이스를 지정합니다.

2.2.2.1. 기본 네트워크 연결 구성

기본 네트워크는 k8s.cni.cncf.io API 그룹에서 NetworkAttachmentDefinition API를 사용하여 구성됩니다.

API 구성은 다음 표에 설명되어 있습니다.

Expand
표 2.1. NetworkAttachmentDefinition API 필드
필드유형설명

metadata.name

string

기본 네트워크의 이름입니다.

metadata.namespace

string

오브젝트와 연결된 네임스페이스입니다.

spec.config

string

JSON 형식의 CNI 플러그인 구성입니다.

2.2.3. YAML 매니페스트를 적용하여 기본 네트워크 연결 생성

사전 요구 사항

  • OpenShift CLI(oc)가 설치되어 있습니다.
  • cluster-admin 권한이 있는 사용자로 로그인했습니다.
  • CryostatD를 배포해야 하는 네임스페이스에서 작업하고 있습니다.

프로세스

  1. 다음 예와 같이 기본 네트워크 구성을 사용하여 YAML 파일을 생성합니다.

    apiVersion: k8s.cni.cncf.io/v1
    kind: NetworkAttachmentDefinition
    metadata:
      name: next-net
    spec:
      config: |-
        {
          "cniVersion": "0.3.1",
          "name": "work-network",
          "namespace": "namespace2", 
    1
    
          "type": "host-device",
          "device": "eth1",
          "ipam": {
            "type": "dhcp"
          }
        }
    Copy to Clipboard Toggle word wrap
    1
    선택 사항: CryostatD가 적용되는 네임스페이스를 지정할 수 있습니다. CryostatD를 배포해야 하는 네임스페이스에서 작업하는 경우 이 사양은 필요하지 않습니다.
  2. 기본 네트워크를 생성하려면 다음 명령을 입력합니다.

    $ oc apply -f <file>.yaml
    Copy to Clipboard Toggle word wrap

    다음과 같습니다.

    <file>
    YAML 매니페스트가 포함된 파일의 이름을 지정합니다.
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2025 Red Hat