다음을 통해 공유


Azure Virtual Desktop의 Insights를 사용하여 자동 크기 조정 작업 모니터링

자동 크기 조정을 사용하면 호스트 풀의 세션 호스트 VM(가상 머신)을 일정에 따라 스케일 업하거나 스케일 다운하여 배포 비용을 최적화할 수 있습니다. Azure Virtual Desktop의 Insights와 통합된 자동 크기 조정 진단 데이터를 사용하면 크기 조정 작업을 모니터링하고, 해결해야 하는 문제를 식별하고, 크기 조정 계획 구성을 최적화하여 비용을 절감할 수 있는 기회를 인식할 수 있습니다.

자동 크기 조정에 대해 자세히 알아보려면 자동 크기 조정 계획 및 시나리오 예를 참조하고, Azure Virtual Desktop의 Insights에 대해서는 Insights를 사용하여 Azure Virtual Desktop 모니터링을 참조하세요.

참고 항목

풀링된 호스트 풀이 있는 Insights를 통해서만 자동 크기 조정 작업을 모니터링할 수 있습니다. 개인 호스트 풀의 경우 자동 크기 조정에 대한 진단 로그를 스토리지 계정 또는 이벤트 허브로 보낼 수 있습니다. 자세한 내용은 Azure Virtual Desktop에서 자동 크기 조정에 대한 진단 설정을 참조 하세요.

필수 조건

Insights를 사용하여 자동 크기 조정 작업을 모니터링하려면 다음이 필요합니다.

진단 설정 구성 및 Insights 통합 문서 구성 확인

먼저 호스트 풀 및 작업 영역에서 Log Analytics 작업 영역으로 필요한 로그를 보내도록 진단 설정이 구성되어 있는지 확인해야 합니다.

호스트 풀에 대한 자동 크기 조정 로그 사용

Log Analytics 작업 영역에 이미 보내고 있는 기존 호스트 풀 로그 외에도 호스트 풀에 대한 자동 크기 조정 로그도 보내야 합니다.

  1. Azure Portal에 로그인합니다.

  2. 검색 창에서 Azure Virtual Desktop을 입력하고 일치하는 서비스 항목을 선택합니다.

  3. Azure Virtual Desktop 개요 페이지에서 호스트 풀을 선택한 다음 자동 크기 조정 로그를 사용하려는 풀링된 호스트 풀을 선택합니다.

  4. 호스트 풀 개요 페이지에서 진단 설정을 선택합니다.

  5. 진단 설정 추가를 선택하거나 편집할 기존 진단 설정을 선택합니다.

  6. 최소한 다음 범주를 선택합니다. 이 진단 설정 또는 기존 항목의 일부로 이 호스트 풀에 대해 이러한 범주 중 일부를 이미 선택한 경우 다시 선택하지 마세요. 그러지 않으면 진단 설정을 저장할 때 오류가 발생합니다.

    • Checkpoint
    • 오류
    • 관리
    • Connection
    • HostRegistration
    • AgentHealthStatus
    • 풀링된 호스트 풀의 로그 자동 크기 조정
  7. 대상 세부 정보에서 Log Analytics 작업 영역으로 보내기를 선택합니다.

  8. 저장을 선택합니다.

작업 영역 로그 확인

작업 영역에 필요한 로그를 이미 Log Analytics 작업 영역으로 보내고 있는지 확인합니다.

  1. Azure Virtual Desktop 개요 페이지에서 작업 영역을 선택한 다음 모니터링 중인 호스트 풀에 대한 관련 작업 영역을 선택합니다.

  2. 작업 영역 개요 페이지에서 진단 설정을 선택합니다.

  3. 설정 편집을 선택합니다.

  4. 다음 범주가 사용하도록 설정되어 있는지 확인합니다.

    • Checkpoint
    • 오류
    • 관리
    • 피드
  5. 대상 세부 정보의 경우 호스트 풀과 동일한 Log Analytics 작업 영역으로 데이터를 보내고 있는지 확인합니다.

  6. 변경한 경우 저장을 선택합니다.

Insights 통합 문서 구성 확인

