Вопрос по бакуле

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Упси
проходил мимо

Вопрос по бакуле

Непрочитанное сообщение Упси » 2009-03-12 10:28:20

Добрый день, настроил бакулу, вроде работае, но мне понадобилось ограничить место под бэкапы, создал следующий пул

Код: Выделить всё

Pool {
  Name = main-pool
  Pool Type = Backup
  Recycle = yes
  AutoPrune = yes
  Volume Retention = 365 days
  Maximum Volume Bytes = 200000000000 #200gb
}
Но когда место подошло к концу, и поидее он должен был стирать старые бэкапы чтобы записывать новые, консоль в статусе выдает следующее

Код: Выделить всё

172   Full   название_задачи is waiting for an appendable volume
И за этой задачей построились другие ждущие выполнения, подскажите как надо модифицировать конфиг, чтобы он нормально перезаписывал.

Вот вырезки из конфига директора бакулы

Код: Выделить всё


Director {
  Name = backup-dir
  DIRport = 9101
  QueryFile = "/usr/local/share/bacula/query.sql"
  WorkingDirectory = "/var/db/bacula"
  PidDirectory = "/var/run"
  Maximum Concurrent Jobs = 1
  Password = "..."
  Messages = Daemon
}


Job {
  Name = "main"
  Type = Backup
  Level = Full
  Client = gc
  FileSet = "main"
  Schedule = "MainCycle"
  Storage = backup-sd
  Messages = Daemon
  Pool = main-pool
  Priority = 1
  Write Bootstrap = "/var/db/bacula/main.bsr"
}

FileSet {
    Name = "main"
    Include {
        Options {
              signature = MD5
              compression = GZIP
                }
         File = T:/home
            }
}

Client {
  Name = gc
  Address = 10.22.33.100
  FDPort = 9102
  Catalog = "default"
  Password = "..."
  File Retention = 30 days
  Job Retention = 3 months
  AutoPrune = yes
}

Storage {
  Name = backup-sd
  Address = 10.22.33.120
  SDPort = 9103
  Password = "..."
  Device = backup-dev
  Media Type = File
}

Schedule {
  Name = "MainCycle"
  Run = Full 1st-5th sun at 0:40
  Run = Differential mon-sat at 0:40
}
Catalog {
  Name = default
  dbname = "bacula"; dbuser = "bacula"; dbpassword = ""
}

Messages {
  Name = Daemon
  syslog = all
}

Pool {
  Name = main-pool
  Pool Type = Backup
  Recycle = yes
  AutoPrune = yes
  Volume Retention = 365 days
  Maximum Volume Bytes = 200000000000 #200gb
}
Pool {
  Name = Scratch
  Pool Type = Backup
}

Вот конфиг стораджа

Код: Выделить всё

Storage {
  Name = backup-sd
  SDPort = 9103

  WorkingDirectory = "/var/db/bacula"
  Pid Directory = "/var/run"
  Maximum Concurrent Jobs = 20
  Heartbeat Interval = 30 sec
}

Director {
  Name = backup-dir
  Password = "..."
}

Device {
  Name = backup-dev
  Media Type = File
  Archive Device = /usr/local/backup
  LabelMedia = yes
  Random Access = Yes;
  AutomaticMount = yes;
  RemovableMedia = no;
}

Messages {
  Name = Standard
  director = backup-dir = all
}

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Упси
проходил мимо

Re: Вопрос по бакуле

Непрочитанное сообщение Упси » 2009-03-12 10:36:27

Вот что выдает list media
Изображение


Упси
проходил мимо

Re: Вопрос по бакуле

Непрочитанное сообщение Упси » 2009-03-12 10:59:05

Вполне возможно я неокрректно ограничил место занимаемое бэкапами на рейде введя Maximum volume Bytes и он закрыл просто-напросто этот том вместо того чтобы перезаписывать в него...но другой величины в мануале я не нашёл для ограничения места.
З.Ы. В статусе директора все задачи которые были присвоены этому тому, теперь его не видят и пишет Volume: *unknown*

Помогите)

Упси
проходил мимо

