Skip to main content

Remover um nó de cluster

É possível remover serviços de dados em um nó do cluster.

Sobre a evacuação dos nós de cluster

Em uma configuração de cluster para GitHub Enterprise Server, você pode evacuar um nó antes de deixar o nó off-line. A evacuação garante que os nós restantes de uma camada de serviço contenham todos os dados do serviço. Por exemplo, ao substituir a máquina virtual para um nó no seu cluster, você deve primeiro evacuar o nó.

Para obter mais informações sobre os nós e as camadas de serviço do GitHub Enterprise Server, confira "Sobre os nós de cluster".

Avisos:

  • Para evitar a perda de dados, GitHub recomenda que você evacue um nó antes de tomá-lo off-line.

  • Se você tiver apenas três nós no seu cluster de serviços de dados, não poderá evacuar os nós porque ghe-spokes não tem outro lugar para fazer uma cópia. Se você tiver quatro ou mais, ghe-spokes moverá todos os repositórios do nó evacuado.

Remover um nó de cluster

Se você pretende colocar um nó offline e o nó executar uma função de serviço de dados como git-server, pages-serverou storage-server, evacue cada nó antes de colocar o nó offline.

  1. SSH em qualquer nó no seu cluster. Para obter mais informações, confira "Como acessar o shell administrativo (SSH)".

  2. Para encontrar o UUID do nó a ser evacuado, execute o seguinte comando. Substitua HOSTNAME pelo nome do host do nó.

    $ ghe-config cluster.HOSTNAME.uuid
  3. Monitore o status do nó enquanto GitHub Enterprise Server copia os dados. Não desconecte o nó até que a cópia seja concluída. Para monitorar o status do nó, execute um dos comandos a seguir, substituindo UUID pelo UUID da etapa 2.

    • GIT:

      $ ghe-spokes evac-status git-server-UUID
    • GitHub Pages :

      $ echo "select count(*) from pages_replicas where host = 'pages-server-UUID'" | ghe-dbconsole -y
    • Armazenamento:

      $ ghe-storage evacuation-status storage-server-UUID
  4. Depois que a cópia for concluída, você poderá evacuar o nó executando um dos comandos a seguir, substituindo UUID pelo UUID da etapa 2.

    • GIT:

      $ ghe-spokes server evacuate git-server-UUID \'REASON FOR EVACUATION\'
    • GitHub Pages :

      $ ghe-dpages evacuate pages-server-UUID
    • Em armazenamento, primeiro, coloque o nó offline executando o comando a seguir.

      $ ghe-storage offline storage-server-UUID

      Depois que o nó de armazenamento estiver off-line, você poderá evacuar o nó executando o seguinte comando.

      $ ghe-storage evacuate storage-server-UUID