Skip to main content
We publish frequent updates to our documentation, and translation of this page may still be in progress. For the most current information, please visit the English documentation.

Sobre nós de cluster

Nós são instâncias do GitHub Enterprise Server que operam em um cluster. Cada nó executa um conjunto de serviços fornecidos para o cluster e, consequentemente, para os usuários.

Nota: o clustering de GitHub Enterprise Server deve ser configurado com HTTPS.

Recomendações básicas de hardware

Cada nó deve ter um volume raiz e um volume de dados separado. Essas são as recomendações mínimas. Podem ser necessários mais recursos, dependendo do seu uso, como atividade do usuário e integrações selecionadas.

ServiçosRequisito mínimo de memóriaRequisito mínimo de espaço livre para volume de dados
job-server,
memcache-server,
web-server
14 GB1 GB
consul-server,
mysql-server,
redis-server
14 GB10 GB
git-server,
metrics-server,
pages-server,
storage-server
14 GB10 GB
elasticsearch-server14 GB10 GB

Requisito de serviços para clustering

Para manter a redundância adequada, use esses nós mínimos ao operar cada serviço.

Observação: as necessidades de escalabilidade da sua organização dependerão de muitos fatores, incluindo o tamanho e o número de repositórios, o número de usuários e a utilização geral.

ServiçosRequisito mínimo de nós
job-server,
memcache-server,
metrics-server,
web-server
2
mysql-server,
redis-server
2
consul-server3
git-server,
pages-server,
storage-server
3
elasticsearch-server3

Recomendações de criação de cluster

O clustering permite que os serviços que compõem o GitHub Enterprise Server sejam dimensionados de maneira independente. Essa flexibilidade pode ser usada para projetar e implementar um cluster que se adapte a organizações com diferentes requisitos de dimensionamento. Por exemplo, talvez algumas organizações precisem de mais taxa de transferência de armazenamento para fetches grandes ou frequentes, mas o uso do servidor da web pode ser relativamente baixo. Outra organização pode ter um bom desempenho com menos recursos de armazenamento, mas precisar de muitos nós executando pages-server ou elasticsearch-server. Muitas combinações são possíveis. Converse com seu representante de conta para determinar a configuração de cluster ideal para o seu caso.

  • Use nós redundantes em todo o hardware independente. Compartilhar dispositivos de armazenamento, memória ou CPU reduz o desempenho e aumenta as chances de pontos únicos de falha. Componentes de rede compartilhada também podem reduzir o rendimento e aumentar o risco de perda de conectividade em caso de interrupção.
  • Use o armazenamento rápido. As redes de área de armazenamento (SAN) costumam ser otimizadas para explorar ao máximo o espaço, a disponibilidade e a tolerância a falhas, mas não o rendimento. Além de oferecer redundância e disponibilidade, o clustering do GitHub Enterprise Server terá melhor desempenho no armazenamento mais rápido disponível. Recomenda-se fazer o armazenamento local em SSD.
  • Estabeleça camadas de nós relevantes para a sua organização. Veja esta configuração de exemplo:
    • Camada de front-end com dois nós e os seguintes serviços:
      • web-server
      • job-server
      • memcache-server
    • Camada de banco de dados com dois nós e os seguintes serviços:
      • consul-server
      • mysql-server
      • redis-server
    • Camada de busca com três nós e o seguinte serviço:
      • elasticsearch-server
    • Camada de armazenamento com três nós e os seguintes serviços:
      • git-server
      • pages-server
      • storage-server
      • metrics-server

Diagrama de cluster de exemplo

Observação: este é apenas um exemplo. O design ideal do cluster da sua organização dependerá das suas necessidades exclusivas. Converse com seu representante exclusivo ou com GitHub's Sales team para que possamos ajudá-lo a determinar a melhor configuração de cluster.

Example Cluster