User Tools

Site Tools


Action disabled: register
bacula_manual:weekly_tape_rotation

Weekly Tape Rotation

This scheme is similar to the Daily Tape Rotation scheme, except it comprises a separate pool of tapes for each week of the month and has a weekly Full backup, and nightly incrementals.

Advantages

  • Allows offsite backups by taking the last weeks tapes offsite.
  • Recycles the tapes every month
  • Uses the scratch pool to dynamically allocate tapes to the weekly pools when more tapes are required.

Disadvantages

  • Uses more tapes than a single pool would.

Practical Details

From the bacula-dir.conf:

# /etc/bacula/bacula-dir.conf
#
Director {                            # define myself
  Name = servername-dir
  DIRport = 9101                # where we listen for UA connections
  QueryFile = "/usr/lib64/bacula/query.sql"
  WorkingDirectory = "/data/BACULA"
  PidDirectory = "/var/run"
  Maximum Concurrent Jobs = 12
  Password = "console-pass"         # Console password
  Messages = Daemon
}

# Standard Job Definition
JobDefs {
  Name = "DefaultJob"
  Type = Backup
  Level = Incremental
  Client = client1-fd 
  FileSet = "Full Set"
  Schedule = "WeeklyCycle"
  Storage = Tape
  Messages = Standard
  Priority = 10
  Prefer Mounted Volumes = no
  Pool = Default
}

# Basic job
Job {
  Name = "BackupClient1"
  JobDefs = "DefaultJob"
  Write Bootstrap = "/var/lib/bacula/Client1.bsr"
}

# Default FileSet:
FileSet {
  Name = "Full Set"
  Include {
    Options {
      signature = MD5
    }
    File = /usr/sbin
    File = /etc
  }
  Exclude {
    File = /var/lib/bacula
    File = /tmp
    File = /proc
    File = /tmp
    File = /.journal
    File = /.fsck
  }
}

#Define the weekly schedule to use a different pool for each week
Schedule {
   Name = "WeeklyCycle"

   Run = Level=Full Pool=Week1 1st sun at 23:05
   Run = Level=Full Pool=Week2 2nd sun at 23:05
   Run = Level=Full Pool=Week3 3rd sun at 23:05
   Run = Level=Full Pool=Week4 4th sun at 23:05
   Run = Level=Full Pool=Week5 5th sun at 23:05

   Run = Incremental Pool=Week1 1st mon-sat at 23:05
   Run = Incremental Pool=Week2 2nd mon-sat at 23:05
   Run = Incremental Pool=Week3 3rd mon-sat at 23:05
   Run = Incremental Pool=Week4 4th mon-sat at 23:05
   Run = Incremental Pool=Week5 5th mon-sat at 23:05
}

Client {
  Name = client1-fd
  Address = client1name.domain.name
  FDPort = 9102
  Catalog = MyCatalog
  Password = "client-pass"          # password for FileDaemon
  File Retention = 30 days            # 30 days
  Job Retention = 6 months            # six months
  AutoPrune = yes                     # Prune expired Jobs/Files
}

#Define a pool for each week, and a scratch pool to put new/blank tapes into.

Pool {
  Name = Week1
  Pool Type = Backup
  Recycle = yes
  AutoPrune = yes
  Volume Retention = 28 days
  Cleaning Prefix = "CLN"
  Volume Use Duration = 5 days
}
Pool {
  Name = Week2
  Pool Type = Backup
  Recycle = yes
  AutoPrune = yes
  Volume Retention = 28 days
  Cleaning Prefix = "CLN"
  Volume Use Duration = 5 days
}
Pool {
  Name = Week3
  Pool Type = Backup
  Recycle = yes
  AutoPrune = yes
  Volume Retention = 28 days
  Cleaning Prefix = "CLN"
  Volume Use Duration = 5 days
}
Pool {
  Name = Week4
  Pool Type = Backup
  Recycle = yes
  AutoPrune = yes
  Volume Retention = 28 days
  Cleaning Prefix = "CLN"
  Volume Use Duration = 5 days
}
Pool {
  Name = Week5
  Pool Type = Backup
  Recycle = yes
  AutoPrune = yes
  Volume Retention = 28 days
  Cleaning Prefix = "CLN"
  Volume Use Duration = 5 days
}
# Scratch pool definition
Pool {
  Name = Scratch
  Pool Type = Backup
}

# Generic catalog service
Catalog {
  Name = MyCatalog
# Uncomment the following line if you want the dbi driver
  dbdriver = "dbi:mysql"; dbaddress = 127.0.0.1;  
  dbname = "bacula"; dbuser = "bacula";
}

#Define storage (mines a Dell autoloader)
Storage {
  Name = Dell-ML6000
  Address = storagehostname.domain.name
  SDPort = 9103
  Password = "storage-pass"
  Device = Dell-ML6000
  MediaType = "LTO4"
  Autochanger = yes
  Maximum Concurrent Jobs = 12
}
bacula_manual/weekly_tape_rotation.txt · Last modified: 2009/10/20 11:20 by barkboy