Monitorare gli aggiornamenti nell'hub di Azure Stack tramite l'endpoint con privilegiMonitor updates in Azure Stack Hub using the privileged endpoint

È possibile usare l' endpoint con privilegi per monitorare lo stato di avanzamento di un'operazione di aggiornamento dell'hub Azure stack.You can use the privileged endpoint to monitor the progress of an Azure Stack Hub update run. È anche possibile usare l'endpoint con privilegi per riprendere l'esecuzione di un aggiornamento non riuscito dall'ultimo passaggio corretto se il portale di Azure Stack Hub non è più disponibile.You can also use the privileged endpoint to resume a failed update run from the last successful step should the Azure Stack Hub portal become unavailable. L'uso del portale Azure Stack Hub è il metodo consigliato per gestire gli aggiornamenti nell'hub Azure Stack.Using the Azure Stack Hub portal is the recommended method to manage updates in Azure Stack Hub.

I nuovi cmdlet di PowerShell seguenti per la gestione degli aggiornamenti sono inclusi nell'aggiornamento 1710 per i sistemi integrati Azure Stack Hub.The following new PowerShell cmdlets for update management are included in the 1710 update for Azure Stack Hub integrated systems.

CmdletCmdlet DescrizioneDescription
Get-AzureStackUpdateStatus Restituisce lo stato dell'aggiornamento attualmente in esecuzione, completato o non riuscito.Returns the status of the currently running, completed, or failed update. Fornisce lo stato di alto livello dell'operazione di aggiornamento e un documento XML che descrive sia il passaggio corrente che lo stato corrispondente.Provides the high-level status of the update operation and an XML document that describes both the current step and the corresponding state.
Resume-AzureStackUpdate Riprende un aggiornamento non riuscito nel punto in cui ha avuto esito negativo.Resumes a failed update at the point where it failed. In alcuni scenari potrebbe essere necessario completare i passaggi di mitigazione prima di riprendere l'aggiornamento.In certain scenarios, you may have to complete mitigation steps before you resume the update.

Verificare che i cmdlet siano disponibiliVerify the cmdlets are available

Poiché i cmdlet sono nuovi nel pacchetto di aggiornamento 1710 per Azure Stack Hub, il processo di aggiornamento 1710 deve raggiungere un certo punto prima che la funzionalità di monitoraggio sia disponibile.Because the cmdlets are new in the 1710 update package for Azure Stack Hub, the 1710 update process needs to get to a certain point before the monitoring capability is available. In genere, i cmdlet sono disponibili se lo stato nel portale di amministrazione indica che l'aggiornamento 1710 si trova nel passaggio Riavvia host di archiviazione .Typically, the cmdlets are available if the status in the administrator portal indicates that the 1710 update is at the Restart Storage Hosts step. In particolare, l'aggiornamento del cmdlet si verifica durante il passaggio: esecuzione del passaggio 2,6-aggiornamento PrivilegedEndpoint whitelist.Specifically, the cmdlet update occurs during Step: Running step 2.6 - Update PrivilegedEndpoint whitelist.

È inoltre possibile determinare se i cmdlet sono disponibili a livello di programmazione eseguendo una query sull'elenco di comandi dall'endpoint con privilegi.You can also determine whether the cmdlets are available programmatically by querying the command list from the privileged endpoint. Per eseguire questa query, eseguire i comandi seguenti dall'host del ciclo di vita dell'hardware o da una workstation con accesso con privilegi.To do this query, run the following commands from the hardware lifecycle host or from a Privileged Access Workstation. Verificare inoltre che l'endpoint con privilegi sia un host attendibile.Also, make sure the privileged endpoint is a trusted host. Per ulteriori informazioni, vedere il passaggio 1 di accedere all'endpoint con privilegi.For more information, see step 1 of Access the privileged endpoint.

  1. Creare una sessione di PowerShell in qualsiasi macchina virtuale (VM) ROMANSITO nell'ambiente dell'hub Azure Stack (Prefix-ERCS01, Prefix-ERCS02 o Prefix-ERCS03).Create a PowerShell session on any of the ERCS virtual machines (VMs) in your Azure Stack Hub environment (Prefix-ERCS01, Prefix-ERCS02, or Prefix-ERCS03). Sostituire Prefix con la stringa di prefisso della macchina virtuale specifica per l'ambiente.Replace Prefix with the VM prefix string that's specific to your environment.

    $cred = Get-Credential
    
    $pepSession = New-PSSession -ComputerName <Prefix>-ercs01 -Credential $cred -ConfigurationName PrivilegedEndpoint 
    

    Quando vengono richieste le credenziali, usare l' < account \cloudadmin del dominio dell'hub Azure stack > o un account membro del gruppo CloudAdmins.When prompted for credentials, use the <Azure Stack Hub domain>\cloudadmin account, or an account that's a member of the CloudAdmins group. Per l'account CloudAdmin, immettere la stessa password fornita durante l'installazione per l'account amministratore di dominio AzureStackAdmin.For the CloudAdmin account, enter the same password that was provided during installation for the AzureStackAdmin domain administrator account.

  2. Ottenere l'elenco completo dei comandi disponibili nell'endpoint con privilegi.Get the full list of commands that are available in the privileged endpoint.

    $commands = Invoke-Command -Session $pepSession -ScriptBlock { Get-Command } 
    
  3. Determinare se l'endpoint con privilegi è stato aggiornato.Determine if the privileged endpoint was updated.

    $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. Elenca i comandi specifici del modulo Microsoft. AzureStack. UpdateManagement.List the commands specific to the Microsoft.AzureStack.UpdateManagement module.

    $commands | ? Source -eq $updateManagementModuleName 
    

    Ad esempio:For example:

    $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
    

