Partilhar via


Solucionar problemas de provisionamento do BMM em um cluster do Azure Operator Nexus

Como parte de uma ação de implantação de cluster, as máquinas bare metal (BMMs) são provisionadas com funções necessárias para participar do cluster. Este documento dá suporte à solução de problemas comuns de provisionamento usando a CLI do Azure, o portal do Azure e o controlador de gerenciamento da placa base do servidor (BMC). Para a plataforma Azure Operator Nexus, o hardware do servidor subjacente usa o controlador de acesso remoto Dell integrado (iDRAC) como o BMC. O provisionamento usa a interface PXE (Preboot eXecution Environment) para carregar o sistema operacional (SO) no BMM.

Pré-requisitos

  1. Instale a versão mais recente das extensões CLI apropriadas.
  2. Colete as seguintes informações:
    • ID da subscrição (SUBSCRIPTION)
    • Nome do cluster (CLUSTER)
    • Grupo de recursos (CLUSTER_RG)
    • Grupo de recursos gerenciados (CLUSTER_MRG)
  3. Solicite acesso à assinatura para executar os comandos de malha de rede (NF) do Azure Operator Nexus e extensão da CLI de nuvem de rede.
  4. Entre na CLI do Azure e selecione a assinatura onde o cluster está implantado.

Funções BMM

Para uma versão específica, as funções são necessárias para gerenciar e operar o cluster Kubernetes subjacente.

As seguintes funções são atribuídas aos recursos do BMM (consulte a referência de funções do BMM):

  • Plano de controle: o BMM responsável por executar os agentes do plano de controle do Kubernetes para o cluster.
  • Plano de gerenciamento: O BMM responsável pela execução dos agentes da plataforma, incluindo controladores e extensões.
  • Plano de computação: o BMM responsável pela execução de cargas de trabalho reais do locatário, incluindo clusters Kubernetes e máquinas virtuais.

Listar o status do BMM

O comando a seguir lista todos os bareMetalMachineName recursos no grupo de recursos gerenciados com um status simples:

az networkcloud baremetalmachine list -g $CLUSTER_MRG -o table

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

O STATUS processo passa pelas fases definidas na tabela a seguir no processo de provisionamento do BMM (consulte o status do BMM nos conceitos de computação do Azure Operator Nexus):

Fase Ações
Registering Verifica a conectividade do BMC/credenciais do BMC e adiciona o BMM ao serviço de provisionamento.
Preparing Reinicializa o BMM, redefine o BMC e verifica o estado de energia.
Inspecting Atualiza o firmware, aplica as configurações do BIOS e configura o armazenamento.
Available Indica que o BMM está pronto para instalar o sistema operacional.
Provisioning Indica que a imagem do sistema operacional está sendo instalada no BMM. Depois que o sistema operacional é instalado, o BMM tenta ingressar no cluster.
Provisioned Indica que o BMM foi provisionado com êxito e ingressou no cluster.
Deprovisioning Indica que o provisionamento do BMM falhou. O serviço de provisionamento limpa o recurso para nova tentativa.
Failed Indica que o provisionamento do BMM falhou e que a recuperação manual é necessária. Todas as tentativas estão esgotadas.

Durante qualquer fase, o status detalhado do BMM é definido como Failed. A fase é bloqueada se ocorrer alguma das seguintes interrupções:

  • O BMC não está disponível.
  • Uma porta de rede está inativa.
  • Um componente de hardware falha.

Para obter um status mais detalhado do 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

A tabela a seguir lista onde a saída é definida.

Saída Definição
BMM_NAME Nome BMM.
RSTATE Estado de participação do cluster (True,False).
PROV_STATE Estado de provisionamento (Succeeded,Failed).
STATUS Status detalhado do provisionamento (Registering,Preparing,Inspecting,Available,Provisioning,,Provisioned,Deprovisioning).Failed
STATUS_MSG Mensagem de status de provisionamento detalhada.
POWER_STATE Estado de alimentação do BMM (On,Off).
BMM_ROLE Função de cluster BMM (control-plane,management-plane,compute-plane).
CREATE_DATE Data de criação do BMM.

Por exemplo:

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

Detalhes do BMM

Para mostrar detalhes e o status de um único BMM:

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

Para obter detalhes do BMM específicos para a solução de problemas:

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

Solução de problemas de estados de provisionamento com falha

As condições a seguir podem causar falhas de provisionamento.

Tipo de erro Resolução
BMC mostra Backplane Comm erro crítico. 1. Execute o dreno remoto de pulgas BMM.
2. Execute a drenagem física de pulgas BMM.
3. Execute a ação BMM replace .
Resposta de dados de rede de inicialização (PXE) vazia da BMC. 1. Redefina a porta no dispositivo de malha.
2. Execute o dreno remoto de pulgas BMM.
3. Execute o dreno físico de pulgas BMM.
4. Execute a ação BMM replace .
Incompatibilidade de endereço MAC de inicialização (PXE). 1. Valide os dados do endereço MAC do BMM em relação aos dados do BMC.
2. Execute o dreno remoto de pulgas BMM.
3. Execute o dreno físico de pulgas BMM.
4. Execute a ação BMM replace .
Incompatibilidade de endereço MAC da BMC. 1. Valide os dados do endereço MAC do BMM em relação aos dados do BMC.
2. Execute o dreno remoto de pulgas BMM.
3. Execute o dreno físico de pulgas BMM.
4. Execute a ação BMM replace .
Resposta de dados de disco vazia do BMC. 1. Remova ou substitua o disco.
2. Remova ou substitua o controlador de armazenamento.
3. Execute o dreno remoto de pulgas BMM.
4. Execute o dreno físico de pulgas BMM.
5. Execute a ação BMM replace .
BMC inacessível. 1. Redefina a porta no dispositivo de malha.
2. Remova ou substitua o cabo.
3. Execute o dreno remoto de pulgas BMM.
4. Execute o dreno físico de pulgas BMM.
5. Execute a ação BMM replace .
O BMC falha ao entrar. 1. Atualize as credenciais na BMC.
2. Execute a ação BMM replace .
Memória, CPU, erros críticos OEM no BMC. 1. Resolva o problema de hardware com a remoção ou substituição.
2. Execute o dreno remoto de pulgas BMM.
3. Execute o dreno físico de pulgas BMM.
4. Execute a ação BMM replace .
Console preso no menu do carregador de inicialização (GRUB). 1. Execute a redefinição da NVRAM.
2. Execute a ação BMM replace .

