3.8. 컨테이너 네트워크 네임스페이스에서 마스터 인터페이스 구성
다음 섹션에서는 마스터 인터페이스를 기반으로 MAC-VLAN, IP-VLAN 및 VLAN 하위 인터페이스를 생성하고 관리하는 방법에 대한 지침과 정보를 제공합니다.
3.8.1. 컨테이너 네트워크 네임스페이스에서 마스터 인터페이스 구성에 관하여 링크 복사링크가 클립보드에 복사되었습니다!
컨테이너 네임스페이스에 있는 마스터
인터페이스를 기반으로 MAC-VLAN, IP-VLAN 또는 VLAN 하위 인터페이스를 만들 수 있습니다. 별도의 네트워크 연결 정의 CRD에서 포드 네트워크 구성의 일부로 마스터
인터페이스를 생성할 수도 있습니다.
컨테이너 네임스페이스 마스터
인터페이스를 사용하려면 NetworkAttachmentDefinition
CRD의 하위 인터페이스 구성에 있는 linkInContainer
매개변수에 대해 true를
지정해야 합니다.
3.8.1.1. SR-IOV VF에 여러 VLAN 생성 링크 복사링크가 클립보드에 복사되었습니다!
이 기능을 활용하는 예시 사용 사례는 SR-IOV VF를 기반으로 여러 VLAN을 생성하는 것입니다. 이를 위해 먼저 SR-IOV 네트워크를 만든 다음 VLAN 인터페이스에 대한 네트워크 연결을 정의합니다.
다음 예에서는 이 다이어그램에 표시된 설정을 구성하는 방법을 보여줍니다.
그림 3.1. VLAN 생성
사전 요구 사항
-
OpenShift CLI(
oc
)를 설치합니다. -
cluster-admin
역할의 사용자로 클러스터에 액세스할 수 있어야 합니다. - SR-IOV Network Operator가 설치되어 있습니다.
프로세스
다음 명령을 사용하여 Pod를 배포할 전용 컨테이너 네임스페이스를 만듭니다.
oc new-project test-namespace
$ oc new-project test-namespace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow SR-IOV 노드 정책을 만듭니다.
SriovNetworkNodePolicy
객체를 만든 다음 YAML을sriov-node-network-policy.yaml
파일에 저장합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고deviceType: netdevice
설정을 사용한 SR-IOV 네트워크 노드 정책 구성 예는 Mellanox 네트워크 인터페이스 카드(NIC)에 맞게 특별히 제작되었습니다.다음 명령을 실행하여 YAML을 적용합니다.
oc apply -f sriov-node-network-policy.yaml
$ oc apply -f sriov-node-network-policy.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고노드를 재부팅해야 하므로 이를 적용하는 데 시간이 걸릴 수 있습니다.
SR-IOV 네트워크를 생성합니다.
다음 예제 CR과 같이 추가 보조 SR-IOV 네트워크 연결에 대한
SriovNetwork
사용자 지정 리소스(CR)를 만듭니다. YAML을sriov-network-attachment.yaml
파일로 저장합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 YAML을 적용합니다.
oc apply -f sriov-network-attachment.yaml
$ oc apply -f sriov-network-attachment.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
VLAN 보조 네트워크를 생성합니다.
다음 YAML 예제를 사용하여
vlan100-additional-network-configuration.yaml
이라는 파일을 만듭니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 YAML 파일을 적용합니다.
oc apply -f vlan100-additional-network-configuration.yaml
$ oc apply -f vlan100-additional-network-configuration.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
이전에 지정한 네트워크를 사용하여 포드 정의를 만듭니다.
다음 YAML 예제를 사용하여
pod-a.yaml
파일이라는 이름의 파일을 만듭니다.참고아래 매니페스트에는 2개의 리소스가 포함되어 있습니다.
- 보안 레이블이 있는 네임스페이스
- 적절한 네트워크 주석이 포함된 Pod 정의
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- VLAN 인터페이스의
마스터
로 사용될 이름입니다.
다음 명령을 실행하여 YAML 파일을 적용합니다.
oc apply -f pod-a.yaml
$ oc apply -f pod-a.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 명령을 실행하여
test-namespace
내의nginx-pod
에 대한 자세한 정보를 얻으세요.oc describe pods nginx-pod -n test-namespace
$ oc describe pods nginx-pod -n test-namespace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.8.1.2. 컨테이너 네임스페이스에서 브리지 마스터 인터페이스를 기반으로 하위 인터페이스 생성 링크 복사링크가 클립보드에 복사되었습니다!
컨테이너 네임스페이스에 있는 브리지 마스터
인터페이스를 기반으로 하위 인터페이스를 만들 수 있습니다. 하위 인터페이스를 만드는 것은 다른 유형의 인터페이스에도 적용될 수 있습니다.
사전 요구 사항
-
OpenShift CLI(
oc
)가 설치되어 있습니다. - cluster-admin 역할의 사용자로 OpenShift Container Platform 클러스터에 로그인합니다.
프로세스
다음 명령을 입력하여 Pod를 배포할 전용 컨테이너 네임스페이스를 만듭니다.
oc new-project test-namespace
$ oc new-project test-namespace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 YAML 예제를 사용하여
bridge-nad.yaml
이라는 브리지NetworkAttachmentDefinition
사용자 정의 리소스 정의(CRD) 파일을 만듭니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
NetworkAttachmentDefinition
CRD를 OpenShift Container Platform 클러스터에 적용합니다.oc apply -f bridge-nad.yaml
$ oc apply -f bridge-nad.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 입력하여
NetworkAttachmentDefinition
CRD가 성공적으로 생성되었는지 확인하세요. 예상되는 출력에는 NAD CRD의 이름과 생성 시간(분)이 표시됩니다.oc get network-attachment-definitions
$ oc get network-attachment-definitions
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 YAML 예제를 사용하여 IPVLAN 보조 네트워크 구성을 위한
ipvlan-additional-network-configuration.yaml
이라는 파일을 만듭니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 YAML 파일을 적용합니다.
oc apply -f ipvlan-additional-network-configuration.yaml
$ oc apply -f ipvlan-additional-network-configuration.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
NetworkAttachmentDefinition
CRD가 성공적으로 생성되었는지 확인하세요. 예상되는 출력에는 NAD CRD의 이름과 생성 시간(분)이 표시됩니다.oc get network-attachment-definitions
$ oc get network-attachment-definitions
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 YAML 예제를 사용하여 포드 정의를 위한
pod-a.yaml
이라는 파일을 만듭니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- IPVLAN 인터페이스의
마스터
로 사용될 이름을 지정합니다.
다음 명령을 실행하여 YAML 파일을 적용합니다.
oc apply -f pod-a.yaml
$ oc apply -f pod-a.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 사용하여 Pod가 실행 중인지 확인하세요.
oc get pod -n test-namespace
$ oc get pod -n test-namespace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME READY STATUS RESTARTS AGE pod-a 1/1 Running 0 2m36s
NAME READY STATUS RESTARTS AGE pod-a 1/1 Running 0 2m36s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
test-namespace
내의pod-a
리소스에 대한 네트워크 인터페이스 정보를 표시합니다.oc exec -n test-namespace pod-a -- ip a
$ oc exec -n test-namespace pod-a -- ip a
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 출력은 네트워크 인터페이스
net2가
물리적 인터페이스net1
과 연결되어 있음을 보여줍니다.