Gerencie o ciclo de vida de máquinas bare metal
Este artigo descreve como executar operações de gerenciamento do ciclo de vida em máquinas bare metal (BMM). Essas etapas devem ser usadas para fins de solução de problemas de recuperação de falhas ou ao tomar ações de manutenção. Os comandos para gerenciar o ciclo de vida do BMM incluem:
Atenção
Não execute nenhuma ação contra servidores de gerenciamento sem consultar primeiro a equipe de suporte da Microsoft. Isso pode afetar a integridade do Operator Nexus Cluster.
- Desligue um BMM
- Iniciar um BMM
- Reiniciar um BMM
- Tornar um BMM não escalonável (cordão sem evacuar)
- Tornar um BMM incontrolável (cordão com evacuação)
- Faça um BMM escalonável (uncordon)
- Recriar a imagem de um BMM
- Substitua um BMM
Importante
As solicitações de comando com interrupções em um nó KCP (Kubernetes Control Plane) são rejeitadas se houver outro comando de ação disruptivo já em execução em outro nó KCP ou se o KCP completo não estiver disponível. Essa verificação é feita para manter a integridade da instância do Nexus e garantir que vários nós KCP não se tornem inoperacionais ao mesmo tempo devido a ações disruptivas simultâneas. Se vários nós se tornarem inoperacionais, isso quebrará o limite de quórum saudável do Plano de Controle do Kubernetes.
As ações em negrito na lista acima são consideradas perturbadoras (Desligar, Reiniciar, Recriar imagem, Substituir). Cordão sem evacuação não é considerado perturbador. Cordão com evacuação é considerado perturbador.
Conforme observado na declaração de advertência, a execução de ações em servidores de gerenciamento, especialmente nós KCP, só deve ser feita em consulta com a equipe de suporte da Microsoft.
Pré-requisitos
- Instale a versão mais recente das extensões CLI apropriadas.
- Obtenha o nome do grupo de recursos para o BMM - Nome do grupo de recursos gerenciados por cluster (cluster_MRG).
- Obtenha o nome da máquina bare metal que requer uma operação de gerenciamento do ciclo de vida.
- Certifique-se de que a máquina
poweredState
bare metal de destino esteja definida comoOn
.readyState
True
- Este pré-requisito não é aplicável ao
start
comando.
- Este pré-requisito não é aplicável ao
Desligue um BMM
Este comando será power-off
o especificado bareMetalMachineName
.
az networkcloud baremetalmachine power-off \
--name <BareMetalMachineName> \
--resource-group <resourceGroup> \
--subscription <subscriptionID>
Iniciar um BMM
Este comando será start
o especificado bareMetalMachineName
.
az networkcloud baremetalmachine start \
--name <BareMetalMachineName> \
--resource-group <resourceGroup> \
--subscription <subscriptionID>
Reiniciar um BMM
Este comando será restart
o especificado bareMetalMachineName
.
az networkcloud baremetalmachine restart \
--name <BareMetalMachineName> \
--resource-group <resourceGroup> \
--subscription <subscriptionID>
Tornar um BMM não escalonável (cordão)
Para identificar se alguma carga de trabalho está atualmente em execução em um BMM, execute o seguinte comando:
Para máquinas virtuais:
az networkcloud baremetalmachine show -n <nodeName> /
--resource-group <resourceGroup> /
--subscription <subscriptionID> | jq '.virtualMachinesAssociatedIds'
Para nós de cluster do Nexus Kubernetes: (requer login no cluster do Nexus Kubernetes)
kubectl get nodes <resourceName> -ojson |jq '.metadata.labels."topology.kubernetes.io/baremetalmachine"'
Você pode tornar um BMM inescalável executando o cordon
comando.
Na execução do comando, as cargas de trabalho do Nexus do Operador não são agendadas no BMM quando o cordão é definido, qualquer tentativa de criar uma carga de cordon
trabalho em um cordoned
BMM resulta no estado definido para pending
a carga de trabalho. As cargas de trabalho existentes continuam a ser executadas.
O comando cordon suporta um evacuate
parâmetro com o valor padrão False
.
É uma boa prática definir isso como True
. Ao executar o cordon
comando, com o valor True
para o evacuate
parâmetro, as cargas de trabalho que estão sendo executadas no BMM são stopped
e o BMM é definido como pending
estado.
az networkcloud baremetalmachine cordon \
--evacuate "True" \
--name <BareMetalMachineName> \
--resource-group <resourceGroup> \
--subscription <subscriptionID>
O evacuate "True"
remove cargas de trabalho desse nó enquanto evacuate "False"
impede apenas o agendamento de novas cargas de trabalho.
Tornar um BMM "escalonável" (uncordon)
Você pode tornar um BMM "escalável" (utilizável) executando o uncordon
comando. Todas as cargas de trabalho em um pending
estado no BMM são restarted
quando o BMM é uncordoned
.
az networkcloud baremetalmachine uncordon \
--name <BareMetalMachineName> \
--resource-group <resourceGroup> \
--subscription <subscriptionID>
Recriar a imagem de um BMM
Você pode restaurar a versão de tempo de execução em um BMM executando reimage
o comando. Esse processo reimplanta a imagem de tempo de execução no BMM de destino e executa as etapas para ingressar novamente no cluster com os mesmos identificadores. Essa ação não afeta os arquivos de carga de trabalho do locatário neste BMM. No caso de uma ação de gravação ou edição ser executada no nó por meio do acesso BMM, essa ação de 'reimagem' é necessária para restaurar o suporte da Microsoft e as alterações serão perdidas, restaurando o nó ao estado esperado.
Como prática recomendada, certifique-se de que as cargas de trabalho do BMM sejam drenadas usando o cordon
comando, com evacuate "True"
, antes de executar o reimage
comando.
Aviso
Executar mais de um baremetalmachine replace
comando ou reimage
ao mesmo tempo, ou executar um replace
ao mesmo tempo que um reimage
deixará os servidores em um estado não funcional. Certifique-se de que um replace
/reimage
está totalmente concluído antes de iniciar outro.
az networkcloud baremetalmachine reimage \
--name <BareMetalMachineName> \
--resource-group <resourceGroup> \
--subscription <subscriptionID>
Substitua um BMM
Use o replace
comando quando um servidor encontrar problemas de hardware que exijam uma substituição completa ou parcial do hardware. Após a substituição de componentes como a placa-mãe ou a placa de interface de rede (NIC), o endereço MAC do BMM será alterado, no entanto, o endereço IP iDRAC e o nome do host permanecerão os mesmos.
Aviso
Executar mais de um baremetalmachine replace
comando ou reimage
ao mesmo tempo, ou executar um replace
ao mesmo tempo que um reimage
deixará os servidores em um estado não funcional. Certifique-se de que um replace
/reimage
está totalmente concluído antes de iniciar outro.
az networkcloud baremetalmachine replace \
--name <BareMetalMachineName> \
--resource-group <resourceGroup> \
--bmc-credentials password=<IDRAC_PASSWORD> username=<IDRAC_USER> \
--bmc-mac-address <IDRAC_MAC> \
--boot-mac-address <PXE_MAC> \
--machine-name <OS_HOSTNAME> \
--serial-number <SERIAL_NUMBER> \
--subscription <subscriptionID>