Log de atividades do Azure BMM

  1. Inicie sessão no portal do Azure.
  2. Pesquise no nome BMM na caixa Pesquisar superior.
  3. Selecione o nome Bare Metal Machine (Operator Nexus) nos resultados da pesquisa.
  4. No menu de serviço, selecione Registro de atividades.
  5. Verifique se o valor Timespan engloba o período de provisionamento.
  6. Expanda a BareMetalMachines_Update operação e selecione qualquer BMMs que mostre um Failed status.
  7. Selecione a guia JSON para obter a mensagem de status detalhada.

Procure falhas relacionadas a credenciais inválidas ou se o BMC não estiver disponível.

Determinar o endereço IPv4 da BMC

O endereço IPv4 do BMC (BMC_IP) está no Connect valor retornado da seção anterior "Detalhes do BMM".

Valide o endereço MAC do BMM em relação aos dados do BMC

Para obter as informações de endereço MAC do 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

Verifique os dados do endereço MAC em relação ao BMC através da interface do usuário da Web:

  • BMC > Dashboard: Mostra o endereço MAC da BMC.
  • BMC > System Info > Network > Embedded.1-1-1: Mostra o endereço MAC de inicialização.

Verifique se o endereço MAC está usando racadm a partir de uma jumpbox que tem acesso à rede 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 o endereço MAC fornecido ao cluster estiver incorreto, use a ação BMM replace em ações BMM para corrigir os endereços .

Teste de ping de conectividade BMC

Tente executar o ping comando no endereço IPv4 da BMC:

  1. Obtenha o endereço IPv4 (BMC_IP) na seção anterior "Determine o endereço IPv4 da BMC".

  2. Teste ping para o BMC:

    Para testar a partir de uma jumpbox com acesso à rede BMC:

    ping $BMC_IP -c 3
    

    Para testar a partir de um host de plano de controle BMM usando a CLI do 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]}]"
    

Redefinir a porta em um dispositivo de malha

Se BMC_IP não estiver respondendo, uma redefinição da porta do dispositivo de malha reacionará a negociação automática na porta e poderá colocá-la online novamente.

Para localizar a Network Fabric porta do Azure:

  1. Obtenha os RackID valores e RackSlot na seção anterior "Detalhes do BMM".

  2. No portal do Azure, faça uma busca detalhada para a ID do rack de rede para o BMM.

  3. Selecione a guia Dispositivos de rede e, em seguida, selecione a opção de gerenciamento (Mgmt) para o rack.

  4. Em Recursos, selecione Interfaces de Rede. Em seguida, selecione a interface BMC (iDRAC) ou boot (PXE) para a porta que requer uma redefinição.

    Recolha as seguintes informações:

    • Grupo de recursos de malha de rede (NF_RG)
    • Nome do dispositivo (NF_DEVICE_NAME)
    • Nome da interface (NF_DEVICE_INTERFACE_NAME)
  5. Redefina a porta:

    Para redefinir a porta usando a CLI do 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
    

Drenagem de energia remota BMM (drenagem de pulgas)

Para executar um dreno remoto contra pulgas contra o BMM através da interface do usuário do BMC:

  1. Selecione BMC>Configuration>BIOS Settings>Miscellaneous Settings.

  2. Em Pedido de Ciclo de Alimentação, selecione Ciclo de Potência Completo. Em seguida, selecione Aplicar e reiniciar.

Execute uma drenagem remota de pulgas usando racadm a partir de uma jumpbox que tenha acesso à rede BMC:

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

Drenagem de energia física BMM (drenagem de pulgas)

Para um dreno físico de pulgas, as mãos do local local desconectam fisicamente os cabos de alimentação de ambos os adaptadores de energia por cinco minutos e, em seguida, restauram a energia. Esse processo garante que o servidor, os capacitores e todos os componentes tenham remoção completa de energia e que todos os dados armazenados em cache sejam limpos.

Redefinir NVRAM

Se o provisionamento falhar devido a um erro de OEM ou hardware, a sequência de inicialização pode ser bloqueada na NVRAM em PXE boot vez de ser exibida hdd ou hard drive listada primeiro na ordem de inicialização.

Essa condição normalmente mostra o BMM no estágio do carregador de inicialização no console e é bloqueada sem intervenção manual de pressionamento de teclas.

Para redefinir a NVRAM, use a seguinte sequência na interface do usuário do BMC:

  1. Selecione Diagnóstico>de>manutenção Redefinir o iDRAC para os padrões de fábrica.

  2. Selecione Descartar todas as configurações, mas preservar as configurações de usuário e rede e, em seguida, selecione Aplicar e reinicializar.

Redefinir a senha da BMC

Se o log de atividades indicar credenciais inválidas no BMC, execute o seguinte comando a partir de uma jumpbox que tenha acesso à rede BMC:

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

Adicionar servidores de volta ao cluster após um reparo

Depois que o hardware for corrigido, execute a ação BMM replace seguindo as instruções em Gerenciar o ciclo de vida de máquinas bare metal.