Condividi tramite


Risolvere i problemi di provisioning di BMM in un cluster Operator Nexus di Azure

Come parte di un'azione di distribuzione del cluster, viene effettuato il provisioning dei computer bare metal (BMM) con ruoli necessari per partecipare al cluster. Questo documento supporta la risoluzione dei problemi di provisioning comuni tramite l'interfaccia della riga di comando di Azure, il portale di Azure e il controller di gestione della lavagna di base del server. Per la piattaforma Azure Operator Nexus, l'hardware del server sottostante usa il controller di accesso remoto Dell integrato (iDRAC) come BMC. Il provisioning usa l'interfaccia PXecution Environment (Preboot eXecution Environment) per caricare il sistema operativo in BMM.

Prerequisiti

  1. Installare la versione più recente delle estensioni dell'interfaccia della riga di comando appropriate.
  2. Raccogliere le informazioni seguenti:
    • ID sottoscrizione (SUBSCRIPTION)
    • Nome cluster (CLUSTER)
    • Gruppo di risorse (CLUSTER_RG)
    • Gruppo di risorse gestite (CLUSTER_MRG)
  3. Richiedere l'accesso alla sottoscrizione per eseguire i comandi dell'estensione dell'interfaccia della riga di comando cloud (NF) e Operatore Nexus di Azure.
  4. Accedere all'interfaccia della riga di comando di Azure e selezionare la sottoscrizione in cui viene distribuito il cluster.

Ruoli BMM

Per una versione specifica, i ruoli sono necessari per gestire e gestire il cluster Kubernetes sottostante.

I ruoli seguenti vengono assegnati alle risorse BMM (vedere le informazioni di riferimento sui ruoli BMM):

  • Piano di controllo: BMM responsabile dell'esecuzione degli agenti del piano di controllo Kubernetes per il cluster.
  • Piano di gestione: BMM responsabile dell'esecuzione degli agenti della piattaforma, inclusi controller ed estensioni.
  • Piano di calcolo: BMM responsabile dell'esecuzione di carichi di lavoro del tenant effettivi, inclusi cluster Kubernetes e macchine virtuali.

Elencare lo stato BMM

Il comando seguente elenca tutte le bareMetalMachineName risorse nel gruppo di risorse gestite con uno stato semplice:

az networkcloud baremetalmachine list -g $CLUSTER_MRG -o table

Name          ResourceGroup                  DetailedStatus    DetailedStatusMessage
------------  -----------------------------  ----------------  ---------------------------------------
BMM_NAME      CLUSTER_MRG                    STATUS            STATUS_MSG

