Risolvere i problemi di registrazione di Azure Stack HCI

Per risolvere i problemi di registrazione di Azure Stack HCI, è necessario esaminare sia i log di registrazione di PowerShell che i log di debug hcisvc da ogni server nel cluster.

Raccogliere i log di registrazione di PowerShell

Quando vengono eseguiti i Register-AzStackHCI cmdlet e Unregister-AzStackHCI , i file di log denominati RegisterHCI_{aaaammdd-hhss}.log e UnregisterHCI_{aaaammdd-hhss}.log vengono creati per ogni tentativo. Questi file vengono creati nella directory di lavoro della sessione di PowerShell in cui vengono eseguiti i cmdlet. I log di debug non sono inclusi per impostazione predefinita. Se si verifica un problema che richiede i log di debug aggiuntivi, impostare la preferenza di debug su Continua eseguendo il cmdlet seguente prima di eseguire Register-AzStackHCI o Unregister-AzStackHCI:

$DebugPreference = 'Continue'

Raccogliere log hcisvc locali

Per abilitare i log di debug per hcisvc, eseguire il comando seguente in PowerShell in ogni server del cluster:

wevtutil.exe sl /q /e:true Microsoft-AzureStack-HCI/Debug

Per ottenere i log:

Get-WinEvent -Logname Microsoft-AzureStack-HCI/Debug -Oldest -ErrorAction Ignore

Impossibile eseguire la registrazione. Impossibile generare un certificato autofirmato nei nodi {Node1,Node2}. Impossibile impostare e verificare il certificato di registrazione nei nodi {Node1,Node2}

Spiegazione dello stato di errore:

Durante la registrazione, ogni server nel cluster deve essere operativo con connettività Internet in uscita ad Azure. Il Register-AzStackHCI cmdlet comunica a tutti i server del cluster per effettuare il provisioning dei certificati per ognuno di essi. Ogni server userà il certificato per effettuare una chiamata API ai servizi HCI nel cloud per convalidare la registrazione.

Se la registrazione non riesce, potrebbe essere visualizzato il messaggio seguente: Impossibile eseguire la registrazione. Impossibile generare un certificato autofirmato nei nodi {Node1,Node2}. Impossibile impostare e verificare il certificato di registrazione nei nodi {Node1,Node2}

Se sono presenti nomi di nodo dopo che non è stato possibile generare un certificato autofirmato nei nodi del messaggio di errore, il sistema non è riuscito a generare il certificato in tali server.

Azione di correzione:

  1. Verificare che ogni server elencato nel messaggio precedente sia attivo e in esecuzione. È possibile controllare lo stato di hcisvc eseguendolo sc.exe query hcisvc e avviandolo se necessario con start-service hcisvc.

  2. Verificare che ogni server elencato nel messaggio di errore disponga della connettività al computer in cui viene eseguito il Register-AzStackHCI cmdlet. Verificare questa situazione eseguendo il cmdlet seguente dal computer in cui Register-AzStackHCI viene eseguito, usando New-PSSession per connettersi a ogni server del cluster e assicurarsi che funzioni:

    New-PSSession -ComputerName {failing nodes}
    

Se sono presenti nomi di nodo dopo che non è stato possibile impostare e verificare il certificato di registrazione nei nodi del messaggio di errore, il servizio è stato in grado di generare il certificato nei server, ma i server non sono stati in grado di chiamare correttamente l'API del servizio cloud HCI. Per risolvere i problemi:

  1. Assicurarsi che ogni server disponga della connettività Internet necessaria per comunicare con i servizi cloud di Azure Stack HCI e altri servizi di Azure necessari, ad esempio Azure Active Directory, e che non venga bloccato da firewall. Vedere Requisiti del firewall per Azure Stack HCI.

  2. Provare a eseguire il Test-AzStackHCIConnection cmdlet e verificare che abbia esito positivo. Questo cmdlet richiama l'endpoint di integrità dei servizi cloud HCI per testare la connettività.

  3. Esaminare i log di debug hcisvc in ogni nodo elencato nel messaggio di errore.

    • È possibile che il messaggio ExecuteWithRetry operation AADTokenFetch failed with retryable error (Errore di ripetizione dei tentativi) venga visualizzato alcune volte prima che si verifichi un errore con l'operazione ExecuteWithRetry AADTokenFetch non riuscita dopo che tutti i tentativi o l'operazione ExecuteWithRetry AADTokenFetch hanno avuto esito positivo nel tentativo.
    • Se si verifica l'operazione ExecuteWithRetry AADTokenFetch non riuscita dopo tutti i tentativi nei log, il sistema non è riuscito a recuperare il token di Azure Active Directory dal servizio anche dopo tutti i tentativi. Verrà generata un'eccezione di Azure AD associata registrata con questo messaggio.
    • Se viene visualizzato AADSTS700027: l'asserzione client contiene una firma non valida. [Motivo: la chiave usata è scaduta. Identificazione personale della chiave usata dal client: '{SomeThumbprint}', Chiave trovata 'Start=06/29/2021 21:13:15, End=06/29/2023 21:13:15', si tratta di un problema con la modalità di impostazione dell'ora nel server. Controllare l'ora UTC in tutti i server eseguendo [System.DateTime]::UtcNow in PowerShell e confrontarla con l'ora UTC effettiva. Se l'ora non è corretta, impostare l'ora corretta nei server e quindi riprovare la registrazione.

