Skip to main content

Habilitar e programar o modo de manutenção

Alguns procedimentos de manutenção padrão, como atualizar sua instância do GitHub Enterprise Server ou restaurar backups, exigem que a instância seja colocada offline para uso normal.

Sobre o modo de manutenção

Alguns tipos de operações exigem que você coloque o sua instância do GitHub Enterprise Server offline e no modo de manutenção:

  • Atualizar para uma nova versão do GitHub Enterprise Server;
  • Aumentar a capacidade dos recursos de CPU, memória ou armazenamento alocados na máquina virtual;
  • Migrar dados de uma máquina virtual para outra;
  • Restaurar dados de um instantâneo do GitHub Enterprise Server Backup Utilities;
  • Solucionar determinados tipos de problemas graves no aplicativo.

É recomendável programar um período de manutenção de no mínimo 30 minutos para que os usuários tenham tempo de se preparar. Quando houver um período de manutenção programado, todos os usuários verão um banner ao acessar o site.

Quando a instância estiver em modo de manutenção, todos os acessos regulares por HTTP e Git serão recusados. Isso inclui solicitações da Web e de API para as quais o dispositivo responde com código de status 503 (Serviço indisponível). As operações de busca, clonagem e envio de git também são rejeitadas com uma mensagem de erro indicando que o site está temporariamente indisponível. Em configurações de alta disponibilidade, a replicação do Git será pausada trabalhos de GitHub Actions não serão executados. O acesso ao site por navegador levará a uma página de manutenção.

Você pode executar a validação inicial de sua operação de manutenção configurando uma lista de exceções de IP para permitir o acesso ao sua instância do GitHub Enterprise Server somente dos endereços IP e intervalos fornecidos. As tentativas de acessar o sua instância do GitHub Enterprise Server de endereços IP não especificados na lista de exceções de IP receberão uma resposta consistente com as enviadas quando a instância estiver no modo de manutenção.

Habilitar o modo de manutenção imediatamente ou programar um período de manutenção mais tarde

  1. Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em .

  2. Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site.

  3. Na barra lateral " Administrador do site", clique em Console de Gerenciamento .

  4. Na barra de navegação superior, clique em Manutenção.

    Captura de tela do cabeçalho do Console de Gerenciamento. Uma guia, rotulada "Manutenção", é realçada com um contorno laranja.

  5. Em "Habilitar e agendar", selecione Habilitar modo de manutenção e decida se você quer habilitar o modo de manutenção imediatamente ou agendar uma janela de manutenção para um momento posterior.

    • Para habilitar o modo de manutenção imediatamente, selecione o menu suspenso e clique em Agora.
    • Para programar um período de manutenção para posteriormente, selecione o menu suspenso e clique no horário de início.
  6. Opcionalmente, para definir uma mensagem personalizada para os usuários verem durante a janela de manutenção, no campo "Definir uma mensagem de modo de manutenção", digite uma mensagem.

  7. Quando estiver satisfeito com o tempo da janela e a mensagem opcional, clique em Salvar. Se você selecionou "agora", sua instância será colocada em modo de manutenção imediatamente.

Validando alterações no modo de manutenção usando a lista de exceções de IP

A lista de exceções de IP fornece acesso controlado e restrito ao sua instância do GitHub Enterprise Server, ideal para validação inicial da integridade do servidor após uma operação de manutenção. Depois de habilitada, a sua instância do GitHub Enterprise Server será retirada do modo de manutenção e ficará disponível somente para os endereços IP configurados. A caixa de seleção do modo de manutenção será atualizada para refletir a alteração no estado.

Se você reabilitar o modo de manutenção, a lista de exceções de IP será desabilitada e a sua instância do GitHub Enterprise Server retornará ao modo de manutenção. Se você simplesmente desabilitar a lista de exceções de IP, a sua instância do GitHub Enterprise Server retornará à operação normal.

Você também pode usar um utilitário de linha de comando para configurar a lista de exceções de IP. Para obter mais informações, confira "Utilitários de linha de comando" e "Acesar o shell administrativo (SSH)."

  1. Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em .

  2. Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site.

  3. Na barra lateral " Administrador do site", clique em Console de Gerenciamento .

  4. Na barra de navegação superior, clique em Manutenção e confirme se o modo de manutenção já está habilitado.

    Captura de tela do cabeçalho do Console de Gerenciamento. Uma guia, rotulada "Manutenção", é realçada com um contorno laranja.

  5. Em "Habilitar e configurar a lista de exceções de IP", selecione Habilitar lista de exceções de IP.

  6. No lado direito da caixa de seleção para habilitar a lista, digite uma lista válida de endereços IP separados por espaço ou blocos CIDR que devem ter permissão para acessar sua instância do GitHub Enterprise Server.

  7. Opcionalmente, para definir uma mensagem personalizada para os usuários verem durante a janela de manutenção, no campo "Definir uma mensagem de modo de manutenção", digite uma mensagem.

  8. Clique em Save (Salvar).

Gerenciar o modo de manutenção usando a API REST

Você pode gerenciar o modo de manutenção em sua instância do GitHub Enterprise Server usando a API REST. Para obter mais informações, confira "Pontos de extremidade da API REST para gerenciar o GitHub Enterprise Server".

Como gerenciar o modo de manutenção usando o GitHub CLI

Você pode gerenciar o modo de manutenção em sua instância do GitHub Enterprise Server usando a extensão gh es GitHub CLI. Para obter mais informações, confira a documentação de uso da CLI do GH ES ou para gh es maintenance set e gh es maintenance get.

Para obter mais informações, confira "Como administrar sua instância usando a CLI do GitHub".

Como gerenciar o modo de manutenção usando SSH

Se você tiver acesso SSH, poderá usar o utilitário de linha de comando ghe-maintenance para definir ou remover a definição do modo de manutenção para uma instância GitHub Enterprise Server com um nó ou vários nós em uma configuração de alta disponibilidade. Para obter mais informações, confira "Acesar o shell administrativo (SSH)" e "Utilitários de linha de comando."

Como gerenciar o modo de manutenção para um cluster usando SSH

Se você tiver acesso SSH à sua instância GitHub Enterprise Server, poderá usar o utilitário de linha de comando ghe-cluster-maintenance para definir ou remover a definição do modo de manutenção para cada nó em um cluster. Para obter mais informações, confira "Acesar o shell administrativo (SSH)" e "Utilitários de linha de comando."

$ ghe-cluster-maintenance -h
# Shows options
$ ghe-cluster-maintenance -q
# Queries the current mode
$ ghe-cluster-maintenance -s
# Sets maintenance mode
$ ghe-cluster-maintenance -s "MESSAGE"
# Sets maintenance mode with a custom message
$ ghe-cluster-maintenance -m "MESSAGE"
# Updates the custom message
$ ghe-cluster-maintenance -u
# Unsets maintenance mode