Re: Вопрос по бакуле

Непрочитанное сообщение Упси » 2009-03-13 8:43:11

Ап, очень актуально.

princeps
майор
Сообщения: 2684
Зарегистрирован: 2007-09-25 10:20:59
Откуда: Сочи, Москва
Контактная информация:

Re: Вопрос по бакуле

Непрочитанное сообщение princeps » 2009-03-13 9:25:29

Может быть ограничивать в конфиге файл-сервера? Вот из документации:
Maximum Volume Size = size
No more than size bytes will be written onto a given volume on the archive device. This directive is used mainly in testing Bacula to simulate a small Volume. It can also be useful if you wish to limit the size of a File Volume to say less than 2GB of data. In some rare cases of really antiquated tape drives that do not properly indicate when the end of a tape is reached during writing (though I have read about such drives, I have never personally encountered one). Please note, this directive is deprecated (being phased out) in favor of the Maximum Volume Bytes defined in the Director's configuration file.

Maximum File Size = size
No more than size bytes will be written into a given logical file on the volume. Once this size is reached, an end of file mark is written on the volume and subsequent data are written into the next file. Breaking long sequences of data blocks with file marks permits quicker positioning to the start of a given stream of data and can improve recovery from read errors on the volume. The default is one Gigabyte. This directive creates EOF marks only on tape media. However, regardless of the medium type (tape, disk, DVD, ...) each time a the Maximum File Size is exceeded, a record is put into the catalog database that permits seeking to that position on the medium for restore operations. If you set this to a small value (e.g. 1MB), you will generate lots of database records (JobMedia) and may significantly increase CPU/disk overhead.

Note, this directive does not limit the size of Volumes that Bacula will create regardless of whether they are tape or disk volumes. It changes only the number of EOF marks on a tape and the number of block positioning records (see below) that are generated. If you want to limit the size of all Volumes for a particular device, use the Maximum Volume Size directive (above), or use the Maximum Volume Bytes directive in the Director's Pool resource, which does the same thing but on a Pool (Volume) basis.
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru

Упси
проходил мимо

Re: Вопрос по бакуле

Непрочитанное сообщение Упси » 2009-03-13 9:46:33

убежал тестить )

Упси
проходил мимо

Re: Вопрос по бакуле

Непрочитанное сообщение Упси » 2009-03-13 9:54:15

Хм я думаю все таки проблема не в этом, вот вырезка из того же мануала

Код: Выделить всё

Please note, this directive is deprecated (being phased out) in favor of the Maximum Volume Bytes defined in the Director's configuration file.
Да и у меня 2 пула - первый 200 гигов а второй 300, а в конфиге стораджа описывается просто девайс и если поставить ограничение по размеру то вообще не понятно к чему оно приментися...к суммарному размеру пуллов? или ещё к чему-то?

Упси
проходил мимо

Re: Вопрос по бакуле

Непрочитанное сообщение Упси » 2009-03-13 14:52:45

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

princeps
майор
Сообщения: 2684
Зарегистрирован: 2007-09-25 10:20:59
Откуда: Сочи, Москва
Контактная информация:

Re: Вопрос по бакуле

Непрочитанное сообщение princeps » 2009-03-13 15:35:08

Сделать раздел, на который ты бэкапишь, нужного тебе размера. Тогда, засрав его полностью, бакула начнет удалять старые бэкапы :) Но это не совсем правильный подход.
Упси писал(а):Да и у меня 2 пула - первый 200 гигов а второй 300, а в конфиге стораджа описывается просто девайс и если поставить ограничение по размеру то вообще не понятно к чему оно приментися
Ты все-таки попробовал так сделать?
Как я понимаю, пул - это набор носителей, т.е. в него могут входить несколько кассет для стримера или несколько dvd-дисков. Я делаю бэкап на винт и у меня получается, что пул содержит всего один носитель - дисковый раздел. Может твоя проблема в том, что размер пула определен меньше размера носителя?
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru

Упси
проходил мимо

Re: Вопрос по бакуле

Непрочитанное сообщение Упси » 2009-03-13 15:37:57

