Bacula-users

[Bacula-users] Tape Retention Strategy help

2009-11-05 16:47:17
Subject: [Bacula-users] Tape Retention Strategy help
From: "Hayden Katzenellenbogen" <hayden AT nextlevelinternet DOT com>
To: <bacula-users AT lists.sourceforge DOT net>
Date: Thu, 5 Nov 2009 13:23:16 -0800
Everyone,

Its been a while since I last looked at my Bacula configuration. I now
need to update it to include more backups. I want to make sure that I
can have 2 months worth of backups at all times using two LTO4 tapes.
One for the odd weeks of the year and the other for even. The total size
of the backups per week is about 150 - 200GB. I will put each alternate
weeks backup on different tape.

My current system setup is:

Server OS: Ubuntu 8.04LTS
Bacula version: 3.0.1
Auto-changer: Dell TL2000 (fiber channel)


This server runs the director, storage and file daemon along with the
SQL database server (currently postgres).

Below is my pool configuration. I have not set any file or job retention
policies yet. Right now I need some help getting my brain wrapped around
all the different retention policies.

My current policy before I made any changes was to have the volume
retention for the OddWeek and EvenWeek at one year. These two tapes were
only used to backup the catalog. The recording pool was set to 6 days.
The recording pool currently backs up about 3TB of recordings. It does a
full backup once a week and then incremental for the remaining days. I
have enough tapes that it rolls over correctly. (I am positive I am just
lucky).

Here is what I understand about the file, job and volume retentions.
(please correct me if I am wrong)

File Retention: This how long the individual files will be kept in the
catalog database. As long as the files are available in the database you
can restore a single file. Once the files are purged out as long as the
job is still in the database you can restore the entire job.

Job Retention: This is how long the job information remains in the
database. As long as the job information is available you can restore
the entire job. You can not restore a single file within the job if the
file retention period has elapsed.

Volume Retention: This is the period of the time the actual data on a
tape is kept. This is where I think I am having problems.

1. When the volume retention period elapses does Bacula mark the entire
volume to be recycled?
2. Is there a way to mark the space on the tape as available once a job
has been purged from the database?

Right now all our servers dump their backups (tar or windows backup)
onto an NFS share on this server. Once I have the backup strategy nailed
down I will installed bacula-fd on the servers and backup them up via
Bacula. So all the data that Bacula needs to backup is all on the local
raid volume.

Ultimate goal:

1. Two LTO4 tapes.
2. Tape one for even weeks of the year
3. Tape two for odd weeks of the year
4. Perform a full backup 150-200GB every week
5. Keep 2 months worth of full backups


Current pool setup
Pool {
  Name = OddWeek-Pool
  Pool Type = Backup
  Recycle = yes                       # Bacula can automatically recycle
Volumes
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 1 year
}

Pool {
  Name = EvenWeek-Pool
  Pool Type = Backup
  Recycle = yes                       # Bacula can automatically recycle
Volumes
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 1 year
}
Pool {
  Name = Recording-Pool
  Pool Type = Backup
  Recycle = yes                       # Bacula can automatically recycle
Volumes
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 6 days
}


Current Pool setup:

EvenWeek-Pool
        EvenWeek-Vol1
OddWeek-Pool
        OddWeek-Vol1
Recording-Pool
        Recording-Vol1
        Recording-Vol2
        Recording-Vol3
        Recording-Vol4
        Recording-Vol5


Schedule file to alternate between odd and even pool tapes.

