Esta versão do GitHub Enterprise foi descontinuada em 2021-09-23. Nenhum lançamento de patch será feito, mesmo para questões críticas de segurança. Para obter melhor desempenho, melhorar a segurança e novos recursos, upgrade to the latest version of GitHub Enterprise. Para ajuda com a atualização, contact GitHub Enterprise support.

Instalar o GitHub Enterprise Server no Azure

Para instalar o GitHub Enterprise Server no Azure, você deve fazer a implantação em uma instância da série DS e usar o armazenamento Premium-LRS.

Você pode implantar o GitHub Enterprise Server no Azure global ou Azure Government.

Pré-requisitos

  • Você deve ter um GitHub Enterprise arquivo de licença. For more information, see "Setting up a trial of GitHub Enterprise Server" and "About licenses for GitHub Enterprise."
  • Você deve ter uma conta do Azure que permita provisionar novas máquinas. Para obter mais informações, consulte o site do Microsoft Azure.
  • A maioria das ações necessárias para iniciar sua máquina virtual (VM) também pode ser executada pelo Portal do Azure. No entanto, é recomendável instalar a interface da linha de comando (CLI) do Azure para a configuração inicial. Veja abaixo alguns exemplos de uso da CLI do Azure 2.0. Para obter mais informações, consulte o guia "Instalar a CLI do Azure 2.0".

Considerações de hardware

Requisitos mínimos

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

Nota: Se você se juntou ao beta para GitHub Actions ou GitHub Package Registry e habilitou as funcionalidades, a sua instância irá exigir recursos adicionais de hardware. Os requisitos mínimos para uma instância com recursos beta habilitados estão em negrito na tabela a seguir. Para obter mais informações, consulte "Recursos Beta em GitHub Enterprise Server 2.22".

Licenças de usuáriovCPUsMemóriaArmazenamento anexadoArmazenamento raiz
Teste, demonstração ou 10 usuários leves2
ou 4
16 GB
ou 32 GB
100 GB
ou 150 GB
200 GB
10-30004
ou 8
32 GB
ou 48 GB
250 GB
ou 300 GB
200 GB
3000-50008
ou 12
64 GB500 GB200 GB
5000-800012
ou 16
96 GB750 GB200 GB
8000-10000+16
ou 20
128 GB
ou 160 GB
1000 GB200 GB

Para obter mais informações sobre o ajuste de recursos para uma instância existente, consulte "aumentar a capacidade de armazenamento" e "aumentar recursos de CPU ou memória".

Recursos do beta em GitHub Enterprise Server 2.22

GitHub Enterprise Server 2.22 ofereceu funcionalidades em beta, como GitHub Actions, GitHub Package Registry e Varredura de código. Para obter mais informações, consulte as observações sobre a versão GitHub Enterprise Server 2.22.

Se você habilitou funcionalidades em beta para GitHub Enterprise Server 2.22, sua instância irá exigir recursos adicionais de hardware. Para obter mais informações sobre requisitos mínimos, consulte "Requisitos mínimos".

Para obter mais informações sobre os requisitos de hardware para GitHub Actions, consulte "Introdução a GitHub Actions para GitHub Enterprise Server".

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 obter mais informações, consulte "System overview."

Para configurar beta de GitHub Actions, você deve fornecer armazenamento externo de blob. Para obter mais informações, consulte "Primeiros passos com GitHub Actions for GitHub Enterprise Server".

Você pode redimensionar o disco raiz da sua instância criando uma nova instância ou usando uma instância existente. Para obter mais informações, consulte "Increasing storage capacity."

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.

Se você habilitou a versão beta do GitHub Actions para os usuários da sua instância de GitHub Enterprise Server, talvez você tenha de fornecer recursos adicionais de CPU e memória para sua instância. Para obter mais informações, consulte "Primeiros passos com GitHub Actions for GitHub Enterprise Server".

Quando você aumenta os recursos da CPU, recomendamos 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 sistemas de atividade externos em GitHub Enterprise Server. Verificações automatizadas por alterações, ou sondagem, afetarão negativamente o desempenho e escalabilidade da sua instância. Para obter mais informações, consulte "Sobre webhooks".

Para obter mais informações sobre o monitoramento da capacidade e desempenho de GitHub Enterprise Server, consulte "Monitoramento do seu aplicativo".

Você pode aumentar os recursos de memória ou da CPU na sua instância. Para obter mais informações, consulte "Increasing CPU or memory resources."

Determinar o tipo de máquina virtual

Antes de lançar sua instância do GitHub Enterprise Server no Azure, você deverá determinar o tipo de máquina que melhor atende às necessidades da sua organização. Para revisar os requisitos mínimos para GitHub Enterprise Server, consulte "Requisitos mínimos".

Nota: Você sempre pode ajustar sua CPU ou memória redimensionando sua instância. No entanto, como o redimensionamento da sua CPU ou memória requer tempo de inatividade para os usuários, recomendamos o fornecimento excessivo de recursos para contas em escala.