Insights 통합 문서가 호스트 풀에 대해 올바르게 구성되었는지 확인해야 합니다.

  1. Azure Virtual Desktop 개요 페이지에서 호스트 풀을 선택한 다음 모니터링하고 있는 풀링된 호스트 풀을 선택합니다.

  2. 호스트 풀 개요 페이지에서, 세션 호스트에서 Azure Monitor 에이전트를 사용하는 경우에는 인사이트를 선택하고 세션 호스트에서 Log Analytics 에이전트를 사용하는 경우에는 인사이트(레거시)를 선택합니다.

  3. 해결되지 않은 구성 문제가 없는지 확인합니다. 문제가 있는 경우 다음과 같은 메시지가 표시됩니다.

    • 세션 호스트에 대해 Azure Monitor가 구성되지 않았습니다.
    • 선택한 AVD 호스트 풀에 대해 Azure Monitor가 구성되지 않았습니다.
    • 예상 Log Analytics 작업 영역으로 데이터를 보내지 않는 세션 호스트가 있습니다.

    이러한 문제를 해결하려면 관련 통합 문서에서 구성을 완료해야 합니다. 자세한 내용은 Insights를 사용하도록 설정하여 Azure Virtual Desktop 모니터링을 참조하세요. 구성 문제가 없으면 Insights는 다음 이미지와 유사하게 표시됩니다.

    호스트 풀에 대한 Insights 개요를 보여 주는 스크린샷.

자동 크기 조정 인사이트 보기

진단 설정을 구성하고 Insights 통합 문서 구성을 확인한 후에는 자동 크기 조정사이트를 볼 수 있습니다.

  1. Azure Virtual Desktop 개요 페이지에서 호스트 풀을 선택한 다음 자동 크기 조정 정보를 보려는 풀링된 호스트 풀을 선택합니다.

  2. 호스트 풀 개요 페이지에서, 세션 호스트에서 Azure Monitor 에이전트를 사용하는 경우에는 인사이트를 선택하고 세션 호스트에서 Log Analytics 에이전트를 사용하는 경우에는 인사이트(레거시)를 선택합니다.

  3. 탭 행에서 자동 크기 조정을 선택합니다. 디스플레이 너비에 따라 자동 크기 조정으로 전체 목록을 표시하려면 줄임표 ... 단추를 선택해야 할 수도 있습니다.

    자동 크기 조정으로 전체 목록을 표시하기 위해 선택된 줄임표가 있는 호스트 풀에 대한 Insights의 개요 탭을 보여 주는 스크린샷.

  4. Insights에는 시간 경과에 따른 호스트 풀에 있는 세션 호스트의 전원 상태 변화 그래프 및 요약 정보 등 호스트 풀의 자동 크기 조정 작업에 대한 정보가 표시됩니다.

    호스트 풀에 대한 Insights의 자동 크기 조정 탭을 보여 주는 스크린샷.

Log Analytics의 자동 크기 조정 데이터에 대한 쿼리

자동 크기 조정 작업에 대한 추가 정보를 보려면 Log Analytics의 데이터에 대해 쿼리 실행을 사용할 수 있습니다. 데이터는 WVDAutoscaleEvaluationPooled 테이블에 기록됩니다. 다음 섹션에는 스키마와 몇 가지 쿼리 예가 포함되어 있습니다. Log Analytics에서 쿼리를 실행하는 방법을 알아보려면 Log Analytics 자습서을 참조하세요.

WVDAutoscaleEvaluationPooled 스키마

다음 표에서는 호스트 풀에 대한 자동 크기 조정 계획 평가 결과가 포함된 WVDAutoscaleEvaluationPooled 테이블의 스키마를 자세히 설명합니다. 정보에는 세션 호스트 시작 또는 할당 취소 등 자동 크기 조정이 세션 호스트에서 수행한 작업과 해당 작업을 수행한 이유가 포함됩니다. Config로 시작하는 항목에는 자동 크기 조정 일정 단계에 대한 크기 조정 계획 구성 값이 포함되어 있습니다. ResultType 값이 실패인 경우 CorrelationId를 사용하여 WVDErrors 테이블에 조인하여 자세한 내용을 확인합니다.

