Arquitetura do Sistema de Backup: mudanças entre as edições
Sem resumo de edição |
|||
| (3 revisões intermediárias por 2 usuários não estão sendo mostradas) | |||
| Linha 7: | Linha 7: | ||
==Topologia e Arquitetura== |
==Topologia e Arquitetura== |
||
===Fluxo de Dados=== |
|||
O fluxo de dados segue 3 etapas: Servidor de Produção -> Dev2 -> Servidor de Backup (fazer um diagrama depois) |
O fluxo de dados segue 3 etapas: Servidor de Produção -> Dev2 -> Servidor de Backup (fazer um diagrama depois) |
||
| Linha 16: | Linha 16: | ||
#Todo dia, às 8h da manhã, o servidor de backup liga sozinho, conecta-se ao dev2, via mapeamento de rede, utilizando-se do protocolo NFS(/nfs/backup), extraindo os dados para si. Os arquivos são gravados no sistema ZFS, espelhando os dados em 3 discos simultaneamente e protegendo contra bit-roting. |
#Todo dia, às 8h da manhã, o servidor de backup liga sozinho, conecta-se ao dev2, via mapeamento de rede, utilizando-se do protocolo NFS(/nfs/backup), extraindo os dados para si. Os arquivos são gravados no sistema ZFS, espelhando os dados em 3 discos simultaneamente e protegendo contra bit-roting. |
||
===Camadas de Rede e Protocolos=== |
|||
'''Transporte Local:''' Montagem de diretório via rede usando NFS + AutoFS(montagem sob demanda) |
'''Transporte Local:''' Montagem de diretório via rede usando NFS + AutoFS(montagem sob demanda) |
||
'''Sincronização:''' Rsync da parte do servidor de backup(?) |
'''Sincronização:''' Rsync da parte do servidor de backup(?) |
||
'''Gerenciamento:''' Acesso remoto via SSH |
'''Gerenciamento:''' Acesso remoto via SSH |
||
| Linha 32: | Linha 34: | ||
==Lógica de Automação== |
==Lógica de Automação== |
||
A automação de backup ocorre via Shell Script. |
|||
'''Srcipt:''' /home/eapn/syncwithdev2.sh (também disponível na página do códigos UFSC) |
|||
''' |
|||
==Runbook de Manutenção e Troubleshooting== |
|||
==Comandos Úteis ao Administrador== |
==Comandos Úteis ao Administrador== |
||
É possível encontrar informações relacionadas a como realizar a manutenção do servidor na [[Runbook de Manutenção e Troubleshooting do Servidor de Backup|página de runbook da wiki.]] |
|||
Acesso ao Servidor: |
|||
<pre>$ ssh eapn@150.162.57.10</pre> |
|||
Como não há comando fsck(comando no linux para verificar e reparar inconsistências nos arquivos) para o ZFS, precisamos utilizar o scrub. Esse subcomando é um verificador de consistência dinâmica. Ele roda de plano de fundo em um mounted live filesystem. |
|||
Sintaxe para conferência da integridade de dados("dados" é o nome da pool do nosso sistema de backups): |
|||
<pre>$ zpool scrub nome_da_pool</pre> |
|||
Confira o andamento do comando anterior e a saúde do sistema: |
|||
<pre>$ zpool status -v nome_da_pool</pre> |
|||
Conferência do log diário do servidor: |
|||
<pre>$ tail -n 15 /home/eapn/syncwithdev2.log</pre> |
|||
Listagem das datas em que o script rodou (É possivel alterar a quantidade de dias ao mudar o número após "-n"): |
|||
<pre>$ grep "starting script" /home/eapn/syncwithdev2.log | tail -n 10</pre> |
|||
Conferência de erros: |
|||
<pre>$ grep -iE "error|failed|denied" /home/eapn/syncwithdev2.log | tail -n 10</pre> |
|||
Edição atual tal como às 17h48min de 1 de setembro de 2026
Esta página visa documentar a arquitetura, componentes, interface e fluxo de dados do *servidor de backup*, de forma a garantir que o sistema atenda os requerimentos especificados. Tal documentação atua como um guia para os desenvolvedores, testers e stakeholder durante todo o ciclo de vida do sistema. É importante destacar que certos termos foram mantidos em inglês devido a dificuldade de achar uma tradução adequada, bem como a maior facilidade de busca por tais conceitos utilizando-se de seus nomes em inglês.
Visão geral e Objetivo[editar]
O laboratório, onde o EAPn se hospeda, abriga um servidor de backup, responsável por garantir a integridade dos dados do servidor de produção. Sua janela de execução ocorre todos os dias às 08:00 da manhã, via script.
Topologia e Arquitetura[editar]
Fluxo de Dados[editar]
O fluxo de dados segue 3 etapas: Servidor de Produção -> Dev2 -> Servidor de Backup (fazer um diagrama depois)
(ver como citar o NFS)
- O servidor de produção faz a extração de seus banco de dados, compacta os arquivos em LZMA e os envia para o servidor intermediário.
- O servidor dev2 atua como zona de transferência, recebendo os arquivos e armazenando temporariamente num diretório compartilhado. Arquitetado dessa forma, o processo de leitura dos backup's não consome poder de processamento do servidor de produção.
- Todo dia, às 8h da manhã, o servidor de backup liga sozinho, conecta-se ao dev2, via mapeamento de rede, utilizando-se do protocolo NFS(/nfs/backup), extraindo os dados para si. Os arquivos são gravados no sistema ZFS, espelhando os dados em 3 discos simultaneamente e protegendo contra bit-roting.
Camadas de Rede e Protocolos[editar]
Transporte Local: Montagem de diretório via rede usando NFS + AutoFS(montagem sob demanda)
Sincronização: Rsync da parte do servidor de backup(?)
Gerenciamento: Acesso remoto via SSH
Armazenamento[editar]
Tecnologia: ZFS (Zettabyte File System)
Nome da pool: "dados"
Topologia: Espelhamento triplo (mirror-0). O ZFS grava o mesmo arquivo simultaneamente em 3 HD's. Se um ou dois discos queimarem, os dados permanecem intactos.
Lógica de Automação[editar]
A automação de backup ocorre via Shell Script.
Srcipt: /home/eapn/syncwithdev2.sh (também disponível na página do códigos UFSC)
Comandos Úteis ao Administrador[editar]
É possível encontrar informações relacionadas a como realizar a manutenção do servidor na página de runbook da wiki.