Sobre os problemas conhecidos com os backups do GitHub Enterprise Server
GitHub fornece soluções alternativas para os problemas a seguir, que podem afetar o backup ou a restauração de dados para uma instância do GitHub Enterprise Server. Para saber mais, confira "Problemas conhecidos" nas Notas sobre a versão do GitHub Enterprise Server.
Os usuários não podem entrar após a restauração de um backup
Nota: Esse problema conhecido foi corrigido em GitHub Enterprise Server Backup Utilities 3.8.1.
Se você usou GitHub Enterprise Server Backup Utilities 3.7.0 ou 3.8.0 para fazer backup de uma instância que executa qualquer versão na série GitHub Enterprise Server 3.7 ou 3.8, depois que você restaura o backup para uma nova instância, os usuários não podem entrar. Embora os usuários não possam entrar, o backup em si não é afetado e todos os dados estão intactos.
Depois de restaurar um backup existente afetado por esse problema, você poderá resolver o problema modificando a configuração na nova instância.
Restaurar de um backup existente
Se você tiver restaurado um backup existente do GitHub Enterprise Server Backup Utilities 3.8.0 para uma nova instância e os usuários não puderem entrar, você precisará gerar dados de configuração da instância de origem de GitHub Enterprise Server e ajustar a configuração na instância de destino.
Para garantir que os usuários possam entrar na nova instância de destino, verifique se o ambiente atende aos requisitos a seguir.
- A instância de origem de GitHub Enterprise Server precisa estar em execução e acessível por meio do SSH.
- Você deve ter um backup existente do GitHub Enterprise Server Backup Utilities 3.7.0 ou 3.8.0.
- Você deve ter provisionado uma nova instância de destino de GitHub Enterprise Server e restaurado o backup. Para obter mais informações, confira "Configurar uma instância do GitHub Enterprise Server" e "Como configurar backups em sua instância."
-
Conecte-se por SSH à instância de origem GitHub Enterprise Server da qual você fez backup. Se sua instância for composta por vários nós, por exemplo, se a alta disponibilidade ou a replicação geográfica estiver configurada, efetue SSH no nó primário. Se você usar um cluster, poderá efetuar SSH em qualquer nó. Substitua HOSTNAME pelo nome do host real da instância. Para obter mais informações sobre o acesso SSH, confira "Acesar o shell administrativo (SSH)".
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
Para exibir uma lista de chaves de descriptografia, execute o comando a seguir.
Shell ghe-config secrets.github.encrypted-column-keying-material
ghe-config secrets.github.encrypted-column-keying-material
-
Copie a saída para um local seguro e temporário.
-
Para exibir uma lista de chaves de criptografia, execute o comando a seguir.
Shell ghe-config secrets.github.encrypted-column-current-encryption-key
ghe-config secrets.github.encrypted-column-current-encryption-key
-
Copie a saída para um local seguro e temporário.
-
Conecte-se por SSH à instância de destino GitHub Enterprise Server na qual você armazenou o backup. Substitua HOSTNAME pelo nome do host real da instância.
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
Habilite o modo de manutenção. Para obter mais informações, confira "Habilitar e programar o modo de manutenção".
-
Para verificar se a instância de destino está pronta para configuração, execute os seguintes comandos. Não deve haver nenhuma saída exibida.
Shell ghe-config secrets.github.encrypted-column-keying-material ghe-config secrets.github.encrypted-column-current-encryption-key
ghe-config secrets.github.encrypted-column-keying-material ghe-config secrets.github.encrypted-column-current-encryption-key
-
Para atualizar as chaves de descriptografia na instância de destino, execute o comando a seguir. Substitua DECRYPTION-KEY-LIST pela saída da etapa 1.
Shell ghe-config secrets.github.encrypted-column-keying-material "DECRYPTION-KEY-LIST"
ghe-config secrets.github.encrypted-column-keying-material "DECRYPTION-KEY-LIST"
-
Para atualizar a chave de criptografia na instância de destino, execute o comando a seguir. Substitua ENCRYPTION-KEY pela saída da etapa 4.
Shell ghe-config secrets.github.encrypted-column-current-encryption-key "ENCRYPTION-KEY"
ghe-config secrets.github.encrypted-column-current-encryption-key "ENCRYPTION-KEY"
-
Para aplicar a configuração, execute o comando a seguir.
Shell ghe-config-apply
ghe-config-apply
-
Aguarde a conclusão da execução de suas configurações.
-
Para garantir que a configuração da instância de destino contenha as chaves, execute os seguintes comandos e verifique se a saída corresponde à etapa 1 e à etapa 4.
Shell ghe-config secrets.github.encrypted-column-keying-material ghe-config secrets.github.encrypted-column-current-encryption-key
ghe-config secrets.github.encrypted-column-keying-material ghe-config secrets.github.encrypted-column-current-encryption-key
-
Faça com que um usuário entre na instância de destino. Se qualquer problema surgir, entre em contato com o Suporte do GitHub Enterprise. Para obter mais informações, confira "Entrando em contato com o suporte do GitHub".