segunda-feira, 15 de outubro de 2007

Bacula - backup eficiente

Um serviço muito importante para qualquer servidor é o do backup (apesar de muita gente não dar o valor necessário até precisar dele).

E falando em backup, uma ferramenta que me vem direto ao pensamento é o Bacula.

O Bacula é um software livre com recursos de backup em rede. Ele pode usar vários tipos de mídias para backup como fitas, DVDs, CDs ou mesmo um HD. Além disso, ele tem clientes para Linux e Windows o que flexibiliza bastante o backup de um ambiente homogêneo.

A instalação do servidor consiste basicamente em compilar/instalar o pacote e depois configurar os serviços. Você pode usar um DB MySQL ou PostgreSQL como forma de armazenamento do catálogo. O servidor se divide em 3 serviços: o director, o storage e o file daemon (opcional para o servidor).

O director é onde você configura efetivamente o servidor. Nele você configura seu DB, os endereços de e-mail para envio das mensagens de alerta/aviso e os pools de volumes. Além disso nele você também deve setar os jobs, os clientes e os file sets.
Os clientes são as máquinas onde você vai conectar para buscar os dados.
Os file sets são os arquivos que vocês vai backupear do cliente.
Os jobs são nada mais do que a junção de tudo isso, ou seja o cliente, com o file set, agendamento de horário, nível do mesmo além de outras features. Você pode configurar um job padrão com as configurações comuns e dizer para seus outros jobs para usá-lo, setando no mesmo só as configurações mais específicas.
Além disso, você pode ter mais que um job para um mesmo cliente com um file set diferente, ou seja, você pode backupear seus dados em várias partes, na hora que for mais oportuna. A flexibilidade do bacula nesse ponto é muito interessante.
No director você também pode configurar para rodar scripts antes ou depois de um job específico. Por exemplo, você pode fazer o dump de uma base MySQL antes de fazer o backup do servidor MySQL, ou então, você pode fazer a fita ser ejetada após o último job.

O storage é onde você configura onde serão armazenados os dados. Nele você informa se vai usar uma unidade de fita, um DVD, um CD ou todos eles.

O file daemon também deve ser configurado para que seu servidor possa ser backupeado. Ele é opcional para o servidor funcionar, mas você não vai deixar de backupear o próprio servidor, correto ? ;-)

Já no lado do cliente, basta instalar o file daemon e configurar o mesmo. Ou seja, no cliente a operação é muito simples, ainda mais se for um cliente Linux. Se for Windows pode ser um pouco mais chato, porque após instalar o mesmo, é necessário copiar os arquivos de configuração e reiniciar o serviço. O problema aí é saber onde exatamente colocar os arquivos. :-D
Se precisar de mais informações sobre isso, me avise que eu possa detalhar melhor a situação.

O bacula possui vários softwares para conectar ao seu console que permitem configurá-lo, agendar jobs, restaurar dados, etc...
O principal deles é o bconsole, que é via linha de comando. Graficamente temos o bweb (via web, obviamente, que pode ser obtido pelo svn do bacula e que vale a pena instalar), um console para gnome (que nada mais é que um frontend visual para o bconsole, bastante interessante e que tem uma linha de comando como o bconsole), um monitorador que fica no tray e mais recentemente o BAT (Bacula Administration Tool) que promete ser a ferramente gráfica oficial do Bacula.

Claro que nem tudo é perfeito, então segue uma lista de features que eu acho que seriam interessantes:

Aviso programado por e-mail que informa o label da fita do próximo backup a ser realizado (para por exemplo, enviar um e-mail às 17hs informando qual o nome da fita que deve ser colocada para o próximo backup, que roda às 23hs).

Um novo evento de script para quando a fita lotar (para poder ejetar a fita, por exemplo).

Concluindo, na minha opinião é uma ótima ferramenta que deve ser avaliada por todos interessados numa solução de backup.

Outras ferramentas de backup:
Amanda - nunca usei, mas está em desenvolvimento há bastante tempo e tem sua última versão lançada em 06/06/2007 (versão 2.5.2p1).
Restore - tem chamado minha atenção pelo constante desenvolvimento que tenho percebido nos últimos tempos. A última versão é a 4.0b3-1(lançada em 15/10/2007). O que me incomoda com relação ao Restore é que ele não disponibiliza os fontes (ou se faz, está bem escondido). No site só existe ISO das VMs e pacotes binários para Debian e Ubuntu.

ERRATA (23/11): Quer obter os fontes do Restore? Saiba aqui como fazê-lo.

10 comentários:

  1. Realmente no mundo Open Source, Bacula e Amanda com certeza são as ferramentas de backup mais eficientes! Estão em pé de igualdade com muitas ferramentas comerciais!

    ResponderExcluir
  2. Exatamente.

    São ferramentas realmente muito boas, que atendem de forma bem eficiente a necessidade de backup.

    PS: especialmente o Bacula do qual faço uso direto e conheço mais a fundo.

    []s

    ResponderExcluir
  3. Olá,

    instalei o bacula no Windows XP e não consigo fazer ele funcionar , alguém pode me auxiliar.

    Muito Obrigada

    Rita

    ResponderExcluir
  4. Olá.

    E o servidor está instalado corretamente no Linux ?

    []s

    ResponderExcluir
  5. AMigo parabéns pelo POST, bastante eficaz, mais estou com pastante dificuldade na hora do restore, poderia clarear minha mente como encontrar um job de um determinado setor..

    Conheço muito pouco da ferramente Bacula..

    Claudio@linuxtec.com.br

    ResponderExcluir
  6. Para restaurar um Job você deve ter criado um job de restore. Isso já existe em suas configurações ?

    []s

    ResponderExcluir
  7. Sei que o post é antigo, porém, se puder dar uma força, no sentido de saber como fazer a compilação do sd para windows... Não estou encontrando nada a respeito... Grato pela atenção...

    luizgaertner@gmail.com

    ResponderExcluir
  8. Olá.

    Até onde sei somente do File Daemon (winbacula.exe) funciona no Windows.

    O SD e o Dir tem de rodar no Linux.

    []s

    ResponderExcluir
  9. Olá... Estou com uma enorme dúvida... tenho o ubuntu server instalado e preciso colocar um software de backup nele. estou entre o bacula e o amanda. Qual é o mais fácil de operar, visto que estou saindo da empresa e quero deixar instalado.

    ResponderExcluir
    Respostas
    1. Quando pesquisei o Bacula e o Amanda anos atrás, achei o Bacula muito mais completo e interessante.

      De lá pra cá não sei te dizer como anda o desenvolvimento do Amanda, mas posso te dizer que o Bacula é uma excelente ferramenta de backup, especialmente se seus servidores forem Linux.

      []s

      Excluir