Monica HillmanBancos de dados relacionais continuam sendo componentes centrais em aplicações modernas. Quando o...
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:
mgc
Um cluster PostgreSQL no DBaaS da Magalu Cloud é uma configuração de alta disponibilidade, formada por múltiplos nós do banco de dados:
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.
Clusters PostgreSQL com failover automático são indicados quando a aplicação:
mgc)
Antes de começar, você precisa:
mgc instalada e configuradaPrimeiro, identifique a engine PostgreSQL disponível:
mgc dbaas engines list --status=ACTIVE
Anote o id correspondente ao PostgreSQL (por exemplo, PostgreSQL 16).
Em seguida, liste os tipos de instância disponíveis para essa engine:
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.
compatible_product
No resultado, observe o campo:
SINGLE_INSTANCE - pode ser usado apenas para instâncias simplesCLUSTER - pode ser usado apenas para clusters com alta disponibilidadeEsse campo é informativo e serve para orientar a escolha correta do instance-type-id.
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 com alta disponibilidade configurada desde o início.
Apenas tipos de instância com
compatible_product: CLUSTERpodem ser utilizados neste comando.
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"
--name
Nome do cluster PostgreSQL
--user
Usuário administrador do banco
--password
Senha do usuário administrador
--engine-id
Identificador da engine PostgreSQL
--instance-type-id
Tipo de instância compatível com CLUSTER, que define CPU e memória de cada nó
--volume.size
Tamanho do volume de dados em GiB
--volume.type
Tipo de armazenamento gerenciado do DBaaS - Você pode verificar os valores na documentação.
Após a execução, o cluster entra em processo de provisionamento, o que pode levar alguns minutos.
Para acompanhar o status do cluster:
mgc dbaas clusters get "ID_DO_CLUSTER"
Após a criação, você pode listar os nós do cluster:
mgc dbaas instances list
E obter detalhes de um nó específico:
mgc dbaas instances get "ID_DA_INSTANCIA"
Quando o cluster está ativo, o DBaaS da Magalu Cloud monitora continuamente o nó primário. Em caso de falha:
Todo o processo ocorre sem intervenção manual.
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:
Isso reduz a complexidade operacional e permite que o time foque no desenvolvimento da aplicação, aproveitando a infraestrutura gerenciada da Magalu Cloud.