Failover PostgreSQL: Alta Disponibilidade e Continuidade para Ambientes Corporativos

Equipe Dominus Tech em ambiente moderno de operações de TI analisando uma arquitetura PostgreSQL com servidores Primary e Standby, replicação, failover automático, alta disponibilidade e continuidade operacional.
Equipe Dominus Tech acompanha uma arquitetura PostgreSQL com Primary e Standby, replicação, failover automático, monitoramento e indicadores de continuidade operacional.

Failover PostgreSQL: Alta Disponibilidade e Continuidade para Ambientes Corporativos

Failover PostgreSQL é um dos principais mecanismos para aumentar a disponibilidade de bancos de dados corporativos e reduzir o impacto de falhas em ambientes críticos. Em uma arquitetura de alta disponibilidade, um servidor PostgreSQL primário pode trabalhar com um ou mais servidores standby preparados para assumir a operação caso o servidor principal fique indisponível.

Essa estratégia é especialmente importante para empresas que dependem continuamente de sistemas transacionais, aplicações corporativas, plataformas digitais, ERPs, sistemas financeiros e serviços que não podem permanecer indisponíveis durante uma falha de infraestrutura.

O failover não deve ser entendido apenas como a troca de um servidor por outro. Uma implementação empresarial precisa considerar replicação, detecção de falhas, promoção do standby, prevenção de split-brain, recuperação do antigo primário, direcionamento das conexões e procedimentos operacionais.

O PostgreSQL possui recursos nativos para arquiteturas de alta disponibilidade baseadas em servidores primário e standby, streaming replication e mecanismos de promoção durante uma situação de falha.


O que é Failover PostgreSQL?

Failover PostgreSQL é o processo de transferência da função de banco de dados primário para um servidor standby quando o servidor principal apresenta uma falha que compromete a continuidade do serviço.

Em uma arquitetura tradicional, o ambiente pode possuir:

  • um servidor PostgreSQL primário;
  • um ou mais servidores standby;
  • replicação entre os servidores;
  • mecanismos de monitoramento;
  • um processo de promoção do standby;
  • mecanismos para direcionar as aplicações ao novo primário.

Quando ocorre uma falha, o standby pode ser promovido para assumir a função de servidor primário. O objetivo é reduzir o tempo de indisponibilidade e manter a continuidade das aplicações.

Primary e Standby no PostgreSQL

O servidor primary normalmente recebe as operações de escrita. Os servidores standby acompanham as alterações realizadas no primário por meio dos mecanismos de replicação.

Dependendo da arquitetura, um standby pode permanecer disponível apenas para recuperação ou também atender consultas somente leitura. O PostgreSQL diferencia arquiteturas de warm standby e hot standby, permitindo diferentes estratégias de disponibilidade e utilização dos servidores secundários.


Como funciona o Failover PostgreSQL?

O processo pode ser dividido em algumas etapas fundamentais.

  1. O servidor primário processa as transações.
  2. As alterações são registradas no mecanismo WAL.
  3. Os dados são enviados ao servidor standby.
  4. O standby mantém seu estado sincronizado de acordo com a política de replicação adotada.
  5. Um mecanismo de monitoramento identifica a indisponibilidade do primário.
  6. O standby apropriado é promovido.
  7. As aplicações passam a utilizar o novo primário.
  8. O antigo primário é posteriormente reintegrado à arquitetura como standby.

Essa última etapa é particularmente importante. Depois de uma promoção, o ambiente não deve simplesmente considerar o problema resolvido. O antigo primário precisa ser analisado e preparado para retornar à topologia sem criar uma segunda instância primária indevida.

Replicação como base do failover

O failover depende de uma estratégia de replicação previamente configurada. O PostgreSQL suporta arquiteturas de standby utilizando streaming replication, além de outras possibilidades relacionadas à alta disponibilidade.

