Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.

Esta versão do GitHub Enterprise será descontinuada em Esta versão do GitHub Enterprise foi descontinuada em 2020-08-20. No patch releases will be made, even for critical security issues. For better performance, improved security, and new features, upgrade to the latest version of GitHub Enterprise. For help with the upgrade, contact GitHub Enterprise support.

Versão do artigo: Enterprise Server 2.18

Instalar o GitHub Enterprise Server no AWS

Para instalar o GitHub Enterprise Server no Amazon Web Services (AWS), você deve iniciar uma instância do Amazon Elastic Compute Cloud (EC2) e, em seguida, criar e vincular um volume de dados separado do Amazon Elastic Block Store (EBS).

Neste artigo

Pré-requisitos

Para usar este guia, você deve conhecer os seguintes conceitos do AWS:

Considerações de hardware

GitHub Enterprise Server requires a persistent data disk separate from the root disk. For more information, see "System overview." We recommend different hardware configurations based on the number of user licenses used in sua instância do GitHub Enterprise Server. |

User licensesvCPUsMemóriaAttached storageRoot storage
Trial, demo, or 10 light users216 GB100 GB200 GB
10-3000432 GB250 GB200 GB
3000-5000864 GB500 GB200 GB
5000-80001296 GB750 GB200 GB
8000-10000+16128 GB1000 GB200 GB

Essas são as recomendações básicas de hardware. Podem ser necessários mais recursos dependendo do uso, como atividade do usuário e integrações selecionadas. When increasing CPU resources, it's recommended to add at least 6.5 GB of memory for each CPU (up to 16 CPUs) added to your GitHub Enterprise Server instance. For more information, see "Increasing CPU or memory resources."

Note: The root disk can be resized by building a new appliance or using an existing appliance. For more information, see "Increasing storage capacity."

Determinar o tipo de instância

Antes de iniciar a sua instância do GitHub Enterprise Server no AWS, você terá que determinar o tipo de máquina virtual que melhor se adapta às demandas da sua organização.

Tipos de instância compatíveis

GitHub Enterprise Server is supported on the following EC2 instance types. For more information, see the AWS EC2 instance type overview page.

EC2 instance typeModel
C3c3.2xlarge, c3.4xlarge, c3.8xlarge
EC2 instance typeModel
C4c4.2xlarge, c4.4xlarge, c4.8xlarge
EC2 instance typeModel
C5c5.large, c5.xlarge, c5.2xlarge, c5.4xlarge, c5.9xlarge, c5.18xlarge
EC2 instance typeModel
M3m3.xlarge, m3.2xlarge
EC2 instance typeModel
M4m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge
EC2 instance typeModel
M5m5.large, m5.xlarge, m5.2xlarge, m5.4xlarge, m5.12xlarge, m5.24xlarge
EC2 instance typeModel
R4r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge
EC2 instance typeModel
R5r5.large, r5.xlarge, r5.2xlarge, r5.4xlarge, r5.12xlarge, r5.24xlarge
EC2 instance typeModel
X1x1.16xlarge, x1.32xlarge

Tipos de instância recomendados

Based on your user license count, we recommend the following instance types. |

User licenseTipo recomendado
Trial, demo, or 10 light usersr4.large
10 - 3000r4.xlarge
3000 - 5000r4.2xlarge
5000 - 8000r4.4xlarge
8000 - 10000+r4.8xlarge

Note: You can always scale up your CPU or memory by resizing your instance. However, because resizing your CPU or memory requires downtime for your users, we recommend over-provisioning resources to account for scale.

Selecionar a AMI do GitHub Enterprise Server

É possível selecionar uma Amazon Machine Image (AMI) para o GitHub Enterprise Server usando o portal do GitHub Enterprise Server na CLI do AWS.

AMIs for GitHub Enterprise Server are available in the AWS GovCloud (US-East and US-West) region. Com isso, os clientes dos EUA com requisitos regulamentares específicos podem executar o GitHub Enterprise Server em um ambiente em nuvem de conformidade federal. Para obter mais informações sobre a conformidade do AWS com padrões federais e outros, consulte a página do AWS GovCloud (EUA) e a página de conformidade do AWS.

Usar o portal do GitHub Enterprise Server para selecionar uma AMI

  1. Navigate to the GitHub Enterprise Server download page.
  2. Click Get the latest release of GitHub Enterprise Server.
  3. No menu suspenso Select your platform (Selecionar plataforma), clique em Amazon Web Services.
  4. No menu suspenso Select your AWS region (Selecionar região do AWS), escolha a região.
  5. Anote a ID da AMI.

Usar a CLI do AWS para selecionar uma AMI

  1. Usando a CLI do AWS, obtenha uma lista de imagens do GitHub Enterprise Server publicadas pelas IDs do AWS no GitHub(025577942450 para GovCloud e 895557238572 para outras regiões). Para obter mais informações, consulte "describe-images" na documentação do AWS.
    aws ec2 describe-images \
    --owners OWNER ID \
    --query 'sort_by(Images,&Name)[*].{Name:Name,ImageID:ImageId}' \
    --output=text
  2. Anote a ID da AMI para a imagem mais recente do GitHub Enterprise Server.

