LINUX.ORG.RU
ФорумAdmin

Bacula настройка

 


0

1

Здравствуйте.

Есть Storage бакулы = bacula-sd.

Подскажите, где нужны настройки, чтобы один клиент делал бекап, например, в папку /opt/bacula/archive1/ , а другой клиент в папку /opt/bacula/archive2/ ?

Предполагаю, что нужно создавать разные девайсы, но как их к клиентам цеплять..



Последнее исправление: cetjs2 (всего исправлений: 1)

делаешь две секции Storage с разными девайсами, создаешь два Job, где указываешь какой клиент на какой девайс пишет и всё готово.

v9lij ★★★★★
()

Вот тебе пример bacula-sd.conf:

Storage {
  Name = backup-sd
  SDPort = 9103
  WorkingDirectory = "/var/db/bacula"
  Pid Directory = "/var/run"
  Maximum Concurrent Jobs = 50
  Heartbeat Interval = 30 sec
}

Director {
  Name = director_name.com.ua
  Password = "yourpass"
}

Messages {
  Name = Daemon
  director = director_name.com.ua = all, !skipped, !saved, !restored
  append = "/var/log/bacula.log" = all, !skipped, !saved, !restored
}

#your_job_name
Device {
  Name = backup-1
  Media Type = File
  Archive Device = /opt/bacula/archive1
  LabelMedia = yes;
  Random Access = yes;
  AutomaticMount = yes;
  RemovableMedia = no;
}
Device {
  Name = backup-2
  Media Type = File
  Archive Device = /opt/bacula/archive2
  LabelMedia = yes;
  Random Access = yes;
  AutomaticMount = yes;
  RemovableMedia = no;
}

Thelli
()
Ответ на: комментарий от Thelli

Вот самое интересное, как правильно device в Job прописать?

У меня ругаеться:

Config error: Keyword «Device» not permitted in this resource

Вот так прописываю:

Job {

Name = «BackupLdap»

Type = Backup

Level = Full

Client = ldap

Device = ldap

FileSet = «Full ldap»

Schedule = «WeeklyCycle»

Storage = bacula-sd

Messages = Standard

Pool = Default

Full Backup Pool = Full-Pool

Differential Backup Pool = Diff-Pool

Priority = 10

Write Bootstrap = «/opt/bacula/working/%c.bsr»

}

aidar5
() автор топика
Ответ на: комментарий от aidar5

Ты job пытаешься в bacula-sd.conf прописать чтоль?

v9lij ★★★★★
()

в директоре:

Storage {
 Name = server-backup
 Address = 
 SDPort = 
 Password = 
 Device = FileStorage_sd
 Media Type = 
 Maximum Concurrent Jobs = 
}

Job {
 Name = backup
 Type = 
 Level = 
 Client = 
 FileSet= 
 Storage = server-backup
 Pool = 
 Messages = 
 Schedule = 
 Maximum Concurrent Jobs =
}
в sd
Storage {
  Name = server-backup
  SDPort = 
  WorkingDirectory = 
  Pid Directory = 
  SDAddress = 
  Maximum Concurrent Jobs =
}
Device {
  Name = FileStorage_sd
  Media Type = 
  Archive Device =
  LabelMedia = 
  Random Access = 
  AutomaticMount = 
  RemovableMedia = 
  AlwaysOpen =
}

v9lij ★★★★★
()
Ответ на: комментарий от aidar5

Ты прописал кучку директив, но не указал что есть что. Пример job в bacula-dir.conf

Job {
  Name = "BackupLdap"
  Type = Backup
  Level = Incremental
  Client = BackupLdap.com
  FileSet = "ldap"
  Schedule = "BackupLdap"
  Messages = Daemon
  Pool = BackupLdap-pool-1
  Priority = 10
  Allow Duplicate Jobs = no
  Cancel Queued Duplicates = yes
  Cancel Running Duplicates = no
}
FileSet {
  Name = "BackupLdap"
  Include {
    Options {
      signature = MD5
    }
    Options {
      Exclude = yes
      wildFile = "/var/lib/mysql/information_schema"
          }
    File = /var/lib
  }
}
Pool {
  Catalog = BackupLdap
  Name = BackupLdap-pool-1
  Pool Type = Backup
  Recycle = yes
  AutoPrune = yes
  Volume Retention = 20 days
  Recycle Oldest Volume = yes
  Purge Oldest Volume = yes
  Action On Purge = Truncate
  Maximum Volume Jobs=1
  Maximum Volumes = 20
  Label Format = "BackupLdap_1-"
  Storage = BackupLdap_1-1
}
Pool {
  Catalog = BackupLdap
  Name = BackupLdap-pool-2
  Pool Type = Backup
  Recycle = yes
  AutoPrune = yes
  Volume Retention = 20 days
  Recycle Oldest Volume = yes
  Purge Oldest Volume = yes
  Action On Purge = Truncate
  Maximum Volume Jobs=1
  Maximum Volumes = 2
  Label Format = "BackupLdap_2-"
  Storage = BackupLdap_1-2
}
Client {
  Name = BackupLdap.com
  Address = 192.168.1.1 #или localhost
  FDPort = 9102
  Catalog = BackupLdap
  Password = "yourpass"
  AutoPrune = yes
  Maximum Concurrent Jobs = 1
}
Storage {
  Name = BackupLdap_1-1
  Address = 192.168.1.2 #это там, где слушает bacula-sd
  SDPort = 9103
  Password = "yourpass"
  Device = BackupLdap_1-1
  Media Type = File
  Maximum Concurrent Jobs = 1
}
Storage {
  Name = BackupLdap_1-2
  Address = 192.168.1.2
  SDPort = 9103
  Password = "yourpass"
  Device = BackupLdap_1-2
  Media Type = File
  Maximum Concurrent Jobs = 1
}
Schedule {
  Name = "BackupLdap"
  Run = Level=Full Pool=BackupLdap-pool-2 1st sat at 00:00
  Run = Level=Full Pool=BackupLdap-pool-2 3rd sat at 00:00
  Run = Level=Incremental Pool=BackupLdap-pool-1 mon-fri at 00:00
}
Thelli
()
Ответ на: комментарий от Thelli

