Usando robôs com múltiplos drives gravando simultaneamente [Using autochangers with multiple drives writing at the same time]
Posted by admin on janeiro 17th, 2010

Depois de tudo, não foi necessário criar duas pools. Consegui utilizar dois drives simultâneamente (numa mesma pool) – com isso os backups estão mais rápidos. Configurei a próxima “flag” como “*no*”, no recurso JobDefs (bacula-dir.conf):
Prefer Mounted Volumes = <yes|no>
“Se a diretiva “Prefer Mounted Volumes” (Preferir Volumes Montados) estiver em “yes” (default yes), o Storage daemon é solicitado para escolher volumes já montados nos drives de fita, em detrimento a volumes que não estejam montados. Isso significa que os “jobs” tentarão escrever no mesmo Volume (desde que o Volume seja correto, ou seja, pertença à “pool” correta, para aquele “job”). Se nenhum Volume adequado estiver disponÃvel, ele escolherá o primeiro drive. Observe que any Volume que for montado será considerado valido para os outros “jobs”. Se múltiplos Jobs começam ao mesmo tempo, todos eles irão preferir múltiplos volumes. Se a diretiva escolhida é *no*, o “Storage daemon” vai preferir um drive não utilizado. Escolher “no” para “Prefer Mounted Volumes” pode ser útil no uso de autochangers com múltiplos drives e que preferem maximizar a taxa de transferência para backup, a custa de mais volumes e drives. Isso significa que o “job” irá escolher um drive não utilizado, em detrimento de um drive em uso.”
Fonte: bacula.org documentation.
After all, it was not necessary creating two pools. I’ve managed to use both drivers at same time (and a single pool) – backups are really faster now. I set up the following flag, as “*no*”, in the JobDefs resource (bacula-dir.conf):
*”Prefer Mounted Volumes = <yes|no>* If the Prefer Mounted Volumes directive is set to *yes* (default yes), the Storage daemon is requested to select either an Autochanger or a drive with a valid Volume already mounted in preference to a drive that is not ready. This means that all jobs will attempt to append to the same Volume (providing the Volume is appropriate — right Pool, … for that job). If no drive with a suitable Volume is available, it will select the first available drive. Note, any Volume that has been requested to be mounted, will be considered valid as a mounted volume by another job. This if multiple jobs start at the same time and they all prefer mounted volumes, the first job will request the mount, and the other jobs will use the same volume. If the directive is set to *no*, the Storage daemon will prefer finding an unused drive, otherwise, each job started will append to the same Volume (assuming the Pool is the same for all jobs). Setting Prefer Mounted Volumes to no can be useful for those sites with multiple drive autochangers that prefer to maximize backup throughput at the expense of using additional drives and Volumes. This means that the job will prefer to use an unused drive rather than use a drive that is already in use.”
Source: bacula.org documentation.
























janeiro 19th, 2011 at 13:41
Eu poderia fazer o mesmo com FileStorage sem autochanger?
janeiro 20th, 2011 at 8:54
Daniel,
Se o hd for removÃvel (e o cliente desejar remover), pode usar o script sata-changer.
Caso contrário, muito mais prático trabalhar com um device por hd.
Abraços,
Heitor Faria
junho 8th, 2011 at 8:58
Heitor, como vai?
Estou implementando uma estrutura de backup com bacula e uma library HP MSL-4048 de 48 slots e 2 drives LTO4, o bacula funciona bem com essa library mas não consigo colocar 2 jobs pra rodarem simultaneamente gravando nos dois drives, nem mesmo setando o parâmetro acima para “no”, setei também o parametro “Max Concurrent Jobs” para 20 em todos os clientes, director e storage daemon, mas mesmo assim o bacula sempre usa apenas 1 drive, mesmo quando os dois drives estão com volumes, desmontando a fita do outro drive e montando no drive escolhido, nunca usa os dois. Existe mais alguma configuração além dos parametros “Prefer Mounted Volumes” e Max Concurrent Jobs”?
Agradeço desde já,
Abraço.
junho 8th, 2011 at 11:00
Caro Adriano,
A opção prefer mounted volumes = no deveria ser suficiente.
O que pode acontecer é de que não há outro volume disponÃvel para a gravação, além do primeiro em uso (ex.: a retenção ainda não expirou).
Abraços!
junho 8th, 2011 at 12:27
Caro Heitor, Obrigado pela resposta.
No meu caso testei com jobs que gravam no mesmo pool e com outros que gravam em pools diferentes, um dos pools possue duas fitas em “Append” e outro possui 5. Realmente é estranho, pois também pensei que a opção “Prefer Mounted Volumes = no” seria suficiente, será algum bug? :O
Estou usando a versão 5.0.3 x86_64 em CentOS 5 o banco é postgresql.
Abraços.
junho 8th, 2011 at 12:34
Os volumes precisam estar na mesma pool. Não adianta se estiverem numa pool diferente.
julho 29th, 2011 at 16:40
se eu tiver uma fita com label semanal-2011-7-3 essa fita tem capacidade de 300 giga, meu total de jobs semanais tem um total de 500 giga, ou seja precisaria de 2 fitas. como faço para usar a segunda fita quando a primeira lotar? possuo um robô com 2 drivers os 2 drivers estao configurados no bacula.
agosto 10th, 2011 at 11:51
Geralmente esse processo é automático.
A segunda fita só precisa estar / ser reciclada.
Abraços!