NSX Advanced Load Balancer 설치 및 구성

NSX Advanced Load Balancer 배포 토폴로지

Tanzu Kubernetes Grid에서는 NSX Advanced Load Balancer에 다음과 같은 구성 요소가 포함됩니다.

  • AKO(Avi Kubernetes Operator)는 북-남 트래픽을 위해 Kubernetes 클러스터에 배포된 애플리케이션에 L4-L7 로드 밸런싱을 제공합니다. Kubernetes 수신 및 서비스 유형 LoadBalancer 개체를 수신하고 Avi 컨트롤러 API와 상호 작용하여 VirtualService 개체를 생성합니다.
  • AKO Operator AKO와 클러스터 API 간의 통신을 가능하게 하는 애플리케이션입니다. AKO의 수명 주기를 관리하고 클러스터 제어부 노드의 로드 밸런서에 대한 일반 인터페이스를 제공합니다. AKO 연산자는 관리 클러스터에만 배포됩니다.
  • SE(서비스 엔진)는 데이터부를 VM 폼 팩터로 구현할 수 있습니다.
  • 서비스 엔진 그룹은 특정 중요 네임스페이스의 전용 SE 그룹과 같은 서비스 엔진 집합의 형태로 분리 단위를 제공합니다. 이렇게 하면 생성해야 하는 SES(CPU, 메모리 등)의 플레이버 형태와 허용되는 최대 ES 수에 대한 제한도 제어할 수 있습니다.
  • Avi 컨트롤러VirtualService 개체를 관리하고 vCenter Server 인프라와 상호 작용하여 SE(서비스 엔진)의 수명 주기를 관리합니다. VirtualServices 및 ES의 상태와 NSX Advanced Load Balancer가 제공하는 연결된 분석을 볼 수 있는 포털입니다. 또한 백업 및 복원과 같은 모니터링 및 유지 보수 작업을 위한 제어 지점이기도 합니다.

Tanzu Kubernetes Grid는 1개 암 및 다중 개 암 네트워크 토폴로지에서 배포된 NSX Advanced Load Balancer를 지원합니다.

참고

다중 암 네트워크 토폴로지에서 NSX ALB Essentials Edition을 배포하려면 Avi SE와 Kubernetes 클러스터 노드 간 통신에 구성된 네트워크에 방화벽 또는 네트워크 정책을 구성하지 않았는지 확인합니다. NSX ALB가 배포된 다중 암 네트워크 토폴로지에서 방화벽 또는 네트워크 정책을 구성하려면 자동 게이트웨이 기능을 사용하도록 설정한 NSX Advanced Load Balancer Enterprise Edition이 필요합니다.

다음 다이어그램은 1개 암 NSX ALB 배포를 나타냅니다.

VMware NSX Advanced Load Balancer 배포 토폴로지- 1개 암

다음 다이어그램은 다중 암 NSX ALB 배포를 나타냅니다.

VMware NSX Advanced Load Balancer 배포 토폴로지- 다중 암

네트워킹

  • SES는 데이터 경로와 관련하여 VIP 네트워크 및 워크로드 클러스터 노드 네트워크 모두에 연결하여 1개 암 또는 2개 암 모드로 배포됩니다. NSX ALB Essentials Edition을 사용하여 2개 암 네트워크 토폴로지에서 SES를 배포하려는 경우 사용하려는 네트워크에 방화벽 또는 네트워크 정책을 구성하지 않았는지 확인합니다.
  • VIP 네트워크와 워크로드 네트워크를 동일한 vCenter Cloud에서 검색할 수 있어야 Avi 컨트롤러가 두 네트워크에 연결된 ES를 생성할 수 있습니다.
  • VIP 및 SE 데이터 인터페이스 IP 주소는 VIP 네트워크에서 할당됩니다.

IPAM

  • DHCP를 사용할 수 없는 경우 VIP 및 SE 인터페이스 IP 주소의 IPAM은 Avi 컨트롤러에서 관리됩니다.
  • Avi 컨트롤러의 IPAM 프로파일은 클라우드 및 사용 가능한 네트워크 집합으로 구성됩니다.
  • VIP 네트워크의 DHCP가 구성되지 않은 경우 대상 네트워크에 하나 이상의 정적 풀을 생성해야 합니다.

