Monitorowanie aktualizacji w usłudze Azure Stack Hub przy użyciu punktu końcowego z uprzywilejowanym dostępem

Możesz użyć uprzywilejowanego punktu końcowego do monitorowania postępu przebiegu aktualizacji usługi Azure Stack Hub. Możesz również użyć uprzywilejowanego punktu końcowego, aby wznowić niepowodzenie przebiegu aktualizacji z ostatniego pomyślnego kroku, jeśli portal usługi Azure Stack Hub stanie się niedostępny. Korzystanie z portalu usługi Azure Stack Hub jest zalecaną metodą zarządzania aktualizacjami w usłudze Azure Stack Hub.

Następujące nowe polecenia cmdlet programu PowerShell do zarządzania aktualizacjami znajdują się w aktualizacji 1710 dla zintegrowanych systemów usługi Azure Stack Hub.

Polecenie cmdlet Opis
Get-AzureStackUpdateStatus Zwraca stan aktualnie uruchomionej, ukończonej lub nieudanej aktualizacji. Zawiera ogólny stan operacji aktualizacji i dokument XML, który opisuje zarówno bieżący krok, jak i odpowiedni stan.
Resume-AzureStackUpdate Wznawia aktualizację, która zakończyła się niepowodzeniem w punkcie, w którym zakończyła się niepowodzeniem. W niektórych scenariuszach może być konieczne wykonanie kroków zaradczych przed wznowieniem aktualizacji.

Sprawdź, czy polecenia cmdlet są dostępne

Ponieważ polecenia cmdlet są nowe w pakiecie aktualizacji 1710 dla usługi Azure Stack Hub, proces aktualizacji 1710 musi przejść do określonego punktu, zanim będzie dostępna funkcja monitorowania. Zazwyczaj polecenia cmdlet są dostępne, jeśli stan w portalu administratora wskazuje, że aktualizacja 1710 znajduje się w kroku Ponowne uruchamianie hostów magazynu . W szczególności aktualizacja polecenia cmdlet jest wykonywana w kroku: Uruchamianie kroku 2.6 — aktualizowanie listy dozwolonych aplikacji PrivilegedEndpoint.

Można również określić, czy polecenia cmdlet są dostępne programowo, wykonując zapytanie o listę poleceń z uprzywilejowanego punktu końcowego. Aby wykonać to zapytanie, uruchom następujące polecenia z hosta cyklu życia sprzętu lub stacji roboczej z dostępem uprzywilejowanym. Upewnij się również, że uprzywilejowany punkt końcowy jest zaufanym hostem. Aby uzyskać więcej informacji, zobacz krok 1 uzyskiwania dostępu do uprzywilejowanego punktu końcowego.

  1. Utwórz sesję programu PowerShell na dowolnej maszynie wirtualnej ERCS w środowisku usługi Azure Stack Hub (Prefix-ERCS01, Prefix-ERCS02 lubPrefix-ERCS03). Zastąp prefiks ciągiem prefiksu maszyny wirtualnej specyficznym dla danego środowiska.

    $cred = Get-Credential
    
    $pepSession = New-PSSession -ComputerName <Prefix>-ercs01 -Credential $cred -ConfigurationName PrivilegedEndpoint -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)
    

    Po wyświetleniu monitu o poświadczenia użyj < domeny >usługi Azure Stack Hub\konta cloudadmin lub konta, które jest członkiem grupy CloudAdmins. Dla konta CloudAdmin wprowadź to samo hasło, które zostało podane podczas instalacji konta administratora domeny AzureStackAdmin.

  2. Uzyskaj pełną listę poleceń dostępnych w uprzywilejowanym punkcie końcowym.

    $commands = Invoke-Command -Session $pepSession -ScriptBlock { Get-Command } 
    
  3. Ustal, czy uprzywilejowany punkt końcowy został zaktualizowany.

    $updateManagementModuleName = "Microsoft.Azurestack.UpdateManagement"
     if (($commands | ? Source -eq $updateManagementModuleName)) {
    Write-Host "Privileged endpoint was updated to support update monitoring tools."
     } else {
    Write-Host "Privileged endpoint has not been updated yet. Please try again later."
     } 
    
  4. Wyświetl listę poleceń specyficznych dla modułu Microsoft.AzureStack.UpdateManagement.

    $commands | ? Source -eq $updateManagementModuleName 
    

    Na przykład:

    $commands | ? Source -eq $updateManagementModuleName
    
    CommandType     Name                                               Version    Source                                                  PSComputerName
     -----------     ----                                               -------    ------                                                  --------------
    Function        Get-AzureStackUpdateStatus                         0.0        Microsoft.Azurestack.UpdateManagement                   Contoso-ercs01
    Function        Resume-AzureStackUpdate                            0.0        Microsoft.Azurestack.UpdateManagement                   Contoso-ercs01
    

Używanie poleceń cmdlet rozwiązania Update Management

Uwaga