Il STATUS processo esamina le fasi definite nella tabella seguente nel processo di provisioning BMM (vedere lo stato BMM nei concetti di calcolo Nexus dell'operatore di Azure):

Fase Azioni
Registering Verifica le credenziali BMC connectivity/BMC e aggiunge BMM al servizio di provisioning.
Preparing Riavvia BMM, reimposta il BMC e verifica lo stato di alimentazione.
Inspecting Aggiorna il firmware, applica le impostazioni del BIOS e configura l'archiviazione.
Available Indica che BMM è pronto per installare il sistema operativo.
Provisioning Indica che l'immagine del sistema operativo viene installata in BMM. Dopo l'installazione del sistema operativo, BMM tenta di aggiungere il cluster.
Provisioned Indica che il provisioning di BMM è stato eseguito correttamente e aggiunto al cluster.
Deprovisioning Indica che il provisioning BMM non è riuscito. Il servizio di provisioning pulisce la risorsa per riprovare.
Failed Indica che il provisioning BMM non è riuscito e che è necessario il ripristino manuale. Tutti i tentativi sono esauriti.

Durante qualsiasi fase, lo stato dettagliato di BMM viene impostato su Failed. La fase viene bloccata se si verifica una delle interruzioni seguenti:

  • BMC non è disponibile.
  • Una porta di rete è inattiva.
  • Un componente hardware ha esito negativo.

Per ottenere uno stato più dettagliato di BMM:

az networkcloud baremetalmachine list -g $CLUSTER_MRG --query "sort_by([].{name:name,readyState:readyState,provisioningState:provisioningState,detailedStatus:detailedStatus,detailedStatusMessage:detailedStatusMessage,powerState:powerState,machineRoles:machineRoles| join(', ', @),createdAt:systemData.createdAt}, &name)" --output table

Name            ReadyState    ProvisioningState    DetailedStatus    DetailedStatusMessage                      PowerState    MachineRoles                                      CreatedAt
------------    ----------    -----------------    --------------    -----------------------------------------  ----------    ------------------------------------------------  -----------
BMM_NAME        RSTATE        PROV_STATE           STATUS            STATUS_MSG                                 POWER_STATE   BMM_ROLE                                          CREATE_DATE

La tabella seguente elenca dove è definito l'output.

Output Definizione
BMM_NAME Nome BMM.
RSTATE Stato di partecipazione del cluster (True,False).
PROV_STATE Stato del provisioning (Succeeded,Failed).
STATUS Stato dettagliato del provisioning (Registering,Preparing,Inspecting,Available,Provisioning,Provisioned,Deprovisioning,Failed).
STATUS_MSG Messaggio di stato del provisioning dettagliato.
POWER_STATE Stato dell'alimentazione di BMM (On,Off).
BMM_ROLE Ruolo cluster BMM (control-plane,management-plane,compute-plane).
CREATE_DATE Data di creazione BMM.

Ad esempio:

x01dev01c01w01  True          Succeeded            Provisioned       The OS is provisioned to the machine       On            platform.afo-nc.microsoft.com/compute-plane=true  2024-05-03T15:12:48.0934793Z
x01dev01c01w01  False         Failed               Preparing         Preparing for provisioning of the machine  Off           platform.afo-nc.microsoft.com/compute-plane=true  2024-05-03T15:12:48.0934793Z

Dettagli BMM

Per visualizzare i dettagli e lo stato di un singolo BMM:

az networkcloud baremetalmachine show -g $CLUSTER_MRG -n $BMM_NAME

Per informazioni dettagliate su BMM specifiche per la risoluzione dei problemi:

az networkcloud baremetalmachine show -g $CLUSTER_MRG -n $BMM_NAME --query "{name:name,BootMAC:bootMacAddress,BMCMAC:bmcMacAddress,Connect:bmcConnectionString,SN:serialNumber,rackId:rackId,RackSlot:rackSlot}" -o table

Risoluzione dei problemi relativi agli stati di provisioning non riusciti

Le condizioni seguenti possono causare errori di provisioning.

Tipo di errore Risoluzione
BMC mostra l’errore critico Backplane Comm. 1. Eseguire BMM remote pulce svuotare.
2. Eseguire lo svuotamento fisico delle pulci BMM.
3. Eseguire l'azione BMM replace .
Risposta dei dati di rete PXE vuota da BMC. 1. Reimpostare la porta nel dispositivo di infrastruttura.
2. Eseguire BMM remote pulce scarico.
3. Eseguire lo svuotamento fisico delle pulci BMM.
4. Eseguire l'azione BMM replace .
Mancata corrispondenza dell'indirizzo MAC di avvio (PXE). 1. Convalidare i dati degli indirizzi MAC BMM rispetto ai dati BMC.
2. Eseguire BMM remote pulce scarico.
3. Eseguire lo svuotamento fisico delle pulci BMM.
4. Eseguire l'azione BMM replace .
Mancata corrispondenza dell'indirizzo MAC BMC. 1. Convalidare i dati degli indirizzi MAC BMM rispetto ai dati BMC.
2. Eseguire BMM remote pulce scarico.
3. Eseguire lo svuotamento fisico delle pulci BMM.
4. Eseguire l'azione BMM replace .
Risposta dati disco vuota da BMC. 1. Rimuovere o sostituire il disco.
2. Rimuovere o sostituire il controller di archiviazione.
3. Eseguire BMM remoto svuotare le pulci.
4. Eseguire lo svuotamento fisico delle pulci BMM.
5. Eseguire l'azione BMM replace .
BMC non raggiungibile. 1. Reimpostare la porta nel dispositivo di infrastruttura.
2. Rimuovere o sostituire il cavo.
3. Eseguire BMM remoto svuotare le pulci.
4. Eseguire lo svuotamento fisico delle pulci BMM.
5. Eseguire l'azione BMM replace .
BMC non riesce l'accesso. 1. Aggiornare le credenziali in BMC.
2. Eseguire l'azione BMM replace .
Memoria, CPU, errori critici OEM in BMC. 1. Risolvere il problema hardware con la rimozione o la sostituzione.
2. Eseguire BMM remote pulce scarico.
3. Eseguire lo svuotamento fisico delle pulci BMM.
4. Eseguire l'azione BMM replace .
Console bloccata nel menu del caricatore di avvio (GRUB). 1. Eseguire la reimpostazione NVRAM.
2. Eseguire l'azione BMM replace .

Log attività di Azure BMM

  1. Accedere al portale di Azure.
  2. Cercare il nome BMM nella casella di ricerca superiore.
  3. Selezionare il nome Bare Metal Machine (Operator Nexus) nei risultati della ricerca.
  4. Nel menu del servizio selezionare Log attività.
  5. Assicurarsi che il valore Timespan includa il periodo di provisioning.
  6. Espandere l'operazione BareMetalMachines_Update e selezionare tutti i sistemi bare metal che mostrano uno Failed stato.
  7. Selezionare la scheda JSON per ottenere il messaggio di stato dettagliato.

Cercare errori relativi a credenziali non valide o se il BMC non è disponibile.

Determinare l'indirizzo IPv4 BMC

L'indirizzo IPv4 del BMC (BMC_IP) è nel Connect valore restituito dalla sezione precedente "Dettagli BMM".

Convalidare l'indirizzo MAC del BMM rispetto ai dati BMC

Per ottenere le informazioni sull'indirizzo MAC da BMM:

az networkcloud baremetalmachine show -g $CLUSTER_MRG -n $BMM_NAME --query "{name:name,BootMAC:bootMacAddress,BMCMAC:bmcMacAddress,SN:serialNumber,rackId:rackId,RackSlot:rackSlot}" -o table

Verificare i dati dell'indirizzo MAC rispetto a BMC tramite l'interfaccia utente Web:

  • BMC>Dashboard: mostra l'indirizzo MAC BMC.
  • BMC>System Info>Network>Embedded.1-1-1: mostra l'indirizzo MAC di avvio.

Verificare che l'indirizzo MAC usi racadm da un jumpbox che abbia accesso alla rete BMC:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD getsysinfo | grep "MAC Address "        #BMC MAC
racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD getsysinfo | grep "NIC.Embedded.1-1-1"  #Boot MAC

Se l'indirizzo MAC fornito al cluster non è corretto, usare l'azione replace BMM in Azioni BMM per correggere gli indirizzi.

Eseguire il test ping della connettività BMC

Tentare di eseguire il ping comando sull'indirizzo IPv4 BMC:

  1. Ottenere l'indirizzo IPv4 (BMC_IP) dalla sezione precedente "Determinare l'indirizzo IPv4 BMC".

  2. Testare ping il BMC:

    Per eseguire il test da un jumpbox che abbia accesso alla rete BMC:

    ping $BMC_IP -c 3
    

    Per testare da un host del piano di controllo BMM usando l'interfaccia della riga di comando di Azure:

    az networkcloud baremetalmachine run-read-command -g $CLUSTER_MRG -n $BMM_NAME --limit-time-seconds 60 --commands "[{command:'ping',arguments:['$BMC_IP',-c,3]}]"
    

Reimpostare la porta in un dispositivo di infrastruttura

Se BMC_IP non è reattivo, una reimpostazione della porta del dispositivo fabric ritenta la rigoziazione automatica sulla porta e potrebbe riportarla online.

Per trovare la porta Network Fabric da Azure:

  1. Ottenere i RackID valori e RackSlot dalla sezione precedente "Dettagli BMM".

  2. Nel portale di Azure eseguire il drill-down sull'ID rack di rete per BMM.

  3. Selezionare la scheda Dispositivi di rete e quindi selezionare l'opzione di gestione (Mgmt) per il rack.

  4. In Risorse selezionare Interfacce di rete. Selezionare quindi l'interfaccia BMC (iDRAC) o di avvio (PXE) per la porta che richiede una reimpostazione.

    Raccogliere le informazioni seguenti:

    • Gruppo di risorse di Infrastruttura di rete (NF_RG)
    • Nome dispositivo (NF_DEVICE_NAME)
    • Nome interfaccia (NF_DEVICE_INTERFACE_NAME)
  5. Reimpostare la porta:

    Per reimpostare la porta usando l'interfaccia della riga di comando di Azure:

    az networkfabric interface update-admin-state -g $NF_RG --network-device-name $NF_DEVICE_NAME --resource-name $NF_DEVICE_INTERFACE_NAME --state Disable
    az networkfabric interface update-admin-state -g $NF_RG --network-device-name $NF_DEVICE_NAME --resource-name $NF_DEVICE_INTERFACE_NAME --state Enable
    

Scarico di alimentazione remota BMM (flea draini)

Per eseguire uno svuotamento delle pulci remoto contro BMM tramite l'interfaccia utente BMC:

  1. Selezionare Impostazioni BIOS>configurazione>BMC>Impostazioni varie.

  2. In Richiesta ciclo di alimentazione selezionare Ciclo di alimentazione completo. Selezionare quindi Applica e riavvia.

Eseguire uno svuotamento delle pulci remoto usando racadm da un jumpbox che ha accesso alla rete BMC:

racadm set bios.miscsettings.powercyclerequest FullPowerCycle
racadm jobqueue create BIOS.Setup.1-1
racadm serveraction powercycle

Scarico di energia fisica BMM (flea drain)

Per uno svuotamento delle pulci fisiche, il sito locale mani disconnette fisicamente i cavi di alimentazione da entrambe le schede di alimentazione per cinque minuti e quindi ripristinare l'alimentazione. Questo processo garantisce che il server, i capacitori e tutti i componenti abbiano una rimozione completa dell'alimentazione e che tutti i dati memorizzati nella cache vengano cancellati.

Reimpostare NVRAM

Se il provisioning non è riuscito a causa di un errore OEM o hardware, la sequenza di avvio potrebbe essere bloccata in NVRAM invece di visualizzare hdd o hard drive elencare PXE boot prima nell'ordine di avvio.

Questa condizione mostra in genere BMM nella fase bootloader della console e viene bloccata senza l'intervento manuale della sequenza di tasti.

Per reimpostare la nvram, usare la sequenza seguente nell'interfaccia utente BMC:

  1. Selezionare Maintenance Diagnostics>Reset iDrac to Factory Defaults (Ripristina impostazioni predefinite di iDrac per la manutenzione).>

  2. Selezionare Ignora tutte le impostazioni, ma mantieni le impostazioni utente e di rete e quindi seleziona Applica e riavvia.

Reimpostare la password BMC

Se il log attività indica credenziali non valide in BMC, eseguire il comando seguente da un jumpbox che ha accesso alla rete BMC:

racadm -r $BMC_IP -u $BMC_USER -p $CURRENT_PASSWORD  set iDRAC.Users.2.Password $BMC_PWD

Aggiungere di nuovo i server nel cluster dopo un ripristino

Dopo aver risolto l'hardware, eseguire l'azione BMM replace seguendo le istruzioni riportate in Gestire il ciclo di vita dei computer bare metal.