Como provisionar um cluster PostgreSQL no DBaaS da Magalu Cloud com failover automático

Published: (December 16, 2025 at 04:32 PM EST)
4 min read
Source: Dev.to

Source: Dev.to

Bancos de dados relacionais continuam sendo componentes centrais em aplicações modernas. Quando o banco é crítico para o negócio, alta disponibilidade deixa de ser diferencial e passa a ser requisito.

A Magalu Cloud oferece o Database as a Service (DBaaS), que abstrai a complexidade operacional de bancos de dados gerenciados, incluindo replicação e failover automático.

Neste artigo, você vai aprender:

  • O que é um cluster PostgreSQL no DBaaS da Magalu Cloud
  • Quando faz sentido usar alta disponibilidade
  • Como provisionar um cluster PostgreSQL com failover automático usando a CLI mgc

O que é um cluster PostgreSQL

Um cluster PostgreSQL no DBaaS da Magalu Cloud é uma configuração de alta disponibilidade, formada por múltiplos nós do banco de dados:

  • 1 nó primário, responsável por leitura e escrita
  • Réplicas em espera (standby), distribuídas em Zonas de Disponibilidade diferentes
  • Failover automático, que promove uma réplica a primária em caso de falha

As alterações realizadas no nó primário são replicadas continuamente para as réplicas, reduzindo o tempo de indisponibilidade e o risco de perda de dados. A distribuição entre Zonas de Disponibilidade (AZs) garante maior resiliência dentro de uma mesma região.

Quando usar um cluster PostgreSQL

Clusters PostgreSQL com failover automático são indicados quando a aplicação:

  • Não pode tolerar indisponibilidade prolongada
  • Precisa de replicação contínua de dados
  • Depende de alta disponibilidade para o negócio
  • Quer reduzir esforço operacional com gerenciamento de banco

Provisionamento via CLI (mgc)

Pré‑requisitos

Antes de começar, você precisa:

  • Ter a CLI mgc instalada e configurada
  • Ter acesso à região desejada
  • Identificar a engine PostgreSQL e o tipo de instância adequado

1. Listar engines disponíveis

mgc dbaas engines list --status=ACTIVE

Anote o id correspondente ao PostgreSQL (por exemplo, PostgreSQL 16).

2. Listar tipos de instância compatíveis

mgc dbaas instance-types list \
  --engine-id="SEU_ENGINE_ID" \
  --status=ACTIVE

Cada tipo de instância define CPU e memória de cada nó do banco.

Entendendo o compatible_product

  • SINGLE_INSTANCE – pode ser usado apenas para instâncias simples
  • CLUSTER – pode ser usado apenas para clusters com alta disponibilidade

Esse campo é informativo e serve para orientar a escolha correta do instance-type-id.

3. Criar um cluster PostgreSQL com failover automático

A criação do cluster é feita com o comando mgc dbaas clusters create. Diferente de uma instância simples, o cluster já nasce com múltiplos nós e alta disponibilidade configurada desde o início. Apenas tipos de instância com compatible_product: CLUSTER podem ser utilizados neste comando.

Exemplo de criação de cluster

mgc dbaas clusters create \
  --name="meu-postgres-cluster" \
  --user="admin" \
  --password="SenhaSegura!" \
  --engine-id="ID_DA_ENGINE_POSTGRESQL" \
  --instance-type-id="ID_DO_INSTANCE_TYPE_CLUSTER" \
  --volume.size=100 \
  --volume.type="CLOUD_NVME20K"

Principais parâmetros

ParâmetroDescrição
--nameNome do cluster PostgreSQL
--userUsuário administrador do banco
--passwordSenha do usuário administrador
--engine-idIdentificador da engine PostgreSQL
--instance-type-idTipo de instância compatível com CLUSTER, que define CPU e memória de cada nó
--volume.sizeTamanho do volume de dados em GiB
--volume.typeTipo de armazenamento gerenciado do DBaaS – veja os valores na documentação

Após a execução, o cluster entra em processo de provisionamento, que pode levar alguns minutos.

4. Acompanhar o status do cluster e das instâncias

Obter detalhes do cluster

mgc dbaas clusters get "ID_DO_CLUSTER"

Listar os nós do cluster

mgc dbaas instances list

Obter detalhes de um nó específico

mgc dbaas instances get "ID_DA_INSTANCIA"

Failover automático na prática

Quando o cluster está ativo, o DBaaS da Magalu Cloud monitora continuamente o nó primário. Em caso de falha:

  • Uma réplica é promovida automaticamente a primária
  • O endpoint do cluster permanece o mesmo
  • A aplicação precisa apenas lidar com reconexões

Todo o processo ocorre sem intervenção manual.

Boas práticas

  • Utilize senhas fortes para usuários do banco
  • Escolha tipos de instância compatíveis com a carga da aplicação
  • Monitore o status das instâncias via CLI
  • Garanta que a aplicação lide bem com reconexões

Conclusão

Provisionar um cluster PostgreSQL com failover automático no DBaaS da Magalu Cloud permite unir simplicidade operacional e alta disponibilidade.

Com a CLI mgc, você consegue:

  • Identificar engines e tipos de instância
  • Criar clusters PostgreSQL com alta disponibilidade desde a criação
  • Contar com failover automático gerenciado pela plataforma
  • Monitorar o estado do banco de dados de forma centralizada

Isso reduz a complexidade operacional e permite que o time foque no desenvolvimento da aplicação, aproveitando a infraestrutura gerenciada da Magalu Cloud.

Back to Blog

Related posts

Read more »