SearchFAQMemberlist Log in
Reply to topic Page 1 of 1
FAQ-ish question - Tough situation, I think its impossible w
Author Message
Post FAQ-ish question - Tough situation, I think its impossible w 
I have several pools, jobs, and schedules that are working just fine. There
is just one pool/job combo that's giving me fits! It feels like such a
newbie problem too, very similar or identical to others that have been asked
on this very list! Gah!

Requirements I'm using for the backups are as such:

1) 5 tapes in a job/fileset-specific pool

2) One job max on each tape.

3) Each day a non-bacula-educated user will manually change tapes and takes
the new tape off-site.
I have an ADMIN job that unmounts the drive, updates the slots then remounts
the drive before any jobs on that SD run.

4) If operator forgets to switch tapes, over-write whatever tape from the
specified pool that's loaded in the tape changer. Due to other jobs that run
before/after it each day, it won't be the tape that's loaded in the tape
drive.

!!! This is where I'm stuck! I've used "Recycle Current Volume = yes" but I
believe that it only applies to situations where the volume is still in the
tape device, not for when a volume from the pool is in the changer.

Reading over the mailing lists archives, I get the feeling that Bacula isn't
really "built" for doing #4. Or am I missing something? If I bump the
Volume Retention down to 12 hours, it still winds up asking for a tape that
isn't loaded in the changer.

In general, unless I disable certain tapes, the job keeps asking for volumes
that aren't in the changer when appendable(new), purged or recycled volumes
are loaded in the changer.

Any help/insights would be great. Even if it's to say "Nope, bacula doesn't
really work the in a way that you want it too..." at least not in this
instance. All of my other backups are running great! This is just one small
but critically important subsection of data, less than 1% of what needs
backed up, but potentially more important than all the other stuff.

Full pool definition is:
Pool {
Name = FlaksProblemPool # Not it's real name folks.
Pool Type = Backup
Recycle = yes
AutoPrune = yes
Volume Retention = 5 days
Recycle Current Volume = yes
Storage = FlaksChanger # Also not a real name
Maximum Volume Jobs = 1
Maximum Volumes = 5
}

The only scheduled job that uses the pool:
Job {
Name = "FlaksProblem Backup"
Type = Backup
Level = Full
Client = bacula-fd
Prune Jobs = Yes
Prune Files = Yes
Prune Volumes = Yes
Prefer Mounted Volumes = Yes
FileSet = "VMWareImages"
Schedule = "WeeklyCycle"
Run Before Job = /etc/bacula/RBS-vibackup_cleanup.sh
Storage = FlaksChangers
Messages = Standard
Pool = FlaksProblemPool
Priority = 11
Spool Attributes = yes
Maximum Concurrent Jobs = 1
Max Wait Time = 12 hours
}

Installation:

Bacula v2.0.3 in all cases.
Director: Ubuntu 6.10 server on a VMWare server, runing DIR, FD, MySQL
Client1: Solaris 8 SPARC, running FD, SD w/ Quantum-SL3 16xLT03
Client2: Solaris 8 SPARC, running FD, SD w/ Qualstar TLS4210 13xAIT3
Client3: Ubuntu 6.10 server running FD
Client4: Win2k running FD
Client5: WinXP running FD (Idle, no jobs run that need this box.)

--
-- Flak Magnet (Tim)
http://www.flakmagnet.com

Post FAQ-ish question - Tough situation, I think its impossible w 
Attachments: Message as HTML


3) Each day a non-bacula-educated user will manually change tapes and
takes
the new tape off-site.
I have an ADMIN job that unmounts the drive, updates the slots then
remounts
the drive before any jobs on that SD run.

4) If operator forgets to switch tapes, over-write whatever tape from the
specified pool that's loaded in the tape changer. Due to other jobs that
run
before/after it each day, it won't be the tape that's loaded in the tape
drive.


The problem here is after manually switching tapes in the autochanger
someone must run the update slots command from bacula before any jobs are
run. This can be as simple as clicking on a button that feeds the command
into bconsole.

John

Post FAQ-ish question - Tough situation, I think its impossible w 
Whoops, I sent my reply to John's initial reply to the devel list! Sorry
about that!

On Friday 15 June 2007 11:42:16 am you wrote:

Sorry. Is it possible to have a job that runs before the user removes
the tapes to mark all tapes in the changer to status Full? You can
probably do this with a query by adding an update query to the
query.sql file and have bconsole execute that query. I am thinking
this way the tapes need not even be loaded. Just that this must happen
before you do the update slots command in your admin job.

Not sure what angle you're coming at my problem from. To mark all tapes as
Full is certainly possible, I suppose, however I don't think it would address
my issue nor would it be feasible considering the rest of my installation.

See, in the autochanger I have tapes for four other pools besides the one that
I'm having the problem I described earlier. Two pools each for two different
jobs/filesets. One pool has recyclable volumes with 90 day retention and the
other is for archived monthly backups. Not to mention the "scratch" pool...

I can't mark all tapes in the changer as full, it would hose my other
pools/backups that are currently working fine.

Even if I marked just all of the tapes from the "FlaksProblemPool" as Full,
I'm not sure what that would accomplish for me. Already the tapes that are
written to by the job are marked as Used because of the Maximum Volume Jobs
directive I included in the pool definition.

--
-- Flak Magnet (Tim)
http://www.flakmagnet.com

Post FAQ-ish question - Tough situation, I think its impossible w 
Even if I marked just all of the tapes from the "FlaksProblemPool" as Full,
I'm not sure what that would accomplish for me. Already the tapes that are
written to by the job are marked as Used because of the Maximum Volume Jobs
directive I included in the pool definition.

If they are marked as Full, Archive or Error then bacula will not try
to use them. However, I am not sure why it is failing for being marked
used.

John

Post FAQ-ish question - Tough situation, I think its impossible w 
On Fri, 15 Jun 2007, John Drescher wrote:

The problem here is after manually switching tapes in the autochanger
someone must run the update slots command from bacula before any jobs are
run. This can be as simple as clicking on a button that feeds the command
into bconsole.

Or even more simple from a user point of view (no clicking needed)

bacula-dir.conf
===========
# This schedule is for changer synchronisation
Schedule {
Name = "UpdateSlots"
Run = Full daily at 12:30
Run = Full daily at 21:30
Run = Full daily at 17:00
}

# Update tape library slot inventory
Job {
Name = "UpdateSlots"
Type = Admin
JobDefs = "DefaultJob"
Level = Full
FileSet="None"
Schedule = "UpdateSlots"
# This creates an ASCII copy of the catalog
RunBeforeJob = "/usr/local/bin/updateslots"
Write Bootstrap = "/var/bacula/bootstraps/UpdateSlots.bsr"
Spool Data = no
Pool = High-churnPool
}
===========

/usr/local/bin/updateslots
===========
#!/bin/sh
echo 'update slots Storage=MSL6000-changer drive=0' \
| /usr/sbin/bconsole -c /etc/bacula/bconsole.conf
===========

Display posts from previous:
Reply to topic Page 1 of 1
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
  


Magic SEO URL for phpBB