Fazendo backup de sistemas de arquivos ZFS sem cópias redundantes

2

Como um adotante recente do ZFS (via Ubuntu), estou agora procurando por boas soluções de backup fora do site e me deparei com este artigo sobre o assunto (7 anos!).

Há muitos anos que venho usando o rsync para fazer backup de sistemas de arquivos pela rede, para evitar cópias redundantes e evitar a cópia de vários terabytes diariamente em links WAN. Eu uso rsync para WAN ou armazenamento USB local.

Ser capaz de usar instantâneos do ZFS como fonte de backup é uma grande melhoria, mas estou querendo saber se o rsync ainda é o caminho para evitar a cópia do sistema de arquivos completo para o destino em cada backup. No começo, eu achava que os ZFS enviam / recebem recurso pode fazer o truque, mas uma leitura rápida mostra que este não é o caso.

Existe uma "prática recomendada" amplamente adotada para isso no ZFS ou devo ficar com rsync ?

    
por AlanObject 05.12.2017 / 17:38

3 respostas

2

Se você tiver um destino do ZFS, sugiro usar uma solução que aproveite os recursos de transporte internos do ZFS.

A melhor solução para mim é Syncoid / Sanoid , pois pode automatizar a criação de instantâneos e as transferências de dados.

Veja: link

    
por 05.12.2017 / 20:23
3

Enviar / Receber é uma espécie de rsync em esteróides, porque não há verificação de arquivos alterados envolvidos. O ZFS só sabe quais blocos enviar. Você cria um instantâneo do seu conjunto de arquivos zfs e, em seguida, envia o instantâneo para o seu servidor de backup. Se você precisar de instantâneos sucessivos e o primeiro já estiver no servidor de backup, basta enviar a diferença para o servidor de backup. Isso tudo acontece no nível do bloco, então é super eficiente.

Você poderia fazer isso manualmente, usando os comandos zfs e ssh , mas minha ferramenta favorita para organizar isso é znapzend .

link

Ele cuidará da criação e exclusão de snapshots e possui um mecanismo elaborado no qual você pode configurar por quanto tempo deseja manter seus backups.

    
por 06.12.2017 / 07:11
1

Eu concordaria com as duas respostas anteriores que sugerem o uso do envio / recebimento do ZFS.

Depois de analisarmos tanto o Syncoid / Sanoid quanto o znapzend, agora usamos uma combinação de zfsnap para criação / exclusão de instantâneos e zxfer para envio / recebimento.

A escolha foi qualitativa. O zfsnap / zxfer era mais fácil de se trabalhar (em nosso ambiente, de qualquer maneira) e seguia melhor a filosofia Unix, ou seja, as ferramentas fazem uma coisa e são silenciosas a menos que tenham uma saída útil.

    
por 25.01.2018 / 13:29