리소스 분리

  • SE 그룹을 사용하여 워크로드 클러스터 전체에서 데이터부를 분리할 수 있습니다. vSphere 관리자는 전용 SE 그룹을 구성하고 분리가 필요한 워크로드 클러스터 집합에 대해 이를 구성할 수 있습니다.
  • SE 그룹은 Avi 컨트롤러에서 생성된 SE의 리소스 특성(예: CPU, 메모리 등)을 제어하는 기능을 제공합니다.

테넌시

NSX Advanced Load Balancer Essentials를 사용하면 모든 워크로드 클러스터 사용자가 단일 관리자 테넌트와 연결됩니다.

Avi Kubernetes Operator

Avi Kubernetes Operator는 워크로드 클러스터에 설치됩니다. Avi Kubernetes Operator가 Avi 컨트롤러와 통신하는 데 사용하는 사용자 자격 증명 및 Avi 컨트롤러 IP 주소로 구성됩니다. 워크로드당 전용 사용자는 관리자 테넌트 및 사용자 지정된 역할로 생성됩니다. 이 역할에는 https://github.com/avinetworks/avi-helm-charts/blob/master/docs/AKO/roles/ako-essential.json에 정의된 제한된 액세스 권한이 있습니다.

vCenter Server에 Avi 컨트롤러 설치

vCenter Server Avi를 설치하려면 Avi 설명서의 VMware vCenter용 Avi Vantage 설치를 참조하십시오.

VMware NSX와 함께 vCenter Avi를 설치하려면 Avi 설명서의 NSX와 함께 VMware vCenter용 Avi Vantage 설치를 참조하십시오.

참고

이 릴리스에서 지원되는 Avi 컨트롤러 버전은 Tanzu Kubernetes Grid v2.1 Release Notes를 참조하십시오. Avi 컨트롤러를 업그레이드하려면 Avi Vantage의 유연한 업그레이드를 참조하십시오.

NSX ALB 설치 및 구성을 위한 사전 요구 사항

Tanzu Kubernetes Grid NSX - Advanced Load Balancer 통합 솔루션을 사용하도록 설정하려면 Avi 컨트롤러를 배포하고 구성해야 합니다. 현재 Tanzu Kubernetes Grid는 vCenter 클라우드 및 NSX-T 클라우드에 Avi 컨트롤러 배포를 지원합니다.

Tanzu Kubernetes Grid - NSX Advanced Load Balancer 통합 솔루션이 작동하도록 하려면 환경 네트워크 토폴로지에서 다음 요구 사항을 충족해야 합니다.

  • vCenter, 관리 클러스터, 워크로드 클러스터에서 Avi 컨트롤러에 연결할 수 있어야 합니다.
  • Avi 컨트롤러가 로드 밸런서 유형의 서비스 및 수신 데이터부를 구현하도록 요청하려면 관리 클러스터 및 워크로드 클러스터의 AKO에 연결할 수 있어야 합니다.
  • SE가 로드 밸런싱 데이터부를 제공하는 Kubernetes 클러스터에서 Avi SE(서비스 엔진)에 연결할 수 있어야 합니다.
  • Avi 서비스 엔진은 로드 밸런싱 기능을 제공하는 클러스터로 트래픽을 라우팅해야 합니다.

NSX Cloud

Tanzu Kubernetes Grid NSX 및 NSX Advanced Load Balancer(Avi)와 통합하는 것은 다음 버전에서 지원됩니다.

NSX Avi 컨트롤러 Tanzu Kubernetes Grid
3.0+ 20.1.1+ 1.5.2+

Avi 컨트롤러 설정: IPAM 및 DNS

