summaryrefslogtreecommitdiff
path: root/backup/methods.mdwn
diff options
context:
space:
mode:
authorSilvio Rhatto <rhatto@riseup.net>2010-02-02 22:14:01 -0200
committerSilvio Rhatto <rhatto@riseup.net>2010-02-02 22:14:01 -0200
commit57fb5e40b555c88d7aabb076b19d3c5c92423816 (patch)
tree70dfda051c4b4216f8058264c62e2e71ff8a6a55 /backup/methods.mdwn
parent3d06b5d62bda1e1571b0c0cb953f09b3c954710a (diff)
downloadpadrao-57fb5e40b555c88d7aabb076b19d3c5c92423816.tar.gz
padrao-57fb5e40b555c88d7aabb076b19d3c5c92423816.tar.bz2
Adicionando documentacao sobre backups
Diffstat (limited to 'backup/methods.mdwn')
-rw-r--r--backup/methods.mdwn81
1 files changed, 81 insertions, 0 deletions
diff --git a/backup/methods.mdwn b/backup/methods.mdwn
new file mode 100644
index 0000000..b126224
--- /dev/null
+++ b/backup/methods.mdwn
@@ -0,0 +1,81 @@
+Métodos para backup remoto
+==========================
+
+Esta página contém um estudo dos métodos de produção, transferência e armazenamento de backups, divididos nas partes:
+
+* Métodos de tranferência
+* Métodos de armazenamento
+
+A discussão aqui não tem caráter prático mas meramente teórico, sem menção às implementações dos métodos. Para isso, veja a página [Convencoes](../conventions).
+
+Métodos de transferência
+-------------------------
+
+# Método 1: rsync + hardlinks
+
+Vantagens:
+
+* Economiza espaço
+* Simples de configurar
+
+Desvantagens:
+
+* Precisa rodar como root nas duas máquinas/vservers para preservar permissões
+* Workarround: criar um `FILELIST.TXT` para cada vserver indicando as permissões e os proprietários dos arquivos, juntamente com um script que corrija todas essas permissões no caso de um restauro de backup.
+
+# Método 2: tar + ssh
+
+Esse método consiste em criar um `.tar.bz2` num pipe direto para o servidor remoto, sem escrita local em disco, isto é,
+
+ nice -n 19 tar c /mnt/backup/servidor/vservers/vservers.0/ | bzip2 | \
+ ssh servidor-remoto "cat - > servidor-vservers-0.tar.bz2"
+
+Vantagens:
+
+* o arquivo transferido preserva todas as permissões do seu conteúdo
+* no servidor remoto o arquivo fica compactado
+* rodar com um nice alto garante que esse comando não atrapalhará o funcionamento normal do sistema
+
+Para economizar espaço na máquina remota, podemos operar com backups incrementais:
+
+ nice -n 19 tar cv /mnt/backup/servidor/vservers/vservers.0/ --listed-incremental=/var/log/backup/vservers.snar \ |
+ bzip2 | ssh servidor-remoto "cat - > servidor-vservers-`date +%w`.tar.bz2" >> /var/log/backup/servidor-remoto.log
+
+Nesse caso, uma vez por semana as seguintes operações devem ser feitas:
+
+* Mover todos os arquivos para uma pasta da "semana passada"
+* Iniciar um novo full-dump.
+
+Desvantagem: full-dump semanal.
+
+# Método 3: GNU backup
+
+O script backup que acompanha o GNU tar pode ser usado para fazer dumps incrementais locais que depois são enviados aos servidores remotos.
+
+Desvantagem: arquivos não podem ser modificados durante a confecção do backup.
+
+# Método 4: duplicity
+
+* http://www.nongnu.org/duplicity/
+* backups criptografados
+
+# Método 5: rdiff-backup
+
+* http://www.nongnu.org/rdiff-backup/
+
+Métodos de armazenamento
+------------------------
+
+# Método 1: vserver dedicado a backups
+
+Cada servidor possui um único vserver dedicado a puxar os backups dos outros servidores. Esse vserver não terá acesso externo e por isso é a abordagem mais segura de armazenamento.
+
+Veja uma discussão sobre isso em https://docs.indymedia.org/view/Sysadmin/PullBackupsForParanoiacs.
+
+# Método 2: vservers dedicados a cada servidor
+
+Cada servidor possui seu próprio vserver em cada máquina remota onde ele fizer backup. Nesse vserver os backups remotos poderão ser feitos como root sem acarretar perda de segurança para a máquina remota, o que faz essa ser a abordagem mais flexível para puxar ou receber backups remotos.
+Backups criptografados
+
+Veja uma discussão sobre isso em https://wiki.boum.org/TechStdOut/EncryptedBackupsForParanoiacs.
+