On Wed, Aug 24, 2005, Daniel Holtkamp wrote: > Hi ! > > Trying to understand pools & volumes > > Setup: > Let`s say i only have a Default-Pool defined. Two Clients and two > seperate jobs. Also two (File-)Storage locations. Each client backups to > a seperate storage location BUT have the default-pool configured. > > Does this work ? From the configuration there seem to be no ties between > the storage location and a pool. But i don`t understand what would > happen because Volume001 of the Default pool cannot be on two storage > locations right ?
The volumes are tied to a pool. You would have Volume001 in the first storage location and Volume002 in the second storage location. E.g. disk +--- client1 | +--- Volume001 +--- client2 +--- Volume002 All depending on your schedule, naturally. When you want to backup every client to his own storage location (or set of media), you have to have a pool and a storage device for each client. I recommend to work with include files in this case. I use a separate file for each client and include them in bacula-dir.conf. At the end of bacula-dir.conf i have @/path/to/conf/clients/Catalog @/path/to/conf/clients/client1 @/path/to/conf/clients/client2 @/path/to/conf/clients/client3 .. And each client file looks basically like ---------8<---------8<---------8<---------8<---------8<---------8<---------8< # http://localhost/opkg/doc/bacula/bacula/Configuring_Director.html Client { Name = @[EMAIL PROTECTED] Address = @[EMAIL PROTECTED] FDPort = 9102 Catalog = DefaultCatalog Password = "@[EMAIL PROTECTED]" # pwd FileDaemon File Retention = 60 days Job Retention = 6 months AutoPrune = yes # Remove expired File-/Jobinfos from Database } # # ---------------------------------- STORAGE ---------------------------------- # # # Access devices from the Storage Daemon. # Name and MediaType here and in the Storage Daemon's "Device" # entry must be identical. # Storage { Name = [EMAIL PROTECTED]@ Address = @[EMAIL PROTECTED] SDPort = 9103 Password = "@[EMAIL PROTECTED]" Device = [EMAIL PROTECTED]@ Media Type = [EMAIL PROTECTED]@ } # # ----------------------------------- POOLS ----------------------------------- # # # Default pool definition (FIXEDDISK) # Pool { Name = @[EMAIL PROTECTED] # used monthly Pool Type = Backup Label Format = "0.full.${Job}.${NumVols:p/2/0/r}" Accept Any Volume = yes # use next available volume Maximum Volume Jobs = 1 Maximum Volumes = 4 Volume Retention = 4 months # catalog entries AutoPrune = yes # Prune expired volumes Recycle = yes # automatically recycle Volumes } Pool { Name = @[EMAIL PROTECTED] # used weekly Pool Type = Backup Label Format = "1.diff.${Job}.${NumVols:p/2/0/r}" Accept Any Volume = yes # use next available volume Maximum Volume Jobs = 1 Maximum Volumes = 5 Volume Retention = 4 weeks AutoPrune = yes # Prune expired volumes Recycle = yes # automatically recycle Volumes } Pool { Name = @[EMAIL PROTECTED] # used daily Pool Type = Backup Label Format = "2.incr.${Job}.${NumVols:p/2/0/r}" Accept Any Volume = yes # use next available volume Maximum Volume Jobs = 6 # whole week in one volume/file Maximum Volumes = 4 Volume Retention = 24 days AutoPrune = yes # Prune expired volumes Recycle = yes # automatically recycle Volumes } # # ------------------------------- FILESETS ------------------------------------ # FileSet { Name = @[EMAIL PROTECTED] Ignore FileSet Changes = yes Include { Options { signature = MD5 compression = GZIP9 onefs = yes hardlinks = yes } File = / } } # # -------------------------------- BACKUP JOBS -------------------------------- # Job { Name = @[EMAIL PROTECTED] Client = @[EMAIL PROTECTED] JobDefs = DefaultJob Storage = [EMAIL PROTECTED]@ FileSet = @[EMAIL PROTECTED] Schedule = WeeklyCycle Full Backup Pool = @[EMAIL PROTECTED] Differential Backup Pool = @[EMAIL PROTECTED] Incremental Backup Pool = @[EMAIL PROTECTED] Write Bootstrap = /opkg/var/bacula/@[EMAIL PROTECTED] } ---------8<---------8<---------8<---------8<---------8<---------8<---------8< The file for the Catalog looks like this: ---------8<---------8<---------8<---------8<---------8<---------8<---------8< # # Generic catalog service # Catalog { Name = DefaultCatalog dbname = bacula; user = bacula; password = "" } # # ---------------------------------- STORAGE ---------------------------------- # # # Access devices from the Storage Daemon. # Name and MediaType here and in the Storage Daemon's "Device" # entry must be identical. # Storage { Name = FIXDISK-Catalog Address = @[EMAIL PROTECTED] SDPort = 9103 Password = "@[EMAIL PROTECTED]" Device = FIXDISK-Catalog Media Type = File-Catalog } # # ----------------------------------- POOLS ----------------------------------- # # # Default pool definition (FIXEDDISK) # Pool { Name = full-Catalog # used daily Pool Type = Backup Label Format = "0.full.${Job}.${NumVols:p/2/0/r}" Accept Any Volume = yes # use next available volume Maximum Volume Jobs = 1 Maximum Volumes = 10 Volume Retention = 9 days # catalog entries AutoPrune = yes # Prune expired volumes Recycle = yes # automatically recycle Volumes } # # ------------------------------- FILESETS ------------------------------------ # # This is the backup of the catalog FileSet { Name = Catalog Include { Options { signature = MD5 compression = GZIP9 } File = /opkg/var/bacula/bacula.sql } } # # -------------------------------- BACKUP JOBS -------------------------------- # # # Backup the catalog database (after the nightly save) # Job { Name = Catalog-disk Client = @[EMAIL PROTECTED] # where the director runs/the db resides JobDefs = DefaultJob Storage = FIXDISK-Catalog FileSet = Catalog Level = Full Schedule = WeeklyCycleAfterBackup Pool = full-Catalog # This creates an ASCII copy of the catalog RunBeforeJob = "/opkg/libexec/bacula/make_catalog_backup bacula bacula" # This deletes the copy of the catalog RunAfterJob = "/opkg/libexec/bacula/delete_catalog_backup" Write Bootstrap = "/opkg/var/bacula/Catalog-disk.bsr" Priority = 11 # run after main backup } ---------8<---------8<---------8<---------8<---------8<---------8<---------8< And for the Catalog and each client there is a storage device. At the end of bacula-sd.conf i have: @/path/to/conf/clients/Catalog-sd @/path/to/conf/clients/client1-sd @/path/to/conf/clients/client2-sd @/path/to/conf/clients/client3-sd .. And each file looks like: ---------8<---------8<---------8<---------8<---------8<---------8<---------8< Device { Name = [EMAIL PROTECTED]@ Media Type = [EMAIL PROTECTED]@ Archive Device = /backup/bacula/fixdisk/@client@ AlwaysOpen = no RemovableMedia = no Random Access = yes RequiresMount = no LabelMedia = yes # lets Bacula label unlabeled media AutomaticMount = yes # when device opened, read it } ---------8<---------8<---------8<---------8<---------8<---------8<---------8< Where "@client@" can be "Catalog". Well, i'm running this for less than a month - maybe i have to play a bit with the retention timings. (mk) -- Matthias Kurz; Fuldastr. 3; D-28199 Bremen; VOICE +49 421 53 600 47 >> Im prämotorischen Cortex kann jeder ein Held sein. (bdw) << ------------------------------------------------------- SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf _______________________________________________ Bacula-users mailing list Bacula-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-users