Bacula-users

Re: [Bacula-users] Scheduling configuration question

2010-05-17 19:10:26
Subject: Re: [Bacula-users] Scheduling configuration question
From: Phil Stracchino <alaric AT metrocast DOT net>
To: bacula-users AT lists.sourceforge DOT net
Date: Mon, 17 May 2010 19:07:43 -0400
On 05/17/10 17:53, Joseph Spenner wrote:
> Ok, it's not quite THAT bad!   :)

OK, I possibly exaggerated a little for effect.  :)  The one time I
tried to get AMANDA set up, I really couldn't get anywhere with it,
because it seemed it was designed for "tell it what to back up how often
and what resources are available, then stand back out of the way",
whereas I wanted control over what got backed up when and to what.

> As far as differentials, I'm not sure.  I'm still not very clear on
> their importance, since incrementals cover the changes.  If I
> understand correctly, it sounds like the differentials cover what may
> have been written to disk during the backup itself-- perhaps needed
> on a very busy disk.  I don't think I need this level of backup.

Well, differentials certainly aren't a *requirement*.  The distinction
between an incremental and a differential is that an incremental backs
up changes since the last backup, a differential backs up changes since
the last FULL backup.  If you're doing a full backup every six days, you
probably don't need differentials at all.  The main purpose of
differentials is to periodically aggregate sets of intervening changes
in order to reduce the number of jobs that need to be retrieved to
perform a given restore, but if you're doing a full backup every six
days, the most you're ever going to need for a restore is six datasets
anyway.


As previously mentioned, staggering backups on your clients is fairly
easy.  A six-day backup cycle is *unusual*, because it doesn't fit
neatly into either weekly or monthly schedules, and because we don't
have an ideal calendar divided into equal months of a multiple of six
days.  About the best you could do would be something like this:

Schedule {
  Name = "First Group"
  Run = Level=Full on 1,7,13,19,25 at 1:05
  Run = Level=Incremental on 2-6,8-12,14-18,20-24,26-30 at 1:05
}

Schedule {
  Name = "Second  Group"
  Run = Level=Full on 2,8,14,20,26 at 1:05
  Run = Level=Incremental on 1,3-7,9-13,15-19,21-25,27-30 at 1:05
}

JobDefs {
  Name ="First Group"
  Pool ="Fallback Pool"
  Full Pool = "First Full Pool"
  Incremental Pool = "First Incremental Pool"
}

And so on.  Of course, this isn't a perfect solution; it'll skip the
last day of 31-day months, and it'll jump the sequence every February.
This really comes down to a basic conceptual difference between what we
could call "when-based scheduling" and "how-often-based scheduling".  A
strict every-sixth-day year-round is very difficult to do with Bacula,
because Bacula is not designed to do scheduling that way.  I'm really
not certain how one would schedule a calendar-independent six-day
rotating schedule in Bacula, and I'm not convinced it can be done
without enumerating the entire schedule a year at a time.  If you really
need to do that, then perhaps Bacula isn't the tool for you.


-- 
  Phil Stracchino, CDK#2     DoD#299792458     ICBM: 43.5607, -71.355
  alaric AT caerllewys DOT net   alaric AT metrocast DOT net   phil AT 
co.ordinate DOT org
         Renaissance Man, Unix ronin, Perl hacker, Free Stater
                 It's not the years, it's the mileage.

------------------------------------------------------------------------------

_______________________________________________
Bacula-users mailing list
Bacula-users AT lists.sourceforge DOT net
https://lists.sourceforge.net/lists/listinfo/bacula-users