Citrix로 부하 분산

이 페이지에서는 GKE On-Prem 클러스터의 Citrix 부하 분산기를 구성하는 방법을 보여줍니다.

GKE On-Prem 클러스터는 통합 또는 수동의 두 가지 부하 분산 모드 중 하나로 실행될 수 있습니다. Citrix 부하 분산기를 사용하려면 수동 부하 분산 모드를 사용합니다.

모든 수동 부하 분산의 공통된 단계

Citrix 부하 분산기를 구성하기 전에 모든 수동 부하 분산 구성에 공통된 다음 단계를 수행합니다.

Citrix ADC 인스턴스 만들기

Citrix Application Delivery Controller(ADC)를 만들려면 다음 단계를 따르세요.

네트워크 어댑터 추가

Citrix ADC VM에는 네트워크 어댑터가 하나 있으며 어댑터는 VM의 관리 IP 주소와 연결됩니다. 이제 Citrix ADC VM에 하나 이상의 네트워크 어댑터를 추가해야 합니다.

한 가지 방법은 one-arm 구성을 만드는 것입니다. 이러한 구성에서는 Citrix ADC VM에 관리 네트워크 어댑터와 네트워크 어댑터가 하나씩 있습니다. 추가 네트워크 어댑터 하나가 클러스터 노드가 있는 서브넷에 연결되어 있습니다. 인터넷에서 이 서브넷의 IP 주소에 연결할 수 있습니다.

또 다른 방법은 two-arm 구성을 만드는 것입니다. 이러한 구성에서는 Citrix ADC VM에 관리 네트워크 어댑터 외에 두 개의 네트워크 어댑터가 있습니다. 추가 네트워크 어댑터 중 하나는 클러스터 노드가 있는 비공개 서브넷에 연결되어 있습니다. 다른 추가 네트워크 어댑터는 외부 요청이 Citrix 부하 분산기에 도달할 수 있도록 허용하는 서브넷에 연결되어 있습니다. 인터넷에서 직접 액세스할 수 있는 서브넷이거나 점프 박스로 인터넷에서 보호되는 서브넷일 수 있습니다.

다음 다이어그램은 two-arm 구성의 예시를 보여줍니다.

two-arm 구성의 다이어그램
two-arm 구성(확대하려면 클릭)

Citrix ADC VM에 하나 또는 두 개의 네트워크 어댑터를 추가하려면 vSphere 인터페이스를 사용합니다.

  1. 왼쪽 창에서 Citrix ADC VM을 찾습니다.

  2. Citrix ADC VM을 마우스 오른쪽 버튼으로 클릭하고 설정 수정을 선택합니다.

Citrix ADC VM 수정 스크린샷
Citrix ADC의 속성 수정(확대하려면 클릭)
  1. 새 기기에서 선택 메뉴를 열고 네트워크를 선택합니다. 추가를 클릭합니다.

  2. 왼쪽 창에서 새 네트워크를 펼칩니다. VM 네트워크에서 새 네트워크 어댑터를 연결할 서브넷을 선택합니다.

  3. 원하는 대로 다른 설정을 지정하고 확인을 클릭합니다.

서버 구성

클러스터 노드에 사용할 IP 주소 목록이 이미 있음을 상기하세요. 이 섹션에서 각 IP 주소를 이름과 연결합니다.

브라우저에 Citrix VM 관리 IP 주소를 입력합니다. 그러면 Citrix 부하 분산기에 대한 웹 인터페이스가 열립니다. Citrix 인터페이스에서 클러스터 노드를 서버라고 합니다.

구성 탭을 엽니다.

왼쪽 창에서 트래픽 관리 > 부하 분산 > 서버로 이동합니다.

Citrix 사용자 인터페이스에서 서버 추가 스크린샷
Citrix 사용자 인터페이스에서 서버 추가(클릭하여 확대)

만들려는 각 관리자 클러스터 노드와 각 사용자 클러스터 노드에 대해 다음 단계를 수행합니다.

  1. 기본 창에서 추가를 클릭합니다.

  2. 노드의 이름과 IP 주소를 입력합니다.

  3. 만들기를 클릭합니다.

서비스 그룹 구성

Citrix 인터페이스에서 서비스 그룹은 프로토콜 및 포트 번호가 있는 서버 집합입니다. 예를 들면 다음과 같습니다.

({admin_node_1, admin_node_2, admin_node_3}, TCP, 30001)

이 섹션에서는 다음 각 항목에 대한 서비스 그룹을 만듭니다.

  • 관리자 클러스터 제어 영역
  • 관리자 클러스터 HTTP 인그레스 컨트롤러
  • 관리자 클러스터 HTTPS 인그레스 컨트롤러
  • 관리자 클러스터 부가기능 관리자
  • 사용자 클러스터 제어 영역
  • 사용자 클러스터 HTTP 인그레스 컨트롤러
  • 사용자 클러스터 HTTPS 인그레스 컨트롤러

