Discussion:
[Bacula-users] Problem labeling tapes dir and sd on different machines
bacula
2017-07-11 07:44:25 UTC
Permalink
Hi all,

my current setup is director on a vm and sd is running on a qnap nas. Everything went fine runing all daemons on a single virtual machine writing to an nfs mount of the qnap.

To improve performance in particualr for the bigger jobs we installed bacula directly on qnap to have the sd running there. Now we got the follwing problem.

Autolabeling doesn't work anymore. After starting a job I got the following message:



From: ***@bacula <mailto:***@bacula.jws.local> <***@bacula <mailto:***@bacula.jws.local> >
Sent: Mon Jul 10 00:05:19 2017
To: admin
Cc:
Subject: Bacula: Intervention needed for shares.2017-07-09_23.05.00_13
Auto forwarded by a rule

10-Jul 00:05 qnap4-sd JobId 1: Job shares.2017-07-09_23.05.00_13 is waiting. Cannot find any appendable volumes.
Please use the "label" command to create a new Volume for:
    Storage:      "FileChgr1-Dev2" (/opt/bacula/tapes)
    Pool:         File
    Media type:   File1



That message never apperead on the single machine setup. The labels were properly autolabeled.
Nevertheless I tried to label a tape.


***@bacula:~# bconsole
Connecting to Director localhost:9101
1000 OK: 1 bacula-dir Version: 7.0.5 (28 July 2014)
Enter a period to cancel a command.
*label
Automatically selected Catalog: MyCatalog
Using Catalog "MyCatalog"
The defined Storage resources are:
     1: File1
     2: File2
Select Storage resource (1-2): 1
Enter new Volume name: TestVolume001
Defined Pools:
     1: Default
     2: File
     3: Scratch
Select the Pool (1-3): 2
Connecting to Storage daemon File1 at qnap4.jws.local:9103 ...
Sending label command for Volume "TestVolume001" Slot 0 ...
3000 OK label. VolBytes=195 VolABytes=0 VolType=1 Volume="TestVolume001" Device="FileChgr1-Dev1" (/opt/bacula/tapes)
Label command failed for Volume TestVolume001.
Do not forget to mount the drive!!!

 

SD creates the volume properly (as fare as I can see in the fielsystem) but director doesn't recognize it.



Can someone please point me to the right direction how to get it work?



cheers

Holger



xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

bacula-dir.conf

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Director {                            # define myself
  Name = bacula-dir
  DIRport = 9101                # where we listen for UA connections
  QueryFile = "/etc/bacula/scripts/query.sql"
  WorkingDirectory = "/var/lib/bacula"
  PidDirectory = "/var/run"
  Maximum Concurrent Jobs = 20
  Password = "xyz"         # Console password
  Messages = Daemon
}

JobDefs {
  Name = "DefaultJob"
  Type = Backup
  Level = Incremental
  Client = bacula-fd
  FileSet = "Full Set"
  Schedule = "WeeklyCycle"
  Storage = File1
  Messages = Standard
  Pool = File
  SpoolAttributes = yes
  SpoolData = yes
  Priority = 10
  Write Bootstrap = "/var/lib/bacula/working/%c.bsr"
}

Job {
  Name = "BackupCatalog"
  JobDefs = "DefaultJob"
  Level = Full
  FileSet="Catalog"
  Schedule = "WeeklyCycleAfterBackup"
   RunBeforeJob = "/etc/bacula/scripts/make_catalog_backup.pl MyCatalog"
   RunAfterJob  = "/etc/bacula/scripts/delete_catalog_backup"
  Write Bootstrap = "/etc/bacula/working/%n.bsr"
  Priority = 11                   # run after main backup
}

Job {
  Name = "RestoreFiles"
  Type = Restore
  Client= bacula-fd
  Storage = File1
# The FileSet and Pool directives are not used by Restore Jobs
# but must not be removed
  FileSet="Full Set"
  Pool = File
  Messages = Standard
  Where = /nonexistant/path/to/file/archive/dir/bacula-restores
}

Job {
  Name = samba4
  JobDefs = DefaultJob
  Client = samba4-fd
  FileSet = samba4
  Storage = File1
  Messages = Standard
  Client Run Before Job = /root/bin/backups
  Enabled = no
}

# List of files to be backed up
FileSet {
  Name = "Full Set"
  Include {
    Options {
      signature = MD5
    }
    File = /opt/sbin
  }
  Exclude {
    File = /opt/bacula/working
    File = /opt/bacula/tmp
    File = /proc
    File = /tmp
    File = /sys
    File = /.journal
    File = /.fsck
  }
}

FileSet {
  Name = samba4
  Include {
      File = /opt
      File = /srv/home
 File = /srv/profiles
 File = /srv/backup
     Options {
                Signature = MD5
                Compression = GZIP5
        }
  }
}