A escolha entre replicação síncrona e assíncrona também influencia o comportamento do ambiente. A replicação síncrona pode reduzir o risco de perda de dados durante uma falha, mas pode introduzir maior impacto de latência. A replicação assíncrona tende a oferecer menor impacto de desempenho, porém pode existir atraso entre o primário e o standby.


Arquitetura de Alta Disponibilidade PostgreSQL

Uma arquitetura corporativa pode utilizar um desenho semelhante ao seguinte:

  • PostgreSQL Primary: servidor responsável pelas operações de escrita.
  • PostgreSQL Standby: servidor preparado para assumir a função de primary.
  • Replicação: mecanismo responsável pela transferência das alterações.
  • Monitoramento: responsável por acompanhar a saúde dos nós.
  • Orquestração do failover: responsável por coordenar a promoção.
  • Camada de conexão: responsável por direcionar as aplicações para o servidor ativo.

Um ou mais servidores standby

Ambientes críticos podem utilizar mais de um standby. Isso permite aumentar a capacidade de recuperação e criar diferentes estratégias para disponibilidade, disaster recovery e distribuição de consultas.

O PostgreSQL documenta arquiteturas com um ou mais servidores standby e mecanismos de replicação contínua para formar ambientes de alta disponibilidade.


Equipe da Dominus Tech analisando uma arquitetura PostgreSQL Enterprise com um servidor Primary conectado a dois servidores Standby, utilizando replicação contínua, monitoramento da saúde dos nós, failover automático e redirecionamento das aplicações.
Equipe da Dominus Tech monitorando uma arquitetura corporativa baseada em um servidor PostgreSQL Primary e dois servidores PostgreSQL Standby, com mecanismos de replicação, promoção automática e continuidade operacional.

Failover automático PostgreSQL

O failover pode ser executado manualmente ou automatizado. Em ambientes corporativos de missão crítica, a automação pode reduzir o tempo necessário para detectar uma falha e promover um servidor standby.

Entretanto, automatizar o failover não significa simplesmente configurar uma regra para promover o primeiro servidor que deixar de responder. A solução precisa considerar estados do cluster, conectividade, replicação, quorum, isolamento de nós e prevenção de situações em que dois servidores possam acreditar que são o primary.

O risco de split-brain

Um dos problemas mais importantes em uma arquitetura de failover é o split-brain. Essa situação pode ocorrer quando dois servidores passam a acreditar simultaneamente que possuem autoridade para atuar como primário.

O próprio PostgreSQL alerta para a necessidade de impedir que um antigo primary, após uma promoção, volte a operar incorretamente como primary. Em cenários de failover, mecanismos de isolamento ou procedimentos equivalentes são fundamentais para evitar conflitos e possível perda de dados.

Witness e controle da decisão

Em determinadas arquiteturas, um terceiro componente pode ajudar na tomada de decisão sobre qual nó deve permanecer ativo. O conceito de witness é utilizado em soluções de alta disponibilidade para reduzir determinados cenários de decisão incorreta durante uma falha.

O EDB Failover Manager, por exemplo, utiliza uma arquitetura que pode incluir primary, standby e witness para auxiliar na tomada de decisão durante cenários de failover.


EDB Failover Manager para PostgreSQL

Para ambientes PostgreSQL e EDB Postgres Advanced Server que exigem automação de alta disponibilidade, o EDB Failover Manager é uma solução especializada para gerenciamento de clusters PostgreSQL.

O EDB Failover Manager monitora clusters baseados em streaming replication e pode promover automaticamente um servidor standby para primary em situações de falha de software ou hardware. A ferramenta pode ser utilizada tanto com PostgreSQL quanto com EDB Postgres Advanced Server.

Principais funções

  • monitoramento dos nós do cluster;
  • detecção de falhas;
  • promoção automática de standby;
  • gerenciamento de arquiteturas primary/standby;
  • suporte a witness;
  • acompanhamento do estado do cluster;
  • notificações relacionadas a eventos;
  • controle operacional do processo de failover.

