Övervaka uppdateringar i Azure Stack Hub med hjälp av en privilegierad slutpunkt
Du kan använda den privilegierade slutpunkten för att övervaka förloppet för en Azure Stack Hub-uppdateringskörning. Du kan också använda den privilegierade slutpunkten för att återuppta en misslyckad uppdateringskörning från det senaste lyckade steget om Azure Stack Hub-portalen blir otillgänglig. Att använda Azure Stack Hub-portalen är den rekommenderade metoden för att hantera uppdateringar i Azure Stack Hub.
Följande nya PowerShell-cmdletar för uppdateringshantering ingår i 1710-uppdateringen för Azure Stack Hub-integrerade system.
Cmdlet | Beskrivning |
---|---|
Get-AzureStackUpdateStatus |
Returnerar statusen för uppdateringen som körs, slutförs eller misslyckas. Ger status på hög nivå för uppdateringsåtgärden och ett XML-dokument som beskriver både det aktuella steget och motsvarande tillstånd. |
Resume-AzureStackUpdate |
Återupptar en misslyckad uppdatering vid den tidpunkt då den misslyckades. I vissa scenarier kan du behöva slutföra åtgärdsstegen innan du återupptar uppdateringen. |
Kontrollera att cmdletarna är tillgängliga
Eftersom cmdletarna är nya i 1710-uppdateringspaketet för Azure Stack Hub måste 1710-uppdateringsprocessen komma till en viss punkt innan övervakningsfunktionen är tillgänglig. Vanligtvis är cmdletarna tillgängliga om statusen i administratörsportalen anger att 1710-uppdateringen sker i steget Starta om lagringsvärdar . Mer specifikt sker cmdlet-uppdateringen under Steg: Kör steg 2.6 – Uppdatera privilegedEndpoint allowlist.
Du kan också avgöra om cmdletarna är tillgängliga programmatiskt genom att köra frågor mot kommandolistan från den privilegierade slutpunkten. Om du vill göra den här frågan kör du följande kommandon från maskinvarulivscykelvärden eller från en arbetsstation för privilegierad åtkomst. Kontrollera också att den privilegierade slutpunkten är en betrodd värd. Mer information finns i steg 1 i Åtkomst till den privilegierade slutpunkten.
Skapa en PowerShell-session på någon av de virtuella ERCS-datorerna (VM) i din Azure Stack Hub-miljö (Prefix-ERCS01, Prefix-ERCS02 eller Prefix-ERCS03). Ersätt Prefix med den VM-prefixsträng som är specifik för din miljö.
$cred = Get-Credential $pepSession = New-PSSession -ComputerName <Prefix>-ercs01 -Credential $cred -ConfigurationName PrivilegedEndpoint -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)
När du uppmanas att ange autentiseringsuppgifter använder du Azure Stack Hub-domänen><\cloudadmin-kontot eller ett konto som är medlem i gruppen CloudAdmins. För CloudAdmin-kontot anger du samma lösenord som angavs under installationen av domänadministratörskontot för AzureStackAdmin.
Hämta den fullständiga listan över kommandon som är tillgängliga i den privilegierade slutpunkten.
$commands = Invoke-Command -Session $pepSession -ScriptBlock { Get-Command }
Kontrollera om den privilegierade slutpunkten har uppdaterats.
$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." }
Ange de kommandon som är specifika för modulen Microsoft.AzureStack.UpdateManagement.
$commands | ? Source -eq $updateManagementModuleName
Exempel:
$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
Använda cmdletar för uppdateringshantering
Anteckning
Kör följande kommandon från maskinvarulivscykelns värd eller från en arbetsstation för privilegierad åtkomst. Kontrollera också att den privilegierade slutpunkten är en betrodd värd. Mer information finns i steg 1 i Åtkomst till den privilegierade slutpunkten.
Ansluta till den privilegierade slutpunkten och tilldela sessionsvariabeln
Kör följande kommandon för att skapa en PowerShell-session på någon av de virtuella ERCS-datorerna i din Azure Stack Hub-miljö (Prefix-ERCS01, Prefix-ERCS02 eller Prefix-ERCS03) och för att tilldela en sessionsvariabel.
$cred = Get-Credential
$pepSession = New-PSSession -ComputerName <Prefix>-ercs01 -Credential $cred -ConfigurationName PrivilegedEndpoint -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)
När du uppmanas att ange autentiseringsuppgifter använder du Azure Stack Hub-domänen><\cloudadmin-kontot eller ett konto som är medlem i gruppen CloudAdmins. För CloudAdmin-kontot anger du samma lösenord som angavs under installationen av domänadministratörskontot för AzureStackAdmin.
Hämta status på hög nivå för den aktuella uppdateringskörningen
Kör följande kommandon för att få status på hög nivå för den aktuella uppdateringskörningen:
$statusString = Invoke-Command -Session $pepSession -ScriptBlock { Get-AzureStackUpdateStatus -StatusOnly }
$statusString.Value
Möjliga värden är:
- Körs
- Slutförd
- Misslyckad
- Avbrutna
Du kan köra dessa kommandon upprepade gånger för att se den senaste statusen. Du behöver inte återupprätta en anslutning för att kontrollera igen.
Hämta fullständig uppdateringskörningsstatus med information
Du kan hämta sammanfattningen av den fullständiga uppdateringskörningen som en XML-sträng. Du kan skriva strängen till en fil för undersökning eller konvertera den till ett XML-dokument och använda PowerShell för att parsa den. Följande kommando parsar XML för att hämta en hierarkisk lista över de steg som körs:
[xml]$updateStatus = Invoke-Command -Session $pepSession -ScriptBlock { Get-AzureStackUpdateStatus }
$updateStatus.SelectNodes("//Step[@Status='InProgress']")
I följande exempel har steget på den översta nivån (Cloud Update) en underordnad plan för att uppdatera och starta om lagringsvärdarna. Den visar att planen Starta om lagringsvärdar uppdaterar Blob Storage-tjänsten på en av värdarna.
[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
Återuppta en misslyckad uppdateringsåtgärd
Om uppdateringen misslyckas kan du återuppta uppdateringskörningen där den slutade.
Invoke-Command -Session $pepSession -ScriptBlock { Resume-AzureStackUpdate }
Felsöka
Den privilegierade slutpunkten är tillgänglig på alla virtuella ERCS-datorer i Azure Stack Hub-miljön. Eftersom anslutningen inte görs till en slutpunkt med hög tillgänglighet kan det uppstå tillfälliga avbrott, varningar eller felmeddelanden. Dessa meddelanden kan tyda på att sessionen var frånkopplad eller att det uppstod ett fel vid kommunikation med ECE-tjänsten. Det här beteendet är förväntat. Du kan försöka utföra åtgärden igen på några minuter eller skapa en ny privilegierad slutpunktssession på en av de andra virtuella ERCS-datorerna.
Mer information om felsökning av uppdateringar finns i Felsökning av Azure Stack