공용 부하 분산 장치 구성

완료됨

의료 포털에 대한 솔루션 설계자는 클라이언트 브라우저에서 웹 팜의 가상 머신으로 부하를 분산해야 합니다. 부하 분산 장치를 설정하고 부하를 분산하도록 가상 머신을 구성해야 합니다.

공용 부하 분산 장치는 들어오는 트래픽의 공용 IP 주소와 포트 번호를 백 엔드 풀에 있는 가상 머신의 프라이빗 IP 주소 및 포트 번호에 매핑합니다. 그러면 클라이언트에게 응답이 반환됩니다. 부하 분산 규칙을 적용하여 특정 유형의 트래픽을 여러 가상 머신 또는 서비스에 배포할 수 있습니다.

배포 모드

기본적으로 Azure Load Balancer는 네트워크 트래픽을 가상 머신 인스턴스에 고르게 분산시킵니다. 다른 동작이 필요한 경우에도 다음과 같은 배포 모드를 사용할 수 있습니다.

  • 5 튜플 해시: 부하 분산 장치의 기본 배포 모드는 5 튜플 해시입니다. 튜플은 원본 IP, 원본 포트, 대상 IP, 대상 포트, 프로토콜 유형으로 구성됩니다. 원본 포트가 해시에 포함되고 원본 포트는 세션마다 달라지기 때문에 클라이언트는 세션마다 다른 가상 머신으로 리디렉팅될 수 있습니다.

    해시 기반 배포가 작동하는 방식을 보여 주는 다이어그램.

  • 원본 IP 선호도: 이 배포 모드는 세션 선호도 또는 클라이언트 IP 선호도라고도 합니다. 사용 가능한 서버에 트래픽을 매핑하기 위해 원본 IP 선호도 모드는 2 튜플 해시(원본 IP 주소 및 대상 IP 주소에서) 또는 3 튜플 해시(원본 IP 주소, 대상 IP 주소, 프로토콜 유형에서)를 사용합니다. 해시는 지정된 클라이언트의 요청이 항상 부하 분산 장치 뒤에 있는 동일한 가상 머신에 전송되도록 합니다.

    세션 선호도의 작동 방식을 보여 주는 다이어그램.

배포 모드 선택

의료 포털 예제에서 프레젠테이션 계층의 개발자 요구 사항은 사용자가 포털과 상호 작용할 때 로그인한 사용자의 프로필을 저장하는 데 메모리 내 세션을 사용하는 것이라고 가정해 봅시다.

이 시나리오에서 부하 분산 장치는 사용자의 세션을 유지하기 위해 원본 IP 선호도를 제공해야 합니다. 해당 IP 주소는 동일한 서버로 전달되기 때문에 클라이언트가 먼저 연결된 가상 머신에만 프로필이 저장됩니다. 부하 분산 장치 엔드포인트를 만들 때 다음 PowerShell 예제를 사용하여 배포 모드를 지정해야 합니다.

$lb = Get-AzLoadBalancer -Name MyLb -ResourceGroupName MyResourceGroup
$lb.LoadBalancingRules[0].LoadDistribution = 'sourceIp'
Set-AzLoadBalancer -LoadBalancer $lb

Azure Portal을 통해 세션 지속성을 추가하는 방법은 다음과 같습니다.

  1. Azure Portal에서 Load Balancer 리소스를 선택합니다.

  2. 설정 창 아래의 부하 분산 규칙 페이지에서 관련 부하 분산 규칙을 선택합니다.

    Azure Portal에서 부하 분산 규칙을 ​​선택하는 방법을 보여 주는 스크린샷.

  3. 부하 분산 규칙 설정 페이지에서 세션 지속성 값을 없음에서 클라이언트 IP로 변경합니다.

Azure Portal에서 IP 선호도를 설정하는 방법을 보여 주는 스크린샷

부하 분산 장치 및 원격 데스크톱 게이트웨이

원격 데스크톱 게이트웨이는 인터넷상의 클라이언트가 방화벽을 통해 개인 네트워크상의 원격 데스크톱 서버에 RDP(원격 데스크톱 프로토콜) 연결을 할 수 있도록 해주는 Windows 서비스입니다. Load Balancer의 기본 5 튜플 해시는 이 서비스와 호환되지 않습니다. 원격 데스크톱 서버에서 부하 분산 장치를 사용하려면 원본 IP 선호도를 사용합니다.

부하 분산 장치 및 미디어 업로드

원본 IP 선호도에 대한 다른 사용 사례는 미디어 업로드입니다. 많은 구현에서 클라이언트는 TCP(Transmission Control Protocol)를 통해 세션을 시작하고 대상 IP 주소에 연결합니다. 이 연결은 진행률을 모니터링하기 위해 업로드 내내 열려 있지만, 파일은 별도의 UDP(User Datagram Protocol) 프로토콜을 통해 업로드됩니다.

5 튜플 해시를 사용하면 부하 분산 장치가 TCP 및 UDP 연결을 다른 대상 IP 주소로 보내고 업로드가 성공적으로 완료되지 않습니다. 원본 IP 선호도를 사용하여 이 문제를 해결할 수 있습니다.