Data

3 jul, 2017

Replicação assíncrona mestre-escravo para bancos de dados PostgreSQL em um clique

Publicidade

Como um componente crítico para a maioria das aplicações, os dados devem estar disponíveis para os usuários finais nos ambientes que estão dinamicamente em mudança. Armazenar os dados em um só local é um risco no caso de haver uma falha do sistema. Por isso, você precisa criar uma estratégia para garantir a alta disponibilidade, e uma das soluções é manter os dados em múltiplos servidores sincronizados.

Ter seus dados replicados para um outro banco de dados pode ser muito útil para uma grande variedade de motivos, tais como melhorar a performance, executar serviços de back-up, analisar as informações, e, é claro, suportar falhas no sistema.

Entre as inúmeras soluções para clusterização de bancos de dados, a Jelastic fornece o pacote para replicação assíncrona mestre-escravo para PostgreSQL, que pode ser instalada automaticamente e ser executada sem necessidade de configurações adicionais.

Agora, vamos dar uma olhada rápida nas especificações do pacote e seguir o passo a passo para a instalação.

Pacote de replicação PostgreSQL para utilização instantânea

A solução para replicação PostgreSQL apresentada para a instalação em um clique é baseada no modelo PostgreSQL 9.5.5 certificado da Jelastic. Como padrão, ele utiliza dois contêineres de banco de dados (um para cada papel – Mestre e Escravo) com replicação assíncrona entre eles.

O servidor primário (mestre) executa o banco de dados ativo, que trata as operações de escrita e leitura, enquanto o servidor secundário (escravo) opera com uma cópia desse banco de dados e trata apenas operações somente de leitura. Por isso, se o servidor principal falhar, o sistema vai executar os dados do contêiner escravo.

Dentro do pacote, cada contêiner de banco de dados tem um escalonamento vertical de 1 servidor reservado a até 24 servidores dinâmicos (até 3 GB de RAM e 9,6 GHz de processamento) que são alocados dinamicamente de acordo com a carga recebida. Subsequentemente, você pode alterar a alocação dos limites de recursos seguindo o guia no link acima.

Agora, vamos em frente para termos o pacote instalado e rodando.

Instalando o pacote de replicação do PostgreSQL

A instalação do pacote é um processo simples que você pode executar em apenas alguns cliques.

Acesse a plataforma Jelastic com suas credenciais e clique em “Loja” (Marketplace) no topo do painel.

Dentro da sessão de aplicativos (Apps), utilize a caixa de pesquisa para encontrar o pacote Replicação de Bancos de Dados PostgreSQL (PostgreSQL Database Replication) e clique em instalar.

Dica: Os recursos do pacote de replicação de bancos de dados PostgreSQL está disponível na coleção Jelastic JPS, junto com outras soluções úteis, qualquer uma delas pode ser integrada importando o arquivo manifest.jps do diretório apropriado.

Na janela de instalação, digite o nome do ambiente e o nome de exibição (alias), selecione uma região (se várias regiões estiverem disponíveis) e clique em instalar.

Quando a instalação for concluída, você verá uma mensagem de confirmação com o endereço URL do nó mestre e receberá, simultaneamente, uma notificação por e-mail com seus dados de administração.

Agora vamos colocar o banco de dados mestre em ação para verificar se os dados são replicados com sucesso para o escravo.

Testando a replicação dos bancos de dados PostgreSQL

Para garantir que os dados sejam replicados corretamente, vamos criar uma nova instância do banco de dados no contêiner mestre e checar sua existência no escravo.

Criar um novo banco de dados Postgre

Clique em “Abrir no Navegador” (Open in Browser) próximo ao nó PostgreSQL mestre para acessar a interface web do phpPgAdmin;

Em “Servidores” (Servers), clique em PostgreSQL e acessa utilizando as credenciais que você recebeu por e-mail após a instalação do pacote.

Clique em “Criar Banco de Dados” (Create Database), preencha o nome (ex.: Jelastic), e clique em Criar;

 

Agora, quando o banco de dados for criado dentro do nó mestre, vamos verificar os dados replicados dentro do contêiner do escravo.

Verificar a replicação

Para garantir que a replicação dos dados do contêiner mestre para o escravo funciona conforme o planejado, execute os passos a seguir:

Clique em “Abrir no navegador” próximo ao nó PostgreSQL escravo para acessar a interface web phpPgAdmin;

Acesse a interface de administrador com o mesmo usuário e senha que você recebeu por e-mail após a instalação do pacote;

 

Quando acessar, você poderá ver e gerenciar o banco de dados (Jelastic, em nosso exemplo) que foi criado mais cedo no contêiner mestre.

É isso! O ambiente PostgreSQL com replicação assíncrona Mestre-Escravo está configurada e pronta para processamento dos dados.

Como um próximo passo, você já pode conectar esses bancos de dados replicados ao seu projeto. O processo depende das especificações da aplicação, então, siga as instruções abaixo para:

Teste você mesmo como pode ser fácil tratar múltiplas cópias de dados essenciais dentro dos bancos de dados PostgreSQL sem a necessidade de configurações manuais.

Ficou com dúvidas sobre a configuração da replicação do PostgreSQL? Fique à vontade para perguntar nos comentários abaixo.

 

***

Tetiana Markova faz parte do time de colunistas internacionais do iMasters. A tradução do artigo é feita pela Redação iMasters, com autorização do autor, e você pode acompanhar o artigo em inglês no link: http://blog.jelastic.com/2017/05/25/master-slave-postgresql-replication-automatic-installation/