속성 형식 설명
ActiveSessionHostCount 정수 사용자 연결을 수락하는 세션 호스트 수입니다.
ActiveSessionHostsPercent 두 배 자동 크기 조정에서 활성으로 간주되는 호스트 풀의 세션 호스트 비율입니다.
ConfigCapacityThresholdPercent 두 배 용량 임계값 비율입니다.
ConfigMinActiveSessionHostsPercent 두 배 활성화되어야 하는 세션 호스트의 최소 비율입니다.
ConfigScheduleName 문자열 평가에 사용된 일정의 이름입니다.
ConfigSchedulePhase 문자열 평가 시점의 일정 단계입니다.
CorrelationId 문자열 이 자동 크기 조정 평가를 위해 생성된 GUID입니다.
ExcludedSessionHostCount 정수 자동 크기 조정 관리에서 제외된 세션 호스트 수입니다.
MaxSessionLimitPerSessionHost 정수 호스트 풀에 정의된 MaxSessionLimit 값입니다. 이 값은 세션 호스트당 허용되는 최대 사용자 세션 수입니다.
Properties 동적 추가 정보
ResultType 문자열 이 평가 이벤트의 상태입니다.
ScalingEvaluationStartTime DateTime 자동 크기 조정 평가가 시작된 타임스탬프(UTC)입니다.
ScalingPlanResourceId 문자열 자동 크기 조정 계획의 리소스 ID입니다.
ScalingReasonMessage 문자열 Autoscale이 수행하기로 결정한 작업과 해당 작업을 수행한 이유입니다.
SessionCount 정수 사용자 세션 수 자동 크기 조정에 의해 활성으로 간주되는 세션 호스트의 사용자 세션만 포함됩니다.
SessionOccupancyPercent 두 배 사용자 세션이 차지하는 세션 호스트 용량의 비율입니다.
TimeGenerated DateTime 이 이벤트가 생성된 타임스탬프(UTC)입니다.
TotalSessionHostCount 정수 호스트 풀의 세션 호스트 수입니다.
UnhealthySessionHostCount 정수 결함이 있는 상태의 세션 호스트 수입니다.

데이터 샘플

다음 쿼리는 자동 크기 조정에 대한 가장 최근 데이터 행 10개를 반환합니다.

WVDAutoscaleEvaluationPooled
| take 10

WVDErrors로 인한 평가 실패

다음 쿼리는 테이블 WVDAutoscaleEvaluationPooledWVDErrors를 상호 연결하고 WVDErrorsServiceError 열이 false인 항목을 반환합니다.

다음 쿼리는 실패한 자동 크기 조정 평가를 반환합니다(부분적으로 실패한 평가 포함). 또한 쿼리는 WVDErrors에 조인되어 가능한 경우 더 많은 오류 세부 정보를 제공합니다. WVDErrors의 해당 항목에는 ServiceError가 false인 결과만 포함됩니다.

WVDAutoscaleEvaluationPooled
| where ResultType != "Succeeded"
| join kind=leftouter WVDErrors
    on CorrelationId
| order by _ResourceId asc, TimeGenerated asc, CorrelationId, TimeGenerated1 asc

로그오프 작업 시작, 할당 취소 및 강제 실행

다음 쿼리는 호스트 풀, 일정 이름, 일정 단계 및 요일별로 세션 호스트 시작, 세션 호스트 할당 취소 및 사용자 세션 강제 로그오프 작업을 시도한 횟수를 반환합니다.

WVDAutoscaleEvaluationPooled
| where ResultType == "Succeeded"
| extend properties = parse_json(Properties)
| extend BeganStartVmCount = toint(properties.BeganStartVmCount)
| extend BeganDeallocateVmCount = toint(properties.BeganDeallocateVmCount)
| extend BeganForceLogoffOnSessionHostCount = toint(properties.BeganForceLogoffOnSessionHostCount)
| summarize sum(BeganStartVmCount), sum(BeganDeallocateVmCount), sum(BeganForceLogoffOnSessionHostCount) by _ResourceId, bin(TimeGenerated, 1d), ConfigScheduleName, ConfigSchedulePhase
| order by _ResourceId asc, TimeGenerated asc, ConfigScheduleName, ConfigSchedulePhase asc

최대 세션 점유 및 활성 세션 호스트

다음 쿼리는 최대 세션 점유율 백분율, 세션 수, 활성 세션 호스트 백분율, 호스트 풀당 활성 세션 호스트 수, 일정 이름, 일정 단계 및 날짜를 반환합니다.

WVDAutoscaleEvaluationPooled
| where ResultType == "Succeeded"
| summarize max(SessionOccupancyPercent), max(SessionCount), max(ActiveSessionHostsPercent), max(ActiveSessionHostCount) by _ResourceId, bin(TimeGenerated, 1d), ConfigScheduleName, ConfigSchedulePhase
| order by _ResourceId asc, TimeGenerated asc, ConfigScheduleName, ConfigSchedulePhase asc

컬렉션 후 로그 데이터를 사용할 수 있게 되는 시간에 대한 자세한 내용은 Azure Monitor의 로그 데이터 수집 시간을 참조하세요.