Bacula-users

Re: [Bacula-users] backup to multiple disks

2013-05-28 17:08:06
Subject: Re: [Bacula-users] backup to multiple disks
From: Josh Fisher <jfisher AT pvct DOT com>
To: bacula-users AT lists.sourceforge DOT net
Date: Tue, 28 May 2013 17:05:11 -0400
On 5/28/2013 3:09 PM, Dimitri Maziuk wrote:
> On 05/28/2013 01:41 PM, Kern Sibbald wrote:
>> I am wondering why and how you come up with ideas
>> that don't correspond to what Bacula actually does.
> Perhaps because all I know about what Bacula actually does is what I
> read in the manual. (Don't get me wrong, it's no worse than the manuals
> I write for my code -- that's why I'm on this ML & keep asking you.)
>
>> Every Device resource that is referenced by a virtual Autochanger
>> resource in bacula-sd.conf is equivalent to a tape drive. The
>> Volumes that have been created are equivalent to the slots,
>> you get one slot per Volume -- as many as you want.
> Please spell this out in simple words: I have 2 Devices in the
> Autochanger, each Device can hold 5 Volume files. Bacula writes 5
> Volumes on Device-1, Device 1 is now full. What you're saying is bacula
> will *not* write Volume-6 to Device-2, is that correct? (That's
> certainly what's happening here.)

That is mostly correct. It will never write anything to Device-2. Bacula 
can switch Devices when reading, but not when writing. However, it will 
still write Volume-6 to Device-1, once manual intervention has in some 
way made a Volume-6 file available in Device-1's ArchiveDevice (ie. 
filesystem directory) and/or made sufficient free space available on the 
underlying file system. This is really no different than what happens 
when all of the tapes in a real tape library are full. Operator 
intervention is required.

> What is the point of the virtual autochanger then? What is the intended
> usage scenario?

Device-1, Device-2,..., Device-N) can all use the same ArchiveDevice. 
The point is to allow multiple jobs to run in parallel, even when all 
jobs are writing to the save bacula-dir.conf Device (which maps to a 
bacula-sd.conf Autochanger), and even if those jobs write to volumes 
belonging to different Pools, have different priorities, different start 
times, etc.

Most real tape libraries have a single library and one or more drives. 
Any drive can load any of the tapes from the single tape library. If 
Device-1, Device-2, etc. do not point to the same directory, then this 
sharing of a single library is not possible. In order to use multiple 
physical drives and allow any volume on any of those file systems to be 
"mounted" on either virtual drive Device-1 or Device-2, there are two 
possibilities. Let's say you have two hard drives at /dev/sdd1 and 
/dev/sde1. You can:
     1. Add /dev/sdd1 and /dev/sde1 as PDs in LVM group /dev/vg_bacula 
and create a single LVM volume /dev/vg_bacula/lv_changer. Mount 
/dev/vg_bacula/lv_changer at /mnt/changer. Then set 
ArchiveDevice=/mnt/changer for both Device-1 and Device-2.

     2. Mount /dev/sdd1 at /mnt/changer.1 and /dev/sde1 at 
/mnt/changer.2. Create symlinks in /mnt/changer.1 pointing to all of the 
files in /mnt/changer.2 and create symlinks in /mnt/changer.2 pointing 
to all of the files in /mnt/changer.1, while ensuring there are no 
duplicate file names. Set ArchiveDevice=/mnt/changer.1 for Device-1 and 
ArchiveDevice=/mnt/changer.2 for Device-2.

This is why I have said here before that for fixed disk storage, the 
built-in Bacula autochanger using LVM and perhaps auto-labeling is the 
way to go. For removable disk drives, LVM used in (1) is out of the 
question and the symlinks in (2) would have to be recreated every time a 
removable drive was attached or detached. For removable drives, 
particularly when using multiple removable drives and/or a variable 
number of drives may be attached at any one time, vchanger is the way to go.



------------------------------------------------------------------------------
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with <2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
_______________________________________________
Bacula-users mailing list
Bacula-users AT lists.sourceforge DOT net
https://lists.sourceforge.net/lists/listinfo/bacula-users