Uruchom następujące polecenia z hosta cyklu życia sprzętu lub stacji roboczej z dostępem uprzywilejowanym. Upewnij się również, że uprzywilejowany punkt końcowy jest zaufanym hostem. Aby uzyskać więcej informacji, zobacz krok 1 uzyskiwania dostępu do uprzywilejowanego punktu końcowego.

Nawiązywanie połączenia z uprzywilejowanym punktem końcowym i przypisywanie zmiennej sesji

Uruchom następujące polecenia, aby utworzyć sesję programu PowerShell na dowolnej maszynie wirtualnej ERCS w środowisku usługi Azure Stack Hub (Prefix-ERCS01, Prefix-ERCS02 lubPrefix-ERCS03) i przypisać zmienną sesji.

$cred = Get-Credential

$pepSession = New-PSSession -ComputerName <Prefix>-ercs01 -Credential $cred -ConfigurationName PrivilegedEndpoint -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)

Po wyświetleniu monitu o poświadczenia użyj < domeny >usługi Azure Stack Hub\konta cloudadmin lub konta, które jest członkiem grupy CloudAdmins. Dla konta CloudAdmin wprowadź to samo hasło, które zostało podane podczas instalacji konta administratora domeny AzureStackAdmin.

Uzyskiwanie stanu wysokiego poziomu bieżącego przebiegu aktualizacji

Aby uzyskać ogólny stan bieżącego przebiegu aktualizacji, uruchom następujące polecenia:

$statusString = Invoke-Command -Session $pepSession -ScriptBlock { Get-AzureStackUpdateStatus -StatusOnly }

$statusString.Value 

Możliwe wartości to:

  • Uruchomienie
  • Ukończone
  • Niepowodzenie
  • Anulowane

Możesz wielokrotnie uruchamiać te polecenia, aby zobaczyć najbardziej aktualny stan. Nie musisz ponownie ustanowić połączenia, aby ponownie sprawdzić.

Uzyskiwanie pełnego stanu przebiegu aktualizacji ze szczegółami

Pełne podsumowanie przebiegu aktualizacji można pobrać jako ciąg XML. Możesz napisać ciąg do pliku do badania lub przekonwertować go na dokument XML i użyć programu PowerShell, aby go przeanalizować. Następujące polecenie analizuje kod XML, aby uzyskać hierarchiczną listę aktualnie uruchomionych kroków:

[xml]$updateStatus = Invoke-Command -Session $pepSession -ScriptBlock { Get-AzureStackUpdateStatus }

$updateStatus.SelectNodes("//Step[@Status='InProgress']")

W poniższym przykładzie krok najwyższego poziomu (aktualizacja chmury) ma podrzędny plan aktualizacji i ponownego uruchomienia hostów magazynu. Pokazuje on, że plan Ponowne uruchamianie hostów magazynu aktualizuje usługę Blob Storage na jednym z hostów.

[xml]$updateStatus = Invoke-Command -Session $pepSession -ScriptBlock { Get-AzureStackUpdateStatus }

$updateStatus.SelectNodes("//Step[@Status='InProgress']") 

    FullStepIndex : 2
    Index         : 2
    Name          : Cloud Update
    Description   : Perform cloud update.
    StartTimeUtc  : 2017-10-13T12:50:39.9020351Z
    Status        : InProgress
    Task          : Task
    
    FullStepIndex  : 2.9
    Index          : 9
    Name           : Restart Storage Hosts
    Description    : Restart Storage Hosts.
    EceErrorAction : Stop
    StartTimeUtc   : 2017-10-13T15:44:06.7431447Z
    Status         : InProgress
    Task           : Task
    
    FullStepIndex : 2.9.2
    Index         : 2
    Name          : PreUpdate ACS Blob Service
    Description   : Check function level, update deployment artifacts, configure Blob service settings
    StartTimeUtc  : 2017-10-13T15:44:26.0708525Z
    Status        : InProgress
    Task          : Task

Wznawianie nieudanej operacji aktualizacji

Jeśli aktualizacja zakończy się niepowodzeniem, możesz wznowić przebieg aktualizacji, w którym została przerwana.

Invoke-Command -Session $pepSession -ScriptBlock { Resume-AzureStackUpdate } 

Rozwiązywanie problemów

Uprzywilejowany punkt końcowy jest dostępny na wszystkich maszynach wirtualnych ERCS w środowisku usługi Azure Stack Hub. Ponieważ połączenie nie jest nawiązywane do punktu końcowego o wysokiej dostępności, mogą wystąpić sporadyczne przerwy, ostrzeżenia lub komunikaty o błędach. Te komunikaty mogą wskazywać, że sesja została rozłączona lub że wystąpił błąd podczas komunikacji z usługą ECE. Takie zachowanie jest oczekiwane. Możesz ponowić próbę wykonania operacji w ciągu kilku minut lub utworzyć nową sesję uprzywilejowanego punktu końcowego na jednej z pozostałych maszyn wirtualnych ERCS.

Aby uzyskać więcej informacji na temat rozwiązywania problemów z aktualizacjami, zobacz Rozwiązywanie problemów z usługą Azure Stack

Następne kroki