NSX Advanced Load Balancer를 사용하기 전에 컨트롤러 UI에서 구성할 추가 설정이 있습니다.

  1. 컨트롤러 UI에서 템플릿(Templates) > 프로파일(Profiles) > IPAM/DNS 프로파일(IPAM/DNS Profiles)로 이동한 후 생성(Create)을 클릭하고 IPAM 프로파일(IPAM Profile)을 선택합니다.

    • 프로파일의 이름(예: tkg-ipam-profile)을 입력합니다.
    • 유형(Type)Avi Vantage IPAM으로 설정합니다.
    • VRF에서 IP 할당(Allocate IP in VRF)을 선택하지 않은 상태로 둡니다.
    • 사용 가능한 네트워크 추가(Add Usable Network)를 클릭합니다.
    • 기본 클라우드(Default-Cloud)를 선택합니다.
    • 사용 가능한 네트워크(Usable Network)에서 가상 IP를 할당할 네트워크를 선택합니다. 플랫 네트워크 토폴로지 사용 중인 경우 이전 절차에서 선택한 것과 동일한 네트워크(관리 네트워크)일 수 있습니다. 다른 네트워크 토폴로지의 경우 가상 IP에 대해 별도의 포트 그룹 네트워크를 선택합니다.
    • (선택 사항) 추가 VIP 네트워크를 구성하려면 사용 가능한 네트워크(Usable Network)를 클릭합니다.
    • 저장(Save)을 클릭합니다.

    IPAM 및 DNS 프로파일 구성

  2. IPAM/DNS 프로파일(IPAM/DNS Profiles) 보기에서 생성(Create)을 다시 클릭하고 DNS 프로파일(DNS Profile)을 선택합니다.

    참고

    서비스 유형 LoadBalancer를 사용할 경우 DNS 프로파일은 선택 사항입니다.

    • 프로파일의 이름(예: tkg-dns-profile)을 입력합니다.
    • 유형(Type)AVI Vantage DNS를 선택합니다.
    • DNS 서비스 도메인 추가(Add DNS Service Domain)를 클릭하고 하나 이상의 도메인 이름(Domain Name) 항목을 입력합니다(예: tkg.nsxlb.vmware.com).
      • 관리할 수 있는 DNS 도메인에서 온 것이어야 합니다.
      • 이는 컨트롤러가 호스트 이름에 트래픽을 라우팅하는 논리를 기반으로 하는 워크로드 클러스터의 L7 수신 구성에 더 중요합니다.
      • 컨트롤러가 관리하는 수신 리소스는 여기에서 선택하는 도메인 이름에 속하는 호스트 이름을 사용해야 합니다.
      • 이 도메인 이름은 LoadBalancer 유형의 서비스에도 사용되지만 AVI DNS VS를 이름 서버로 사용하는 경우 대부분 관련이 있습니다.
      • 각 가상 서비스는 AVI DNS 구성에 항목을 생성합니다. 예: service.namespace.tkg-lab.vmware.com.
    • 저장(Save)을 클릭합니다.

    DNS 프로파일 생성

  3. 왼쪽 상단 모서리에 있는 메뉴를 클릭하고 인프라(Infrastructure) > 클라우드(Clouds)를 선택합니다.

  4. 기본 클라우드(Default-Cloud)에서 편집 아이콘을 클릭하고 IPAM 프로파일(IPAM Profile)DNS 프로파일(DNS Profile) 아래에서 위에서 생성한 IPAM 및 DNS 프로파일을 선택합니다.

    IPAM 및 DNS 프로파일을 클라우드에 추가

  5. 데이터센터(DataCenter) 탭을 선택합니다.

    • DHCP를 사용하도록 설정한 상태로 둡니다. 네트워크별로 설정됩니다.
    • IPv6…고정 경로(Static Routes)… 확인란을 선택하지 않은 상태로 둡니다.
  6. 네트워크(Network) 섹션을 아직 업데이트하지 마십시오.

  7. 클라우드 구성을 저장합니다.
  8. 인프라(Infrastructure) > 클라우드 리소스(Cloud Resources) > 네트워크(Networks)를 열고 VIP 네트워크로 사용 중인 네트워크의 편집 아이콘을 클릭합니다.

    VIP 네트워크용 네트워크 편집

  9. IP 주소 풀의 편집 가능한 IP 범위 목록이 나타납니다. 정적 IP 주소 풀 추가(Add Static IP Address Pool)를 클릭합니다.

    VIP 네트워크 주소 풀 편집

  10. VIP 네트워크로 사용할 정적 IP 주소 풀의 서브넷 경계 내의 IP 주소 범위를 입력합니다(예: 192.168.14.210-192.168.14.219. 저장(Save)을 클릭합니다.

    VIP 네트워크의 IP 풀 입력

(권장) Avi 컨트롤러 설정: 가상 서비스

관리 클러스터에서 사용하려는 SE 그룹에 가상 서비스가 없는 경우 해당 SE 그룹에 대해 실행 중인 서비스 엔진이 없는 것이 좋습니다. 따라서 관리 클러스터 배포 프로세스는 서비스 엔진이 생성될 때까지 기다려야 합니다. 서비스 엔진을 생성하려면 새 VM을 배포해야 하기 때문에 시간이 많이 걸립니다. 네트워킹 상태가 좋지 않은 경우 이로 인해 내부 시간 초과로 인해 관리 클러스터 배포 프로세스가 성공적으로 완료되지 못할 수 있습니다.

이 문제를 방지하려면 관리 클러스터를 배포하기 전에 Avi 컨트롤러 UI를 통해 더미 가상 서비스를 생성하여 서비스 엔진 생성을 트리거하는 것이 좋습니다.

SE 그룹에 할당된 가상 서비스가 있는지 확인하려면 컨트롤러 UI에서 인프라(Infrastructure) > 서비스 엔진 그룹(Service Engine Group)으로 이동한 후 SE 그룹의 세부 정보를 봅니다. SE 그룹에 할당된 가상 서비스가 없는 경우 더미 가상 서비스를 생성합니다.

  1. 컨트롤러 UI에서 애플리케이션(Applications) > 가상 서비스(Virtual Service)로 이동합니다.

  2. 가상 서비스 생성(Create Virtual Service)을 클릭하고 기본 설정(Basic Setup)을 선택합니다.

  3. VIP 구성:

    1. 자동 할당(Auto-Allocate)을 선택합니다.
    2. IPAM 프로파일에 구성된 VIP 네트워크(VIP Network)VIP 서브넷(VIP Subnet)을 선택합니다(Avi 컨트롤러 설정:(Avi Controller Setup:) IPAM 및 DNS(IPAM and DNS)에서).
    3. 저장(Save)을 클릭합니다.
참고

관리 클러스터가 성공적으로 배포된 후 더미 가상 서비스를 삭제할 수 있습니다.

더미 서비스를 생성하는 데 필요한 것보다 많은 가상 서비스 생성에 대한 자세한 내용은 Avi Networks 설명서의 가상 서비스 생성을 참조하십시오.

Avi 컨트롤러 설정: 사용자 지정 인증서

기본 NSX Advanced Load Balancer 인증서에는 SAN(주체 대체 이름)에 컨트롤러의 IP 또는 FQDN이 포함되어 있지 않지만 유효한 SAN은 Avi 컨트롤러의 인증서에 정의되어야 합니다. 따라서 관리 클러스터를 배포할 때 제공할 사용자 지정 인증서를 생성해야 합니다.

  1. 컨트롤러 UI에서 왼쪽 상단 모서리에 있는 메뉴를 클릭하고 템플릿(Templates) > 보안(Security) > SSL/TLS 인증서(SSL/TLS Certificates)를 선택하고 생성(Create)을 클릭한 후 컨트롤러 인증서(Controller Certificate)를 선택합니다.
  2. 이름(Name)공통 이름(Common Name) 텍스트 상자에 동일한 이름을 입력합니다.
  3. 자체 서명됨(Self-Signed)을 선택합니다.
  4. SAN(대체 이름)(Subject Alternate Name (SAN))에서 컨트롤러 VM의 IP 주소 또는 FQDN 또는 둘 다를 입력합니다.

    IP 주소 또는 FQDN만 사용되는 경우 VMware NSX Advanced Load Balancer를 구성할 때는 컨트롤러 호스트(Controller Host)에 사용하는 값을 일치시키거나, 관리 클러스터 구성 파일의 AVI_CONTROLLER 변수에 지정해야 합니다.

  5. 다른 필드를 비워 두고 저장(Save)을 클릭합니다.
  6. 왼쪽 상단 모서리에 있는 메뉴에서 관리(Administration) > 설정(Settings) > 액세스 설정(Access Settings)을 선택하고 시스템 액세스 설정(System Access Settings)의 편집 아이콘을 클릭합니다.
  7. SSL/TLS 인증서(SSL/TLS Certificate)에서 모든 인증서를 삭제합니다.
  8. SSL/TLS 인증서(SSL/TLS Certificate) 드롭다운 메뉴를 사용하여 위에서 생성한 사용자 지정 인증서를 추가합니다.
  9. 왼쪽 위 모서리에 있는 메뉴에서 템플릿(Templates) > 보안(Security) > SSL/TLS 인증서(SSL/TLS Certificates)를 선택하고 생성한 인증서를 선택한 후 내보내기 아이콘을 클릭합니다.
  10. 인증서 컨텐츠를 복사합니다.

    관리 클러스터를 배포할 때 인증서 컨텐츠가 필요합니다.

check-circle-line exclamation-circle-line close-line
Scroll to top icon