vSphere IaaS control plane 환경에서 감독자는 vSphere 네트워킹 스택 또는 NSX를 사용하여 감독자 제어부 VM, 서비스 및 워크로드에 대한 연결을 제공할 수 있습니다.
감독자가 vSphere 네트워킹 스택으로 구성되면 감독자의 모든 호스트가 워크로드 및 감독자 제어부 VM에 대한 연결을 제공하는 vDS에 연결됩니다. vSphere 네트워킹 스택을 사용하는 감독자에는 DevOps 사용자 및 외부 서비스에 대한 연결을 제공하기 위해 vCenter Server 관리 네트워크에 로드 밸런서가 필요합니다.
- NSX 버전이 4.1.1 이상입니다.
- NSX Advanced Load Balancer 버전은 엔터프라이즈 라이센스가 있는 22.1.4 이상입니다.
- 구성하려는 NSX Advanced Load Balancer Controller가 NSX에 등록되어 있습니다.
- NSX 로드 밸런서가 감독자에서 아직 구성되지 않았습니다.
VDS를 사용한 감독자 네트워킹
VDS에서 네트워킹 스택으로 지원하는 감독자에서 감독자를 지원하는 vSphere 클러스터의 모든 호스트는 동일한 VDS에 연결되어야 합니다. 감독자는 분산 포트 그룹을 Kubernetes 워크로드 및 제어부 트래픽에 대한 워크로드 네트워크로 사용합니다. 감독자의 네임스페이스에 워크로드 네트워크를 할당합니다.
감독자에 대해 구현하는 토폴로지에 따라 하나 이상의 분산 포트 그룹을 워크로드 네트워크로 사용할 수 있습니다. 감독자 제어부 VM에 대한 연결을 제공하는 네트워크를 기본 워크로드 네트워크라고 합니다. 이 네트워크를 감독자의 모든 네임스페이스에 할당하거나 각 네임스페이스에 대해 서로 다른 네트워크를 사용할 수 있습니다. Tanzu Kubernetes Grid 클러스터는 클러스터가 상주하는 네임스페이스에 할당된 워크로드 네트워크에 연결됩니다.
VDS에서 지원되는 감독자는 DevOps 사용자 및 외부 서비스에 대한 연결을 제공하기 위해 로드 밸런서를 사용합니다. NSX Advanced Load Balancer 또는 HAProxy 로드 밸런서를 사용할 수 있습니다.
자세한 내용은 NSX Advanced Load Balancer 설치 및 구성 및 HAProxy 로드 밸런서 설치 및 구성을 참조하십시오.
단일 클러스터 감독자 설정에서 감독자는 1개 vSphere 클러스터에서만 지원됩니다. 클러스터의 모든 호스트가 VDS에 연결되어 있어야 합니다.
3개 영역 감독자에서는 각각 vSphere 클러스터에 매핑된 3개 vSphere 영역에 감독자를 배포합니다. 이러한 vSphere 클러스터의 모든 호스트는 동일한 VDS에 연결되어야 합니다. 모든 물리적 서버는 L2 디바이스에 연결되어야 합니다. 네임스페이스로 구성하는 워크로드 네트워크는 3개 vSphere 영역 모두에 걸쳐 있습니다.
NSX를 사용한 감독자 네트워킹
NSX는 외부 네트워크 및 감독자 내부의 개체에 대한 네트워크 연결을 제공합니다. 클러스터를 구성하는 ESXi 호스트에 대한 연결은 표준 vSphere 네트워크를 통해 처리됩니다.
기존 NSX 배포를 사용하거나 NSX의 새 인스턴스를 배포하여 감독자 네트워킹을 수동으로 구성할 수도 있습니다.
자세한 내용은 NSX for vSphere IaaS control plane 설치 및 구성을 참조하십시오.
- NCP(NSX Container Plugin)는 NSX와 Kubernetes 간의 통합을 제공합니다. NCP의 주요 구성 요소는 컨테이너에서 실행되며 NSX Manager 및 Kubernetes 제어부와 통신합니다. NCP는 컨테이너 및 기타 리소스에 대한 변경 사항을 모니터링하고 NSX API를 호출하여 컨테이너에 대한 논리적 포트, 세그먼트, 라우터 및 보안 그룹과 같은 네트워킹 리소스를 관리합니다.
NCP는 기본적으로 시스템 네임스페이스에 대해 하나의 공유 Tier-1 게이트웨이를 생성하고 각 네임스페이스에 대해 Tier-1 게이트웨이와 로드 밸런서를 생성합니다. Tier-1 게이트웨이는 Tier-0 게이트웨이 및 기본 세그먼트에 연결됩니다.
시스템 네임스페이스는 감독자 및 Tanzu Kubernetes Grid 클러스터가 작동하는 데 필수적인 핵심 구성 요소에서 사용되는 네임스페이스입니다. Tier-1 게이트웨이, 로드 밸런서 및 SNAT IP를 포함하는 공유 네트워크 리소스는 시스템 네임스페이스에 그룹화됩니다.
- NSX Edge는 외부 네트워크에서 감독자 개체로 연결을 제공합니다. NSX Edge 클러스터에는 감독자 제어부 VM에 상주하는 Kubernetes API 서버와 감독자 외부에서 게시하고 액세스할 수 있는 모든 애플리케이션에 이중화를 제공하는 로드 밸런서가 있습니다.
- Tier-0 게이트웨이가 NSX Edge 클러스터와 연결되어 외부 네트워크에 대한 라우팅을 제공합니다. 업링크 인터페이스는 동적 라우팅 프로토콜 , BGP 또는 정적 라우팅 중 하나를 사용합니다.
- 각 vSphere 네임스페이스에는 별도의 네트워크 및 네임스페이스 내의 애플리케이션이 공유하는 네트워킹 리소스 집합(예: Tier-1 게이트웨이, 로드 밸런서 서비스, SNAT IP 주소)이 있습니다.
- 동일한 네임스페이스에 있는 vSphere 포드, 일반 VM 또는 Tanzu Kubernetes Grid 클러스터에서 실행되는 워크로드는 North-South 연결에 대해 동일한 SNAT IP를 공유합니다.
- vSphere 포드 또는 Tanzu Kubernetes Grid 클러스터에서 실행되는 워크로드에는 기본 방화벽에 의해 구현되는 것과 동일한 격리 규칙이 있습니다.
- 각 Kubernetes 네임스페이스에 대해 별도의 SNAT IP가 필요하지 않습니다. 네임스페이스 간의 East-West 연결은 SNAT가 아닙니다.
- 각 네임스페이스의 세그먼트는 NSX Edge 클러스터에 연결된, 표준 모드에서 작동하는 VDS에 상주합니다. 세그먼트는 감독자에 오버레이 네트워크를 제공합니다.
- 감독자는 공유 Tier-1 게이트웨이 내에 별도의 세그먼트가 있습니다. 각 Tanzu Kubernetes Grid 클러스터에 대해 세그먼트는 네임스페이스의 Tier-1 게이트웨이 내에 정의됩니다.
- 각 ESXi 호스트의 Spherelet 프로세스는 관리 네트워크의 인터페이스를 통해 vCenter Server와 통신합니다.
NSX가 네트워킹 스택으로 구성된 3개 영역 감독자에서 영역에 매핑된 3개 vSphere 클러스터 모두의 모든 호스트는 동일한 VDS에 연결되고 동일한 NSX 오버레이 전송 영역에 참여해야 합니다. 모든 호스트는 동일한 L2 물리적 디바이스에 연결되어야 합니다.
NSX 및 NSX Advanced Load Balancer를 사용한 감독자 네트워킹
NSX는 외부 네트워크 및 감독자 내부의 개체에 대한 네트워크 연결을 제공합니다. NSX로 구성된 감독자는 NSX Edge 또는 NSX Advanced Load Balancer를 사용할 수 있습니다.
NSX Advanced Load Balancer의 구성 요소에는 NSX Advanced Load Balancer Controller 클러스터, 서비스 엔진(데이터부) VM 및 AKO(Avi Kubernetes Operator)가 포함됩니다.
NSX Advanced Load Balancer Controller는 vCenter Server와 상호 작용하여 Tanzu Kubernetes Grid 클러스터에 대한 로드 밸런싱을 자동화합니다. 컨트롤러는 서비스 엔진 프로비저닝, 서비스 엔진 전반의 리소스 조정, 서비스 엔진 메트릭 및 로깅 집계를 담당합니다. 컨트롤러는 사용자 작업 및 프로그래밍 방식 통합을 위한 API, 웹 인터페이스, 명령줄 인터페이스를 제공합니다. 컨트롤러 VM을 배포하고 구성한 후 컨트롤러 클러스터를 배포하여 HA에 대한 제어부 클러스터를 설정할 수 있습니다.
서비스 엔진은 데이터부 가상 시스템입니다. 서비스 엔진은 하나 이상의 가상 서비스를 실행합니다. 서비스 엔진은 NSX Advanced Load Balancer Controller에 의해 관리됩니다. 컨트롤러는 가상 서비스를 호스팅하는 서비스 엔진을 프로비저닝합니다.
- 첫 번째 네트워크 인터페이스인 VM의
vnic0
은 NSX Advanced Load Balancer Controller에 연결할 수 있는 관리 네트워크에 연결됩니다. - 나머지 인터페이스인
vnic1 - 8
은 가상 서비스가 실행되는 데이터 네트워크에 연결됩니다.
서비스 엔진 인터페이스는 올바른 vDS 포트 그룹에 자동으로 연결됩니다. 각 서비스 엔진은 가상 서비스를 1000개까지 지원할 수 있습니다.
가상 서비스는 Tanzu Kubernetes Grid 클러스터 워크로드에 대한 계층 4 및 계층 7 로드 밸런싱 서비스를 제공합니다. 가상 서비스는 하나의 가상 IP와 여러 포트로 구성됩니다. 가상 서비스가 배포되면 컨트롤러는 ESX 서버를 자동으로 선택하고 서비스 엔진을 가동하여 올바른 네트워크(포트 그룹)에 연결합니다.
첫 번째 서비스 엔진은 첫 번째 가상 서비스가 구성된 후에만 생성됩니다. 후속으로 구성된 가상 서비스는 기존 서비스 엔진을 사용합니다.
각 가상 서버는 Tanzu Kubernetes Grid 클러스터에 대한 로드 밸런서 유형의 고유 IP 주소를 사용하여 계층 4 로드 밸런서를 노출합니다. 각 가상 서버에 할당된 IP 주소는 서버를 구성할 때 컨트롤러에 제공된 IP 주소 블록에서 선택됩니다.
AKO(Avi Kubernetes Operator)는 Kubernetes 리소스를 감시하고 NSX Advanced Load Balancer Controller와 통신하여 해당 로드 밸런싱 리소스를 요청합니다. Avi Kubernetes Operator는 사용 설정 프로세스의 일부로 감독자에 설치됩니다.
자세한 내용은 NSX 및 NSX Advanced Load Balancer 설치 및 구성을 참조하십시오.
- vCenter Server 고급 연결 모드 배포에서는 NSX Advanced Load Balancer Controller를 배포할 수 없습니다. 단일 vCenter Server 배포에만 NSX Advanced Load Balancer Controller를 배포할 수 있습니다. 둘 이상의 vCenter Server가 연결된 경우 NSX Advanced Load Balancer Controller를 구성하는 동안 둘 중 하나만 사용할 수 있습니다.
- 다중 계층 Tier-0 토폴로지에서는 NSX Advanced Load Balancer Controller를 구성할 수 없습니다. NSX 환경이 다중 계층 Tier-0 토폴로지로 설정된 경우 NSX Advanced Load Balancer Controller를 구성하는 동안 하나의 Tier-0 게이트웨이만 사용할 수 있습니다.
NSX를 사용한 네트워킹 구성 방법
- 감독자 네트워킹을 구성하는 가장 간단한 방법은 VMware Cloud Foundation SDDC Manager를 사용하는 것입니다. 자세한 내용은 VMware Cloud Foundation SDDC Manager 설명서를 참조하십시오. 자세한 내용은 VMware Cloud Foundation 관리 가이드를 참조하십시오.
- 기존 NSX 배포를 사용하거나 NSX의 새 인스턴스를 배포하여 감독자 네트워킹을 수동으로 구성할 수도 있습니다. 자세한 내용은 NSX for vSphere IaaS control plane 설치 및 구성을 참조하십시오.