Udostępnij za pośrednictwem


Monitorowanie operacji skalowania automatycznego za pomocą szczegółowych informacji w usłudze Azure Virtual Desktop

Automatyczne skalowanie umożliwia skalowanie maszyn wirtualnych hosta sesji w puli hostów w górę lub w dół zgodnie z harmonogramem optymalizacji kosztów wdrożenia. Automatyczne skalowanie danych diagnostycznych, zintegrowane ze szczegółowymi informacjami w usłudze Azure Virtual Desktop, umożliwia monitorowanie operacji skalowania, identyfikowanie problemów, które należy rozwiązać, oraz rozpoznawanie możliwości optymalizacji konfiguracji planu skalowania w celu oszczędzania kosztów.

Aby dowiedzieć się więcej na temat automatycznego skalowania, zobacz Plany skalowania automatycznego i przykładowe scenariusze oraz szczegółowe informacje w usłudze Azure Virtual Desktop, zobacz Włączanie szczegółowych informacji w celu monitorowania usługi Azure Virtual Desktop.

Uwaga

Operacje skalowania automatycznego można monitorować tylko za pomocą szczegółowych informacji z pulami hostów w puli. W przypadku pul hostów osobistych można wysyłać dzienniki diagnostyczne autoskalowania do konta magazynu lub centrum zdarzeń. Aby uzyskać więcej informacji, zobacz Konfigurowanie diagnostyki automatycznego skalowania w usłudze Azure Virtual Desktop.

Wymagania wstępne

Aby można było monitorować operacje skalowania automatycznego za pomocą usługi Insights, potrzebne są następujące elementy:

  • Pula hostów w puli z przypisanym planem skalowania. Pule hostów osobistych nie są obsługiwane.

  • Szczegółowe informacje skonfigurowane dla puli hostów i powiązanego z nią obszaru roboczego. Aby dowiedzieć się, jak skonfigurować szczegółowe informacje, zobacz Włączanie szczegółowych informacji w celu monitorowania usługi Azure Virtual Desktop.

  • Konto platformy Azure, które ma przypisane następujące role kontroli dostępu opartej na rolach (RBAC), w zależności od scenariusza:

    Scenariusz Role RBAC Scope
    Konfigurowanie ustawień diagnostycznych Współautor wirtualizacji pulpitu Przypisane do grupy zasobów lub subskrypcji dla pul hostów, obszarów roboczych i hostów sesji.
    Wyświetlanie i wykonywanie zapytań dotyczących danych Czytnik wirtualizacji pulpitu

    Czytelnik usługi Log Analytics
    — Czytelnik wirtualizacji pulpitu przypisany do grupy zasobów lub subskrypcji, w której znajdują się pule hostów, obszary robocze i hosty sesji.

    — Czytelnik usługi Log Analytics przypisany do dowolnego obszaru roboczego usługi Log Analytics używanego w usłudze Azure Virtual Desktop Insights.1

    1. Możesz również utworzyć rolę niestandardową, aby zmniejszyć zakres przypisywania w obszarze roboczym usługi Log Analytics. Aby uzyskać więcej informacji, zobacz Zarządzanie dostępem do obszarów roboczych usługi Log Analytics.

Konfigurowanie ustawień diagnostycznych i weryfikowanie konfiguracji skoroszytu usługi Insights

Najpierw należy upewnić się, że ustawienia diagnostyczne są skonfigurowane do wysyłania niezbędnych dzienników z puli hostów i obszaru roboczego do obszaru roboczego usługi Log Analytics.

Włączanie dzienników automatycznego skalowania dla puli hostów

Oprócz istniejących dzienników puli hostów, które już wysyłasz do obszaru roboczego usługi Log Analytics, należy również wysłać dzienniki skalowania automatycznego dla puli hostów:

  1. Zaloguj się w witrynie Azure Portal.

  2. Na pasku wyszukiwania wpisz Azure Virtual Desktop i wybierz pasujący wpis usługi.

  3. Na stronie przeglądu usługi Azure Virtual Desktop wybierz pozycję Pule hostów, a następnie wybierz pulę hostów w puli, dla której chcesz włączyć dzienniki skalowania automatycznego.

  4. Na stronie przeglądu puli hostów wybierz pozycję Ustawienia diagnostyczne.

  5. Wybierz pozycję Dodaj ustawienie diagnostyczne lub wybierz istniejące ustawienie diagnostyczne do edycji.

  6. Wybierz następujące kategorie co najmniej. Jeśli niektóre z tych kategorii zostały już wybrane dla tej puli hostów w ramach tego ustawienia diagnostycznego lub istniejącego, nie wybieraj ich ponownie, w przeciwnym razie podczas zapisywania ustawienia diagnostycznego zostanie wyświetlony błąd.

    • Punkt kontrolny
    • Błąd
    • Zarządzanie
    • Połączenie
    • HostRegistration
    • AgentHealthStatus
    • Automatyczne skalowanie dzienników dla pul hostów w puli
  7. Aby uzyskać szczegółowe informacje o miejscu docelowym, wybierz pozycję Wyślij do obszaru roboczego usługi Log Analytics.

  8. Wybierz pozycję Zapisz.