Schedule {
  Name = "WeeklyCycle"
  Run = Full 1st sun at 23:05
  Run = Differential 2nd-5th sun at 23:05
  Run = Incremental mon-sat at 23:05
}

WeeklyCycle
Schedule {
  Name = "WeeklyCycleAfterBackup"
  Run = Full sun-sat at 23:10
}

FileSet {
  Name = "Catalog"
  Include {
    Options {
      signature = MD5
    }
    File = "/var/lib/bacula/bacula.sql"
  }
}

Client {
  Name = samba4-fd
  Password = "4711"
  Address = samba.local
  FDPort = 9102
  Catalog = MyCatalog
  File Retention = 30 days            # 30 days
  Job Retention = 6 months            # six months
  AutoPrune = yes
}

Storage {
  Name = File1
  Address = qnap.local # N.B. Use a fully qualified name here
  SDPort = 9103
  Password = "123"
  Device = FileChgr1
  Media Type = File1
  Maximum Concurrent Jobs = 10        # run up to 10 jobs a the same time
}

Storage {
  Name = File2
  Address = qnap.local # N.B. Use a fully qualified name here
  SDPort = 9103
  Password = "123"
  Device = FileChgr2
  Media Type = File2
  Maximum Concurrent Jobs = 10        # run up to 10 jobs a the same time
}

Catalog {
  Name = MyCatalog
  dbname = "bacula"; dbuser = "root"; dbpassword = "mysqldb_passwd"
}

address
Messages {
  Name = Standard
  mailcommand = "/usr/sbin/bsmtp -h localhost -f \"\(Bacula\) \<%r\>\" -s \"Bacula: %t %e of %c %l\" ***@jws.eu"
  operatorcommand = "/usr/sbin/bsmtp -h localhost -f \"\(Bacula\) \<%r\>\" -s \"Bacula: Intervention needed for %j\" ***@jws.eu"
  mail = root = all, !skipped
  operator = root = mount
  console = all, !skipped, !saved
  append = "/var/log/bacula/bacula.log" = all, !skipped
  catalog = all
}

Messages {
  Name = Daemon
  mailcommand = "/usr/sbin/bsmtp -h localhost -f \"\(Bacula\) \<%r\>\" -s \"Bacula daemon message\" %r"
  mail = root = all, !skipped
  console = all, !skipped, !saved
  append = "/var/log/bacula/bacula.log" = all, !skipped
}

Pool {
  Name = Default
  Pool Type = Backup
  Recycle = yes                       # Bacula can automatically recycle Volumes
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 365 days         # one year
  Maximum Volume Bytes = 50G          # Limit Volume size to something reasonable
  Maximum Volumes = 100               # Limit number of Volumes in Pool
  Label Format = "Vol-"
}

Pool {
  Name = File
  Pool Type = Backup
  Recycle = yes                       # Bacula can automatically recycle Volumes
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 365 days         # one year
  Maximum Volume Bytes = 50G          # Limit Volume size to something reasonable
  Maximum Volumes = 100               # Limit number of Volumes in Pool
  Label Format = "Vol-"               # Auto label
}

Pool {
  Name = Scratch
  Pool Type = Backup
}

Console {
  Name = bacula-mon
  Password = "xyz"
  CommandACL = status, .status
}

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

bacula-sd.conf

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Storage {                             # definition of myself
  Name = qnap-sd
  SDPort = 9103                  # Director's port
  WorkingDirectory = "/opt/bacula/working"
  Pid Directory = "/opt/var/run"
  Maximum Concurrent Jobs = 20
}

Director {
  Name = bacula-dir
  Password = "xyz"
}

Director {
  Name = bacula-mon
  Password = "123"
  Monitor = yes
}

Autochanger {
  Name = FileChgr1
  Device = FileChgr1-Dev1, FileChgr1-Dev2
  Changer Command = ""
  Changer Device = /dev/null
}

Device {
  Name = FileChgr1-Dev1
  Media Type = File1
  Archive Device = /opt/bacula/tapes
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 5
}

Device {
  Name = FileChgr1-Dev2
  Media Type = File1
  Archive Device = /opt/bacula/tapes
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 5
}

Autochanger {
  Name = FileChgr2
  Device = FileChgr2-Dev1, FileChgr2-Dev2
  Changer Command = ""
  Changer Device = /dev/null
}

Device {
  Name = FileChgr2-Dev1
  Media Type = File2
  Archive Device = /opt/bacula/tapes
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 5
}

Device {
  Name = FileChgr2-Dev2
  Media Type = File2
  Archive Device = /opt/bacula/tapes
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 5
}

Messages {
  Name = Standard
  director = bacula-dir = all
}
Jose Alberto
2017-07-11 14:13:55 UTC
Permalink
Hi.

When i use SD with Disk (SD, USB, NAS, SAN, etc).