L'eliminazione della risorsa HCI dal portale e la registrazione dello stesso cluster causa problemi

Spiegazione dello stato di errore:

Se la risorsa cluster Azure Sack HCI è stata eliminata in modo esplicito dal portale di Azure senza prima annullare la registrazione del cluster da Windows Admin Center o PowerShell, l'eliminazione di una risorsa di Azure Resource Manager HCI direttamente dal portale comporta uno stato di risorsa cluster non valido. L'annullamento della registrazione deve essere sempre attivata dall'interno del cluster HCI usando il Unregister-AzStackHCI cmdlet per un'annullamento della registrazione pulita. Questa sezione descrive i passaggi di pulizia per gli scenari in cui la risorsa cluster HCI è stata eliminata dal portale.

Azione di correzione:

  1. Accedere al server cluster HCI locale usando le credenziali utente del cluster.
  2. Eseguire il Unregister-AzStackHCI cmdlet nel cluster per pulire lo stato di registrazione del cluster e lo stato arc del cluster.
    • Se l'annullamento della registrazione ha esito positivo, passare ad Azure Active Directory > Registrazioni app (Tutte le applicazioni) e cercare il nome corrispondente clusterName e clusterName.arc. Eliminare i due ID app, se esistenti.
    • Se l'annullamento della registrazione ha esito negativo con l'errore ERRORE: Non è stato possibile disabilitare l'integrazione di Azure Arc nel nome> del nodo nodo<, provare a eseguire il Disable-AzureStackHCIArcIntegration cmdlet nel nodo. Se il nodo si trova in uno stato in cui Disable-AzureStackHCIArcIntegration non è possibile eseguire, rimuovere il nodo dal cluster e provare a eseguire di nuovo il Unregister-AzStackHCI cmdlet. Accedere a ogni singolo nodo:
      1. Passare alla directory in cui è installato l'agente Arc: cd 'C:\Program Files\AzureConnectedMachineAgent\'.
      2. Ottenere lo stato in arcmagent.exe e determinare il gruppo di risorse di Azure in cui è previsto: .\azcmagent.exe show. L'output per questo comando mostra le informazioni sul gruppo di risorse.
      3. Forzare la disconnessione dell'agente Arc dal nodo: .\azcmagent.exe disconnect --force-local-only.
      4. Accedere al portale di Azure ed eliminare la risorsa Arc-for-Server dal gruppo di risorse determinato nel passaggio ii.

L'utente ha eliminato gli ID app per errore

Spiegazione dello stato di errore:

