Skip to main content

Instalando o GitHub Enterprise Server na KVM do OpenStack

Para instalar o GitHub Enterprise Server no OpenStack KVM, você deve ter acesso ao OpenStack e baixar a imagem QCOW2 do GitHub Enterprise Server.

Pré-requisitos

Considerações sobre hardware

Requisitos mínimos recomendados

Recomendamos diferentes configurações de hardware, dependendo do número de licenças de usuário do sua instância do GitHub Enterprise Server. Se você fornecer mais recursos do que os requisitos mínimos recomendados, sua instância terá um desempenho e uma escala melhores.

Licenças de usuáriovCPUs x86-64MemóriaArmazenamento raizArmazenamento (de dados) anexadoIOPS
Teste, demonstração ou 10 usuários leves432 GB400 GB500 GB600
Até 1.000848 GB400 GB500 GB3000
1.000 a 3.0001664 GB400 GB1000 GB6000
3.000 a 5.00032128 GB400 GB1500 GB9000
5.000 a 8.00048256 GB400 GB3000 GB12000
8000-10000+64512 GB400 GB5000 GB15000

Se você pretende habilitar o GitHub Actions ou o GitHub Code Security para os usuários da sua instância, mais recursos são necessários.

  • GitHub Actions – aumentar a CPU e a memória em pelo menos 25%
  • GitHub Code Security – aumentar a CPU e a memória em pelo menos 25%

Esses ajustes devem ser aplicados aos requisitos básicos de cada nível de usuário. Recomendamos monitorar todas as alterações em seus recursos, pois podem ser necessários aumentos adicionais.

Para obter mais informações sobre esses requisitos, confira Introdução ao GitHub Actions do GitHub Enterprise Server.

Se você pretende habilitar Container registry para os usuários da sua instância, são necessários mais recursos. Para obter mais informações sobre esses requisitos, confira Introdução aos pacotes de GitHub para sua empresa.

Para obter mais informações sobre como ajustar recursos para uma instância existente, confira Aumentar a capacidade de armazenamento e Aprimorar os recursos de CPU ou memória.

Armazenamento

Recomendamos um SSD de alto desempenho com operações de alta entrada/saída por segundo (IOPS) e baixa latência para GitHub Enterprise Server. Cargas de trabalho são intensivas em I/O. Se você usar um hipervisor de metal simples, recomendamos anexar diretamente o disco ou usar um disco a partir de uma rede de área de armazenamento (SAN).

A sua instância exige um disco de dados persistente separado do disco raiz. Para saber mais, confira Visão geral do sistema.

Aviso

O armazenamento raiz refere-se ao tamanho total do disco raiz da instância. Quando a instância for inicializada, você verá 200 GB disponíveis no sistema de arquivos raiz. Os 200 GB restantes serão reservados para atualizações. Para saber mais, confira Visão geral do sistema.

Para configurar o GitHub Actions, você precisa fornecer um armazenamento de blobs externo. Para saber mais, confira Introdução ao GitHub Actions do GitHub Enterprise Server.

O espaço disponível no sistema de arquivos raiz será 50% do tamanho total do disco. Você pode redimensionar o disco raiz da sua instância criando uma nova instância ou usando uma instância existente. Para saber mais, confira Visão geral do sistema e Aumentar a capacidade de armazenamento.

CPU e memória

Os recursos de CPU e memória que GitHub Enterprise Server exige dependem dos níveis de atividade para usuários, automações e integrações.

Todas as VMs provisionados para sua instância do GitHub Enterprise Server devem usar a arquitetura de CPU x86-64. Não há suporte para outras arquiteturas, como Aarch64 ou ARM64.

Se você pretende habilitar o GitHub Actions para os usuários da sua instância do GitHub Enterprise Server, talvez seja necessário provisionar recursos adicionais de CPU e memória para a instância. Para saber mais, confira Introdução ao GitHub Actions do GitHub Enterprise Server.

Quando você aumenta os recursos da CPU, a GitHub recomenda adicionar pelo menos 6.5 GB de memória para cada vCPU (até 16 vCPUs) que você fornecer para a instância. Ao usar mais de 16 vCPUs, você não precisa adicionar 6.5 GB de memória para cada vCPU, mas você deve monitorar sua instância para garantir que ela tenha memória suficiente.

Aviso

Recomendamos que os usuários configurem eventos de webhook para notificar os sistemas externos da atividade no GitHub Enterprise Server. As verificações automatizadas de alterações, ou sondagem, afetarão negativamente o desempenho e a escalabilidade da instância. Para saber mais, confira Sobre webhooks.

Para obter mais informações sobre como monitorar a capacidade e o desempenho de GitHub Enterprise Server, confira Monitore o seu instance.

