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 (Problemas de software), seja devido a falhas do sistema operacional ou a aplicativos não recuperáveis.
- Hardware failures (Falhas de hardware), incluindo hardware de armazenamento, CPU, RAM, interfaces de rede, etc.
- Virtualization host system failures, (Falha na instalação do sistema de hospedagem), incluindo eventos não planejados e scheduled maintenance events on AWS.
- Logically or physically severed network (Rede Logicamente ou fisicamente cortada), se o appliance de failover estiver em uma rede separada não impactada pela falha.
Dimensionamento
O clustering fornece melhor escalabilidade distribuindo a carga em vários nós. Esta escala horizontal pode ser preferível para algumas organizações com dezenas de milhares de desenvolvedores. 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 de alerta recomendados" e "Monitorando nós de cluster".
Leia mais
- Para obter mais informações sobre clustering no GitHub Enterprise Server, consulte "Sobre clustering".
- Para obter mais informações sobre HA, consulte "Configurar o GitHub Enterprise Server para alta disponibilidade".