Diferenças entre clustering e alta disponibilidade
A configuração de alta disponibilidade do GitHub Enterprise Server é uma configuração de failover primário/secundário que fornece redundância, enquanto o cluster fornece redundância e dimensionamento distribuindo a carga de leitura e gravação em vários nós.
Cenários de falha
Tanto a alta disponibilidade (High Availability, HA) quanto o cluster fornecem redundância ao eliminar o nó único como ponto de falha. Ambos podem fornecer disponibilidade nos seguintes cenários:
- Software crashes, either due to operating system failure or unrecoverable applications.
- Hardware failures, including storage hardware, CPU, RAM, network interfaces, etc.
- Virtualization host system failures, including unplanned and scheduled maintenance events on AWS.
- Logically or physically severed network, if the failover appliance is on a separate network not impacted by the failure.
Dimensionamento
Clustering provides better scalability by distributing load across multiple nodes. This horizontal scaling may be preferable for some organizations with tens of thousands of developers. Na alta disponibilidade (HA), a dimensão do appliance depende exclusivamente do nó primário, e a carga não é distribuída para o servidor réplica.
Diferenças entre configuração e método de failover
Funcionalidade | Configuração de failover | Método de failover |
---|---|---|
Configuração de alta disponibilidade | Registro DNS com TTL baixo apontado para o appliance principal, ou balanceador de carga. | É preciso promover manualmente o appliance réplica nas configurações de balanceador de carga e failover de DNS. |
Clustering | O registro de DNS deve apontar para um balanceador de carga. | Se um nó por trás do balanceador de carga falhar, o tráfego será automaticamente enviado para os outros nós em funcionamento. |
Backups e recuperação de desastre
Nem o clustering nem a HA devem ser considerados como substitutos para as medidas regulares de backup. Para obter mais informações, consulte "Configurar backups no appliance".
Monitoramento
Os recursos de disponibilidade, especialmente os que têm failover automático, como clustering, podem mascarar falhas porque geralmente o serviço não é interrompido em caso de falha. Seja qual for a opção em uso (HA ou cluster), é importante monitorar a integridade de cada instância para você se manter a par das possíveis falhas. Para obter mais informações sobre monitoramento, consulte "Limites recomendados de alerta" e "Monitoramento de nós de cluster."
Leia mais
- Para obter mais informações sobre clustering no GitHub Enterprise Server, consulte "Visão geral de clustering".
- Para obter mais informações sobre HA, consulte "Configurar o GitHub Enterprise Server para alta disponibilidade".