# Ativação da Replicação Anexos
Obs. Esse procedimento é voltado ao cliente que não possui nenhum tipo de configuração de replicação feita. Caso o cliente já tenho a replicação do banco de dados, muito dos passos colocados aqui já estarão feito, bastante apenas um checklist no ambiente em questão!
## Firewall - PfSense
* Configurar o Firewall para receber a replicação:
Primeiro passo é criar um Aliases do IP público passado pelo cliente
```
Caminho: Firewall / Aliases / IP
Preencha o nome, IP e descritivo do Alises que você esta criando.
```

Após a criação do Aliases, será necessária a criação de uma regra na Interface LAN do cliente liberando a porta padrão da replicação 61100:
```
Action: Pass
Interface: LAN
Protocol: TCP/UDP
Source: LAN Net
Destination: Single host or alias (Cliente_DC) - aqui você indicara o Aliases criado no passo anterior
Description: Replicacao
```
OBS: Lembre-se sempre de manter a regra criada na interface acima das regras de bloqueios LAN Net IPv4 e IPv6

## SGDB - MASTER - PRODUÇÃO
* Após a criação do Aliases e liberação da porta para a replicação, conecte no SGDB do cliente para realizar as configurações:
* Via Putty conecte no banco master do cliente desejado
Caso você execute os passos abaixo e o mesmo não solicite a senha, deve ser verificado se existe comunicação com o banco replicado, através de ping, traceroute ou telnet para testar e garantir a comunicação entre os dois ambientes.
```
Realize a conexão ao banco Slave do cliente:
ssh -p 61100 root@XXX.XXX.XXX.XXX
Após executar o comando o mesmo irá solicitar a senha. Passe a senha conforme repassado pelo cliente
```
## SGDB - SLAVE
Após conectar, crie o usuário para a replicação (Substituia pelo código do cliente e defina uma senha para o usuário):
```
useradd rep00000
passwd rep00000
```
Em seguida, adicione o usuário criado (rep00000) no mesmo grupo e pasta do usuário postgres:
```
# vim /etc/passwd
postgres:x:26:26::/var/lib/pgsql:/bin/bash
rep00000:x:26:26::/var/lib/pgsql:/bin/bash
```
Crie a pasta de acesso via SSH no servidor Replicado
```
ssh root@127.0.0.1 (yes)
```
IMPORTANTE: O comando abaixo, só deve ser executado caso o ambiente seja exclusivo para a replicação dos arquivos (anexos do sistema). Caso o mesmo já esteja executando a replicação do Banco de Dados ou será configurado junto com a dos arquivos, o passo abaixo NÃO deve ser executado
```
systemctl stop postgresql-11
systemctl disable postgresql-11
```
Verifique as configurações na interface de Rede do ambiente Replicado:
```
vim /etc/sysconfig/network-scripts/ifcfg-ens192
ONBOOT=yes
```
Ajustar o hosts da maquina, usando o mesmo padrão de nome do Banco de dados master com a palavra SLAVE no final e também substituindo o IP conforme o IP da Interface da VM:
```
#vim /etc/hosts
IP LAN da Maquina
00000-CLIENTE-SGDB11-ATENDENET-SLAVE
```
Ajustar o hostname da maquina, usando o mesmo padrão de nome do Banco de dados master com a palavra SLAVE no final:
```
#vim /etc/hostname
00000-CLIENTE-SGDB11-ATENDENET-SLAVE
```
Ajustar o arquivo network
```
#vim /etc/sysconfig/network
00000-CLIENTE-SGDB11-ATENDENET-SLAVE
```
Remover Scripts Defaults da IPM que vem junto com o template disponibilizado para o cliente
```
rm -rf /root/bkp_remoto/
rm -rf /root/gdt_agent/
```
Remover Agendamento do Crontab
```
crontab -r
```
Remover Configurações de Ponto de Montagem da Storage do FSTAB:
```
vim /etc/fstab
//192.168.131.248/Backup /var/lib/pgsql/11/storage cifs users,noauto,username=serverlinux,password=XXXXXXXX,domain=ATENDENET,uid=26,gid=26,rw 0 0
```
No momento do envio das configurações do ambiente para o cliente, é enviado o espaço em disco necessário para replicar os arquivos. Para criar o disco com o espaço disponibilizado pelo cliente, execute os passos abaixo:
```
$ su - root
# lsblk (Identificar o novo disco, geralmente será o SDG)
# fdisk /dev/sdg
Comando (m para ajuda): p
Disco /dev/sdg: 2 TiB, 2199023255552 bytes, 4294967296 setores
Unidades: setor de 1 * 512 = 512 bytes
Tamanho de setor (lógico/físico): 512 bytes / 512 bytes
Tamanho E/S (mínimo/ótimo): 512 bytes / 512 bytes
Tipo de rótulo do disco: dos
Identificador do disco: 0xfb109cc9
Comando (m para ajuda): n
Tipo da partição
p primária (0 primárias, 0 estendidas, 4 livre)
e estendida (recipiente para partições lógicas)
Selecione (padrão p):
Usando resposta padrão p.
Número da partição (1-4, padrão 1):
Primeiro setor (2048-4294967295, padrão 2048):
Último setor, +setores ou +tamanho{K,M,G,T,P} (2048-4294967294, padrão 4294967294):
Criada uma nova partição 1 do tipo "Linux" e de tamanho 2 TiB.
Comando (m para ajuda): p
Disco /dev/sdg: 2 TiB, 2199023255552 bytes, 4294967296 setores
Unidades: setor de 1 * 512 = 512 bytes
Tamanho de setor (lógico/físico): 512 bytes / 512 bytes
Tamanho E/S (mínimo/ótimo): 512 bytes / 512 bytes
Tipo de rótulo do disco: dos
Identificador do disco: 0xfb109cc9
Dispositivo Inicializar Início Fim Setores Tamanho Id Tipo
/dev/sdg1 2048 4294967294 4294965247 2T 83 Linux
Comando (m para ajuda): t
Selecionou a partição 1
Código hexadecimal (digite L para listar todos os códigos): 8e
O tipo da partição "Linux" foi alterado para "Linux LVM".
Comando (m para ajuda): p
Disco /dev/sdg: 2 TiB, 2199023255552 bytes, 4294967296 setores
Unidades: setor de 1 * 512 = 512 bytes
Tamanho de setor (lógico/físico): 512 bytes / 512 bytes
Tamanho E/S (mínimo/ótimo): 512 bytes / 512 bytes
Tipo de rótulo do disco: dos
Identificador do disco: 0xfb109cc9
Dispositivo Inicializar Início Fim Setores Tamanho Id Tipo
/dev/sdg1 2048 4294967294 4294965247 2T 8e Linux LVM
Comando (m para ajuda): w
A tabela de partição foi alterada.
# vgscan
# pvcreate /dev/sdg1
# vgcreate backup /dev/sdg1
# lvcreate -L 2047G -n arquivo backup
# mkfs.xfs /dev/backup/arquivo
```
Após a criação do disco, adicione o mesmo no FSTAB para que toda vez que o ambiente reinicie ou seja desligado, volte a montar o disco no momento da inicialização:
```
# vim /etc/fstab
/dev/mapper/backup-arquivo /backup/arquivo xfs defaults 0 1
```
Finalize a criação do disco, criando a pasta, realizando a montagem do mesmo e aplicando as permissões
```
# mkdir -p /backup/arquivo/
# mount /backup/arquivo/
# df -h
# chown rep00000:rep00000 /backup/arquivo/ -R
# ls -la /backup/arquivo/
```
## TASK02 - DATA CENTER PR
Após todo o ambiente configurado, é necessário realizar a configuração da rotina de Copia/Replicação dos Arquivos(Anexos) do sistema:
Conecte no Servidor TASK02 no ambiente Data Center do PR (172.16.0.102):
```
#### Executar no Task02/PR01 #####
rclone config
n
name> (Database)
Storage> 45
host> (IP Público do cliente)
user> rep00000
port> 61100
SSH Password, Choose an alternative below. Press Enter for the default> (y) Yes, type in my own password
Enter the password: (senha do usuário rep00000)
Confirm the password: (senha do usuário rep00000)
key_pem>
key_file>
Option key_file_pass> (n)
pubkey_file>
key_use_agent>
use_insecure_cipher>
disable_hashcheck> true
ssh>
Edit advanced config? (n)
Configuration complete. (y)
```
* Execute o Script Inicial dos arquivos Atuais
```
- Transferência de arquivos atuais (Ceph RedHat / Apache) - pasta corrente
rclone sync /storage/pr01-dd6400_01/STORE/Arquivos/rsync/00199_saojose/00199_saojose-full/00199_saojose/arquivo 00199_saojose:/backup/arquivo/corrente -v --no-update-modtime --size-only &>> /root/bkp_files/log/00199_saojose-20240307-152017889732103.log &
```
* Assim que o Script Inicial for executado, deve-se comentar o arquivo de configuração do Rclone do cliente em questão:
```
#Comentar Configuração do Rclone do cliente:
/root/.config/rclone/rclone.conf
```
* Após finalizado a replicação manual (inicial) dos arquivos do CEPH Redhat/Apache, descomente a configuração do backup incremental do cliente no arquivo rclone.conf do servidor TASK02
### Arquivos Históricos
Caso o cliente possua arquivos históricos nas Storage CEPH Ubuntu ou ISILON, os procedimento abaixo devem ser executados:
```
Exemplo de Script para Arquivos Históricos - ISILON E Ubuntu - Exemplo com o Cliente São José:
- Transferência de arquivos antigos (Ceph Ubuntu / Isilon) - pasta permanente
rclone copy /storage/pr01-dd6400_01/STORE/Anual/00199_saojose/00199_saojose-20240130-103615-arquivos-s3-rclone 00199_saojose:/backup/arquivo/permanente -v &>> /root/bkp_files/log/00199_saojose-20240307-152017889732103.log &
rclone copy /storage/pr01-dd6400_01/STORE/Anual/00199_saojose/storage/s3/00199_saojose/00199_saojose 00199_saojose:/backup/arquivo/permanente -v &>> /root/bkp_files/log/00199_saojose-20240318-152017889732103.log &
```
## ZABBIX - MONITORAMENTO
Para o acompanhamento do funcionamento do ambiente Slave, deve ser cadastrado o Equipamento do SGDB Slave do cliente no Monitoramento do Zabbix:
Devido ao servidor não estar no ambiente do Data Center da IPM, o monitoramento será apenas via ICMP
Configuration > hosts
```
Hostname: 00000-CLIENTE-SGDB11-ATENDENET-SLAVE
Groups: cliente.atende.net e Virtual Machines
Agent: XXX.XXX.XXX.XXX - Informe o IP Público passado pelo cliente
Monitored by proxy: PX_PMCliente - Adicione no mesmo proy do cliente em questão
```
Obs: Caso o IP do cliente não esteja liberado para ICMP deve ser solicitado a liberação para o bloco IP do Data Center 177.11.20.0/22 afim de conseguirmos monitorar o ambiente.
Exemplo do banco replicado de Pinhais:

## GTT - Cadastro Equipamento
Após todas as configuração dos passos anterior, deve ser cadastrado o equipamento no GTT afins de documentação:
```
#Caminho: Gerenciamento Data Center » Manutenção » Equipamentos » Equipamento
Nome: 00000-CLIENTE-SGDB11-ATENDENET-SLAVE
Tipo de Equipamento: Banco de dados
Local da Instalação: Selecione o Data Center onde o cliente encontra-se
Classificação: Virtual
Sistema Operacional: Linux CentOS 8 (64-bit)
```

Em seguida, cadastre os dois usuários (root), e o (rep00000) criado anteriormente:
Caminho: Gerenciamento Data Center » Manutenção » Equipamentos » Equipamento » Consultar Usuários do Equipamento

Cadastre também as Interfaces de rede (WAN e LAN) do ambiente do cliente (Lembre-se de desmarcar a opção Gerenciar IPv4):
Caminho: Gerenciamento Data Center » Manutenção » Equipamentos » Equipamento » Consultar Interfaces do Equipamento

Vincule também a instancia do cliente no Equipamento que esta sendo cadastrado:
Caminho: Gerenciamento Data Center » Manutenção » Equipamentos » Equipamento » Consultar Equipamento x Instância

- [`VOLTAR`](../README.md)