Criar um grupo de segurança

Se estiver configurando a AMI pela primeira vez, você terá que criar um grupo de segurança e adicionar uma nova regra de grupo de segurança para cada porta na tabela abaixo. Para obter mais informações, consulte o guia do AWS "Usar grupos de segurança".

  1. Usando a CLI do AWS, crie um grupo de segurança. Para obter mais informações, consulte "criar-grupo-de-segurança" na documentação do AWS.

    $ aws ec2 create-security-group --group-name SECURITY_GROUP_NAME --description "SECURITY GROUP DESCRIPTION"
  2. Anote a ID (sg-xxxxxxxx) do grupo de segurança que você acabou de criar.

  3. Crie uma regra de grupo de segurança para cada porta da tabela abaixo. Para obter mais informações, consulte "autorizar-ingresso-no-grupo-de-segurança" na documentação AWS.

    $ aws ec2 authorize-security-group-ingress --group-id SECURITY_GROUP_ID --protocol PROTOCOL --port PORT_NUMBER --cidr SOURCE IP RANGE

    Esta tabela identifica o uso de cada porta.

    PortaServiçoDescrição
    22SSHGit over SSH access. Clone, fetch, and push operations to public/private repositories supported.
    25SMTPSMTP with encryption (STARTTLS) support.
    80HTTPWeb application access. All requests are redirected to the HTTPS port when SSL is enabled.
    122SSHInstance shell access. The default SSH port (22) is dedicated to application git+ssh network traffic.
    161/UDPSNMPObrigatória para operações de protocolo de monitoramento de rede.
    443HTTPSWeb application and Git over HTTPS access.
    1194/UDPVPNSecure replication network tunnel in high availability configuration.
    8080HTTPPlain-text web based Console de gerenciamento. Not required unless SSL is disabled manually.
    8443HTTPSSecure web based Console de gerenciamento. Required for basic installation and configuration.
    9418GitSimple Git protocol port. Clone and fetch operations to public repositories only. Unencrypted network communication.

Criar a instância do GitHub Enterprise Server

Para criar a instância, você deve iniciar uma instância EC2 com sua AMI do GitHub Enterprise Server e vincular um volume de armazenamento adicional aos dados da sua instância. Para obter mais informações, consulte "Considerações de hardware".

Observação: é possível criptografar o disco de dados para obter um nível suplementar de segurança e garantir que qualquer dado gravado em sua instância está protegido. Usar discos criptografados gera um leve impacto no desempenho. Se você decidir criptografar o volume, é altamente recomendável fazer isso antes de iniciar a instância pela primeira vez. Para obter mais informações, consulte o Guia Amazon sobre criptografia EBS.

Aviso: se você decidir habilitar a criptografia depois de configurar a instância, será necessário migrar seus dados para o volume criptografado, o que vai gerar tempo de inatividade para os usuários.

Iniciar uma instância do EC2

Na CLI do AWS, inicie uma instância do EC2 usando sua AMI e o grupo de segurança que você criou. Attach a new block device to use as a storage volume for your instance data, and configure the size based on your user license count. Para obter mais informações, consulte "executar-instâncias" na documentação do AWS.

aws ec2 run-instances \
  --security-group-ids SECURITY_GROUP_ID \
  --instance-type INSTANCE_TYPE \
  --image-id AMI_ID \
  --block-device-mappings '[{"DeviceName":"/dev/xvdf","Ebs":{"VolumeSize":SIZE,"VolumeType":"TYPE"}}]' \
  --region REGION \
  --ebs-optimized

Alocar uma IP elástica e associá-la com a instância

Se for uma instância de produção, é recomendável alocar uma IP Elástica (EIP) e associá-la à instância antes de seguir para a configuração do GitHub Enterprise Server. Caso contrário, o endereço IP público da instância não será retido após a reinicialização da instância. Para obter mais informações, consulte "Alocar um endereço de IP elástica" e "Associar um endereço de IP elástica a uma instância em execução" na documentação da Amazon.

As instâncias primária e de réplica devem receber EIPs separados nas configurações de alta disponibilidade de produção. Para obter mais informações, consulte "Configurar o GitHub Enterprise Server para alta disponibilidade".

Configurar a instância do GitHub Enterprise Server

  1. Copie o nome DNS público da máquina virtual e cole-o em um navegador.
  2. At the prompt, upload your license file and set a management console password. For more information, see "Managing your GitHub Enterprise license."
  3. In the Console de gerenciamento, configure and save your desired settings. Para obter mais informações, consulte "Configurar o appliance do GitHub Enterprise Server".
  4. A instância será reiniciada automaticamente.
  5. Click Visit your instance.

Leia mais

Pergunte a uma pessoa

Não consegue encontrar o que procura?

Entrar em contato