É possível fazer backup de um disco LVM para um servidor externo?

É possível fazer backup de um disco LVM para um servidor externo?

No último mês, estive pensando em como o LVM funciona. O pensamento inicial era que ele era muito flexível, fiquei surpreso que o sistema ainda pudesse funcionar enquanto movia o disco para outro disco local.


Não consegui encontrar muita informação on-line, mas parece algo que deveria ser possível fazer. Talvez não seja prático ou geralmente não seja uma boa solução (?). Os artigos que li eram todos sobre discos locais, não externos.

Quando digo backup, quero dizer todo o disco/partição,nãoinstantâneo.

Digamos que eu tenha 4 servidores rodando LVM e gostaria de fazer backup de todos os discos em um grande servidor de armazenamento, isso é possível?

Se for possível, quais seriam os contras dessa configuração?

Responder1

Sim.

Isso é amplamente utilizado e, na verdade, envolve instantâneos para garantir a consistência do backup.

Por exemplo, esta é a forma como os armazenamentos de máquinas virtuais (e contêineres) são copiados no Proxmox VE:

  • Suspenda a VM. Não há como fazer vários snapshots atomicamente no Linux, então a única maneira de fazer backuptodosdiscos no mesmo momento é garantir que a VM não possa fazer nada até que todos os instantâneos estejam prontos
  • Capture todos os discos. Este processo é relativamente rápido
  • Cancele a suspensão da VM. O tempo enquanto a VM ficou indisponível é pequeno, até o ponto em que não é perceptível
  • Envie imagens de todos os instantâneos para o armazenamento de backup. Este é o longo processo. Mas o fato de serem instantâneos nos permite ter backup consistente, enquanto a VM ainda pode ser executada. O estado do backup será o momento em que a VM foi suspensa pela primeira vez
  • Remova todos os instantâneos.

Este foi osimplificadodescrição; na verdade, o PVE também usa alguns truques no Qemu para emular instantâneos no armazenamento de apoio onde não existe tal recurso, mas isso não é relevante para a questão.

Os prós já estão descritos. As desvantagens que consigo pensar são a necessidade de ter algum espaço livre no VG para armazenar esses instantâneos, e a quantidade de espaço não é possível prever em geral, depende da quantidade de E/S que a VM está realizando enquanto os dados é enviado para o armazenamento, que por sua vez depende da taxa de E/S, do tamanho do disco virtual e da capacidade da rede. Na prática, nunca tive problemas com isso.

Descrevi o caso de uso específico, mas seja qual for o backup, os detalhes do processo serão os mesmos.

Responder2

Backup de arquivos completos para um armazenamento remoto separado não é fácil com Linux LVMsozinho. Mais realistas são os instantâneos do LVM copiados em outro lugar por meio de outro agente de backup.

Vamos supor que o design de restauração exija uma cópia completa em nível de bloco, independente do grupo de volumes original ou de seus volumes físicos membros. Os instantâneos são fáceis de fazer, mas dependem do VG de origem e não atendem a esse requisito. O LVM pode espelhar e dividir volumes, mas o procedimento seria mais complicado.

  • Crie LVs raid1, certifique-se de que seus PVs estejam em sistemas de armazenamento separados e sincronizados.
  • Divida uma imagem do espelho em um novo LVcom lvconvert --splitmirrors.
  • Divida o LV em um VG diferente com vgsplit.

Embora esses recursos permitam casos de uso como migrações de armazenamento primário, eles são relativamente avançados, com menos exemplos. Além disso, pode ser complicado apresentar dispositivos de bloco de backup ao host cujo backup está sendo feito.

Como recursos extras da camada de bloco, o próprio LVM não fornece acesso ao armazenamento remoto. Claro, com uma SAN adequada você pode acessar um storage array compartilhado, via Fibre Channel ou iSCSI. Esses LUNs podem ser usados ​​como PVs LVM. Fazer isso é um desafio operacional, já que muitos casos de uso não usam tais SANs, instalação do sistema operacional no armazenamento local, por exemplo. E essas SANs tendem a ser de curta distância e intolerantes a perdas. Inserir um espelho no armazenamento de proteção para tudo pode gerar demandas extremas de desempenho para acompanhar as gravações no primário.

Mais comum é copiar instantâneos com alguma outra ferramenta. Capture o LV de origem. Crie VGs e LVs no armazenamento de proteção separado. Faça um backup baseado em bloco, como dd sobre ssh, ou monte o instantâneo e faça backups baseados em arquivo. Exclua o instantâneo LV.

informação relacionada