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.
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.
Uzyskaj pełną listę poleceń dostępnych w uprzywilejowanym punkcie końcowym.
$commands = Invoke-Command -Session $pepSession -ScriptBlock { Get-Command }
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." }
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