A documentação oficial do EDB apresenta o Failover Manager como uma ferramenta de alta disponibilidade baseada em arquiteturas primary-standby e streaming replication.


Equipe da Dominus Tech acompanhando uma arquitetura PostgreSQL de alta disponibilidade em um centro de operações, com servidores Primary, Standby e Witness, replicação contínua, monitoramento da infraestrutura, alerta de falha e promoção automática do novo Primary.
Equipe da Dominus Tech monitorando uma arquitetura corporativa baseada em PostgreSQL com replicação contínua, monitoramento dos nós, failover automático e continuidade operacional em ambientes de missão crítica.

Failover PostgreSQL automático ou manual?

A escolha depende da criticidade do ambiente, dos requisitos de RTO e RPO, da arquitetura de replicação e da maturidade operacional da empresa.

Failover manual

No failover manual, uma equipe técnica identifica a falha, avalia o estado dos servidores e executa a promoção do standby de acordo com procedimentos previamente documentados.

Essa abordagem pode ser adequada para ambientes nos quais a indisponibilidade tolerada é maior ou onde uma decisão humana é necessária antes da promoção.

Failover automático

No failover automático, uma solução de alta disponibilidade monitora os servidores e executa as ações necessárias quando determinadas condições são atendidas.

A principal vantagem é reduzir o tempo entre a falha e a recuperação do serviço. Porém, quanto maior a automação, mais importante se torna a qualidade dos mecanismos de detecção, quorum, isolamento e validação.


RTO e RPO no Failover PostgreSQL

Uma arquitetura de failover deve ser projetada a partir dos requisitos de continuidade do negócio.

RTO — Recovery Time Objective

O RTO representa o tempo máximo aceitável para recuperar o serviço após uma interrupção.

Quanto menor o RTO exigido, maior será a necessidade de automação, monitoramento e preparação operacional.

RPO — Recovery Point Objective

O RPO representa a quantidade de dados que a empresa aceita perder em um cenário de falha.

Uma arquitetura baseada em replicação assíncrona pode apresentar algum atraso entre o primary e o standby. Já estratégias síncronas podem reduzir esse risco, embora possam aumentar a latência dependendo das condições da infraestrutura.


Failover PostgreSQL em ambientes críticos

Para sistemas de missão crítica, o failover deve fazer parte de uma estratégia mais ampla de continuidade operacional.

Não basta possuir dois servidores. É necessário validar todo o processo:

  • detecção da falha;
  • seleção do standby;
  • promoção;
  • redirecionamento das aplicações;
  • validação das conexões;
  • verificação da consistência;
  • reintegração do servidor antigo;
  • monitoramento pós-failover;
  • documentação do incidente.

Testes periódicos

Um dos pontos mais importantes de uma arquitetura de alta disponibilidade é testar o failover antes que ele seja necessário em uma situação real.

Testes controlados permitem identificar problemas de configuração, dependências não documentadas, dificuldades de conexão, tempos de recuperação superiores ao planejado e falhas no processo de reintegração.

A própria documentação do PostgreSQL recomenda procedimentos administrativos e testes da capacidade de failover como parte de uma estratégia de alta disponibilidade.


Failover PostgreSQL e aplicações corporativas

O banco de dados pode realizar a promoção corretamente e, mesmo assim, a aplicação continuar indisponível se estiver configurada para utilizar exclusivamente o endereço do antigo primary.

Por isso, uma arquitetura empresarial precisa considerar também a camada de conexão.

Dependendo da infraestrutura, essa camada pode envolver:

  • DNS;
  • VIP;
  • load balancer;
  • connection pool;
  • mecanismos de descoberta de serviço;
  • configuração da aplicação;
  • drivers e clientes PostgreSQL.

O objetivo é fazer com que a aplicação consiga identificar o novo primary sem depender de uma intervenção manual prolongada.


Monitoramento do Failover PostgreSQL

