Estou procurando recomendações para fazer backup dos meus 6 vm atuais (e em breve crescer para 20). Atualmente, estou executando um cluster proxmox de dois nós (que é uma base debian usando o kvm para virtualização com um front-end da web personalizado para administrar). Eu tenho duas caixas quase idênticas com placas-mãe amd phenom II x4 e asus. Cada um possui 4 discos rígidos sata2 de 500 GB, 1 para os e outros dados para a instalação do proxmox e 3 usando mdadm + drbd + lvm para compartilhar os 1,5 TB de armazenamento entre as duas máquinas. Montei imagens lvm no kvm para todas as máquinas virtuais. Atualmente, tenho a capacidade de transferir ao vivo de uma máquina para outra, normalmente em segundos (leva cerca de 2 minutos na maior vm executando o win2008 com m $ sql server). Estou usando o utilitário vzdump interno do proxmox para tirar instantâneos do vm ' e armazene-os em um disco rígido externo na rede. Em seguida, tenho o serviço jungledisk (usando rackspace) para sincronizar a pasta vzdump para backup externo remoto.
Tudo isso é ótimo e elegante, mas não é muito escalável. Por um lado, os próprios backups podem levar algumas horas todas as noites. Com as transferências incrementais no nível de bloco da jungledisk, a sincronização transfere apenas uma pequena parte dos dados para fora do local, mas isso ainda leva pelo menos meia hora.
A solução muito melhor seria, obviamente, algo que me permita pegar instantaneamente a diferença de dois pontos no tempo (digamos o que foi escrito das 6h às 7h), compactá-lo e depois enviar o arquivo de diferença para o servidor de backup, que será transferido instantaneamente para o armazenamento remoto no espaço na prateleira. Eu olhei um pouco para o zfs e é capaz de enviar / receber. Isso, juntamente com um canal de dados no bzip ou algo assim, pareceria perfeito. No entanto, parece que a implementação de um servidor nexenta com zfs exigiria essencialmente pelo menos um ou dois servidores de armazenamento dedicados para servir volumes de blocos iSCSI (via zvol ???) para os servidores proxmox. Eu preferiria manter a instalação o mais mínima possível (ou seja, NÃO tendo servidores de armazenamento separados), se possível.
Também li brevemente sobre o zumastor. Parece que também poderia fazer o que eu quero, mas parece ter interrompido o desenvolvimento em 2008.
Então, zfs, zumastor ou outro?
fonte
Se eu estivesse fazendo backups externos, escolheria as seguintes opções:
(a) script de shell que o SCP copia para o servidor remoto. Dessa forma, você pode adicionar um trabalho cron que executa automaticamente o script que cria o backup. Além disso, você pode criar um arquivo temporário antes de transferir os arquivos, economizando assim a largura de banda, não transferindo enquanto pressiona o teclado.
ou
(b) Instale uma ferramenta de gerenciamento de servidor como o Webmin e faça isso para fazer backups automatizados. No momento, estou cantando isso em meus servidores de produção agora sem problemas, ele simplesmente funciona na perfeição. Eu também recomendaria o cloudmin (pago) para gerenciar muitas VMs, pois fornece uma solução completa.
alguns links extras:
http://www.debianhelp.co.uk/backup.htm
http://ubuntuforums.org/showthread.php?t=35087
Espero que ajude, RayQuang
fonte
você pode querer dar uma olhada no backuppc.
O backuppc pode funcionar sobre o rsync, que faz cópias incrementais.
Além disso, você pode facilmente escrever uma lista negra de pastas que não precisam ser copiadas. Por exemplo: temp / / tmp .garbages / ...
http://backuppc.sourceforge.net/
O backuppc possui uma interface web limpa, permitindo que você baixe algumas partes de um backup diretamente como um arquivo zip. Ele pode ser monitorado por nagios usando check_backuppc.
fonte
Não tenho certeza de quanta mudança de arquitetura você planejava fazer para aumentar sua escalabilidade. No entanto, se você estiver aberto para alternar plataformas de VM, poderá ver o VMWare.
Existem muitas boas soluções de backup do VMWare, eu usei pessoalmente o VzionCore. Em seguida, você pode fazer algumas coisas lisas com instantâneos e recuperar o ponto no tempo. Existe até a capacidade de efetuar failover em um site remoto.
fonte
O zfs funciona muito bem, você já mencionou saber disso e a desvantagem de não funcionar muito bem na escala de 2 servidores. Também não fornecerá o failover do DRDB, ou seja, o Nexenta será um único ponto de falha.
Você pode tentar obter o VirtualBox no OpenSolaris ou NexentaCore, mas não tão simples quanto o ProxMox + DRDB, para poder reutilizar suas máquinas existentes.
Se você medir suas alterações e as encontrar baixas o suficiente, poderá tentar o DRDB com um terceiro espelho externo - só funcionará se o número de gravações for extremamente baixo nas suas VMs.
Steve Radich - Hospedagem Windows e desempenho SQL desde 1995 - http://www.BitShop.com/Blogs.aspx
fonte
Eu corro um grande cluster proxmox e tenho que sugerir que você mude sua estratégia de backup dos backups de estilo de instantâneo vzdump, que levam idades, sempre estão cheios, portanto, são grandes e fazem com que a restauração de arquivos individuais seja extremamente demorada.
Considere uma solução de backup de arquivos 'no convidado', da qual existem muitas. Backuppc, Urbackup, bacula, amanda etc ...
Será muito mais rápido, consumirá muito menos espaço e será muito mais fácil restaurar arquivos específicos.
fonte
Acho que encontrei a resposta definitiva para minha pergunta:
BUP https://github.com/bup/bup
Recursos:
Ele usa um algoritmo de soma de verificação rolante (semelhante ao rsync) para dividir arquivos grandes em pedaços. O resultado mais útil disso é que você pode fazer backup de imagens de disco, bancos de dados e arquivos XML enormes de máquinas virtuais (VM) de maneira incremental, mesmo que geralmente estejam todos em um arquivo enorme, e não use muito espaço em disco para várias versões.
Ele usa o formato packfile do git (o sistema de controle de versão de código aberto), para que você possa acessar os dados armazenados, mesmo que não goste da interface do usuário do bup.
Ao contrário do git, ele grava arquivos de pacote diretamente (em vez de ter um estágio separado de coleta / reembalagem de lixo), por isso é rápido, mesmo com grandes quantidades de dados gratuitas. Os formatos de índice aprimorados do bup também permitem rastrear muito mais nomes de arquivos do que git (milhões) e acompanhar muito mais objetos (centenas ou milhares de gigabytes).
Os dados são compartilhados "automagicamente" entre backups incrementais sem precisar saber qual backup se baseia em outro - mesmo que os backups sejam feitos de dois computadores diferentes que nem se conhecem. Você acabou de dizer ao bup para fazer backup das coisas, e ele economiza apenas a quantidade mínima de dados necessária.
Você pode fazer backup diretamente em um servidor bup remoto, sem precisar de toneladas de espaço em disco temporário no computador que está sendo copiado. E se seu backup for interrompido na metade, a próxima execução continuará de onde você parou. E é fácil configurar um servidor bup: basta instalar o bup em qualquer máquina em que você tenha acesso ssh.
O Bup pode usar a redundância "par2" para recuperar backups corrompidos, mesmo que seu disco não tenha detectado setores defeituosos.
Mesmo quando um backup é incremental, você não precisa se preocupar em restaurar o backup completo e, em seguida, cada um dos incrementos; um backup incremental age como se fosse um backup completo, apenas ocupa menos espaço em disco.
Você pode montar seu repositório bup como um sistema de arquivos FUSE, acessar o conteúdo dessa maneira e até exportá-lo pelo Samba.
Edit: (19 de agosto de 2015) E ainda existe outra ótima solução que é ainda melhor: https://github.com/datto/dattobd
Ele permite instantâneos ao vivo, essencialmente fornecendo recursos semelhantes a COW para qualquer sistema de arquivos antigo comum no Linux.
Edit: (15/07/2016) E ainda outra ótima solução que explode bup fora da água: https://github.com/borgbackup/borg
É particularmente melhor do que bup na poda. Parece ter um ótimo suporte para compactação, criptografia e desduplicação eficiente. dattobd + borg ftw !!!
fonte