Назад | Перейти на главную страницу

Резервное копирование вне сайта

У меня 2 офиса: одно в Европе, другое в Азии. В каждом месте есть полностью функциональная система Bacula для обработки локальных резервных копий.
Что я хочу сделать, так это скопировать некоторые задания из одного места SD в другое место SD. В идеале, если я могу выполнить резервное копирование в местоположении A, скопировать в местоположение B и восстановить на сервер в местоположении B.
Я понимаю, что начиная с версии 7.0.0 Bacula разрешает резервное копирование с SD на SD. Я думаю, что это та функция, которая мне нужна (инструкция по бакуле)

Bacula версии 7.0 позволяет переносить задания копирования и миграции с SD на SD. Это позволяет то, что обычно называют репликацией или переносом резервных копий Bacula за пределы площадки. Это происходит автоматически, если исходная SD и конечная SD для задания копирования или миграции отличаются.

Проблема в том, что я не умею ставить такие задания. Я не нашел никаких руководств по этому поводу.
Моя первоначальная мысль заключалась в том, что мне нужно использовать задание копирования, но затем из того же руководства:

Миграция реализована только для одного демона хранилища. Вы не можете читать на одном демоне хранилища и писать на другом.

это именно то, что я хотел сделать ...
Есть идеи, как я могу этого добиться?

Я нашел (а) решение ...
похоже, что ключ здесь:

Это происходит автоматически, если исходная SD и конечная SD для задания копирования или миграции отличаются.

Моей целью было скопировать несколько резервных копий из Азии в Европу. Для этого я создал устройство в Европе SD:

Device {
  Name = asiaBackup
  Media Type = File1
  Device Type = File
  Archive Device = /bacula/asia
  LabelMedia = yes
  Random Access = Yes;
  AutomaticMount = yes;
  RemovableMedia = no;
  AlwaysOpen = no;
  Maximum Concurrent Jobs = 40;
  Autochanger = no;
}

Затем в asia Director я создал одно хранилище, которое указывает на это устройство с европейской SD.

Storage {
  Name = europeStorage
  Address = myEuropeDomain.com
  SDPort = 9103
  Password = "blaBlaBla...."
  Device = asiaBackup
  Media Type = File1
  Maximum Concurrent Jobs = 5
  Heartbeat Interval = 10
}

/* dbPool = the pool where the backup sits locally */
Pool {
  Name = dbPool
  Label Format = "dbBackup"
  Pool Type = Backup
  Recycle = yes                       
  AutoPrune = yes                     
  Volume Retention = 365 days         
  Maximum Volume Bytes = 5G          
  Maximum Volumes = 1000             
  Label Format = "dbVol-"            
  Recycle Oldest Volume = yes
  Next pool = "europeBackupPool"
  Storage = dbStorage
}


/* europeBackupPool = the destination pool of copy job */
Pool {
  Name = europeBackupPool
  Label Format = "dbBackup"
  Pool Type = Backup
  Recycle = yes                       
  AutoPrune = yes                     
  Volume Retention = 365 days         
  Maximum Volume Bytes = 5G          
  Maximum Volumes = 1000             
  Label Format = "euBKVol-"          
  Recycle Oldest Volume = yes
  Storage = europeStorage
}

и это задание на копирование

Job {
    Name = backupToEurope
    Type = Copy
    Pool = dbPool
    Selection Type = PoolUncopiedJobs
    Schedule = "dailyFullSchedule"
    Client = "none"
    FileSet = "none"
    Messages = Standard
}

Обратите внимание на директиву «Следующий пул» из исходного пула, поскольку она указывает пул, в который будут скопированы задания.
После этого при запуске резервного копирования я получаю:

    Run Copy job
JobName:       backupToEurope
Bootstrap:     *None*
Client:        none
FileSet:       none
Pool:          dbPool (From Job resource)
NextPool:      europeBackupPool (From Job Pool's NextPool resource)
Read Storage:  dbStorage (From Pool resource)
Write Storage: europeStorage (From Job Pool's NextPool resource)
JobId:         *None*
When:          2015-04-01 18:44:27
Catalog:       MyCatalog
Priority:      10

Обратной стороной здесь является то, что если вы хотите восстановить эту резервную копию, вам придется делать это у директора по Азии, потому что директор по Европе ничего не знает об этой работе ...

Просто чтобы добавить одну вещь. Попробуй использовать bscan и вы можете снова «прочитать» Тома (скопированные) и импортировать их в Каталог другого места. Затем вы можете восстановить их и на втором сайте;) таким образом избегая зависимости от первого директора, в случае, если что-то пойдет не так.

Надеюсь, поможет. Ура, Филипе