Weryfikowanie dzienników obszaru roboczego

Sprawdź, czy wysyłasz już wymagane dzienniki dla obszaru roboczego do obszaru roboczego usługi Log Analytics:

  1. Na stronie przeglądu usługi Azure Virtual Desktop wybierz pozycję Obszary robocze, a następnie wybierz powiązany obszar roboczy dla monitorowanej puli hostów.

  2. Na stronie przeglądu obszaru roboczego wybierz pozycję Ustawienia diagnostyczne.

  3. Wybierz pozycję Edytuj ustawienie.

  4. Upewnij się, że są włączone następujące kategorie.

    • Punkt kontrolny
    • Błąd
    • Zarządzanie
    • Karmić
  5. Aby uzyskać szczegółowe informacje o miejscu docelowym, upewnij się, że wysyłasz dane do tego samego obszaru roboczego usługi Log Analytics co pula hostów.

  6. Jeśli dokonano zmian, wybierz Zapisz.

Weryfikowanie konfiguracji skoroszytu usługi Insights

Należy sprawdzić, czy skoroszyt usługi Insights jest poprawnie skonfigurowany dla puli hostów:

  1. Na stronie przeglądu usługi Azure Virtual Desktop wybierz pozycję Pule hostów, a następnie wybierz monitorowaną pulę hostów w puli.

  2. Na stronie przeglądu puli hostów wybierz pozycję Szczegółowe informacje , jeśli używasz agenta usługi Azure Monitor na hostach sesji lub szczegółowe informacje (starsza wersja), jeśli używasz agenta usługi Log Analytics na hostach sesji.

  3. Upewnij się, że nie występują nierozwiązane problemy z konfiguracją. Jeśli istnieją, zobaczysz komunikaty, takie jak:

    • Usługa Azure Monitor nie jest skonfigurowana dla hostów sesji.
    • Usługa Azure Monitor nie jest skonfigurowana dla wybranej puli hostów AVD.
    • Istnieją hosty sesji, które nie wysyłają danych do oczekiwanego obszaru roboczego usługi Log Analytics.

    Aby rozwiązać te problemy, należy ukończyć konfigurację w odpowiednim skoroszycie. Aby uzyskać więcej informacji, zobacz Włączanie szczegółowych informacji w celu monitorowania usługi Azure Virtual Desktop. Jeśli nie występują problemy z konfiguracją, szczegółowe informacje powinny wyglądać podobnie do poniższej ilustracji:

    Zrzut ekranu przedstawiający przegląd usługi Insights dla puli hostów.

Wyświetlanie szczegółowych informacji o autoskalowaniem

Po skonfigurowaniu ustawień diagnostycznych i zweryfikowaniu konfiguracji skoroszytu usługi Insights możesz wyświetlić szczegółowe informacje dotyczące skalowania automatycznego:

  1. Na stronie przeglądu usługi Azure Virtual Desktop wybierz pozycję Pule hostów, a następnie wybierz pulę hostów w puli, dla której chcesz wyświetlić szczegółowe informacje dotyczące skalowania automatycznego.

  2. Na stronie przeglądu puli hostów wybierz pozycję Szczegółowe informacje , jeśli używasz agenta usługi Azure Monitor na hostach sesji lub szczegółowe informacje (starsza wersja), jeśli używasz agenta usługi Log Analytics na hostach sesji.

  3. Wybierz pozycję Autoskaluj z wiersza kart. W zależności od szerokości ekranu może być konieczne wybranie przycisku wielokropka ... w celu wyświetlenia pełnej listy z funkcją Autoskalowania.

    Zrzut ekranu przedstawiający kartę Przegląd szczegółowych informacji dla puli hostów z wielokropkiem wybranym w celu wyświetlenia pełnej listy z autoskalowaniem.

  4. Szczegółowe informacje zawierają informacje o operacjach autoskalowania dla puli hostów, takich jak wykres zmiany stanu zasilania hostów sesji w puli hostów w czasie i informacje podsumowujące.

    Zrzut ekranu przedstawiający kartę Autoskalowanie szczegółowych informacji dla puli hostów.

Zapytania dotyczące danych automatycznego skalowania w usłudze Log Analytics