Monitorar apenas CPU, memória e espaço em disco não é suficiente para uma arquitetura de alta disponibilidade.

É necessário acompanhar indicadores específicos do cluster:

  • estado do primary;
  • estado dos standby;
  • replication lag;
  • WAL;
  • conectividade entre os nós;
  • tempo desde a última atualização do standby;
  • estado da replicação;
  • eventos de promoção;
  • falhas de conexão;
  • tempo de recuperação;
  • estado após o failover.

Observabilidade após a promoção

Depois que um standby se torna primary, o monitoramento deve confirmar se o novo ambiente está realmente operacional.

É necessário verificar conexões, transações, desempenho, replicação e capacidade de reconstruir o novo standby.


Equipe da Dominus Tech analisando dashboard corporativo de cluster PostgreSQL com replicação, alta disponibilidade, performance, armazenamento e monitoramento.
Equipe da Dominus Tech monitorando uma arquitetura empresarial PostgreSQL com replicação, failover automático, alta disponibilidade, performance, capacidade e continuidade operacional.

Failback PostgreSQL

Depois de um failover, o trabalho ainda não terminou. A infraestrutura precisa retornar a uma condição operacional adequada.

O processo de retorno é frequentemente chamado de failback ou reintegração do antigo servidor à topologia.

O antigo primary não deve simplesmente ser colocado novamente em produção como se nada tivesse acontecido. É necessário verificar seu estado, sua linha do tempo de dados e sua posição em relação ao novo primary.

Recriação do standby

Dependendo do cenário, o antigo primary pode precisar ser reconstruído ou ressincronizado para retornar como standby.

Esse procedimento garante que exista novamente uma arquitetura de redundância depois do incidente.

Uma arquitetura que permanece com apenas um servidor após o failover perdeu parte da proteção original e deve ser tratada como estado temporário.


Boas práticas para Failover PostgreSQL

  • Definir claramente RTO e RPO.
  • Utilizar servidores standby adequadamente dimensionados.
  • Monitorar o replication lag.
  • Testar o processo de failover periodicamente.
  • Documentar os procedimentos de recuperação.
  • Evitar split-brain.
  • Planejar o direcionamento das conexões das aplicações.
  • Monitorar o cluster após a promoção.
  • Planejar a reintegração do antigo primary.
  • Separar alta disponibilidade de backup.
  • Considerar disaster recovery em outra infraestrutura ou localização.
  • Validar o comportamento real da aplicação durante os testes.

Failover não substitui Backup

Um erro comum em projetos de alta disponibilidade é considerar que possuir um standby elimina a necessidade de backup.

Failover e backup possuem objetivos diferentes.

O failover busca manter o serviço disponível quando ocorre uma falha. O backup permite recuperar dados em situações como corrupção lógica, exclusão acidental, erro operacional, ataques ou outros incidentes nos quais a replicação poderia simplesmente reproduzir o problema.

Por isso, uma estratégia empresarial de PostgreSQL deve combinar alta disponibilidade, backup, recuperação e disaster recovery.


Quando implementar Failover PostgreSQL?

O failover PostgreSQL é especialmente relevante quando uma indisponibilidade do banco de dados representa impacto financeiro, operacional ou reputacional significativo.

Alguns exemplos incluem:

  • sistemas ERP;
  • aplicações financeiras;
  • plataformas de comércio eletrônico;
  • sistemas de atendimento;
  • aplicações transacionais;
  • serviços digitais;
  • ambientes de missão crítica;
  • plataformas que exigem operação contínua.

Quando a alta disponibilidade é realmente necessária?

A decisão deve ser baseada no impacto da indisponibilidade e não apenas na tecnologia disponível.

Se uma falha de algumas horas puder causar prejuízos relevantes, a empresa deve avaliar uma arquitetura de alta disponibilidade compatível com seus requisitos de negócio.


Como a Dominus Tech pode apoiar projetos de Failover PostgreSQL?

