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>
$ openstack subnet set --dns-nameserver 0.0.0.0 <subnet_id>
2.2.2. Cluster Network Operator를 사용하여 기본 네트워크 연결 생성 링크 복사링크가 클립보드에 복사되었습니다!
CNO(Cluster Network Operator)는 추가 네트워크 정의를 관리합니다. 생성할 기본 네트워크를 지정하면 CNO가 NetworkAttachmentDefinition
CRD(사용자 정의 리소스 정의)를 자동으로 생성합니다.
CNO가 관리하는 NetworkAttachmentDefinition
CRD를 편집하지 마십시오. 이렇게 하면 기본 네트워크의 네트워크 트래픽이 중단될 수 있습니다.
사전 요구 사항
-
OpenShift CLI(
oc
)를 설치합니다. -
cluster-admin
권한이 있는 사용자로 로그인합니다.
프로세스
선택 사항: 기본 네트워크의 네임스페이스를 생성합니다.
oc create namespace <namespace_name>
$ oc create namespace <namespace_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow CNO 구성을 편집하려면 다음 명령을 입력합니다.
oc edit networks.operator.openshift.io cluster
$ oc edit networks.operator.openshift.io cluster
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예제 CR과 같이 생성 중인 기본 네트워크의 구성을 추가하여 생성 중인 CR을 수정합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 변경 사항을 저장하고 텍스트 편집기를 종료하여 변경 사항을 커밋합니다.
검증
CNO가 다음 명령을 실행하여
NetworkAttachmentDefinition
CRD를 생성했는지 확인합니다. CNO가 CRD를 생성하기 전에 지연이 존재할 수 있습니다. 예상되는 출력에는 CryostatD CRD의 이름과 생성 기간이 분 단위로 표시됩니다.oc get network-attachment-definitions -n <namespace>
$ oc get network-attachment-definitions -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같습니다.
<namespace>
- CNO 구성에 추가한 네트워크 연결의 네임스페이스를 지정합니다.
2.2.2.1. 기본 네트워크 연결 구성 링크 복사링크가 클립보드에 복사되었습니다!
기본 네트워크는 k8s.cni.cncf.io
API 그룹에서 NetworkAttachmentDefinition
API를 사용하여 구성됩니다.
API 구성은 다음 표에 설명되어 있습니다.
필드 | 유형 | 설명 |
---|---|---|
|
| 기본 네트워크의 이름입니다. |
|
| 오브젝트와 연결된 네임스페이스입니다. |
|
| JSON 형식의 CNI 플러그인 구성입니다. |
2.2.3. YAML 매니페스트를 적용하여 기본 네트워크 연결 생성 링크 복사링크가 클립보드에 복사되었습니다!
사전 요구 사항
-
OpenShift CLI(
oc
)가 설치되어 있습니다. -
cluster-admin
권한이 있는 사용자로 로그인했습니다. - CryostatD를 배포해야 하는 네임스페이스에서 작업하고 있습니다.
프로세스
다음 예와 같이 기본 네트워크 구성을 사용하여 YAML 파일을 생성합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 선택 사항: CryostatD가 적용되는 네임스페이스를 지정할 수 있습니다. CryostatD를 배포해야 하는 네임스페이스에서 작업하는 경우 이 사양은 필요하지 않습니다.
기본 네트워크를 생성하려면 다음 명령을 입력합니다.
oc apply -f <file>.yaml
$ oc apply -f <file>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같습니다.
<file>
- YAML 매니페스트가 포함된 파일의 이름을 지정합니다.