Amanda-Users

RE: Amanda overwrites level 0 dumps?

2003-10-26 14:29:52
Subject: RE: Amanda overwrites level 0 dumps?
From: "Amanda Admin" <amanda AT denverdata DOT com>
To: "Matthias Andree" <matthias.andree AT gmx DOT de>, <amanda-users AT amanda DOT org>
Date: Sun, 26 Oct 2003 12:26:51 -0700
> Relevant configuration:
> - no changer
>
> dumpcycle 14 days       # the number of days in the normal dump cycle
> tapecycle 6 tapes       # the number of tapes in rotation
> bumpsize 1500 Mb        # minimum savings (threshold) to bump level 1 -> 2
> bumpdays 1              # minimum days at each level
> bumpmult 4              # threshold = bumpsize * (level-1)**bumpmult
> runtapes 1              # number of tapes to be used in a single
> run of amdump
>

You left out your runspercycle setting, which is pertinent to your
complaint.

If your runspercycle is either specifically set greater than 5 or is left at
its default (same value as dumpcycle), than you're asking for trouble,
which, apparently is what you're complaining about.

> The results have been that I lost the last level 0 dump because it was
> overwritten with level 1 dumps.
>

As I would expect based on your configuration.

>
> What I expect of Amanda:
>

Amanda expects a little from you also.

Snipped directly from 'man amanda', note specifically the third paragraph:

tapecycle int
       Default: 15 tapes.  The mininum number of tapes  in
       the  active tape cycle.  You can have more tapes in
       your active tape cycle.  It  means  that  you  must
       write  at  least  tapecycle  tape  before a tape is
       overwritten.  A tape marked as no-reuse is  not  in
       the active tape cycle.

       Amanda  will  accept any tape for writting if it is
       not in the last tapecycle tapes used.

       This must be at least one larger than the number of
       Amanda runs done during a dump cycle (see the dump-
       cycle parameter) times the number of tapes used per
       run (see the runtapes parameter).

       For  instance,  if dumpcycle is set to 14 days, one
       Amanda run is done every day (Sunday through Satur-
       day),  and  runtapes  is set to one, then tapecycle
       must be at least 15 (14 days * one  run/day  *  one
       tape/run + one tape).

>
> If there is not enough space to keep an older level 0 dump as a new one
> is written, then abort, moaning and screaming loudly "buy more tapes" as
> the backup will be worthless.
>

Look at your reports, I'm sure you will see a message complaining that a
level 0 is being overwritten. Maybe that complaint isn't loud enough for
your liking, but, if you fully understand dumpcycle, tapecycle and
runspercycle, you would have known when you configured her, that your
backups were at risk.

> This means: if I have 6 tapes, Amanda will have to write level 0 every
> FIFTH dump (not every SIXTH) at the latest. Of course, the "planner"
> (scheduler) can promote to level 0 earlier if that's necessary for
> capacity reasons.
>
> One thing I've never understood is: WHY does Amanda need to know the
> dumpcycle in days? If this feature has precedence over the tapecycle, it
> is broken.
>

This understanding is the crux of the problem. I refer you back to the
tapespercycle snip above and to 'man amanda'.

The bottom line is, Amanda is trying to do the best she can with what you
have given her and you've instructed her to overwrite tapes before the
dumpcycle is complete.

Perhaps a warning should be added to amdump and amcheck to alert users to
the situation when tapecycle is less than dumpcycle.

Doug