Product Documentation

NetScaler 장비에서 트래픽 부하 분산

Aug 30, 2016

부하 분산 기능은 클라이언트 요청을 여러 서버에 걸쳐 분산시켜 리소스 활용률을 최적화합니다. 제한된 수의 서버가 많은 클라이언트에 서비스를 제공하는 실제 환경에 바탕을 둔 시나리오에서는 서버에 오버로드가 발생하여 서버 팜 성능이 저하될 수 있습니다. Citrix NetScaler 장비는 요청이 수신되면 각 클라이언트 요청을 가장 잘 처리할 수 있는 서버에 전달함으로써 병목 현상을 막을 수 있도록 부하 분산 기준을 사용합니다.

부하 분산을 구성하려면 서버 팜에서 여러 서버를 프록시할 가상 서버를 정의하고 이러한 서버 간에 부하를 분산시킵니다.

클라이언트가 서버 연결을 초기화할 때 가상 서버는 클라이언트 연결을 종료하고 선택된 서버에 대한 연결을 새로 시작하거나 기존 연결을 다시 사용하여 부하 분산을 수행합니다. 부하 분산 기능은 L4(TCP 및 UDP)에서 L7(FTP, HTTP 및 HTTPS)까지 트래픽 관리를 제공합니다.

NetScaler 장비는 부하 분산 방식이라는 여러 가지 알고리즘을 사용하여 서버 간에 부하를 분산시킬 방법을 결정합니다. 기본 부하 분산 방식은 최소 연결 방식입니다.

일반적인 부하 분산 배포는 다음 그림에 설명된 엔터티로 구성됩니다.

그림 1. 부하 분산 아키텍처


엔터티는 다음과 같이 동작합니다.

  • Virtual server(가상 서버). IP 주소, 포트 및 프로토콜로 나타내는 엔터티입니다. 가상 서버 IP 주소(VIP)는 대개 공용 IP 주소입니다. 클라이언트는 이 IP 주소에 연결 요청을 보냅니다. 가상 서버는 서버 모음을 나타냅니다.
  • Service(서비스). 서버 또는 서버에서 실행되는 응용 프로그램의 논리적 표현입니다. 서버의 IP 주소, 포트 및 프로토콜을 나타냅니다. 서비스는 가상 서버에 바인드됩니다.
  • Server object(서버 개체). IP 주소로 나타내는 엔터티입니다. 서버 개체는 서비스를 생성할 때 생성됩니다. 서비스의 IP 주소는 서버 개체의 이름으로 사용됩니다. 서버 개체를 생성한 다음 서버 개체를 사용하여 서비스를 생성할 수도 있습니다.
  • Monitor(모니터). 서비스의 상태를 추적하는 엔터티입니다. 장비는 각 서비스에 바인드된 모니터를 사용하여 정기적으로 서버를 점검합니다. 서버가 지정된 응답 시간 초과 이내에 응답하지 않고 지정된 점검 수를 실패할 경우 서비스는 DOWN(작동 중지)으로 표시됩니다. 그러면 장비가 나머지 서비스 간에 부하 분산을 수행합니다.