linux:docker_postgresql

Essa é uma revisão anterior do documento!


Nessa arquitetura utilizaremos 3 máquinas em um cluster swarm. A pgPool que irá fazer o balanceamento de carga e monitoramento constante do status das máquinas, bem como o switchover para uma nova máquina master caso a master original venha a cair. Teremos a máquina pgMaster que terá o papel de master e a pgSlave que terá o papel de standby ou slave. A máquina Master ficará em modo Escrita/Leitura e a Slave ficará em modo apenas Leitura. Quando uma consulta de leitura, ex: Select * From users;, poderá ser direcionada pelo pgPool para qualquer uma das duas máquinas, porém, uma consulta de escrita, ex: Insert Into…, só poderá ser direcionada para a máquina Master. Abaixo temos um desenho da infraestrutura de modo geral:

* Configurando o DNS no resolv.conf

$ sudo vim /etc/init.d/resolv.conf

* adicione as linhas:

nameserver 8.8.8.8
nameserver 8.8.4.4

* Configurando o DNS no resolv.conf

$ sudo vim /etc/network/interfaces

* adicione as linhas, logo acima da linha dns-nameservers já existente:

dns-nameservers 8.8.8.8
dns-nameservers 8.8.4.4

* Adicione a chave do repositório Docker

$ sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D

* Adicione o repositório

$ sudo apt-add-repository 'deb https://apt.dockerproject.org/repo ubuntu-xenial main'

* Adicione o repositório

$ sudo apt-get update

* Instale o pacote do docker

$ sudo apt-get install -y docker-engine

* Adicionando o usuário atual do sistema ao grupo que pode usar o docker sem sudo

$ sudo usermod -aG docker $(whoami)
  • linux/docker_postgresql.1496263543.txt.gz
  • Última modificação: 2021/08/25 10:33
  • (edição externa)