각 서비스 그룹에서 프로토콜은 TCP입니다. VIP는 이전에 설정한 주소입니다. 포트는 이전에 설정한 nodePort 값입니다.

예를 들어 사용자 클러스터 노드의 이름이 다음과 같다고 가정합니다.

  • user_node_1
  • user_node_2
  • user_node_3

또한 203.0.113.1을 HTTP 사용자 클러스터 인그레스 컨트롤러의 VIP로 사용한다고 가정합니다. HTTP 사용자 클러스터 인그레스 컨트롤러의 nodePort 값에는 32001을 사용합니다. 그리고 다음 서비스 그룹을 만듭니다.

({user_node_1, user_node_2, user_node_3}, TCP, 32001)

Citrix 웹 인터페이스에 서비스 그룹을 만들려면 다음 단계를 수행합니다.

  1. 왼쪽 창에서 트래픽 관리 > 부하 분산 > 서비스 그룹으로 이동합니다.
Citrix 사용자 인터페이스에서 서비스 그룹 추가 스크린샷(확대하려면 클릭)
Citrix 사용자 인터페이스에서 서비스 그룹 추가(확대하려면 클릭)
  1. 기본 창에서 추가를 클릭합니다.

  2. 서비스 그룹 이름을 입력합니다.

  3. 프로토콜에서 TCP를 선택합니다.

  4. 확인을 클릭합니다.

  5. 서비스 그룹 구성원에서 서비스 그룹 구성원 없음이라는 표시줄을 클릭합니다.

  6. 페이지 상단에서 서버 기반을 선택합니다.

  7. 서버 선택에서 상자를 클릭합니다.

  8. 서버 이름 목록에서 서비스 그룹에 포함할 서버를 선택합니다. 그런 다음 선택을 클릭합니다.

  9. 포트에서 서비스 그룹의 nodePort 값을 입력합니다.

  10. 해시 ID에서 원하는 수를 입력합니다.

위 단계를 7번 반복하여 이 섹션의 시작 부분에 나열된 각 구성요소에 대한 서비스 그룹을 만듭니다.

가상 서버 구성

이제 7개의 서비스 그룹이 준비되었습니다. 이 섹션에서는 각 서비스 그룹을 VIP, 프로토콜, 포트와 연결합니다.

예를 들어 다음을 가정합니다.

  • 사용자 클러스터 HTTP 인그레스 컨트롤러의 서비스 그룹 이름은 user_http_ingress입니다.

  • 사용자 클러스터 HTTP 인그레스 컨트롤러의 VIP로 203.0.113.1을 사용합니다. 그리고 부하 분산기는 TCP 포트 80에서 이 VIP로 전송된 요청을 리슨합니다.

  • 사용자 클러스터 HTTP 인그레스 컨트롤러의 nodePort 값으로 32,001을 사용합니다.

그리고 다음과 같은 연결을 만듭니다.

user_http_ingress --> (203.0.113.1, TCP, 80)

Citrix 인터페이스에서 이 유형의 연결을 가상 서버라고 합니다.

Citrix 웹 인터페이스에 가상 서버를 만들려면 다음 단계를 수행합니다.

  1. 왼쪽 창에서 트래픽 관리 > 부하 분산 > 가상 서버로 이동합니다.
Citrix 사용자 인터페이스에서 가상 서버 추가 스크린샷(확대하려면 클릭)
Citrix 사용자 인터페이스에서 가상 서버 추가(클릭하여 확대)
  1. 기본 창에서 추가를 클릭합니다.

  2. 가상 서버 이름을 입력합니다.

  3. 프로토콜에서 TCP를 선택합니다.

  4. IP 주소에서 가상 서버의 VIP를 입력합니다.

  5. 포트에서 가상 서버의 TCP 포트를 입력합니다. 부하 분산기는 이 TCP 포트에서 VIP로 전송된 요청을 리슨합니다.

  6. 부하 분산 가상 서버 페이지의 서비스 및 서비스 그룹에서 부하 분산 가상 서버 서비스 그룹 결합 없음을 클릭합니다.

  7. 서비스 그룹 이름 선택에서 상자를 클릭합니다.

  8. 가상 서버에 사용할 서비스 그룹을 선택합니다.

  9. 페이지 상단에서 선택을 클릭합니다.

  10. 결합을 클릭합니다.

위 단계를 7번 반복하면 7개의 각 서비스 그룹에 대해 가상 서버를 사용할 수 있습니다.

구성 확인

VIP가 Citrix ADC에 구성되었는지 확인하려면 각 VIP를 핑합니다.

GKE On-Prem 구성 파일 수정

GKE On-Prem을 설치하기 전에 고정 IP 주소, VIP, 노드 포트 값을 포함하도록 고정 IP YAML 파일 및 GKE On-Prem 구성 파일을 수정합니다.