O appliance do GitHub Enterprise Server requer um disco de dados de armazenamento premium e é compatível com qualquer VM do Azure que tenha suporte ao armazenamento premium. Tipos de Azure VM com s sufixo são compatíveis com o armazenamento premium. Para obter mais informações, consulte "Quais tipos de disco estão disponíveis no Azure?" e "Armazenamento premium do Azure: design para alto desempenho" na documentação do Azure.

GitHub recomenda uma VM com memória otimizada para GitHub Enterprise Server. Para obter mais informações, consulte "Tamanhos de máquinas virtuais com memória otimizada " na documentação do Azure.

O GitHub Enterprise Server dá suporte a qualquer região compatível com o seu tipo de VM. Para obter mais informações sobre as regiões compatíveis com cada VM, consulte "Produtos disponíveis por região".

Criar a instância da máquina virtual 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, consulte "Considerações de hardware".

  1. Localize a imagem mais recente do appliance do GitHub Enterprise Server. Para obter mais informações sobre o comando vm image list, consulte "Lista de imagens de vm no az" na documentação da Microsoft.

    $ az vm image list --all -f GitHub-Enterprise | grep '"urn":' | sort -V
  2. Crie uma VM usando a imagem do appliance. Para obter mais informações, consulte "criar vm no az" na documentação da Microsoft.

    Veja as opções de nome da VM, grupo de recursos, tamanho da VM, nome da região preferida do Azure, nome da da imagem de VM do appliance que você listou na etapa anterior e o SKU de armazenamento para Premium. Para obter mais informações sobre grupos de recursos, consulte "Grupos de recursos" na documentação da Microsoft.

    $ az vm create -n VM_NAME -g RESOURCE_GROUP --size VM_SIZE -l REGION --image APPLIANCE_IMAGE_NAME --storage-sku Premium_LRS
  3. Defina as configurações de segurança na VM para abrir as portas necessárias. Para obter mais informações, consulte "abrir portas para a vm no az" na documentação da Microsoft. A tabela abaixo descreve cada porta para determinar quais portas você precisa abrir.

    $ az vm open-port -n VM_NAME -g RESOURCE_GROUP --port PORT_NUMBER

    Esta tabela identifica o uso de cada porta.

    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 estiver habilitado.
    122SSHExemplo de acesso a shell. A porta SSH padrão (22) é dedicada ao tráfego de rede git+ssh.
    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.
    8080HTTPBaseado em web de texto simples Console de gerenciamento. Não é necessário, a menos que o SSL seja desativado manualmente.
    8443HTTPSBase segura na web Console de gerenciamento. Necessário para instalação básica e configuração.
    9418GitPorta de protocolo Simples Git. Clonar e buscar somente as operações para repositórios públicos. Comunicação de rede não encriptada. 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 obter mais informações, consulte "Aplicar políticas de gerenciamento do repositório na sua empresa".
  4. Crie e anexe um novo disco de dados não criptografado à VM e configure o tamanho com base na sua contagem de licenças do usuário. Para obter mais informações, consulte "anexar disco a uma vm no az" na documentação da Microsoft.

    Veja as opções de nome da VM (por exemplo, ghe-acme-corp), o grupo de recursos, o SKU de armazenamento Premium, o tamanho do disco (por exemplo, 100) e um nome para o VHD resultante.

    $ az vm disk attach --vm-name VM_NAME -g RESOURCE_GROUP --sku Premium_LRS --new -z SIZE_IN_GB --name ghe-data.vhd --caching ReadWrite

    Observação: para que as instâncias não relacionadas à produção tenham capacidade suficiente de E/S, o tamanho mínimo de disco recomendado é de 40 GB com cache de leitura e gravação habilitado (--caching ReadWrite).

Configurar a máquina virtual do GitHub Enterprise Server

  1. Antes de configurar a VM, você deve aguardar a entrada no status ReadyRole. Verifique o status da VM com o comando vm list. Para obter mais informações, consulte "listar vms no az" na documentação da Microsoft.

    $ az vm list -d -g RESOURCE_GROUP -o table
      > Name    ResourceGroup    PowerState    PublicIps     Fqdns    Location    Zones
      > ------  ---------------  ------------  ------------  -------  ----------  -------
      > VM_NAME RESOURCE_GROUP   VM running    40.76.79.202           eastus
    

    Observação: o Azure não cria uma entrada FQDNS automaticamente para a VM. Para obter mais informações, consulte o guia do Azure sobre como "Criar um nome de domínio totalmente qualificado no portal do Azure para uma VM Linux".

  2. Copie o nome DNS público da máquina virtual e cole-o em um navegador.

  3. No prompt, carregue seu arquivo de licença e defina uma senha de gerenciamento do console. Para obter mais informações, consulte "Gerenciar a sua licença para GitHub Enterprise."

  4. No Console de gerenciamento, configure e salve as configurações desejadas. Para obter mais informações, consulte "Configurar o appliance do GitHub Enterprise Server".

  5. A instância será reiniciada automaticamente.

  6. Clique Visit your instance (Visite sua instância).

Leia mais