Mover fitas de um pool Bacula após erro de mídia

3

Recentemente, encontramos uma situação em que tínhamos 3 volumes em um estado Error que entupiam nosso conjunto "Padrão".

Temos vários pools de mídia para diferentes propósitos e, portanto, temos a diretiva Maximum Volumes em vigor para nos tornarmos cientes dos problemas (por exemplo, este problema, aumento súbito do volume de dados, etc.). / p>

Meu Default pool é:

Pool { 
  Name = Default
  Pool Type = Backup
  Recycle = yes
  Recycle Oldest Volume = yes
  RecyclePool = Scratch
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 60 days
  Maximum Volumes = 35
  Cleaning Prefix = "CLN"
} 

Os parâmetros de retenção de trabalho foram definidos de forma que não poderíamos limpar uma fita ou adicionar outra ao pool:

17-Mar 23:05 server8-dir JobId 10652: Start Backup JobId 10652, Job=server1.2012-03-17_23.05.00_57
17-Mar 23:05 server8-dir JobId 10652: Warning: Unable add Scratch Volume, Pool "Default" full MaxVols=35
17-Mar 23:05 server8-dir JobId 10652: Pruning oldest volume "000026L2"
17-Mar 23:05 server8-dir JobId 10652: Using Device "TS3200-1a"
17-Mar 23:05 server8-dir JobId 10652: Warning: Unable add Scratch Volume, Pool "Default" full MaxVols=35
17-Mar 23:05 server8-dir JobId 10652: Pruning oldest volume "000026L2"
17-Mar 23:05 server8-sd JobId 10652: Job server1.2012-03-17_23.05.00_57 is waiting. Cannot find any appendable volumes.
Please use the "label" command to create a new Volume for:
    Storage:      "TS3200-1a" (/dev/nst0)
    Pool:         Default
    Media type:   LTO3

Existe uma maneira de dizer ao Bacula para mover automaticamente qualquer Error ed volumes de um pool para que eles não ocupem espaço? Um deles esteve lá por um tempo (desde 2011-08-20 00:10:34 ) então eu não acho que ele teria sido removido.

A ênfase aqui é que isso aconteça automaticamente - acho que faz sentido que um volume seja movido para fora do conjunto quando RecyclePool está definido.

(background: nós mantemos o Bacula para vários clientes diferentes e tentamos fazer as coisas acontecerem o mais automaticamente possível. Embora isso não seja um problema massivo , talvez isso simplesmente não exista ainda e deve ser apresentado como um pedido de recurso.)

    
por MikeyB 19.03.2012 / 15:01

1 resposta

4

O melhor do Bacula é que existem várias maneiras de resolver qualquer problema que você possa encontrar.
Aqui estão algumas opções para esta situação:

Opção 1:
Exclua os volumes com erros definitivos ( delete volume no console bacula e selecione os que você deseja remover). Esta é a minha escolha se você tiver certeza de que o volume está ruim / defeituoso - Não há sentido em mantê-lo em qualquer lugar se você não puder usá-lo. A exclusão de volume é uma operação de catálogo que não afeta a fita, portanto, caso você precise recuperar dados dela, você sempre pode usar bscan para criar entradas de catálogo e recuperar tudo o que puder ser lido.

Opção 2:
Livre-se da diretiva Maximum Volumes em seu pool.
Isso garante que você nunca terá que lidar com esse problema novamente, mas também significa que você pode criar um número infinito de volumes se você estragar um comando de etiqueta. (Eu geralmente não defino Maximum Volumes em meus pools - Ele adiciona novas fitas quando o tamanho do backup fica mais irritante do que o necessário).

Opção 3:
Renomeie o volume ( relabel no console do bacula e selecione o (s) volume (s) que você deseja mover). Observe que o volume deve ser marcado como Purged ou Recycled antes que você possa reclassificá-lo - Todas elas são operações de catálogo (elas não precisam / afetam a fita / volume real) para que você possa executar purge volume on os volumes com falha e, em seguida, relabel deles em outro conjunto, se assim desejar.
( purge volume pode sobrescrever / ignorar parâmetros de retenção de trabalho - ou, mais precisamente, WILL elimina o volume, independentemente de qualquer parâmetro de retenção. É um nuke tático e deve ser tratado com cuidado.)

Opção 4:
Eu tenho assumido que estamos falando de fitas reais - se estes são arquivos de fita virtuais e o estado de "erro" é de algum incidente transitório anterior, você pode usar update volume para limpar o erro (configure-o para qualquer status de erro). Você obviamente só deve fazer isso se tiver certeza de que o volume em questão é bom

    
por 19.03.2012 / 16:54

Tags