В последнем твоем примере указал в bacula-dir.conf два storage.

Как ты эти два стореджа прописал в bacula-sd.conf ???

anonymous
()
Ответ на: комментарий от aidar5

К клиенту - это имеется ввиду bacula-fd или что?
Если fd, то там так:

Director {
  Name = bacula-dir_host_name (BackupLdap или что там у тебя)
  Password = "yourpass"
}

FileDaemon {
  Name = client_name #сервер где крутится база лдап-а
  FDport = 9102
  WorkingDirectory = /var/db/bacula
  Pid Directory = /var/run
  Maximum Concurrent Jobs = 10
}

Messages {
  Name = Standard
  director = bacula-dir_host_name = all, !skipped, !saved, !restored
}
Смотри что у тебя в логе. Демон bacula-dir запросто может не запускаться из-за ошибок таблиц в созданной постгресной базе.

Thelli
()
Ответ на: комментарий от anonymous

Сторедж - это директива, в которой я описываю девайс, куда будут складываться бэкапы. У меня два пула и на каждый выделено свой девайс, отдельная директива storage для каждого пула в dir.conf.
В sd.conf я указываю две директивы Device, обозначаю каждую для своего job_name и указываю для каждой из них Archive Device, будь то /opt/bacula/archive1 или /opt/bacula/archive2
Пример bacula-sd.conf был выше

Thelli
()
Ответ на: комментарий от Thelli

Все, разобрался наконец.

В dir.conf создаю 2 стродерджа с соответствующими девайсами.

В sd.conf создаю сторедж и прописываю через запятую

Name = storadge-1, storadge-2

Плюс создаю два девайса с нужными путями.

Всем большое спасибо!

aidar5
() автор топика
Ответ на: комментарий от aidar5

В sd.conf укажи два Device для каждого из Name, а то начнутся непонятки при run job=. Ведь ты для одного и того же Name указываешь два разных девайса. Сделай так:
Для backup-1 девайс archive1, для backup-2 - archive-2
Кусок конфига sd.conf

 
Device {
  Name = backup-1
  Media Type = File
  Archive Device = /opt/bacula/archive1
  LabelMedia = yes;
  Random Access = yes;
  AutomaticMount = yes;
  RemovableMedia = no;
}
Device {
  Name = backup-2
  Media Type = File
  Archive Device = /opt/bacula/archive2 
...

Thelli
()
Ответ на: комментарий от Thelli

У меня сейчас примерно такой конфиг sd.conf

Storage {

Name = backup-1, backup-2

}

Device {

Name = backup-1

Archive Directory = /opt/archive1

}

Device {

Name = backup-2

Archive Directory = /opt/archive2

}

Так имеешь ввиду?

aidar5
() автор топика
Ответ на: комментарий от aidar5

Ну, на счет девайсов, то да, разделение есть.
Без этого не работает?

Storage {
Name = backup-1, backup-2
}
В sd.conf можно обозначить директиву Storage Name = backup-sd, например. Опять же, чтобы сказать наверняка, что там и как, то надо видеть полностью конфиги dir и sd. Хотя, если работает и нету глюков в создании/восстановлении, то можешь не заморачиваться.

Thelli
()
Ответ на: комментарий от Thelli

Вроде работает. Правда самого смущает такая запись. Но если создам 2 стореджа отдельно, то посылает. По другому как сделать хз..

В конфигах ничего особенного, стандартые, за исключением ссылок в dir.conf для удобства ( типа @/etc/bacula/conf/ldap.conf )

aidar5
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.