Se il cluster viene disconnesso per più di 8 ore, è possibile che le registrazioni dell'app Azure AD associate che rappresentano il cluster HCI e le registrazioni Arc siano state eliminate accidentalmente. Per il corretto funzionamento del cluster HCI e degli scenari Arc, vengono create due registrazioni dell'app nel tenant durante la registrazione.

  • Se l'ID <clustername> app viene eliminato, la risorsa cluster Connessione di Azure nella portale di Azure visualizza Disconnesso - Cluster non connesso per più di 8 ore. Esaminare i log di debug di HCIsvc nel nodo: il messaggio di errore sarà Application con identificatore '<ID>' non trovato nella directory 'Default Directory'. Ciò può verificarsi se l'applicazione non è stata installata dall'amministratore del tenant o ha acconsentito a qualsiasi utente nel tenant. È possibile che la richiesta di autenticazione sia stata inviata al tenant errato.
  • Se <clustername>.arc creato durante l'abilitazione di Arc viene eliminato, non vengono visualizzati errori durante il normale funzionamento. Questa identità è necessaria solo durante i processi di registrazione e annullamento della registrazione. In questo scenario, l'annullamento della registrazione ha esito negativo e l'errore Non è stato possibile disabilitare l'integrazione di Azure Arc nel nome> del nodo del nodo<. Provare a eseguire il cmdlet Disable-AzureStackHCIArcIntegration nel nodo. Se il nodo si trova in uno stato in cui non è stato possibile eseguire il cmdlet Disable-AzureStackHCIArcIntegration, rimuovere il nodo dal cluster e provare a eseguire di nuovo il cmdlet Unregister-AzStackHCI.

L'eliminazione di una di queste applicazioni comporta un errore di comunicazione dal cluster HCI al cloud.

Azione di correzione:

  • Se viene eliminato solo <clustername> AppId , eseguire una registrazione di ripristino nel cluster per configurare le applicazioni Azure AD:

    Register-AzStackHCI  -SubscriptionId "<subscription_ID>" -ComputerName Server1 -RepairRegistration
    

    Il ripristino della registrazione ricrea le applicazioni Azure AD necessarie mantenendo altre informazioni, ad esempio il nome della risorsa, il gruppo di risorse e altre opzioni di registrazione.

  • Se l'ID <clustername>.arc app viene eliminato, nei log non viene visualizzato alcun errore visibile. L'annullamento della registrazione avrà esito negativo se <clustername>.arc viene eliminato. Se l'annullamento della registrazione ha esito negativo, seguire la stessa azione di correzione descritta in questa sezione.

Errore di criteri non valido

Spiegazione dello stato di errore:

Se un cluster registrato in precedenza mostra lo stato OutOfPolicy, è possibile che le modifiche apportate alla configurazione del sistema abbiano causato l'interruzione dei criteri dello stato di registrazione di Azure Stack HCI.

Ad esempio, le modifiche di sistema possono includere, ma non sono limitate a:

  • Disattivazione dei conflitti di impostazioni di avvio protetto nel nodo registrato.
  • Cancellazione del modulo TPM (Trusted Platform Module).
  • Un cambiamento significativo del tempo di sistema.

Nota

Azure Stack HCI 21H2 con KB5010421 e versioni successive tenterà di eseguire automaticamente il ripristino dallo stato OutOfPolicy . Per altre informazioni sullo stato OutOfPolicy e altre informazioni, vedere Il registro eventi Microsoft-AzureStack-HCI/Amministrazione.

Quali messaggi id evento "OutOfPolicy" potrebbero essere visualizzati durante la registrazione?

Esistono tre tipi di messaggi ID evento: informativi, avvisi ed errori.

I messaggi seguenti sono stati aggiornati con Azure Stack HCI 21H2 con KB5010421 e non verranno visualizzati se questa KNOWLEDGE Base non è installata.

ID evento informativo

Messaggi ID evento informativi che si verificano durante la registrazione. Esaminare e seguire i suggerimenti nel messaggio:

  • (Informativo) ID evento 592: "Azure Stack HCI ha avviato una riparazione dei dati. Al momento non è necessaria alcuna azione da parte dell'utente."

  • (Informativo) ID evento 594: "Azure Stack HCI ha rilevato un errore durante l'accesso ai dati. Per eseguire il ripristino, controllare quali nodi sono interessati: se l'intero cluster è OutOfPolicy (eseguire Get-AzureStackHCI) eseguire Unregister-AzStackHCI nel cluster, riavviare e quindi eseguire Register-AzStackHCI. Se è interessato solo questo nodo, rimuovere questo nodo dal cluster, riavviare e attendere il completamento del ripristino, quindi ricongiuntarlo al cluster".

ID evento di avviso

Con i messaggi di avviso, lo stato della registrazione non viene completato. Potrebbe esserci o meno un problema. Prima di tutto, esaminare il messaggio id evento prima di eseguire uno o più passaggi per la risoluzione dei problemi.