I add volumen with the command: add

And i add for example 50 volumen.


Because (i view) the command label only add 1 volumen.

i use Label only when my SD is a Tape Library.


Note: you have 2 Autochanger: FileChgr2 and FileChgr2


You must add volumen you should on the 2 Autochanger.


Sorry for my English.
Post by bacula
Hi all,
my current setup is director on a vm and sd is running on a qnap nas. Everything
went fine runing all daemons on a single virtual machine writing to an nfs
mount of the qnap.
To improve performance in particualr for the bigger jobs we installed
bacula directly on qnap to have the sd running there. Now we got the
follwing problem.
Sent: Mon Jul 10 00:05:19 2017
To: admin
Subject: Bacula: Intervention needed for shares.2017-07-09_23.05.00_13
Auto forwarded by a rule
10-Jul 00:05 qnap4-sd JobId 1: Job shares.2017-07-09_23.05.00_13 is
waiting. Cannot find any appendable volumes.
Storage: "FileChgr1-Dev2" (/opt/bacula/tapes)
Pool: File
Media type: File1
That message never apperead on the single machine setup. The labels were
properly autolabeled.
Nevertheless I tried to label a tape.
Connecting to Director localhost:9101
1000 OK: 1 bacula-dir Version: 7.0.5 (28 July 2014)
Enter a period to cancel a command.
*label
Automatically selected Catalog: MyCatalog
Using Catalog "MyCatalog"
1: File1
2: File2
Select Storage resource (1-2): 1
Enter new Volume name: TestVolume001
1: Default
2: File
3: Scratch
Select the Pool (1-3): 2
Connecting to Storage daemon File1 at qnap4.jws.local:9103 ...
Sending label command for Volume "TestVolume001" Slot 0 ...
3000 OK label. VolBytes=195 VolABytes=0 VolType=1 Volume="TestVolume001"
Device="FileChgr1-Dev1" (/opt/bacula/tapes)
Label command failed for Volume TestVolume001.
Do not forget to mount the drive!!!
SD creates the volume properly (as fare as I can see in the fielsystem)
but director doesn't recognize it.
Can someone please point me to the right direction how to get it work?
cheers
Holger
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
bacula-dir.conf
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Director { # define myself
Name = bacula-dir
DIRport = 9101 # where we listen for UA connections
QueryFile = "/etc/bacula/scripts/query.sql"
WorkingDirectory = "/var/lib/bacula"
PidDirectory = "/var/run"
Maximum Concurrent Jobs = 20
Password = "xyz" # Console password
Messages = Daemon
}
JobDefs {
Name = "DefaultJob"
Type = Backup
Level = Incremental
Client = bacula-fd
FileSet = "Full Set"
Schedule = "WeeklyCycle"
Storage = File1
Messages = Standard
Pool = File
SpoolAttributes = yes
SpoolData = yes
Priority = 10
Write Bootstrap = "/var/lib/bacula/working/%c.bsr"
}
Job {
Name = "BackupCatalog"
JobDefs = "DefaultJob"
Level = Full
FileSet="Catalog"
Schedule = "WeeklyCycleAfterBackup"
RunBeforeJob = "/etc/bacula/scripts/make_catalog_backup.pl MyCatalog"
RunAfterJob = "/etc/bacula/scripts/delete_catalog_backup"
Write Bootstrap = "/etc/bacula/working/%n.bsr"
Priority = 11 # run after main backup
}
Job {
Name = "RestoreFiles"
Type = Restore
Client= bacula-fd
Storage = File1
# The FileSet and Pool directives are not used by Restore Jobs
# but must not be removed
FileSet="Full Set"
Pool = File
Messages = Standard
Where = /nonexistant/path/to/file/archive/dir/bacula-restores
}
Job {
Name = samba4
JobDefs = DefaultJob
Client = samba4-fd
FileSet = samba4
Storage = File1
Messages = Standard
Client Run Before Job = /root/bin/backups
Enabled = no
}
# List of files to be backed up
FileSet {
Name = "Full Set"
Include {
Options {
signature = MD5
}
File = /opt/sbin
}
Exclude {
File = /opt/bacula/working
File = /opt/bacula/tmp
File = /proc
File = /tmp
File = /sys
File = /.journal
File = /.fsck
}
}
FileSet {
Name = samba4
Include {
File = /opt
File = /srv/home
File = /srv/profiles
File = /srv/backup
Options {
Signature = MD5
Compression = GZIP5
}
}
}
Schedule {
Name = "WeeklyCycle"
Run = Full 1st sun at 23:05
Run = Differential 2nd-5th sun at 23:05
Run = Incremental mon-sat at 23:05
}
WeeklyCycle
Schedule {
Name = "WeeklyCycleAfterBackup"
Run = Full sun-sat at 23:10
}
FileSet {
Name = "Catalog"
Include {
Options {
signature = MD5
}
File = "/var/lib/bacula/bacula.sql"
}
}
Client {
Name = samba4-fd
Password = "4711"
Address = samba.local
FDPort = 9102
Catalog = MyCatalog
File Retention = 30 days # 30 days
Job Retention = 6 months # six months
AutoPrune = yes
}
Storage {
Name = File1
Address = qnap.local # N.B. Use a fully qualified name here
SDPort = 9103
Password = "123"
Device = FileChgr1
Media Type = File1
Maximum Concurrent Jobs = 10 # run up to 10 jobs a the same time
}
Storage {
Name = File2
Address = qnap.local # N.B. Use a fully qualified name here
SDPort = 9103
Password = "123"
Device = FileChgr2
Media Type = File2
Maximum Concurrent Jobs = 10 # run up to 10 jobs a the same time
}
Catalog {
Name = MyCatalog
dbname = "bacula"; dbuser = "root"; dbpassword = "mysqldb_passwd"
}
address
Messages {
Name = Standard
mailcommand = "/usr/sbin/bsmtp -h localhost -f \"\(Bacula\) \<%r\>\" -s
operatorcommand = "/usr/sbin/bsmtp -h localhost -f \"\(Bacula\) \<%r\>\"
mail = root = all, !skipped
operator = root = mount
console = all, !skipped, !saved
append = "/var/log/bacula/bacula.log" = all, !skipped
catalog = all
}
Messages {
Name = Daemon
mailcommand = "/usr/sbin/bsmtp -h localhost -f \"\(Bacula\) \<%r\>\" -s
\"Bacula daemon message\" %r"
mail = root = all, !skipped
console = all, !skipped, !saved
append = "/var/log/bacula/bacula.log" = all, !skipped
}
Pool {
Name = Default
Pool Type = Backup
Recycle = yes # Bacula can automatically recycle
Volumes
AutoPrune = yes # Prune expired volumes
Volume Retention = 365 days # one year
Maximum Volume Bytes = 50G # Limit Volume size to something
reasonable
Maximum Volumes = 100 # Limit number of Volumes in Pool
Label Format = "Vol-"
}
Pool {
Name = File
Pool Type = Backup
Recycle = yes # Bacula can automatically recycle
Volumes
AutoPrune = yes # Prune expired volumes
Volume Retention = 365 days # one year
Maximum Volume Bytes = 50G # Limit Volume size to something
reasonable
Maximum Volumes = 100 # Limit number of Volumes in Pool
Label Format = "Vol-" # Auto label
}
Pool {
Name = Scratch
Pool Type = Backup
}
Console {
Name = bacula-mon
Password = "xyz"
CommandACL = status, .status
}
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
bacula-sd.conf
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Storage { # definition of myself
Name = qnap-sd
SDPort = 9103 # Director's port
WorkingDirectory = "/opt/bacula/working"
Pid Directory = "/opt/var/run"
Maximum Concurrent Jobs = 20
}
Director {
Name = bacula-dir
Password = "xyz"
}
Director {
Name = bacula-mon
Password = "123"
Monitor = yes
}
Autochanger {
Name = FileChgr1
Device = FileChgr1-Dev1, FileChgr1-Dev2
Changer Command = ""
Changer Device = /dev/null
}
Device {
Name = FileChgr1-Dev1
Media Type = File1
Archive Device = /opt/bacula/tapes
LabelMedia = yes; # lets Bacula label unlabeled media
Random Access = Yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
Maximum Concurrent Jobs = 5
}
Device {
Name = FileChgr1-Dev2
Media Type = File1
Archive Device = /opt/bacula/tapes
LabelMedia = yes; # lets Bacula label unlabeled media
Random Access = Yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
Maximum Concurrent Jobs = 5
}
Autochanger {
Name = FileChgr2
Device = FileChgr2-Dev1, FileChgr2-Dev2
Changer Command = ""
Changer Device = /dev/null
}
Device {
Name = FileChgr2-Dev1
Media Type = File2
Archive Device = /opt/bacula/tapes
LabelMedia = yes; # lets Bacula label unlabeled media
Random Access = Yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
Maximum Concurrent Jobs = 5
}
Device {
Name = FileChgr2-Dev2
Media Type = File2
Archive Device = /opt/bacula/tapes
LabelMedia = yes; # lets Bacula label unlabeled media
Random Access = Yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
Maximum Concurrent Jobs = 5
}
Messages {
Name = Standard
director = bacula-dir = all
}
------------------------------------------------------------
------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Bacula-users mailing list
https://lists.sourceforge.net/lists/listinfo/bacula-users
--
#############################
# Sistema Operativo: Debian #
# Caracas, Venezuela #
#############################
Kern Sibbald
2017-07-11 15:21:22 UTC
Permalink
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot

Loading...