vDS 네트워킹에 vSphere with Tanzu를 사용하는 경우 HAProxy는 Tanzu Kubernetes 제어부에 액세스하는 개발자를 위해 그리고 로드 밸런서 유형의 Kubernetes 서비스에 대해 로드 밸런싱을 제공합니다. HAProxy 로드 밸런서에 대해 구현할 수 있는 가능한 토폴로지를 검토합니다.
감독자 클러스터의 워크로드 네트워크
vSphere 네트워킹 스택을 사용하여 감독자 클러스터를 구성하려면 클러스터의 모든 호스트를 vSphere Distributed Switch에 연결해야 합니다. 감독자 클러스터 워크로드 네트워크에 대해 구현하는 토폴로지에 따라 하나 이상의 분산 포트 그룹을 생성합니다. 포트 그룹을 vSphere 네임스페이스에 대한 워크로드 네트워크로 지정합니다.
감독자 클러스터에 호스트를 추가하기 전에 클러스터에 포함된 모든 vSphere Distributed Switch에 호스트를 추가해야 합니다.
감독자 클러스터의 Kubernetes 제어부 VM은 기본 워크로드 네트워크에 할당된 IP 주소 범위에서 3개의 IP 주소를 사용합니다. Tanzu Kubernetes 클러스터의 각 노드에는 Tanzu Kubernetes 클러스터가 실행되는 네임스페이스로 구성된 워크로드 네트워크의 주소 범위에서 할당된 별도의 IP 주소가 있습니다.
IP 범위 할당
- HAProxy에 대한 가상 IP 할당 범위입니다. HAProxy의 가상 서버에 대해 구성하는 IP 범위는 로드 밸런서 장치에 의해 예약됩니다. 예를 들어 가상 IP 범위가
192.168.1.0/24
인 경우 가상 IP 트래픽 이외의 트래픽은 해당 범위의 모든 호스트에 액세스할 수 없습니다.참고: 해당 게이트웨이에 대한 모든 경로가 실패하기 때문에 HAProxy 가상 IP 범위 내에 게이트웨이를 구성하지 않아야 합니다. - 감독자 클러스터 및 Tanzu Kubernetes 클러스터의 노드에 대한 IP 범위입니다. 감독자 클러스터의 Kubernetes 제어부 VM에는 각각 하나의 IP 주소가 할당되어 총 3개의 IP 주소가 할당됩니다. 또한 Tanzu Kubernetes 클러스터의 각 노드에는 별도의 IP가 할당됩니다. 네임스페이스에 구성하는 감독자 클러스터의 각 워크로드 네트워크에 고유한 IP 범위를 할당해야 합니다.
하나의 /24 네트워크를 포함하는 구성 예:
- 네트워크: 192.168.120.0/24
- HAProxy VIP: 192.168.120.128/25
- HAProxy 워크로드 인터페이스에 대한 IP 주소 1개: 192.168.120.5
처음 128개 주소 내에서 사용 가능한 IP에 따라 감독자 클러스터의 워크로드 네트워크에 대한 IP 범위를 정의할 수 있습니다. 예:
- 기본 워크로드 네트워크용 192.168.120.31-192.168.120.40
- 다른 워크로드 네트워크용 192.168.120.51-192.168.120.60
HAProxy 네트워크 토폴로지
HAProxy 배포를 위한 네트워크 구성 옵션에는 기본 및 프런트 엔드라는 두 가지가 있습니다. 기본 네트워크에는 2가지 NIC가 있으며, 하나는 관리 네트워크용이고, 다른 하나는 워크로드 네트워크용입니다. 프런트 엔드 네트워크에는 관리 네트워크, 워크로드 네트워크, 클라이언트용 프런트 엔드 네트워크라는 3가지 NIC가 있습니다. 각 네트워크의 특성은 표에 나열 및 설명되어 있습니다.
네트워크 | 특성 |
---|---|
관리 |
감독자 클러스터는 관리 네트워크를 사용하여 HAProxy 로드 밸런서를 연결하고 프로그래밍합니다.
|
워크로드 |
HAProxy 제어부 VM은 워크로드 네트워크를 사용하여 감독자 클러스터 및 Tanzu Kubernetes 클러스터 노드의 서비스에 액세스합니다.
참고: 워크로드 네트워크는 관리 네트워크와 다른 서브넷에 있어야 합니다.
시스템 요구 사항을 참조하십시오.
|
프런트 엔드(선택 사항) | 클러스터 워크로드에 액세스하는 외부 클라이언트(예: 사용자 또는 애플리케이션)는 프런트 엔드 네트워크를 사용하여 가상 IP 주소를 사용하는 백엔드 로드 밸런싱된 서비스에 액세스합니다.
|
아래 다이어그램은 프런트 엔드 네트워크 토폴로지를 사용하는 HAProxy 배포를 보여줍니다. 이 다이어그램은 설치 및 구성 프로세스 중에 구성 필드가 필요한 위치를 나타냅니다.
가상 NIC가 두 개인 HA 프록시 및 워크로드 네트워크가 한 개인 감독자 클러스터 토폴로지
이 토폴로지에서는 다음 구성 요소에 대해 워크로드 네트워크가 한 개인 감독자 클러스터를 구성합니다.
- Kubernetes 제어부 VM
- Tanzu Kubernetes 클러스터의 노드.
- 외부 서비스 및 DevOps 사용자가 연결되는 HAProxy 가상 IP 범위. 이 구성에서는 HAProxy가 가상 NIC 두 개(기본 구성)로 배포되며, 하나는 관리 네트워크에 연결되고 다른 하나는 기본 워크로드 네트워크에 연결됩니다. 기본 워크로드 네트워크와는 별도의 서브넷에 가상 IP를 할당하도록 계획해야 합니다.
- DevOps 사용자 또는 외부 서비스는 분산 포트 그룹의 워크로드 네트워크 서브넷에 있는 가상 IP로 트래픽을 전송합니다.
- HAProxy는 가상 IP 트래픽을 Tanzu Kubernetes 노드 IP 또는 제어부 VM IP로 로드 밸런싱합니다. HAProxy는 해당 IP에서 들어오는 트래픽을 로드 밸런싱할 수 있도록 가상 IP 주소를 할당합니다.
- 제어부 VM 또는 Tanzu Kubernetes 클러스터 노드는 각각 감독자 클러스터 또는 Tanzu Kubernetes 클러스터 내에서 실행되는 대상 포드로 트래픽을 전달합니다.
가상 NIC가 두 개인 HA 프록시 및 격리된 워크로드 네트워크가 있는 감독자 클러스터 토폴로지
- Kubernetes 제어부 VM. Kubernetes 제어부 VM에 대한 트래픽을 처리하기 위한 기본 워크로드 네트워크입니다.
- Tanzu Kubernetes 클러스터 노드. 사용자가 감독자 클러스터의 모든 네임스페이스에 할당하는 워크로드 네트워크. 이 네트워크는 Tanzu Kubernetes 클러스터 노드를 연결합니다.
- HAProxy 가상 IP. 이 구성에서는 HAProxy VM이 가상 NIC 두 개(기본 구성)로 배포됩니다. HAProxy VM을 기본 워크로드 네트워크 또는 네임스페이스에 사용하는 워크로드 네트워크에 연결할 수 있습니다. vSphere에 이미 있으며 기본 및 워크로드 네트워크에 라우팅할 수 있는 VM 네트워크에 HAProxy를 연결할 수도 있습니다.
- DevOps 사용자 또는 외부 서비스는 트래픽을 가상 IP로 전송합니다. 트래픽은 HAProxy가 연결된 네트워크로 라우팅됩니다.
- HAProxy는 가상 IP 트래픽을 Tanzu Kubernetes 노드 IP 또는 제어부 VM으로 로드 밸런싱합니다. HAProxy는 해당 IP에서 들어오는 트래픽을 로드 밸런싱할 수 있도록 가상 IP 주소를 할당합니다.
- 제어부 VM 또는 Tanzu Kubernetes 클러스터 노드는 Tanzu Kubernetes 클러스터 내에서 실행되는 대상 포드로 트래픽을 전달합니다.
가상 NIC가 두 개인 HA 프록시 및 다중 워크로드 네트워크가 있는 감독자 클러스터 토폴로지
이 토폴로지에서는 기본 워크로드 네트워크 역할을 하는 하나의 포트 그룹과 각 네임스페이스에 대한 워크로드 네트워크 역할을 하는 전용 포트 그룹을 구성할 수 있습니다. HAProxy는 가상 NIC 두 개를 사용하여 배포되며(기본 구성), 기본 워크로드 네트워크 또는 임의의 워크로드 네트워크에 연결할 수 있습니다. 기본 및 워크로드 네트워크로 라우팅할 수 있는 기존 VM 네트워크를 사용할 수도 있습니다.
가상 NIC가 세 개인 HA 프록시 및 다중 워크로드 네트워크가 있는 감독자 클러스터 토폴로지
가능한 토폴로지 중에서 선택
가능한 각 토폴로지 중에서 선택하기 전에 해당 환경의 요구 사항을 평가합니다.
- 감독자 클러스터 및 Tanzu Kubernetes 클러스터 간에 계층 2 분리가 필요합니까?
- 아니요: 모든 구성 요소를 처리하는 하나의 워크로드 네트워크를 사용하는 가장 간단한 토폴로지입니다.
- 예: 별도의 기본 및 워크로드 네트워크를 사용하는 분리된 워크로드 네트워크 토폴로지입니다.
- Tanzu Kubernetes 클러스터 간에 추가적인 계층 2 분리가 필요합니까?
- 아니요: 별도의 기본 및 워크로드 네트워크를 사용하는 분리된 워크로드 네트워크 토폴로지입니다.
- 예: 각 네임스페이스 및 전용 기본 워크로드 네트워크에 별도의 워크로드 네트워크를 사용하는 다중 워크로드 네트워크 토폴로지입니다.
- DevOps 사용자 및 외부 서비스가 Kubernetes 제어부 VM 및 Tanzu Kubernetes 클러스터 노드로 직접 라우팅하지 못하도록 하시겠습니까?
- 아니요: 2개 NIC의 HAProxy 구성입니다.
- 예: 3개 NIC HAProxy 구성입니다. 이 구성은 운영 환경에 권장됩니다.