Você pode aumentar os recursos de memória ou da CPU na sua instância. Para saber mais, confira Aprimorar os recursos de CPU ou memória.

Baixar a imagem do GitHub Enterprise Server

  1. Baixe sua licença. Para saber mais, confira Baixando sua licença para GitHub Enterprise.

  2. Navegue até a imagem que você deseja usar em sua nova instância.

    • Navegue até Notas sobre a versão.
    • Na barra lateral à direita, clique na versão que você deseja baixar.
    • Clique em Baixar GitHub Enterprise Server X.X.X.
  3. Em "GitHub local", selecione o menu suspenso "Selecionar seu hipervisor" e clique em OpenStack KVM (QCOW2) .

  4. Clique em Fazer download para OpenStack KVM (QCOW2).

Criar a instância do GitHub Enterprise Server

Para criar a instância, você precisará importar a imagem GitHub Enterprise Server para sua máquina virtual e anexar um volume de armazenamento adicional para os dados de sua instância. Para obter mais informações, confira Considerações sobre hardware.

  1. No OpenStack Horizon, faça upload da imagem do GitHub Enterprise Server que você baixou. Para obter instruções, confira a seção "Carregar uma imagem" do guia do OpenStack Carregar e gerenciar imagens.

  2. Crie um novo disco virtual para usar como um volume de armazenamento conectado para os dados da sua instância e configure o tamanho com base na contagem de licenças do usuário. Se reutilizar um disco existente, confirme se o disco está vazio e se não há partições. Para obter instruções, confira o guia do OpenStack Criar e gerenciar volumes.

  3. Crie um grupo de segurança e adicione uma nova regra de grupo de segurança para cada porta na tabela abaixo. Para obter instruções, confira o guia do OpenStack Configurar o acesso e a segurança para as instâncias.

    PortaServiçoDescrição
    22SSHGit sobre acesso via SSH. Clone, buscar e fazer push de operações para repositórios público/privado suportados.
    25SMTPSuporte a SMTP com criptografia (STARTTLS).
    80HTTPAcesso ao aplicativo web. Todas as solicitações são redirecionadas para a porta HTTPS quando o SSL está habilitado.
    122SSHExemplo de acesso a shell. A porta SSH padrão (22) é dedicada ao tráfego de rede entre o Git e o SSH do aplicativo.
    161/UDPSNMPObrigatória para operações de protocolo de monitoramento de rede.
    443HTTPSAplicativo web e Git sobre acesso HTTPS.
    1194/UDPVPNTúnel de rede de réplica segura na configuração de alta disponibilidade. Criptografado usando WireGuard.
    8080HTTPBaseado em web de texto simples Console de Gerenciamento. Não obrigatória, a menos que o SSL seja desabilitado manualmente.
    8443HTTPSBase segura na web Console de Gerenciamento. Obrigatória para instalação e configuração básicas.
    9418GitPorta de protocolo Simples Git. Clonar e buscar somente as operações para repositórios públicos. Comunicação de rede não criptografada. Se você habilitou o modo privado na sua instância, abrir esta porta só é necessário se você também habilitou o acesso de leitura anônimo do Git. Para saber mais, confira Aplicar as políticas de gerenciamento do repositório na sua empresa.
  4. Você também pode associar um IP flutuante à instância. Dependendo da sua configuração do OpenStack, talvez seja necessário alocar um IP flutuante para o projeto e associá-lo à instância. Entre em contato com o administrador do sistema para determinar se esse é o seu caso. Para obter mais informações, confira Alocar um endereço IP flutuante para uma instância na documentação do OpenStack.

  5. Inicie o sua instância do GitHub Enterprise Server usando a imagem, o volume de dados e o grupo de segurança criados nas etapas anteriores. Para obter instruções, confira o guia do OpenStack Iniciar e gerenciar instâncias.

Configurando a instância do GitHub Enterprise Server

Para configurar a instância, você precisa carregar um arquivo de licença, definir a senha raiz do Console de Gerenciamento, definir as configurações da instância e reiniciar a instância.

Aviso

Para impedir que um invasor comprometa a nova instância, defina pessoalmente a senha Console de Gerenciamento raiz e crie o primeiro usuário o mais rápido possível.

  1. Copie o nome DNS público da máquina virtual e cole-o em um navegador.
  2. No prompt, carregue seu arquivo de licença e defina uma senha de gerenciamento do console. Para saber mais, confira Baixando sua licença para GitHub Enterprise.
  3. No Console de Gerenciamento, defina e salve as configurações desejadas. Para obter mais informações, consulte Configurando GitHub Enterprise.
  4. A instância será reiniciada automaticamente.
  5. Clique em Acessar sua instância.

Leitura adicional