Projetar uma arquitetura de Failover PostgreSQL exige mais do que instalar um segundo servidor. É necessário avaliar o ambiente atual, requisitos de disponibilidade, replicação, aplicações, infraestrutura, segurança, recuperação e operação.

A Dominus Tech pode atuar na avaliação e planejamento de ambientes PostgreSQL e EnterpriseDB, apoiando empresas na definição de arquiteturas de alta disponibilidade, replicação, failover, modernização e migração de bancos de dados.

Em ambientes que utilizam Oracle, essa arquitetura também pode fazer parte de uma estratégia maior de modernização e migração para PostgreSQL ou EDB Postgres.


FAQ — Failover PostgreSQL

O que é Failover PostgreSQL?

É o processo de transferência da função de servidor primário para um servidor standby quando o primary apresenta uma falha que compromete a continuidade do serviço.

O PostgreSQL possui failover nativo?

O PostgreSQL fornece recursos fundamentais para arquiteturas de alta disponibilidade, como servidores standby, streaming replication e mecanismos de promoção. A automação completa do failover normalmente envolve componentes adicionais de gerenciamento e orquestração.

O Failover PostgreSQL pode ser automático?

Sim. Soluções especializadas podem monitorar o cluster e promover automaticamente um standby quando determinadas condições de falha são identificadas. O EDB Failover Manager é um exemplo de solução destinada a essa finalidade.

Qual a diferença entre failover e failback?

Failover é a transferência da operação para um servidor standby após uma falha. Failback é o processo de retorno ou reorganização da arquitetura depois que o problema foi resolvido.

Failover elimina a necessidade de backup?

Não. Alta disponibilidade e backup possuem objetivos diferentes. O failover reduz o tempo de indisponibilidade, enquanto o backup permite recuperar dados em diferentes cenários de perda ou corrupção.

PostgreSQL pode ter mais de um standby?

Sim. Arquiteturas PostgreSQL podem utilizar um ou mais servidores standby, dependendo dos requisitos de disponibilidade, recuperação e distribuição da infraestrutura.

O que é split-brain?

É uma situação em que mais de um servidor passa a operar indevidamente como primário. Esse cenário deve ser evitado porque pode provocar divergência de dados e problemas de consistência.

O EDB Failover Manager funciona com PostgreSQL?

Sim. A documentação oficial do EDB informa que o Failover Manager pode ser utilizado com PostgreSQL e EDB Postgres Advanced Server.


Links Relacionados


Recursos Oficiais


Modernize seu Banco de Dados com a Dominus Tech

Monitoramento corporativo de PostgreSQL com observabilidade, performance, infraestrutura crítica e indicadores de disponibilidade da Dominus Tech Gold Partner EDB
Monitore, otimize e evolua sua infraestrutura PostgreSQL com observabilidade, alta performance e monitoramento corporativo da Dominus Tech Gold Partner EDB.

👉Planejando uma Migração Oracle para PostgreSQL?

A Dominus Tech é Parceira Gold da EnterpriseDB e apoia empresas em todas as etapas da modernização de bancos de dados Oracle para PostgreSQL. Nossa equipe possui experiência em ambientes corporativos de missão crítica, oferecendo serviços de assessment, planejamento, migração, otimização de desempenho, alta disponibilidade, observabilidade e suporte especializado para plataformas PostgreSQL Enterprise.

✔ Parceira Gold da EnterpriseDB no Brasil

A migração de Oracle para PostgreSQL representa uma oportunidade estratégica para reduzir custos de licenciamento, modernizar a infraestrutura e construir uma plataforma preparada para o futuro. Com uma metodologia estruturada e ferramentas especializadas da EnterpriseDB, ajudamos organizações a realizar essa transição com segurança, preservando aplicações críticas e minimizando riscos operacionais.

👉Entre em contato com nossos especialistas e solicite uma avaliação técnica do seu ambiente Oracle. Descubra a melhor estratégia para migrar para PostgreSQL com segurança, desempenho e redução de custos.