(Avviso) ID evento 585: "Azure Stack HCI non è riuscito a rinnovare la licenza da Azure. Per ottenere altri dettagli sull'errore specifico, abilitare il canale eventi Microsoft-AzureStack-HCI/Debug."

Nota

Eventuali ritardi nel ristabilire una connessione completa ad Azure sono previsti dopo il corretto ripristino automatico e possono comportare la visualizzazione dell'ID evento 585 . Ciò non influisce sui carichi di lavoro o sulle licenze del nodo. Vale a dire, esiste ancora una licenza installata, a meno che il nodo non fosse fuori dalla finestra di 30 giorni prima del ripristino automatico.

Nota

In alcuni casi, Azure Stack HCI potrebbe non riuscire a eseguire il ripristino automatico. Ciò può verificarsi quando lo stato di registrazione di tutti i nodi nel cluster non è disponibile. Sono necessari alcuni passaggi manuali. Vedere i messaggi ID evento Microsoft-AzureStack-HCI/Amministrazione.

ID evento di errore

I messaggi di errore dell'ID evento identificano un errore nel processo di registrazione. Il messaggio di errore fornisce istruzioni su come risolvere l'errore.

  • (Errore) ID evento 591: "Azure Stack HCI non è riuscito a connettersi ad Azure. Se si continua a visualizzare questo errore, provare a eseguire Register-AzStackHCI di nuovo con il -RepairRegistration parametro."

  • (Errore) ID evento 594: "Azure Stack HCI ha rilevato un errore durante l'accesso ai dati. Per ripristinare, verificare quali nodi sono interessati: se l'intero cluster è OutOfPolicy (eseguire), eseguire Get-AzureStackHCIUnregister-AzStackHCI nel cluster, riavviare e quindi eseguire Register-AzStackHCI. Se solo questo nodo è interessato, rimuovere questo nodo dal cluster, riavviare, attendere il completamento del ripristino, quindi ricongiuntare il cluster.

La risorsa Cluster e Arc in portale di Azure esiste, ma lo stato Get-AzureStackHCI indica "Non ancora" registrato

Spiegazione dello stato di errore:

Questo problema è causato dalla registrazione di un cluster HCI con l'ambiente cloud errato o le informazioni di sottoscrizione non corrette. Se un utente esegue il Unregister-AzStackHCI cmdlet con parametri o non corretti -EnvironmentName-SubcriptionId per un cluster, lo stato di registrazione del cluster viene rimosso dal cluster locale stesso, ma il cluster e le risorse Arc nella portale di Azure saranno ancora presenti nell'ambiente o nella sottoscrizione originale.

Ad esempio:

  • Errore -EnvironmentName <value>: il cluster è stato registrato in -EnvironmentName AzureUSGovernment come nell'esempio seguente. Si noti che il valore predefinito -EnvironmentName è "Azurecloud". Ad esempio, è stato eseguito:

    Register-AzStackHCI  -SubscriptionId "<subscription_ID>" -EnvironmentName AzureUSGovernment
    

    Tuttavia, è stato eseguito il Unregister-AzStackHCI cmdlet con -EnvironmentName Azurecloud (impostazione predefinita) come segue:

    Unregister-AzStackHCI -SubscriptionId "<subscription_ID>"
    
  • Errore -SubscriptionId <value>: è stato registrato il cluster con -SubscriptionId "<subscription_id_1>" il seguente:

    Register-AzStackHCI  -SubscriptionId "<subscription_id_1>"
    

    Tuttavia, è stato eseguito il Unregister-AzStackHCI cmdlet per un ID sottoscrizione diverso:

    Unregister-AzStackHCI -SubscriptionId "<subscription_id_2>"
    

Azione di correzione:

  1. Eliminare il cluster e le risorse Arc dal portale.
  2. Passare a Azure Active Directory > Registrazioni app (Tutte le applicazioni) e cercare il nome corrispondente <clusterName> e <clusterName>.arc, quindi eliminare i due ID app.

L'emissione di Sync-AzureStackHCI immediatamente dopo il riavvio dei nodi del cluster comporta l'eliminazione delle risorse Arc

Spiegazione dello stato di errore:

