3.7. 보조 네트워크에서 IP 주소 할당 구성
다음 섹션에서는 보조 네트워크에 대한 IP 주소 할당을 구성하는 방법에 대한 지침 및 정보를 제공합니다.
3.7.1. 네트워크 연결을 위한 IP 주소 할당 구성 링크 복사링크가 클립보드에 복사되었습니다!
보조 네트워크의 경우 DHCP(Dynamic Host Configuration Protocol) 및 고정 할당을 포함하여 다양한 할당 방법을 지원하는 IPAM(IP Address Management) CNI 플러그인을 사용하여 IP 주소를 할당할 수 있습니다.
IP 주소의 동적 할당을 담당하는 DHCP IPAM CNI 플러그인은 다음 두 가지 구성 요소로 작동합니다.
- CNI 플러그인: Kubernetes 네트워킹 스택과 통합하여 IP 주소를 요청 및 릴리스할 수 있습니다.
- DHCP IPAM CNI Daemon: IP 주소 할당 요청을 처리하기 위해 환경의 기존 DHCP 서버와 조정하는 DHCP 이벤트의 리스너입니다. 이 데몬은 DHCP 서버 자체가 아닙니다.
type: dhcp
를 IPAM 구성에 필요한 네트워크의 경우 다음을 확인합니다.
- DHCP 서버가 사용 가능하며 환경에서 실행됩니다. DHCP 서버는 클러스터 외부에 있으며 고객의 기존 네트워크 인프라의 일부가 될 것으로 예상됩니다.
- DHCP 서버는 노드에 IP 주소를 제공하도록 적절하게 구성됩니다.
환경에서 DHCP 서버를 사용할 수 없는 경우 대신 Whereabouts IPAM CNI 플러그인을 사용하는 것이 좋습니다. Whereabouts CNI는 외부 DHCP 서버 없이도 유사한 IP 주소 관리 기능을 제공합니다.
외부 DHCP 서버가 없거나 고정 IP 주소 관리를 선호하는 경우 Whereabouts CNI 플러그인을 사용합니다. Whereabouts 플러그인에는 오래된 IP 주소 할당을 관리하기 위한 조정기 데몬이 포함되어 있습니다.
DHCP 리스는 컨테이너 수명 동안 주기적으로 갱신해야 하므로 별도의 데몬인 DHCP IPAM CNI Daemon이 필요합니다. DHCP IPAM CNI 데몬을 배포하려면 CNO(Cluster Network Operator) 구성을 수정하여 이 데몬의 배포를 보조 네트워크 설정의 일부로 트리거합니다.
3.7.1.1. 고정 IP 주소 할당 구성 링크 복사링크가 클립보드에 복사되었습니다!
다음 표에서는 고정 IP 주소 할당 구성에 대해 설명합니다.
필드 | 유형 | 설명 |
---|---|---|
|
|
IPAM 주소 유형입니다. |
|
| 가상 인터페이스에 할당할 IP 주소를 지정하는 오브젝트의 배열입니다. IPv4 및 IPv6 IP 주소가 모두 지원됩니다. |
|
| Pod 내부에서 구성할 경로를 지정하는 오브젝트의 배열입니다. |
|
| 선택 사항: DNS 구성을 지정하는 오브젝트 배열입니다. |
address
배열에는 다음 필드가 있는 오브젝트가 필요합니다.
필드 | 유형 | 설명 |
---|---|---|
|
|
지정하는 IP 주소 및 네트워크 접두사입니다. 예를 들어 |
|
| 송신 네트워크 트래픽을 라우팅할 기본 게이트웨이입니다. |
필드 | 유형 | 설명 |
---|---|---|
|
|
CIDR 형식의 IP 주소 범위(예: 기본 경로의 경우 |
|
| 네트워크 트래픽이 라우팅되는 게이트웨이입니다. |
필드 | 유형 | 설명 |
---|---|---|
|
| DNS 쿼리를 보낼 하나 이상의 IP 주소로 이루어진 배열입니다. |
|
|
호스트 이름에 추가할 기본 도메인입니다. 예를 들어 도메인이 |
|
|
DNS 조회 쿼리 중에 규정되지 않은 호스트 이름(예: |
고정 IP 주소 할당 구성 예
3.7.1.2. DHCP(Dynamic IP 주소) 할당 구성 링크 복사링크가 클립보드에 복사되었습니다!
pod는 생성될 때 원래 DHCP 리스를 얻습니다. 리스는 클러스터에서 실행되는 최소 DHCP 서버 배포를 통해 주기적으로 갱신되어야 합니다.
이더넷 네트워크 연결의 경우 SR-IOV Network Operator는 DHCP 서버 배포를 생성하지 않습니다. Cluster Network Operator는 최소 DHCP 서버 배포를 생성합니다.
DHCP 서버 배포를 트리거하려면 다음 예와 같이 Cluster Network Operator 구성을 편집하여 shim 네트워크 연결을 만들어야 합니다.
shim 네트워크 연결 정의 예
다음 표에서는 DHCP를 사용한 동적 IP 주소 할당을 위한 구성 매개 변수에 대해 설명합니다.
필드 | 유형 | 설명 |
---|---|---|
|
|
IPAM 주소 유형입니다. |
다음 JSON 예제에서는 DHCP를 사용한 동적 IP 주소 할당을 위한 구성 p를 설명합니다.
DHCP(Dynamic IP 주소) 할당 구성 예
{ "ipam": { "type": "dhcp" } }
{
"ipam": {
"type": "dhcp"
}
}
3.7.1.3. Whereabouts를 사용한 동적 IP 주소 할당 구성 링크 복사링크가 클립보드에 복사되었습니다!
Whereabouts CNI 플러그인을 사용하면 DHCP 서버를 사용하지 않고도 IP 주소를 보조 네트워크에 동적으로 할당할 수 있습니다.
Whereabouts CNI 플러그인은 별도의 NetworkAttachmentDefinition
CRD 내에서 동일한 CIDR 범위의 중복 IP 주소 범위 및 구성을 여러 번 지원합니다. 이를 통해 멀티 테넌트 환경에서 유연성 및 관리 기능이 향상됩니다.
3.7.1.3.1. 동적 IP 주소 구성 오브젝트 링크 복사링크가 클립보드에 복사되었습니다!
다음 표에서는 Whereabouts를 사용하여 동적 IP 주소 할당을 위한 구성 오브젝트를 설명합니다.
필드 | 유형 | 설명 |
---|---|---|
|
|
IPAM 주소 유형입니다. 여기서about |
|
| CIDR 표기법의 IP 주소 및 범위입니다. IP 주소는 이 주소 범위 내에서 할당됩니다. |
|
| 선택 사항: CIDR 표기법의 0개 이상의 IP 주소 및 범위 목록입니다. 제외된 주소 범위 내의 IP 주소는 할당되지 않습니다. |
|
| 선택 사항: Pod의 각 그룹 또는 도메인이 동일한 IP 주소 범위를 공유하는 경우에도 자체 IP 주소 집합을 갖도록 합니다. 이 필드를 설정하는 것은 특히 다중 테넌트 환경에서 네트워크를 분리하고 정리하는 데 중요합니다. |
3.7.1.3.2. Whereabouts를 사용하는 동적 IP 주소 할당 구성 링크 복사링크가 클립보드에 복사되었습니다!
다음 예제에서는 Whereabouts를 사용하는 동적 주소 할당 구성을 보여줍니다.
Whereabouts dynamic IP address assignment
3.7.1.3.3. IP 주소 범위가 겹치는 Whereabouts를 사용하는 동적 IP 주소 할당 링크 복사링크가 클립보드에 복사되었습니다!
다음 예제에서는 다중 테넌트 네트워크에 겹치는 IP 주소 범위를 사용하는 동적 IP 주소 할당을 보여줍니다.
NetworkAttachmentDefinition 1
- 1
- 선택 사항: 설정된 경우
NetworkAttachmentDefinition 2
의network_name
과 일치해야 합니다.
NetworkAttachmentDefinition 2
- 1
- 선택 사항: 설정된 경우
NetworkAttachmentDefinition 1
의network_name
과 일치해야 합니다.
3.7.1.4. Whereabouts-reconciler 데몬 세트 생성 링크 복사링크가 클립보드에 복사되었습니다!
Whereabouts 조정기는 Whereabouts IP Address Management(IPAM) 솔루션을 사용하여 클러스터 내에서 Pod의 동적 IP 주소 할당을 관리합니다. 이렇게 하면 각 pod가 지정된 IP 주소 범위에서 고유한 IP 주소를 가져옵니다. Pod가 삭제되거나 축소될 때 IP 주소 릴리스도 처리합니다.
동적 IP 주소 할당에 NetworkAttachmentDefinition
CRD(사용자 정의 리소스 정의)를 사용할 수도 있습니다.
Cluster Network Operator를 통해 보조 네트워크를 구성할 때 whereabouts-reconciler
데몬 세트가 자동으로 생성됩니다. YAML 매니페스트에서 보조 네트워크를 구성할 때 자동으로 생성되지 않습니다.
whereabouts-reconciler
데몬 세트의 배포를 트리거하려면 Cluster Network Operator CR(사용자 정의 리소스) 파일을 편집하여 whereabouts-shim
네트워크 연결을 수동으로 생성해야 합니다.
다음 절차에 따라 whereabouts-reconciler
데몬 세트를 배포합니다.
프로세스
다음 명령을 실행하여
Network.operator.openshift.io
CR(사용자 정의 리소스)을 편집합니다.oc edit network.operator.openshift.io cluster
$ oc edit network.operator.openshift.io cluster
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 예제 YAML 추출에 표시된
additionalNetworks
섹션을 CR(사용자 정의 리소스)의사양
정의 내에 포함합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 파일을 저장하고 텍스트 편집기를 종료합니다.
다음 명령을 실행하여
whereabouts-reconciler
데몬 세트가 성공적으로 배포되었는지 확인합니다.oc get all -n openshift-multus | grep whereabouts-reconciler
$ oc get all -n openshift-multus | grep whereabouts-reconciler
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
pod/whereabouts-reconciler-jnp6g 1/1 Running 0 6s pod/whereabouts-reconciler-k76gg 1/1 Running 0 6s daemonset.apps/whereabouts-reconciler 6 6 6 6 6 kubernetes.io/os=linux 6s
pod/whereabouts-reconciler-jnp6g 1/1 Running 0 6s pod/whereabouts-reconciler-k76gg 1/1 Running 0 6s daemonset.apps/whereabouts-reconciler 6 6 6 6 6 kubernetes.io/os=linux 6s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.7.1.5. Whereabouts IP 조정기 일정 구성 링크 복사링크가 클립보드에 복사되었습니다!
Whereabouts IPAM CNI 플러그인은 IP 조정기를 매일 실행합니다. 이 프로세스에서는 IP가 소진될 수 있는 모든 진행 중인 IP 할당을 정리하므로 새 Pod가 IP를 할당하지 못하도록 합니다.
IP 조정기가 실행되는 빈도를 변경하려면 다음 절차를 사용하십시오.
사전 요구 사항
-
OpenShift CLI(
oc
)를 설치합니다. -
cluster-admin
역할의 사용자로 클러스터에 액세스할 수 있어야 합니다. -
whereabouts-reconciler
데몬 세트를 배포하고whereabouts-reconciler
Pod가 실행 중입니다.
프로세스
다음 명령을 실행하여
openshift-multus
네임스페이스에 IP 조정기에 대한 특정 cron 표현식을 사용하여 이름이whereabouts-config
라는ConfigMap
오브젝트를 생성합니다.oc create configmap whereabouts-config -n openshift-multus --from-literal=reconciler_cron_expression="*/15 * * * *"
$ oc create configmap whereabouts-config -n openshift-multus --from-literal=reconciler_cron_expression="*/15 * * * *"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 cron 표현식은 IP 조정기가 15분마다 실행됨을 나타냅니다. 특정 요구 사항에 따라 표현식을 조정합니다.
참고whereabouts-reconciler
데몬 세트는 5개의 별표를 포함하는 cron 표현식 패턴만 사용할 수 있습니다. 초를 나타내는 데 사용되는 여섯 번째 단계는 현재 지원되지 않습니다.다음 명령을 실행하여
openshift-multus
네임스페이스 내에서whereabouts-reconciler
데몬 세트 및 Pod와 관련된 리소스에 대한 정보를 검색합니다.oc get all -n openshift-multus | grep whereabouts-reconciler
$ oc get all -n openshift-multus | grep whereabouts-reconciler
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
pod/whereabouts-reconciler-2p7hw 1/1 Running 0 4m14s pod/whereabouts-reconciler-76jk7 1/1 Running 0 4m14s daemonset.apps/whereabouts-reconciler 6 6 6 6 6 kubernetes.io/os=linux 4m16s
pod/whereabouts-reconciler-2p7hw 1/1 Running 0 4m14s pod/whereabouts-reconciler-76jk7 1/1 Running 0 4m14s daemonset.apps/whereabouts-reconciler 6 6 6 6 6 kubernetes.io/os=linux 4m16s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
whereabouts-reconciler
Pod가 구성된 간격으로 IP 조정기를 실행하는지 확인합니다.oc -n openshift-multus logs whereabouts-reconciler-2p7hw
$ oc -n openshift-multus logs whereabouts-reconciler-2p7hw
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.7.1.6. 동적으로 듀얼 스택 IP 주소 할당을 위한 구성 생성 링크 복사링크가 클립보드에 복사되었습니다!
듀얼 스택 IP 주소 할당은 다음과 같은 ipRanges
매개변수를 사용하여 구성할 수 있습니다.
- IPv4 주소
- IPv6 주소
- 여러 IP 주소 할당
프로세스
-
type
을 whereabouts로설정합니다
. 다음 예와 같이
ipRanges
를 사용하여 IP 주소를 할당합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Pod에 네트워크를 연결합니다. 자세한 내용은 " 보조 네트워크에 Pod 추가"를 참조하십시오.
- 모든 IP 주소가 할당되었는지 확인합니다.
다음 명령을 실행하여 IP 주소가 메타데이터로 할당되었는지 확인합니다.
$ oc exec -it mypod -- ip a
$ oc exec -it mypod -- ip a
Copy to Clipboard Copied! Toggle word wrap Toggle overflow