Usare i cmdlet di gestione aggiornamentiUse the update management cmdlets

Nota

Eseguire i comandi seguenti dall'host del ciclo di vita dell'hardware o da una workstation con accesso con privilegi.Run the following commands from the hardware lifecycle host or from a Privileged Access Workstation. Verificare inoltre che l'endpoint con privilegi sia un host attendibile.Also, make sure the privileged endpoint is a trusted host. Per ulteriori informazioni, vedere il passaggio 1 di accedere all'endpoint con privilegi.For more information, see step 1 of Access the privileged endpoint.

Connettersi all'endpoint con privilegi e assegnare la variabile di sessioneConnect to the privileged endpoint and assign session variable

Eseguire i comandi seguenti per creare una sessione di PowerShell in qualsiasi macchina virtuale ROMANSITO nell'ambiente di Azure Stack Hub (Prefix-ERCS01, Prefix-ERCS02 o Prefix-ERCS03) e per assegnare una variabile di sessione.Run the following commands to create a PowerShell session on any of the ERCS VMs in your Azure Stack Hub environment (Prefix-ERCS01, Prefix-ERCS02, or Prefix-ERCS03), and to assign a session variable.

$cred = Get-Credential

$pepSession = New-PSSession -ComputerName <Prefix>-ercs01 -Credential $cred -ConfigurationName PrivilegedEndpoint 

Quando vengono richieste le credenziali, usare l' < account \cloudadmin del dominio dell'hub Azure stack > o un account membro del gruppo CloudAdmins.When prompted for credentials, use the <Azure Stack Hub domain>\cloudadmin account, or an account that's a member of the CloudAdmins group. Per l'account CloudAdmin, immettere la stessa password fornita durante l'installazione per l'account amministratore di dominio AzureStackAdmin.For the CloudAdmin account, enter the same password that was provided during installation for the AzureStackAdmin domain administrator account.

Ottenere lo stato di alto livello dell'esecuzione dell'aggiornamento correnteGet high-level status of the current update run

Per ottenere uno stato di alto livello dell'esecuzione dell'aggiornamento corrente, eseguire i comandi seguenti:To get a high-level status of the current update run, run the following commands:

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

$statusString.Value 

I valori possibili sono:Possible values include:

  • In esecuzioneRunning
  • CompletiCompleted
  • Operazione non riuscitaFailed
  • CancellatiCanceled

È possibile eseguire questi comandi ripetutamente per visualizzare lo stato più aggiornato.You can run these commands repeatedly to see the most up-to-date status. Non è necessario ristabilire una connessione per verificarne nuovamente l'utilizzo.You don't have to re-establish a connection to check again.

Ottenere lo stato di esecuzione dell'aggiornamento completo con i dettagliGet the full update run status with details

È possibile ottenere il riepilogo completo dell'esecuzione dell'aggiornamento come stringa XML.You can get the full update run summary as an XML string. È possibile scrivere la stringa in un file per l'esame oppure convertirla in un documento XML e usare PowerShell per analizzarla.You can write the string to a file for examination, or convert it to an XML document and use PowerShell to parse it. Il comando che segue analizza il codice XML per ottenere un elenco gerarchico dei passaggi attualmente in esecuzione:The following command parses the XML to get a hierarchical list of the currently running steps:

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

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

Nell'esempio seguente, il passaggio di primo livello (aggiornamento Cloud) ha un piano figlio per aggiornare e riavviare gli host di archiviazione.In the following example, the top-level step (Cloud Update) has a child plan to update and restart the storage hosts. Indica che il piano host di riavvio dell'archiviazione sta aggiornando il servizio di archiviazione BLOB in uno degli host.It shows that the Restart Storage Hosts plan is updating the Blob Storage service on one of the hosts.

[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

Riprendere un'operazione di aggiornamento non riuscitaResume a failed update operation

Se l'aggiornamento non riesce, è possibile riprendere l'esecuzione dell'aggiornamento dal punto in cui è stato interrotto.If the update fails, you can resume the update run where it left off.

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

Risolvere problemiTroubleshoot

L'endpoint con privilegi è disponibile in tutte le macchine virtuali ROMANSITO nell'ambiente dell'hub Azure Stack.The privileged endpoint is available on all ERCS VMs in the Azure Stack Hub environment. Poiché la connessione non viene effettuata a un endpoint a disponibilità elevata, è possibile che si verifichino occasionali interruzioni, avvisi o messaggi di errore.Because the connection isn't made to a highly available endpoint, you may experience occasional interruptions, warning, or error messages. Questi messaggi possono indicare che la sessione è stata disconnessa o che si è verificato un errore durante la comunicazione con il servizio ECE.These messages may indicate that the session was disconnected or that there was an error communicating with the ECE Service. Si tratta di un comportamento previsto.This behavior is expected. È possibile ripetere l'operazione tra qualche minuto o creare una nuova sessione di endpoint con privilegi in una delle altre VM ROMANSITO.You can retry the operation in a few minutes or create a new privileged endpoint session on one of the other ERCS VMs.

Per ulteriori informazioni sulla risoluzione dei problemi relativi agli aggiornamenti, vedere Azure stack risoluzione dei problemiFor more information on troubleshooting updates, see Azure Stack Troubleshooting

Passaggi successiviNext steps