Skip to main content

Enterprise Server 3.15 está disponível no momento como versão release candidate.

Sobre nós de cluster

Em um cluster do GitHub Enterprise Server, os nós são VMs (máquinas virtuais) individuais que executam o software GitHub Enterprise Server e compõem a instância. Cada nó executa um conjunto de serviços.

Quem pode usar esse recurso?

A GitHub determina a qualificação para clustering e deve habilitar a configuração para a licença da instância. O clustering requer um planejamento cuidadoso e sobrecarga administrativa adicional. Para obter mais informações, confira "Sobre clustering".

Sobre os nós de cluster do GitHub Enterprise Server

Cada nó em um cluster do GitHub Enterprise Server é uma VM (máquina virtual) que executa o software GitHub Enterprise Server. Antes de implantar um cluster, você pode examinar os requisitos de hardware, os serviços necessários e as recomendações de design.

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

Requisitos 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óriaMínimo de espaço livre para volume de dados exigido
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

O GitHub Enterprise Server compreende um conjunto de serviços. Em um cluster, esses serviços são executados em diversos nós e a instância balanceia as solicitações entre os nós. A instância armazena automaticamente cópias redundantes de dados em nós separados. A maioria dos serviços são pares iguais com outras instâncias do mesmo serviço. As exceções a essa distribuição são os serviços mysql-server e redis-server, que operam com um único nó primário e um ou mais nós de réplica.

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

Observação: os requisitos de dimensionamento do ambiente dependem de muitos fatores, como o tamanho e o número de repositórios, o número de usuários e a utilização geral.

Exemplo de configuração de cluster

O exemplo a seguir demonstra a configuração de um cluster mínimo, que inclui 11 nós que executam os serviços necessários.

TiersServiçosRequisito mínimo de nós
Front-endjob-server,
memcache-server,
web-server
2
Backup de banco de dadosconsul-server,
mysql-server,
redis-server
3
Armazenamentogit-server,
metrics-server,
pages-server,
storage-server
3
Pesquisarelasticsearch-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.