L'esecuzione di una sincronizzazione del censimento prima della sincronizzazione dei nodi può comportare l'invio della sincronizzazione ad Azure, che non include il nodo. Ciò comporta la rimozione della risorsa Arc per tale nodo. Il Sync-AzureStackHCI cmdlet deve essere usato solo per eseguire il debug della connettività cloud del cluster HCI. Il cluster HCI ha un tempo di riscaldamento ridotto dopo un riavvio per riconciliare lo stato del cluster; pertanto, non eseguire Sync-AzureStackHCI subito dopo il riavvio di un nodo.

Azione di correzione:

  1. Nel portale di Azure accedere al nodo visualizzato come Non installato.

    Screenshot della portale di Azure con i nodi evidenziati come non installati.

  2. Disconnettere l'agente Arc usando i due comandi seguenti:

    cd "C:\Program Files\AzureConnectedMachineAgent"
    

    quindi

    .\azcmagent.exe disconnect --force-local-only
    
  3. Ripristinare la registrazione:

    Register-AzStackHCI  -SubscriptionId "<subscription_ID>" -ComputerName Server1  -RepairRegistration
    
  4. Dopo l'operazione di ripristino, il nodo restituisce uno stato connesso.

La registrazione viene completata correttamente, ma la connessione di Azure Arc nel portale dice Non installato

Spiegazione dello stato di errore:

Ciò avviene negli scenari in cui uno o tutti i nodi del cluster HCI sono stati abilitati manualmente per Arc e non come parte del Register-AzStackHCI cmdlet o del flusso di lavoro di registrazione di Azure Stack HCI al centro di Amministrazione Azure Stack HCI. Può verificarsi anche in scenari in cui il cluster HCI non è stato registrato correttamente come consigliato in questo articolo prima di provare a registrare nuovamente lo stesso cluster.

Con il cluster in questo stato, quando si tenta di registrare HCI con Azure, la registrazione viene completata correttamente. Tuttavia, nella portale di Azure la connessione Azure Arc non viene visualizzata.

Azione di correzione:

  1. Accedere al nodo del cluster con lo stato di Azure Arc che mostra come Non installato:

    Screenshot dei nodi che vengono visualizzati come non installati nel nodo cluster di stato di Azure Arc.

  2. Disconnettere l'agente Arc usando i due comandi seguenti:

    cd "C:\Program Files\AzureConnectedMachineAgent"
    

    quindi

    .\azcmagent.exe disconnect --force-local-only
    
  3. Assicurarsi di eseguire il modulo Az.StackHCI PS più recente:

    Install-Module -Name Az.StackHCI 
    
  4. Eseguire il cmdlet di registrazione di ripristino:

    Register-AzStackHCI  -SubscriptionId "<subscription_ID>" -ComputerName Server1  -RepairRegistration
    

Non è possibile ruotare i certificati in Fairfax e Mooncake

Spiegazione dello stato di errore:

  1. Dalla portale di Azure, la risorsa cluster Connessione di Azure visualizza Disconnessa.
  2. Esaminare i log di debug HCIsvc nel nodo. Il messaggio di errore sarà eccezione: AADSTS700027: L'asserzione client non è riuscita la convalida della firma.
  3. L'errore può essere visualizzato anche come RotateRegistrationCertificate non riuscito: Destinatari non validi.

Azione di correzione:

Eseguire una registrazione di ripristino nel cluster per aggiungere nuovi certificati nell'applicazione Azure AD:

Register-AzStackHCI  -SubscriptionId "<subscription_ID>" -ComputerName Server1 -RepairRegistration

Il ripristino della registrazione genera nuovi certificati sostitutivi nell'applicazione Azure AD, mantenendo altre informazioni, ad esempio il nome della risorsa, il gruppo di risorse e altre opzioni di registrazione.

OnPremisesPasswordValidationTimeSkew

Spiegazione dello stato di errore:

La generazione di token di Azure AD ha esito negativo con un errore di tempo se l'ora del nodo locale è troppo lontana dalla sincronizzazione con l'ora corrente (UTC). Azure AD restituisce l'errore seguente:

AADSTS80013: OnPremisesPasswordValidationTimeSkew - Impossibile completare il tentativo di autenticazione a causa dell'intervallo di tempo tra il computer che esegue l'agente di autenticazione e AD. Correggere i problemi di sincronizzazione dell'ora.

Azione di correzione:

Assicurarsi che l'ora sia sincronizzata con un'origine temporale nota e accurata.

Passaggi successivi