Imitando os discos permanentes do Google - Essa é uma estratégia lógica de recuperação de desastres do FreeBSD?

3

Eu estou olhando para o FreeBSD para fornecer uma estratégia mais abrangente de backup e recuperação de desastres para servidores de banco de dados. Idealmente, quero imitar o que o google está fazendo com o link

Espero que alguém que saiba mais sobre o FreeBSD possa validar essas idéias / perguntas:

  1. Eu li que o FreeBSD pode tirar instantâneos instantâneos do disco, portanto, se nossos bancos de dados acionarem um estado consistente (Bloquear tudo grava e libera buffers para o disco), eu diria que poderia instantâneos a cada hora sem interrupção do serviço por mais de um alguns segundos. Isso é verdade?
  2. Existe uma maneira de tirar instantâneos e fazer backup deles facilmente? Isso pode ser feito de forma incremental para economizar quanto disco espaço é realmente usado?

  3. Se uma reversão precisou ser feita, quanto tempo isso normalmente demora? A reversão também é instantânea?

Obrigado!

    
por Casey Jordan 30.05.2014 / 20:47

2 respostas

3

Eu recomendo que você use o FreeBSD com o ZFS. Veja a seção do manual do FreeBSD sobre o ZFS no link . E o FreeBSD 10 tem algumas melhorias importantes em relação às versões anteriores.

  • O ZFS pode tirar instantâneos instantâneos do disco sem qualquer interrupção de serviço. Muitas lojas fazem isso com o MySQL & Bancos de dados Postgres. Os administradores do banco de dados Oracle fazem isso usando o Oracle Solaris & ZFS.

  • Os instantâneos do ZFS podem ser revertidos.

Você pode fazer o backup do diretório .zfs / snapshot usando seu software de backup regular. Já ouvi falar de pessoas que usam zfs send e zfs receive para essa finalidade, mas não conseguimos fazê-lo funcionar. Em teoria, você poderia fazer algo como zfs send snapshot.today | mybackupsoftware --hostname backup.offsite.example.org e armazenar a imagem externamente.

   zfs send [-vR] [-[iI] snapshot] snapshot

   Creates  a  stream  representation of the second snapshot, which is
   written to standard output. The output can be redirected to a  file
   or  to a different system (for example, using ssh(1).


   zfs receive [-vnF] filesystem|volume|snapshot

   Creates a snapshot whose contents are as specified  in  the  stream
   provided  on  standard  input
    
por 30.05.2014 / 21:06
3

O FreeBSD pode fazer instantâneos de UFS (o processo é descrito no manual ). Muitas operações (inclusive a minha) tiram proveito disso ao desativar um banco de dados (fazemos um desligamento completo em nosso escravo DB), fazendo um instantâneo e, em seguida, reativando o banco de dados.
O instantâneo pode ser montado e feito backup usando suas ferramentas de backup regulares (no nosso caso Bacula).

(para saber mais sobre como o UFS é incrível, veja aqui ).

A grande desvantagem que vejo é que os snapshots UFS não podem ser (facilmente) revertidos - a técnica mais eficiente que eu estou ciente é de dados rsync fora do snapshot (o que não é muito eficiente por causa da natureza dos instantâneos UFS), mas para fazer backups eles geralmente estão bem.

Como Stefan aponta , o ZFS pode ser uma escolha melhor.
O ZFS tem várias vantagens sobre o UFS para algo como um banco de dados (como a capacidade de adicionar mais espaço à partição de maneira rápida e fácil à sua superação e o recurso Enviar / Receber do ZFS para mover instantâneos).

Outra vantagem do ZFS é que os snapshots são efetivamente "livres" (o ZFS é um sistema de arquivos sem sobregravação, portanto, tudo o que faz não é reutilizar nenhum setor do snapshot - o UFS precisa fazer alguma escrituração extra enquanto o snapshot existir) e você pode torná-los graváveis se for necessário.

A única desvantagem do ZFS que eu posso imaginar é a fome de memória, particularmente em comparação com o UFS. Você vai querer pensar sobre isso ( e sobre o ajuste do ZFS ) antes de lançá-lo em produção.

    
por 31.05.2014 / 05:59

Tags