хм..даже если так то это не отменяет вопроса как можно сделать так, чтобы ограничить размер бэкапов...

princeps
майор
Сообщения: 2684
Зарегистрирован: 2007-09-25 10:20:59
Откуда: Сочи, Москва
Контактная информация:

Re: Вопрос по бакуле

Непрочитанное сообщение princeps » 2009-03-13 16:26:22

все-таки попробовал или нет?
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru

Упси
проходил мимо

Re: Вопрос по бакуле

Непрочитанное сообщение Упси » 2009-03-13 16:39:24

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

Код: Выделить всё

Storage {
  Name = backup-sd
  SDPort = 9103

  WorkingDirectory = "/var/db/bacula"
  Pid Directory = "/var/run"
  Maximum Concurrent Jobs = 20
  Heartbeat Interval = 30 sec
}

Director {
  Name = backup-dir
  Password = "J4*21NANa3bf#(fAH@&AJ#${Wbya3p'4hy389p-ya"
}

Device {
  Name = backup-dev
  Media Type = File
  Archive Device = /usr/local/storage/backup
  LabelMedia = yes
  Random Access = Yes;
  AutomaticMount = yes;
  RemovableMedia = no;
  Maximum Volume Size = 200000000000
}

Messages {
  Name = Standard
  director = backup-dir = all
}
Ты предлагаешь ограничить в девайсе место суммой пулов в конфиге директора? или убрать ограничение в директоре и оставить только в конфиге стораджа?

Упси
проходил мимо

Re: Вопрос по бакуле

Непрочитанное сообщение Упси » 2009-03-13 16:42:31

Уточню...у меня на данный момент 2 пула есть

Код: Выделить всё

Pool {
  Name = main-pool
  Pool Type = Backup
  Recycle = yes
  AutoPrune = yes
  Volume Retention = 365 days
  Maximum Volume Bytes = 200000000000 #200gb
}
Pool {
  Name = home-pool
  Pool Type = Backup
  Recycle = yes
  AutoPrune = yes
  Volume Retention = 365 days
  Maximum Volume Bytes = 300000000000 #300gb
}
Ты предлагаешь просто вставить в конфиг стораджа ограничение в 500 гб и оставить байты в пулах? или убрать ограничение в пулах и оставить только в конфиге стораджа?

princeps
майор
Сообщения: 2684
Зарегистрирован: 2007-09-25 10:20:59
Откуда: Сочи, Москва
Контактная информация:

Re: Вопрос по бакуле

Непрочитанное сообщение princeps » 2009-03-13 16:48:08

Есть такое понятие, как volume или том по-русски. Один или несколько томов составляют пул. У тебя, похоже, получается, что тома больше, чем пул, может бакула и тупит из-за этого. Я предлагаю ограничить размер тома, а не пула.
Упси писал(а):или убрать ограничение в пулах и оставить только в конфиге стораджа?
Не знаю, попробуй и так, и так.
И надо label еще раз сделать. Если ты не размечал тома после того, как вписал ограничения на размер тома в пуле, то проблема может быть в этом.
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru

Упси
проходил мимо

Re: Вопрос по бакуле

Непрочитанное сообщение Упси » 2009-03-13 17:01:08

Если в пул входит несколько томов, то что будет если написать ограничение тома в конфиге стораджа? тогда вообще какая то чуш будет... если писать размер тома в сторадже таким же как конфиг пула...но пула то у нас два..к какому конкретно пулу будет относится это ограничение тома? к обоим? а что если мне надо разное колличества места под пулы ограничить...

Аватара пользователя
LizardOfOzz
сержант
Сообщения: 165
Зарегистрирован: 2009-01-06 13:15:20
Откуда: Станция Восток
Контактная информация:

Re: Вопрос по бакуле

Непрочитанное сообщение LizardOfOzz » 2009-03-14 1:39:13

Я так понимаю, для нормальной работы Бакула не должна успевать использовать всё выделенное место за период "Volume Retention = 365 days".
Выход - либо увеличивать пулы, либо уменьшать срок хранения бекапов.