Hello everyone,


I use Bacula for 4 months and I have several questions in order to optimize
it.

I am backing up servers in the default file pool and migrate them on some
LTO-6 cartridges like this :

Full backups sat-sun then migration to LTO-6 “L” pool

Diff/incr mon-Thursday then migration to LTO-6 “M” pool

I use SQL queries to perform migrations selection jobs as you will see
further.



And now my questions…



1°) My LTO-6 is a single drive (not autochanger), Is my drive definition
correct in bacula-sd.conf ?



2°)  I use  Maximum Concurrent Jobs = 1 in pool definition  and bacula-sd
because with 4, my drive swap a lot and migrate rate was about 10 Mb/s
only. With MCJ=1 rate is above 80 Mb/s.

This was fine with my previous drive LTO-4 drive. I don’t know why it’s
works badly with LTO-6.

Is it correct ? How is it possible to have several migration jobs to a tape
drive at the same time.



3°) I have 2 jobs for each migration job : 1 backup + 1 migration, in
bconsole, baculum, and mails… Not efficient for exploitation, is it
possible to have only 1 job (the migration one) ?

Bconsole example :

14975  Migr Full          0         0  Migration LTO_INF_F is running

 14976  Back Full          0         0  Backup W_INF      is running



4°) In client definition migration jobs I use these settings to avoid lots
of children jobs  :

Allow Duplicate Jobs = No

Cancel Running Duplicates = Yes

Cancel Queued Duplicates = Yes



I confess I do not understand how it works.



5°) In Windows, how to filter thumbs.db files in backup jobs ?



6°) How to verify migration jobs without connecting to the client, just a
cartridge reading verification ?



7°) For bonus.. some advices ? :-)



I know it is lots of questions…

Thanks in advance





Here is my configuration files :



*Bacula-sd.conf*



Storage {                             # definition of myself

  Name = 111401L111BCK-sd

  SDPort = 9103                  # Director's port

  WorkingDirectory = "/opt/bacula/working"

  Pid Directory = "/opt/bacula/working"

  Plugin Directory = "/opt/bacula/plugins"

  Maximum Concurrent Jobs = 20

}



#

# List Directors who are permitted to contact Storage daemon

#

Director {

  Name = 111401L111BCK-dir

}



#

# Restricted Director, used by tray-monitor to get the

#   status of the storage daemon

#

Director {

  Name = 111401L111BCK-mon

  Monitor = yes

}



Device {

  Name = "LTO 6"

  Media Type = LTO-6

  Device Type = Tape

  Archive Device = /dev/nst0

  AutomaticMount = yes;               # when device opened, read it

  #AlwaysOpen = no;                   #Testé mais semble poser problème
lors des migrations (bande non reconnue)

  AlwaysOpen = yes;

  RemovableMedia = yes;

  RandomAccess = no;

  Maximum File Size = 6GB

  Maximum Concurrent Jobs = 1

  Changer Command = "/opt/bacula/scripts/mtx-changer %c %o %S %a %d"

  Changer Device = /dev/sg0

  AutoChanger = no

}



*Bacula-dir.conf*



 Director {                            # define myself

  Name = 111401L111BCK-dir

  DIRport = 9101                # where we listen for UA connections

  QueryFile = "/opt/bacula/scripts/query.sql"

  WorkingDirectory = "/opt/bacula/working"

  PidDirectory = "/opt/bacula/working"

  Maximum Concurrent Jobs = 30

  Messages = Daemon

  DirPort = 9101

  }



# File Pool definition

Pool {

  Name = File

  Pool Type = Backup

  Recycle = yes                       # Bacula can automatically recycle
Volumes

  AutoPrune = yes                     # Prune expired volumes

  ActionOnPurge = truncate

  Volume Retention = 16 days

  Maximum Volume Bytes = 50G          # Limit Volume size to something
reasonable

  Maximum Volumes = 500               # Limit number of Volumes in Pool

  Label Format = "Vol-"               # Auto label

  Storage = File1

}



# Definition of LTO-6 tape Autochanger device

Storage {

  Name = LTODrive-6

  Address = 111401L111BCK               # N.B. Use a fully qualified name
here

  SDPort = 9103

  Device = "LTO 6"                     # must be same as Device in Storage
daemon

  Media Type = LTO-6                 # must be same as MediaType in Storage
daemon

  Maximum Concurrent Jobs = 1

}



