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

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

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

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

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

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

2 ответа

Решение

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

Это происходит автоматически, если исходная 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;
}

Затем в директории по Азии я создал одно хранилище, которое указывает на это устройство из европы 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
}

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

    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, и вы сможете снова "прочитать" тома (скопированные) и импортировать их в каталог другого местоположения. Чем вы можете восстановить их и на втором сайте;) Таким образом, вы избежите зависимости от первого директора, если что-то пойдет не так.

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

Другие вопросы по тегам