Azure Virtual Desktop의 호스트 풀 부하 분산 알고리즘
Azure Virtual Desktop은 풀링된 호스트 풀에 대한 두 가지 부하 분산 알고리즘을 지원합니다. 각 알고리즘은 사용자가 원격 세션을 시작할 때 사용되는 세션 호스트를 결정합니다. 사용자가 항상 호스트 풀 내의 세션 호스트에 1:1 매핑이 있기 때문에 부하 분산은 개인 호스트 풀에 적용되지 않습니다.
풀링된 호스트 풀에 사용할 수 있는 부하 분산 알고리즘은 다음과 같습니다.
호스트 풀의 세션 호스트에 새 사용자 세션을 균등하게 분산하는 것을 목표로 하는 폭 우선. 세션 수에 대한 최대 세션 제한을 지정할 필요가 없습니다.
최대 세션 제한에 도달할 때까지 한 세션 호스트에서 새 사용자 세션을 계속 시작하는 깊이 우선. 세션 제한에 도달하면 새 사용자 연결은 세션 제한에 도달할 때까지 호스트 풀의 다음 세션 호스트로 전달됩니다.
풀링된 호스트 풀당 한 번에 하나의 부하 분산만 구성할 수 있지만 호스트 풀을 만든 후에 사용되는 부하 분산을 변경할 수 있습니다. 그러나 두 부하 분산 알고리즘은 다음 동작을 공유합니다.
사용자가 호스트 풀에 이미 활성 또는 연결이 끊긴 세션이 있고 다시 로그인하는 경우 부하 분산 장치는 기존 세션을 사용하여 세션 호스트로 성공적으로 리디렉션됩니다. 이 동작은 해당 세션 호스트에 대해 드레이닝 모드를 사용하도록 설정한 경우에도 적용됩니다.
사용자에게 호스트 풀의 세션 호스트에 세션이 아직 없는 경우 부하 분산 장치는 드레이닝 모드가 활성화된 세션 호스트를 고려하지 않습니다.
활성 사용자 세션이 있는 동안 세션 호스트의 최대 세션 제한을 낮추면 변경 내용이 기존 사용자 세션에 영향을 미치지 않습니다.
폭 우선 부하 분산 알고리즘
폭 우선 부하 분산 알고리즘을 사용하면 세션 호스트 간에 사용자 세션을 배포하여 세션 성능을 최적화할 수 있습니다. 폭 우선은 CPU, 메모리 및 디스크와 같은 세션 호스트 리소스가 일반적으로 덜 경합되므로 원격 리소스에 연결하는 사용자에게 최상의 환경을 제공하려는 조직에 적합합니다.
폭 우선 알고리즘은 먼저 새 연결을 허용하는 호스트 풀의 세션 호스트를 쿼리합니다. 그런 다음 이 알고리즘은 세션이 가장 적은 사용 가능한 세션 호스트 집합의 절반에서 무작위로 세션 호스트를 선택합니다. 예를 들어 11, 12, 13, 14, 15, 16, 17, 18 및 19 세션이 있는 9개의 세션 호스트가 있는 경우 새 세션이 가장 적은 세션이 있는 세션 호스트로 자동으로 이동하지 않습니다. 대신, 임의로 가장 적은 세션이 있는 처음 5개의 세션 호스트 중 어느 호스트로 이동할 수 있습니다. 무작위화로 인해 일부 세션이 모든 세션 호스트에 균등하게 분산되지 않을 수 있습니다.
깊이 우선 부하 분산 알고리즘
깊이 우선 부하 분산 알고리즘은 한 번에 하나의 세션 호스트를 포화하는 것을 목표로 합니다. 이 알고리즘은 호스트 풀에서 사용할 수 있는 세션 호스트 수를 보다 세부적으로 제어하려는 비용에 민감한 조직에 적합하므로 사용자가 적을 때 더 쉽게 축소할 수 있습니다.
깊이 우선 알고리즘은 먼저 새 연결을 허용하고 최대 세션 제한을 초과하지 않은 세션 호스트를 쿼리합니다. 그런 다음 이 알고리즘은 세션 수가 가장 많은 세션 호스트를 선택합니다. 연결된 경우 알고리즘은 쿼리의 첫 번째 세션 호스트를 선택합니다.
깊이 우선 알고리즘을 사용하는 경우 최대 세션 제한을 설정해야 합니다. Azure Virtual Desktop Insights를 사용하여 각 세션 호스트의 세션 수 및 세션 호스트 성능을 모니터링하여 사용자 환경에 가장 적합한 최대 세션 제한을 결정할 수 있습니다.
Important
모든 세션 호스트가 최대 세션 제한에 도달하면 제한을 늘리거나 더 많은 세션 호스트를 호스트 풀에 추가해야 합니다.
다음 단계
호스트 풀에 대한 부하 분산을 구성구성 방법을 알아봅니다.
자동 크기 조정이 호스트 풀에서 사용 가능한 세션 호스트 수를 자동으로 조정하는 방법을 이해합니다.