Schedule {
  Name = "OddEvenWeeklyServer"
  Run =  Pool=OddWeek-Pool w01 fri at 00:15
  Run =  Pool=EvenWeek-Pool w02 fri at 00:15
  Run =  Pool=OddWeek-Pool w03 fri at 00:15
  Run =  Pool=EvenWeek-Pool w04 fri at 00:15
  Run =  Pool=OddWeek-Pool w05 fri at 00:15
  Run =  Pool=EvenWeek-Pool w06 fri at 00:15
  Run =  Pool=OddWeek-Pool w07 fri at 00:15
  Run =  Pool=EvenWeek-Pool w08 fri at 00:15
  Run =  Pool=OddWeek-Pool w09 fri at 00:15
  Run =  Pool=EvenWeek-Pool w10 fri at 00:15
  Run =  Pool=OddWeek-Pool w11 fri at 00:15
  Run =  Pool=EvenWeek-Pool w12 fri at 00:15
  Run =  Pool=OddWeek-Pool w13 fri at 00:15
  Run =  Pool=EvenWeek-Pool w14 fri at 00:15
  Run =  Pool=OddWeek-Pool w15 fri at 00:15
  Run =  Pool=EvenWeek-Pool w16 fri at 00:15
  Run =  Pool=OddWeek-Pool w17 fri at 00:15
  Run =  Pool=EvenWeek-Pool w18 fri at 00:15
  Run =  Pool=OddWeek-Pool w19 fri at 00:15
  Run =  Pool=EvenWeek-Pool w20 fri at 00:15
  Run =  Pool=OddWeek-Pool w21 fri at 00:15
  Run =  Pool=EvenWeek-Pool w22 fri at 00:15
  Run =  Pool=OddWeek-Pool w23 fri at 00:15
  Run =  Pool=EvenWeek-Pool w24 fri at 00:15
  Run =  Pool=OddWeek-Pool w25 fri at 00:15
  Run =  Pool=EvenWeek-Pool w26 fri at 00:15
  Run =  Pool=OddWeek-Pool w27 fri at 00:15
  Run =  Pool=EvenWeek-Pool w28 fri at 00:15
  Run =  Pool=OddWeek-Pool w29 fri at 00:15
  Run =  Pool=EvenWeek-Pool w30 fri at 00:15
  Run =  Pool=OddWeek-Pool w31 fri at 00:15
  Run =  Pool=EvenWeek-Pool w32 fri at 00:15
  Run =  Pool=OddWeek-Pool w33 fri at 00:15
  Run =  Pool=EvenWeek-Pool w34 fri at 00:15
  Run =  Pool=OddWeek-Pool w35 fri at 00:15
  Run =  Pool=EvenWeek-Pool w36 fri at 00:15
  Run =  Pool=OddWeek-Pool w37 fri at 00:15
  Run =  Pool=EvenWeek-Pool w38 fri at 00:15
  Run =  Pool=OddWeek-Pool w39 fri at 00:15
  Run =  Pool=EvenWeek-Pool w40 fri at 00:15
  Run =  Pool=OddWeek-Pool w41 fri at 00:15
  Run =  Pool=EvenWeek-Pool w42 fri at 00:15
  Run =  Pool=OddWeek-Pool w43 fri at 00:15
  Run =  Pool=EvenWeek-Pool w44 fri at 00:15
  Run =  Pool=OddWeek-Pool w45 fri at 00:15
  Run =  Pool=EvenWeek-Pool w46 fri at 00:15
  Run =  Pool=OddWeek-Pool w47 fri at 00:15
  Run =  Pool=EvenWeek-Pool w48 fri at 00:15
  Run =  Pool=OddWeek-Pool w49 fri at 00:15
  Run =  Pool=EvenWeek-Pool w50 fri at 00:15
  Run =  Pool=OddWeek-Pool w51 fri at 00:15
  Run =  Pool=EvenWeek-Pool w52 fri at 00:15
}


Hayden Katzenellenbogen
haydenk AT nextlevelinternet DOT com
NextLevel Internet
858-836-0700
www.nextlevelinternet.com    

By the way, we are never too busy for referrals!
If you know someone who might be interested in our services (Hosted PBX,
Voice, Internet, Metro Ethernet, Co-Location) or who is unhappy with
their current communications provider, we will take exceptional care of
them!

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Bacula-users mailing list
Bacula-users AT lists.sourceforge DOT net
https://lists.sourceforge.net/lists/listinfo/bacula-users

<Prev in Thread] Current Thread [Next in Thread>