Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2024-11-28 GMT+08:00

Remoção de um nó

Cenário

A remoção de um nó de um cluster reinstalará o sistema operacional do nó e limpará os componentes do CCE no nó.

Remover um nó não excluirá o servidor correspondente ao nó. Você é aconselhado a remover os nós fora do horário de pico para evitar impactos em seus serviços.

Depois que um nó é removido do cluster, o nó ainda está em execução e incorre em taxas.

Restrições

  • Os nós só podem ser removidos quando o cluster estiver no status Available ou Unavailable.
  • Um nó do CCE pode ser removido somente quando estiver no status Active, Abnormal ou Error.
  • Um nó do CCE no estado Active pode ter seu sistema operacional reinstalado e os componentes do CCE cancelados depois que ele é removido.
  • Se o sistema operacional não conseguir ser reinstalado depois que o nó for removido, reinstale manualmente o sistema operacional. Após a reinstalação, faça logon no nó e execute o script de liberação para limpar os componentes do CCE. Para mais detalhes, consulte Manipular a reinstalação do sistema operacional com falha.
  • A remoção de um nó causará perda de dados de PVC/PV para o PV local associado ao nó. Esses PVCs e PVs não podem ser restaurados ou usados novamente. Nesse cenário, o pod que usa o PV local é despejado do nó. Um novo pod é criado e permanece no estado pendente. Isso ocorre porque a PVC usada pelo pod tem um rótulo de nó, devido ao qual o pod não pode ser programado.

Precauções

  • A remoção de um nó levará à migração de pods, o que pode afetar os serviços. Portanto, realize esta operação fora dos horários de pico.
  • Riscos inesperados podem ocorrer durante a operação. Faça backup dos dados com antecedência.
  • Enquanto o nó está sendo excluído, o back-end irá definir o nó para o estado não programável.
  • Depois de remover o nó e reinstalar o sistema operacional, as partições LVM originais serão limpas e os dados gerenciados pelo LVM serão limpos. Portanto, faça backup dos dados com antecedência.

Procedimento

  1. Efetue logon no console do CCE e clique no nome do cluster para acessar o console do cluster.
  2. Escolha Nodes no painel de navegação e escolha More > Remove na coluna Operation do nó de destino.

    Figura 1 Remover um nó

    Você também pode selecionar vários nós e removê-los de uma vez.

    Figura 2 Remover vários nós de uma vez

  3. Na caixa de diálogo exibida, configure as informações de logon necessárias para reinstalar o sistema operacional e clique em Yes. Aguarde até que o nó seja removido.

    Depois que o nó é removido, os pods de carga de trabalho no nó são migrados automaticamente para outros nós disponíveis.

Manipular a reinstalação do sistema operacional com falha

Você pode executar as seguintes etapas para reinstalar o sistema operacional e limpar os componentes do CCE no nó se as tentativas anteriores falharem:

  1. Faça logon no console de gerenciamento do servidor e reinstale o sistema operacional. Para obter detalhes, consulte Alteração do SO.
  2. Faça logon no servidor e execute os seguintes comandos para limpar os componentes do CCE e os dados do LVM:

    Escreva os seguintes scripts no ficheiro clean.sh:

    lsblk
    vgs --noheadings | awk '{print $1}' | xargs vgremove -f
    pvs --noheadings | awk '{print $1}' | xargs pvremove -f
    lvs --noheadings | awk '{print $1}' | xargs -i lvremove -f --select {}
    function init_data_disk() {
        all_devices=$(lsblk -o KNAME,TYPE | grep disk | grep -v nvme | awk '{print $1}' | awk '{ print "/dev/"$1}')
        for device in ${all_devices[@]}; do
            isRootDisk=$(lsblk -o KNAME,MOUNTPOINT $device 2>/dev/null| grep -E '[[:space:]]/$' | wc -l )
            if [[ ${isRootDisk} != 0 ]]; then
                continue
            fi
            dd if=/dev/urandom of=${device} bs=512 count=64
            return
        done
        exit 1
    }
    init_data_disk
    lsblk

    Execute o seguinte comando:

    bash clean.sh