Pool {

  Name = L

  Pool Type = Migration

  Recycle = yes                       # Bacula can automatically recycle
Volumes

  AutoPrune = yes                     # Prune expired volumes

  ActionOnPurge = truncate

  Volume Retention = 185 days         # 6 mois

  #Maximum Volume Bytes = 50G         # Inutile pour les bandes

  Maximum Volumes = 50                # Limit number of Volumes in Pool

  Label Format = "L_"                 # Auto label

  Storage = LTODrive-6

}



# Tape Incremental Pool definition

Pool {

  Name = M

  Pool Type = Migration

  Recycle = yes                       # Bacula can automatically recycle
Volumes

  AutoPrune = yes                     # Prune expired volumes

  ActionOnPurge = truncate

  Volume Retention = 185 days         # 6 mois

  #Maximum Volume Bytes = 50G         # Inutile pour les bandes

  Maximum Volumes = 50                # Limit number of Volumes in Pool

  Label Format = "M_"                 # Auto label

  Storage = LTODrive-6

}



Schedule {

  Name = "Tape-LTO_F"

  Run = level=Full NextPool=L mon at 03:00

  #Run = level=Full NextPool=L fri at 14:35

  Run = level=Full NextPool=L mon-fri at 15:10

  }



Schedule {

  Name = "Tape-LTO_I"

  #Run = level=Incremental NextPool=M Tue-Fri at 07:45

  #Run = level=Incremental NextPool=M Tue-Fri at 10:29

}



Client.conf



FileSet {

  Name = "F W_INF"                        #Windows Server 2008

  Ignore FileSet Changes = yes    # Evite d'avoir à relancer une sauvegarde
complète après une modification du fileset

    Include {

      Options {

        signature = MD5

        #Compression=GZIP

        IgnoreCase = Yes

    }

  File = "E:/Data

  }

}



Client {

  Name = w11140101inf-fd

  FDPort = 9102

  Catalog = MyCatalog

    File Retention = 14 months

  Job Retention = 14 months

  #Job Retention = 1 week

  AutoPrune = Yes                      # Prune expired Jobs/Files

}



Job {

  Name = "Backup W_INF"

  Type = Backup

  Level = Full

  #Enabled = no

  Client = w11140101inf-fd

  Accurate = Yes

  FileSet = "F W_INF"

  Schedule = "INF"

  MaxRunTime = 115200

  #DifferentialMaxRunTime = 32400   # 9h (22h30-07h30)

  #IncrementalMaxRunTime = 32400    # 9h (22h30-07h30)

  Storage = File1

  Messages = Standard

  Pool = File

  SpoolAttributes = yes

  Priority = 9

  Write Bootstrap = "/opt/bacula/working/%c.bsr"

}





Job {

Name = "Migration LTO_INF_F"

Type = Migrate

Level = Full

#Enabled = no

Client = w11140101inf-fd

FileSet = "F W_INF"

Schedule = "Tape-LTO_F"

Messages = Standard

Pool = File

Next Pool = L

Maximum Concurrent Jobs = 1

Selection Type = SQLQuery

Selection Pattern = "SELECT Jobid FROM public.job Where name='Backup
W_INF'and level='F' and Type='B' and jobfiles>0 and poolid =2;"

Allow Duplicate Jobs = No

Cancel Running Duplicates = Yes

Cancel Queued Duplicates = Yes

# PurgeMigrationJob= no  Ne migre pas le backup du bandes uniquement
(supprime le disk job)

#Storage = LTODrive

}



Job {

Name = "Migration LTO_INF_I"

Type = Migrate

Level = Incremental

Client = w11140101inf-fd

#Enabled = no

FileSet = "F W_INF"

Schedule = "Tape-LTO_I"

Messages = Standard

Pool = File

Next Pool = M

Maximum Concurrent Jobs = 1

Selection Type = SQLQuery

Selection Pattern = "SELECT * FROM public.job Where name='Backup W_INF' and
Type='B' and jobfiles>0 and poolid =2 and (level='D' or level='I');"

Allow Duplicate Jobs = No

Cancel Running Duplicates = Yes

Cancel Queued Duplicates = Yes

# PurgeMigrationJob= no  Ne migre pas le backup du bandes uniquement
(supprime le disk job)

#Storage = LTODrive

}
_______________________________________________
Bacula-users mailing list
Bacula-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bacula-users

Reply via email to