summaryrefslogtreecommitdiff
path: root/docs/backup/conventions.md
blob: cb5c698c375c4d2a24827e95bb23fecaebbfa117 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# Convenções

Esta página contém esboço para as convenções de intercâmbio de backups entre
servidores. Qualquer que seja o método de backup, ele deve satisfazer as
seguintes condições:

1. Deve ser incremental para que vários estados diários sejam possíveis de se
   obter.
2. Devem ser gerenciados pelo backupninja.
3. Cada projeto cuida dos seus próprios backups, mesmo que estes estejam sendo
   enviados para o servidor de outro projeto.

## Armazenamento

1. Backups hospedados em `/var/backups`, mesmo que seja symlink para outro
   local.
2. Arquivos de log de backup em `/var/log/{backup,backupninja.log}`, rodando
   via logrotate.
3. Backups remotos de servidores e sites em subpastas do tipo
   `/var/backups/remote/nome-da-camada.projeto.org/handler`.
4. Backups locais criptografados em `/var/backups/duplicity` e sem backup da
   pasta `/var/backups/remote`.
5. Máquinas enviando backups para outros locais enviam apenas o backup local
   criptografado.

## O que incluir nos backups locais

Talvez a convenção mais forte para a inclusão de arquivos seja aquela na qual a
inclusão de novos arquivos e pastas nos backups seja automática. Assim, a
convenção adotada é a realização de backups das pastas

* `/etc`
* `/var`
* `/home`

Para que a convenção funcione, é indispensável que conteúdos (dados) hospedados
sejam armazenados apenas nestas pastas. Como a `/etc` é uma pasta reservada ao
armazenamento de configurações, restam apenas `/var` e `/home` para o
armazenamento de dados. Assim, a utilização de pastas do tipo `/var/svn`,
`/var/www`, etc garantem a inclusão automática de todo o conteúdo hospedado nos
backups.

## Não incluir em backups locais

As seguintes pastas não devem ser incluídas em backups:

* `/var/backups/duplicity`
* `/var/backups/remote`
* `/var/vservers`
* `/vservers`