Exemplo de Estratégia Grandfather-Father-Son (GFS) no Bacula

A implementação da estratégia GFS clássica no “Bacula” se dá através de duas configurações:

1. Ao menos 03 (três) “pools” distintas.

“Pools” diaria, semanal e mensal. Obviamente você pode chamar de outra maneira (ex.: daily, weekly, monthly), mas a função delas deverá ser a mesma: hospedar os “backups” para cada hierarquia (diferenciais ou incrementais diários, “full” semanais e “full” diários).

Nota:

Quem desejar GARANTIR que o “Bacula” sempre utilize a mesma fita para determinado dia do mês (ex.: VOL1 sempre ser gravado às segundas-feiras), deve criar “pools” específicas para cada dia da semana (ex.: diario_seg, diário_ter, etc.), e assim sucessívamente. Observer que, isso só é útil se estiver trabalhando com um drive de fitas manual e o operador não tiver acesso á console do “Bacula”, para saber qual fita deve inserir.

Para criar uma nova pool, basta duplicar as configurações de uma “pool” qualquer (incialmente a “default”), e alterar seu nome. Não esqueça de configurá-la (tempo de retenção, tempo de uso do volume, reciclagem – “yes/no”, etc.) —> tudo isso lá no bacula-dir.conf.

O GFS tradicional requer que um backup da hierarquia inferior (por exemplo, Diário) não possa ser reciclado (sobrescrito) enquanto o de hierarquia mais alta (por exemplo, Semanalmente) não for executado. Portanto, os valores mínimos de VolumeRetention para esses Pools são:

  • Diariamente: 1 semana.
  • Semanal: 1 mês.
  • Mensal: 2-12 meses (dependendo da política de backup corporativa).

Algumas empresas até têm Pools Anuais, quando precisam reter backups por vários anos.

Obviamente, esses são apenas valores mínimos que sacrificam a granularidade da restauração (por exemplo, a capacidade de restaurar a versão específica de um arquivo de um determinado dia no passado), para economizar espaço de armazenamento ou mídia de backup. Algumas empresas, por exemplo, preferem manter backups diários por duas semanas ou até mais. Depois disso, de qualquer forma, o cliente que precisar de uma restauração precisará trabalhar com a versão do arquivo de backups semanais ou mensais, que podem ter uma semana ou um mês, respectivamente. No entanto, não é comum que um arquivo de cliente precise de versões muito específicas de um arquivo depois de um tempo, pois ele já seria capaz de detectar problemas ou inconsistências nele antes da demanda de restauração.

2. Agendamento.

O “schedule” ou agendamento, também é configurado no bacula-dir.conf. Você deve associar um “Job” criado neste arquivo a um agendamento. Portanto, aconselhamos criar um novo “schedule” (ex.: agenda_gfs), e ir associando os “Jobs”.

Schedule {
Name = agenda_gfs
  Run = Level=Differential    Pool=Diaria    Monday-Thursday at 19:00
  Run = Level=Full            Pool=Semanal   2nd 3rd 4th 5th Friday at 19:00
  Run = Level=Full            Pool=Mensal    1st Friday at 19:00
}

No exemplo, teremos “backups” diários de “segunda às quinta-feiras“, semanais nas “segundas, terças, quartas e quintas sextas-feiras do mês“, e mensais na “primeira sexta-feira do mês“.

Disponível em: pt-brPortuguêsenEnglish (Inglês)

Deixe uma resposta