Alta Disponibilidade: desenho, falhas e recuperação
Doze aulas, 100 perguntas e vinte cenários sobre disponibilidade, quorum, learners, isolamento de escritores, idempotência e recuperação do serviço.
Objetivos e percurso
Percurso técnico com doze módulos e exemplos fictícios de APS. Seis oficinas aprofundam autoridade, leituras, eleição, regresso, learners, substituição, identidade, gerações, repetição de efeitos e capacidade líquida. Dois laboratórios etcd 3.6.15 têm oito e dez grupos executados no mesmo host. Um modelo Python 3.13.1 e SQLite 3.51.2 acrescenta 32 verificações locais e cálculos de recuperação. Inclui oficinas de decisão e comunicação em inglês. Os exemplos de fencing físico, PostgreSQL e Kubernetes permanecem conceptuais. Avaliação interna de 62 decisões em 130 minutos. Os mínimos maduros quantitativos do banco técnico foram atingidos; ensaios em domínios reais, qualificação dos destinos, prática acompanhada e revisão especializada independente continuam pendentes.
Para quem: Equipas APS L2/L3, infraestrutura, SRE, administração de sistemas e gestores técnicos.
Pré-requisitos: Noções de redes, armazenamento e serviços; os exemplos explicitam condições e versões relevantes.
730 minutos de estudo estimados
- Define disponibilidade pelo resultado do serviço, com população, janela e critérios explícitos.
- Avalia dependências comuns, colocação e capacidade depois da falha prevista.
- Distingue decisão por maioria, suspeita de falha e isolamento comprovado.
- Relaciona confirmação de commits, dados disponíveis e recuperação segura do papel de primário.
- Escolhe sinais e tentativas que ajudem a recuperação sem amplificar a falha.
- Decide mudanças pelo estado real e encerra com evidência do serviço e da redundância.
- Observa consenso, leituras e autoridade com três processos locais e distingue coordenação de proteção do recurso.
- Interpreta falhas e recuperação do cluster sem confundir processos disponíveis, votos e recuperação do consumidor.
- Segue as transições de um learner local, interpreta os limites de leitura e confirma o papel antes de reduzir redundância.
- Reconcilia composição e identidade após uma substituição e fecha a mudança com evidência do consumidor e passagem de serviço.
- Executa um contrato local de admissão de escrita e distingue geração, idempotência, transação e isolamento físico.
- Calcula margem de recuperação e interpreta filas, retries e marcos funcionais antes de assumir um compromisso de serviço.
Módulos
- Objetivos e impacto no serviço
- Domínios de falha e capacidade residual
- Quorum e isolamento de escritores
- Replicação, promoção e redundância
- Saúde, tráfego e pressão dos retries
- Manutenção e evidência de recuperação
- Quorum, leituras e autoridade
- Eleição, regresso e manutenção
- Learner, sincronização e promoção
- Substituição, identidade e aceitação
- Gerações, efeitos e repetição
- Capacidade líquida e recuperação
Continua a aprender
Referências e versão
DR HA 2026-09; Pacemaker 3.0, etcd 3.6, PostgreSQL 18 and selected Kubernetes/AWS behavior
- Service level objectives and user-facing indicators · 2026-09-30
- Availability and observation-window arithmetic · 2026-09-30
- Deploy the workload to multiple locations · 2026-09-30
- Use static stability · 2026-10-04
- Test resiliency using chaos engineering · 2026-10-04
- Control and limit retry calls · 2026-10-04
- Pacemaker Explained: Fencing · 2026-10-04
- etcd FAQ · 2026-10-04
- PostgreSQL 18 standby replication and commit acknowledgement · 2026-09-30
- PostgreSQL 18 failover and restoration of redundancy · 2026-09-30
- Kubernetes startup, readiness and liveness probes · 2026-09-30
- Kubernetes disruptions and PDB scope · 2026-09-30
- Kubernetes topology spread constraints · 2026-09-30
- Kubernetes graceful and forced Pod termination · 2026-09-30
- etcd v3.6.15 official release · 2026-10-04
- etcd clustering guide · 2026-10-03
- etcd supported platforms · 2026-10-04
- etcd API · 2026-10-03
- Interacting with etcd · 2026-10-03
- etcd API guarantees · 2026-10-03
- etcd failure modes · 2026-10-03
- etcd runtime reconfiguration · 2026-10-04
- etcd learner design · 2026-10-04
- How to check etcd cluster status · 2026-10-04
- The Chubby lock service for loosely-coupled distributed systems · 2026-10-04
- SQLite transaction control · 2026-10-04
- Python sqlite3 interface and transaction control · 2026-10-04
- Making retries safe with idempotent APIs · 2026-10-04
- Fail fast and limit queues · 2026-10-04
O que vais explorar
0 / 12Objetivos e impacto no serviço
Define disponibilidade pelo resultado do serviço, com população, janela e critérios explícitos.
Domínios de falha e capacidade residual
Avalia dependências comuns, colocação e capacidade depois da falha prevista.
Quorum e isolamento de escritores
Distingue decisão por maioria, suspeita de falha e isolamento comprovado.
Replicação, promoção e redundância
Relaciona confirmação de commits, dados disponíveis e recuperação segura do papel de primário.
Saúde, tráfego e pressão dos retries
Escolhe sinais e tentativas que ajudem a recuperação sem amplificar a falha.
Manutenção e evidência de recuperação
Decide mudanças pelo estado real e encerra com evidência do serviço e da redundância.
Quorum, leituras e autoridade
Observa consenso, leituras e autoridade com três processos locais e distingue coordenação de proteção do recurso.
Eleição, regresso e manutenção
Interpreta falhas e recuperação do cluster sem confundir processos disponíveis, votos e recuperação do consumidor.
Learner, sincronização e promoção
Segue as transições de um learner local, interpreta os limites de leitura e confirma o papel antes de reduzir redundância.
Substituição, identidade e aceitação
Reconcilia composição e identidade após uma substituição e fecha a mudança com evidência do consumidor e passagem de serviço.
Gerações, efeitos e repetição
Executa um contrato local de admissão de escrita e distingue geração, idempotência, transação e isolamento físico.
Capacidade líquida e recuperação
Calcula margem de recuperação e interpreta filas, retries e marcos funcionais antes de assumir um compromisso de serviço.