Aby uzyskać dodatkowe informacje na temat operacji skalowania automatycznego, możesz użyć uruchamiania zapytań względem danych w usłudze Log Analytics. Dane są zapisywane w WVDAutoscaleEvaluationPooled tabeli. Poniższe sekcje zawierają schemat i przykładowe zapytania. Aby dowiedzieć się, jak uruchamiać zapytania w usłudze Log Analytics, zobacz Samouczek usługi Log Analytics.

Schemat WVDAutoscaleEvaluationPooled

Poniższa tabela zawiera szczegóły schematu WVDAutoscaleEvaluationPooled tabeli, który zawiera wyniki oceny planu skalowania automatycznego w puli hostów. Informacje obejmują akcje Autoskalowanie wykonane na hostach sesji, takie jak ich uruchamianie lub cofanie przydziału, i dlaczego podjęła te akcje. Wpisy rozpoczynające się od Config zawierają wartości konfiguracji planu skalowania dla fazy harmonogramu automatycznego skalowania. ResultType Jeśli wartość to Niepowodzenie, połącz się z tabelą WVDErrors przy użyciu elementu , CorrelationId aby uzyskać więcej szczegółów.

Nazwisko Pisz Opis
ActiveSessionHostCount Int Liczba hostów sesji akceptujących połączenia użytkowników.
ActiveSessionHostsPercent Liczba rzeczywista Procent hostów sesji w puli hostów uznawanych za aktywne przez autoskalowanie.
ConfigCapacityThresholdPercent Liczba rzeczywista Procent progu pojemności.
ConfigMinActiveSessionHostsPercent Liczba rzeczywista Minimalny procent hostów sesji, które powinny być aktywne.
ConfigScheduleName String Nazwa harmonogramu używanego w ocenie.
ConfigSchedulePhase String Faza harmonogramu w czasie oceny.
CorrelationId String Identyfikator GUID wygenerowany dla tej oceny skalowania automatycznego.
ExcludedSessionHostCount Int Liczba hostów sesji wykluczonych z zarządzania autoskalowaniem.
MaxSessionLimitPerSessionHost Int Wartość MaxSessionLimit zdefiniowana w puli hostów. Ta wartość to maksymalna dozwolona liczba sesji użytkownika na hosta sesji.
Properties Dynamiczny Dodatkowe informacje.
ResultType String Stan tego zdarzenia ewaluacyjnego.
ScalingEvaluationStartTime DateTime Sygnatura czasowa (UTC) rozpoczęcia oceny autoskalowaniem.
ScalingPlanResourceId String Identyfikator zasobu planu skalowania automatycznego.
ScalingReasonMessage String Akcje Autoskalowania postanowiły wykonać i dlaczego podjęła te działania.
SessionCount Int Liczba sesji użytkowników; uwzględniane są tylko sesje użytkownika z hostów sesji, które są uznawane za aktywne przez autoskalowania.
SessionOccupancyPercent Liczba rzeczywista Procent pojemności hosta sesji zajmowanej przez sesje użytkownika.
TimeGenerated DateTime Sygnatura czasowa (UTC) wygenerowano to zdarzenie.
TotalSessionHostCount Int Liczba hostów sesji w puli hostów.
UnhealthySessionHostCount Int Liczba hostów sesji w stanie błędu.

Przykład danych

Następujące zapytanie zwraca 10 najnowszych wierszy danych dla autoskalowania:

WVDAutoscaleEvaluationPooled
| take 10

Nieudane oceny z błędami WVDError

Następujące zapytanie koreluje tabele WVDAutoscaleEvaluationPooled i WVDErrors zwraca wpisy, w których kolumna ServiceError w WVDErrors tabeli ma wartość false:

Następujące zapytanie zwraca oceny automatycznego skalowania, które zakończyły się niepowodzeniem, w tym te, które częściowo zakończyły się niepowodzeniem. Zapytanie łączy się również w celu WVDErrors udostępnienia dodatkowych szczegółów błędu, jeśli są dostępne. Odpowiednie wpisy w pliku WVDErrors zawierają tylko wyniki, w których ServiceError ma wartość false:

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

Uruchamianie, cofanie przydziału i wymuszanie operacji wylogowywanie

Następujące zapytanie zwraca liczbę prób operacji uruchomienia hosta sesji, cofnięcie przydziału hosta sesji, a sesja użytkownika wymusza wylogowanie na pulę hostów, nazwę harmonogramu, fazę harmonogramu i dzień:

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

Maksymalna zajętość sesji i aktywne hosty sesji

Następujące zapytanie zwraca maksymalny procent zajętości sesji, liczbę sesji, procent aktywnych hostów sesji i liczbę hostów aktywnej sesji na pulę hostów, nazwę harmonogramu, fazę harmonogramu i dzień:

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

Aby uzyskać więcej informacji na temat czasu udostępniania danych dziennika po zebraniu, zobacz Czas pozyskiwania danych dziennika w usłudze Azure Monitor.