Статья: система резервного копирования bacula на FreeBSD

Проблемы с установкой, настройкой и работой системных и сетевых программ.

Модераторы: GRooVE, alexco

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
princeps
майор
Сообщения: 2684
Зарегистрирован: 2007-09-25 10:20:59
Откуда: Сочи, Москва
Контактная информация:

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение princeps » 2009-04-27 18:55:25

напиши про сетевую систему отключения серверов в случае сбоя питания. Вроде нету такого на сайте
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru

Хостинговая компания 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/

Аватара пользователя
Raven2000
-=_UNIX_=-
Сообщения: 4425
Зарегистрирован: 2006-10-29 17:59:13
Откуда: Там, где нас нет.
Контактная информация:

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение Raven2000 » 2009-04-27 19:40:57

о и то верно. А есть такие на примете в плане название софтинки?
Если хочешь разобраться... Так иди и разбирайся!
[ igNix.ru | Технология жизни - технологии будущего ] [ Forum.igNix.ru ]

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

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение princeps » 2009-04-28 8:30:35

NUT. Я сам было начал ставить и записывать, но у меня она что-то не хочет видеть бесперебойник. Для бесперебойников apc (а серверный бесперебойник, как известно, должен быть apc :) ) есть apcupsd. У Лиса, кажется, было даже что-то про его настройку, но на одну машину.
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru

Аватара пользователя
Raven2000
-=_UNIX_=-
Сообщения: 4425
Зарегистрирован: 2006-10-29 17:59:13
Откуда: Там, где нас нет.
Контактная информация:

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение Raven2000 » 2009-04-28 9:20:22

working on a article...
Если хочешь разобраться... Так иди и разбирайся!
[ igNix.ru | Технология жизни - технологии будущего ] [ Forum.igNix.ru ]

гость
проходил мимо

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение гость » 2009-06-22 8:24:01

Всем привет, подскажите плиз, как настроить пул, так что бы он либо очищался каждые 30 дней и заного писал и\или что б происходило , как например у ротации логов, пишет например 15 дней, потом самый старый удаляет 15-й и пишет новый.
Заранее спасибо.

Аватара пользователя
koffu
сержант
Сообщения: 154
Зарегистрирован: 2008-03-23 0:51:18
Откуда: Киев
Контактная информация:

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение koffu » 2009-07-07 18:35:20

гость писал(а):Всем привет, подскажите плиз, как настроить пул, так что бы он либо очищался каждые 30 дней и заного писал и\или что б происходило , как например у ротации логов, пишет например 15 дней, потом самый старый удаляет 15-й и пишет новый.
Заранее спасибо.

Согласно документации в директор в запись пула добавить:
Recycle = yes
AutoPrune = yes
Volume Retention = 30 days
Maximum Volume Bytes = 4500M
Label Format = "Vol"

в сторэдж даемон
LabelMedia = yes

Должно работать, у себя так прописал(интервалы другие), жду когда придет черед :smile:


Кстати, на сервера прикрутил bacula с TLS & Self-Signed CA сертификатами, могу поделиться заметками(пока голова свежая), делал как раз на FreeBSD и для FreeBSD.

Аватара пользователя
Raven2000
-=_UNIX_=-
Сообщения: 4425
Зарегистрирован: 2006-10-29 17:59:13
Откуда: Там, где нас нет.
Контактная информация:

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение Raven2000 » 2009-07-07 18:55:13

давай пиши сюда!
Если хочешь разобраться... Так иди и разбирайся!
[ igNix.ru | Технология жизни - технологии будущего ] [ Forum.igNix.ru ]

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

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение princeps » 2009-07-10 8:08:57

да, пиши статью. Я сам как раз собирался - возникла необходимость связать директор, сторадж сервер и клиент через интернет.
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru

Аватара пользователя
koffu
сержант
Сообщения: 154
Зарегистрирован: 2008-03-23 0:51:18
Откуда: Киев
Контактная информация:

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение koffu » 2009-07-10 9:50:45

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

Device {
  Name = backup-disk1-device          # Имя
  Media Type = File                   # Здесь указываем, что будем бэкапить на винт
  Archive Device = /mnt/disk1         # Собственно, каталог для бэкапов
  LabelMedia = yes;                   # Разрешить бакуле размечать тома. В моем
                                      # случае он все равно почему-то просил
                                      # размечать вручную
  Random Access = Yes;                #
  AutomaticMount = yes;               # Автоматически монтировать девайс
  RemovableMedia = no;                #
Научил размечать самостоятельно:

В /usr/local/etc/bacula-dir.conf:

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

Pool {
Name = Default
Pool Type = Backup
Recycle = yes
AutoPrune = yes
Volume Retention = 2 month
Maximum Volume Bytes = 4500m
Label Format = "archive"    #бакула будет размечать по шаблону как archive0001,archive0002,archiveXXXX
Purge Oldest Volume = yes
Maximum Volumes = 30
}
/usr/local/etc/bacula-sd.conf

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

Device {
  Name = FileStorage
  Media Type = File
  Archive Device = /usr/backups
  LabelMedia = yes;                   # разрешить бакуле автоматически размечать тома
  Random Access = Yes;
  AutomaticMount = yes;
  RemovableMedia = no;
  AlwaysOpen = no;
}
Это кусок моих конфигов.

Аватара пользователя
koffu
сержант
Сообщения: 154
Зарегистрирован: 2008-03-23 0:51:18
Откуда: Киев
Контактная информация:

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение koffu » 2009-07-10 12:02:46

При организации системы бэкапов часто сталкиваемся с проблемой передачи конфиденциальных данных через небезопасную среду. В качестве меры предосторожности в документации к bacula разработчики рекомендуют 2 способа:
1.Использование встроенной поддержки TLS
2.Использование Stunnel.
Рассмотрим первый способ, т.к. Наличие еще одного сервиса не очень хорошо само по-себе и добавляет еще одно потенциальное звено отказа.
Итак, останавливаться на настройке системы в целом не буду, она очень хорошо описана в статье Настройка Bacula на FreeBSD . Подразумеваю, что бакула у вас уже собрана с поддержкой OpenSSL, установлена и работает, через bconsole все компоненты опрашиваются через команду status all.
Сначала нам нужно подготовить сертификаты. Документация гласит, что можно использовать 2 “режима безопасности”:
1.Шифрование TLS без проверки пиров.
2.Шифрование TLS с проверкой пиров.
Нас интересует более высокая безопасность, поэтому выбераем второй. Может у кого-то и есть свой CA сертификат, а у меня нет, поэтому будем сами себе CA.
Создаём каталог в своем домике bacula-ssl и переходим в него.

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

mkdir ~/bacula-ssl ; cd bacula-ssl/
Далее из каталога /etc/ssl копируем openssl.cnf

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

cp /etc/ssl/openssl.cnf ./
Далее редактируем файл, чтобы не вводить одно и то-же и не допустить ошибки и не переделывать все заново. Меняем в файле строки из секций [ CA_default ] и [ req_distinguished_name ], добавляем недостающие из одноименных параметров с суффиксом “_default”.

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

[ CA_default ]

dir = .
certificate = $dir/ca.crt
serial = $dir/serial
private_key = $dir/ca.key
default_days = 365

[ req_distinguished_name ]
countryName_default = UA
stateOrProvinceName_default = Ukraine
localityName_default = Kiev
0.organizationName_default = CA
organizationalUnitName_default = admin
emailAddress_default = admin@domain
Генерируем самоподписанный CA сертификат.

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

$ openssl req -config ./openssl.cnf -new -x509 -newkey rsa:2048 -keyout ca.key -out ca.crt
Отвечаем на вопросы, вводим сложный пароль, чтобы без нас никто не подписал “левых” сертификатов и в поле

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

“Common Name (eg, YOUR name) []:”
Вводим желаемое название своей организации. Далее мы будем сюда вводить полное DNS имя сервера, т.к. сертификат будет выдан “на сервер” а не “на пользователя”.
Генерируем запрос на подпись сертификата первого сервера:

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

$ openssl req -config ./openssl.cnf -new -newkey rsa:2048 -nodes -keyout server1.key -out server1.csr
В поле Common Name (eg, YOUR name) []:server1.example.com не забываем ввести полное DNS имя сервера, через которое мы будем обращаться к нему. Если нет желания юзать DNS, можно прописать имена в /etc/hosts.
Я специально добавил параметр -nodes, при этом секретный ключ сервера создается без пароля, т.к. при запуске демонов его некому и некуда будет вводить. Желаемую длинну ключа устанавливаете сами, мне кажется 2048 будет достаточно. По-анологии создаем еще один ключ для второго сервера.

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

$ openssl req -config ./openssl.cnf -new -newkey rsa:2048 -nodes -keyout server2.key -out server2.csr

Далее создаем необходимые файлы и подписываем сертификаты серверов CA сертификатом:

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

$ touch ./index.txt && echo "01" > ./serial
$ openssl ca -config ./openssl.cnf -out server1.crt -days 365 -infiles server1.csr
$ openssl ca -config ./openssl.cnf -out server2.crt -days 365 -infiles server2.csr
Теперь через scp копируем нужные файлы на сервера(надеюсь у вас root незразрешен и admin тоже:)

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

$ scp ./server1.crt ./server1.key admin@server1.example.com:~
$ scp ./server1.crt ./server1.key admin@server1.example.com:~
Уже находясь на сервере перемещаем их куда-нибудь в секретное место, напр.

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

[admin@server1]$ sudo mkdir /usr/local/etc/bacula-ssl ; mv ./server1.crt ./server1.key /usr/local/etc/bacula-ssl
[admin@server1]$ sudo chown -R bacula:bacula /usr/local/etc/bacula-ssl && sudo chmod -R 600 /usr/local/etc/bacula-ssl
То-же делаем и на втором сервере.

Теперь дошли до настроек бакулы
редактируем

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

# vi /usr/local/etc/bacula-dir.conf
Добавляем необходимые строки согласно документации в секции Director, Client, Storage

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

Director {
Name = server1-dir
DIRport = 9101
QueryFile = "/usr/local/share/bacula/query.sql"
WorkingDirectory = "/var/db/bacula"
PidDirectory = "/var/run"
Maximum Concurrent Jobs = 1
Password = "sadadasdasdasdasdasdasdasdasdasas"
Messages = Daemon
TLS Enable = yes		                                            #Включаем TLS
TLS Require = yes		                                            #Советуем использовать шифрование
TLS Certificate = /usr/local/etc/bacula-ssl/server1.crt       #Собственно объясняем где сертификаты
TLS Key = /usr/local/etc/bacula-ssl/server1.key    	    #Тут используем сертификат сервера, на котором запущен director
TLS CA Certificate File = /usr/local/etc/bacula-ssl/ca.crt  #Документация гласит, что можно использовать несколько записей CA 
                                и проводить по ним проверку, например, если у нас несколько организаций.
TLS Verify Peer = yes                             #Указываем проверять принадлежность сертификата сервера к нашему CA
TLS Allowed CN = "server1.example.com"                      #Для пущей секурности можно добавть еще и это
TLS Allowed CN = "server2.example.com"                      #таким образом мы разрешим только некоторые CN среди всех подписанных.

Client {
  Name = server2-fd
  Address = server2.example.com
  FDPort = 9102
  Catalog = SqLite3
  Password = "sasasasasasss"
  File Retention = 30 days
  Job Retention = 6 months
  AutoPrune = yes
TLS Enable = yes
TLS Require = yes
TLS CA Certificate File = /usr/local/etc/bacula-ssl/ca.crt
TLS Key = /usr/local/etc/bacula-ssl/server2.key
TLS Certificate = /usr/local/etc/bacula-ssl/server2.crt         #Тут мы говорим с клиентом его сертификатом. 
                              В документации в примерах это не написано, но у меня заработало только так
TLS Allowed CN = "server1.example.com"
TLS Allowed CN = "server2.example.com"
}

Storage {
Name = File
Address = server2.example.com
SDPort = 9103
Password = "adasdasdasdaddsadasdasdasdas"
Device = FileStorage
Media Type = File
TLS Enable = yes
TLS Require = yes
TLS CA Certificate File = /usr/local/etc/bacula-ssl/ca.crt
TLS Key = /usr/local/etc/bacula-ssl/server2.key
TLS Certificate = /usr/local/etc/bacula-ssl/server2.crt
TLS Allowed CN = "server1.example.com"
TLS Allowed CN = "server2.example.com"
}


Клиент без шифрования
Client {
Name = proxy-fd
Address = server3.example.com
FDPort = 9102
Catalog = SqLite3
Password = "sdsdsdsdsdsdsdsdsdsdaaaaaaa"
File Retention = 30 days            # 30 days
Job Retention = 6 months            # six months
AutoPrune = yes                     # Prune expired Jobs/Files
}

Storage {
Name = File
Address = server3.example.com
SDPort = 9103
Password = "adasdasdasdaddsadasdasdasdas"
Device = FileStorage
Media Type = File
}

/usr/local/etc/bacula-fd.conf на server2.example.com

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

Director {
Name = server1-dir
Password = "saasasasasa"
TLS Enable = yes
TLS Require = yes
TLS Certificate = /usr/local/etc/bacula-ssl/server2.crt       #С директором говорим своим сертификатом
TLS Key = /usr/local/etc/bacula-ssl/server2.key
TLS CA Certificate File = /usr/local/etc/bacula-ssl/ca.crt
}


FileDaemon {
Name = server2-fd
FDport = 9102
WorkingDirectory = /var/db/bacula
Pid Directory = /var/run
Maximum Concurrent Jobs = 20
TLS Enable = yes
TLS Require = yes
TLS Certificate = /usr/local/etc/bacula-ssl/server2.crt    	#С директором говорим своим сертификатом
TLS Key = /usr/local/etc/bacula-ssl/server2.key
TLS CA Certificate File = /usr/local/etc/bacula-ssl/ca.crt
}
И наконец консоль:
/usr/local/etc/bconsole.conf

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

Director {
Name = server1-dir
DIRport = 9101
address = server1.example.com
Password = "sadsadasdasdasdasd"
TLS Enable = yes
TLS Require = yes
TLS Certificate = /usr/local/etc/bacula-ssl/server1.crt	#Если установлена на server1 используем сертификаты server1,
                                                                          если на server2 то соответственно server2.
TLS Key = /usr/local/etc/bacula-ssl/server1.key
TLS CA Certificate File = /usr/local/etc/bacula-ssl/ca.crt
}
Последний раз редактировалось koffu 2009-07-10 12:16:40, всего редактировалось 3 раза.

Аватара пользователя
koffu
сержант
Сообщения: 154
Зарегистрирован: 2008-03-23 0:51:18
Откуда: Киев
Контактная информация:

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение koffu » 2009-07-10 12:03:54

Статья готова, пробуем повторить, если что пинаем, матом не ругаемся. :oops:

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

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение princeps » 2009-07-16 11:43:18

А ты ее на сайт не положил что ли, только сюда?
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru

Burner
лейтенант
Сообщения: 693
Зарегистрирован: 2009-06-14 7:02:26

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение Burner » 2009-07-27 6:32:48

настроил более-менее по статье, так же выделил отдельный раздел, но вот когда он заполнился - джобы перестали проходить:

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

Device status:
Device "beryll-device" (/mnt/mirror1/bacula) is not open.
    Device is BLOCKED waiting to create a volume for:
       Pool:        beryll-pool
       Media type:  File
====

Used Volume status:

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

27-Jul 10:29 beryll-storage JobId 351: End of Volume "beryll-volume" at 8:2972284025 on device "beryll-device" (/mnt/mirror1/bacula). Write of 64512 bytes got -1.
27-Jul 10:29 beryll-storage JobId 351: End of medium on Volume "beryll-volume" Bytes=37,332,022,393 Blocks=578,701 at 27-Jul-2009 10:29.
27-Jul 10:29 beryll-storage JobId 351: Job beryll-job.2009-07-27_10.29.03_03 waiting. Cannot find any appendable volumes.
Please use the "label"  command to create a new Volume for:
    Storage:      "beryll-device" (/mnt/mirror1/bacula)
    Pool:         beryll-pool
    Media type:   File

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

Pool {
  Name = beryll-pool
  Pool Type = Backup
  Recycle = yes                       # Bacula can automatically recycle Volumes
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 365 days         # one year
}
ну и как сделать чтобы он файлы наконец удалять начал?

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

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение princeps » 2009-07-27 8:22:03

странно, у меня тоже. Раньше не было такого, может это фишка третьей версии? Будем разбираться.
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru

Burner
лейтенант
Сообщения: 693
Зарегистрирован: 2009-06-14 7:02:26

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение Burner » 2009-07-27 12:08:10

да и на самом деле зачем до конца забивать раздел, хочется иметь нормальный сет бекапов - скажем, 4 месячных, 4 недельных, и 7 ежедневных, и чтобы лишнее сразу удалялось. Полдня уже документацию читаю, не могу разобраться как сделать что-то похожее. Кто-нибудь поможет?

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

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение princeps » 2009-07-27 17:59:50

завтра попробую разобраться, сегодня что-то настроения нету.
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru

Burner
лейтенант
Сообщения: 693
Зарегистрирован: 2009-06-14 7:02:26

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение Burner » 2009-07-27 18:17:17

уже нарисовал конфиг, посмотрим как сегодня пройдет

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

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение princeps » 2009-07-28 11:13:58

а в чем, думаешь, проблема? держи в курсе как что, статью тоже надо будет подправить.
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru

Аватара пользователя
aks
мл. сержант
Сообщения: 141
Зарегистрирован: 2008-06-03 9:29:09
Откуда: Россия Нижегородская обл. Дзержинск

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение aks » 2009-07-28 12:29:51

princeps
Добавь к статье ссылки
ftp://ftp.lissyara.su/BOOKS/OTHER/Short_Doc_Bacula.pdf
ftp://ftp.lissyara.su/BOOKS/OTHER/Bacula_PDC_backup.pdf
Может кому пригодятся


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

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение princeps » 2009-08-01 14:15:19

значит так, удалось кое-что выяснить.
Можно реализовать несколько схем ротации бэкапов. Можно использовать вариант, предложенный koffu с одной поправкой. Объясняю логику работы. Благодаря директиве

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

Maximum Volume Bytes = 4500m
бакула будет писать бэкап в том, т.е. в файл на диске, пока его размер не достигнет 4,5 гига. После чего она пометит том как used и оставит его в покое. И начнет писать следующий, тоже пока тот не достигнет 4,5 гига. Я так понимаю, размер подбирался с целью иметь возможность писать их на двд, что очень мудро.
Далее, благодаря директивам

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

AutoPrune = yes
Volume Retention = 2 month
этот первый том будет помечен на удаление, и как только бакуле понадобится следующий том, она будет его использовать. Время выбрано согласно документации, где во избежание удаления последней полной резервной копии рекомендуют делать этот период в два раза большим, чем период полного бэкапа, который в статье равнялся месяцу.
Однако далее koffu использует директиву

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

Purge Oldest Volume = yes
которая заставляет бакулу в случае необходимости использовать самый старый том вне зависимости от того, прошло ли 2 месяца с его создания, т.е. при определенных обстоятельствах можно потерять таким образом резервные копии. В документации настоятельно рекомендуют вместо этого юзать директиву

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

Recycle Oldest Volume = yes
, которая помечает на перезапись самый старый том, если период его volume retention истек. Я не совсем понял, каким образом эта директива дополняет recycle=yes, теоретически должно хватать только ее.
Таким образом, у нас будут бэкапы за два последних месяца, т.е. не менее 2 полных, 6 дифференциальных и 48 инкрементных. Для того, чтобы сделать как хочет Burner, т.е.
Burner писал(а):4 месячных, 4 недельных, и 7 ежедневных
то надо пулы делать не для каждого job'а свой, как у меня, а для каждого типа бэкапов - свой. То есть один пул для полных бэкапов, второй для дифференциальных и третий для инкрементных. Кстати, именно так и рекомендуют делать в документации.
С тех пор, как я написал статью, вышла 3-я версия бакулы, я успел поменять работу и еще пару раз поднять бакулу на других серверах. Каждый раз понимание логики ее работы несколько меняется. Например, идея делать по одному пулу на задание уже не кажется мне такой удачной, как вначале. В связи с этим, я думаю, следует выпустить вторую редакцию статьи, в которой учесть и обсуждение здесь, на форуме, и комментарии к статье.
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru

Burner
лейтенант
Сообщения: 693
Зарегистрирован: 2009-06-14 7:02:26

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение Burner » 2009-08-01 20:13:40

princeps писал(а):

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

Recycle Oldest Volume = yes
, которая помечает на перезапись самый старый том, если период его volume retention истек. Я не совсем понял, каким образом эта директива дополняет recycle=yes, теоретически должно хватать только ее.

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

Recycle Oldest Volume = yes
делает prune самого старого тома, потом recycle,

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

Recycle = yes
- просто разрешает recycle.

Что не нравится в bacula - нельзя нормально удалить бекапы, особенно напрягает это при изменении конфигурации. Допустим, пишешь все в один том, потом понадобилось клиента удалить, из конфигов убрал, записи все потер - а место на диске не освободишь никак. Сейчас хочу сделать, чтобы под каждый job выделялся свой volume, тогда можно будет нормально чистить старые бекапы. Хотя Bacula сама этого не умеет, вот тут нашел питоновский скрипт, который для этого предназначен. Пока заставить его работать не могу, если так и не получится - сделаю просто на sh удаление старых томов и в крон засуну.

Собственно, если делать по статье - переполнение диска гарантировано.

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

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение princeps » 2009-08-02 8:31:25

Burner писал(а):Что не нравится в bacula - нельзя нормально удалить бекапы, особенно напрягает это при изменении конфигурации. Допустим, пишешь все в один том, потом понадобилось клиента удалить, из конфигов убрал, записи все потер - а место на диске не освободишь никак.
Собственно, я именно поэтому в статье и делал отдельный пул на каждый джоб. На самом деле можно из консоли поудалять задания с удаленного клиента, а они потом сами затрутся, когда ротация томов произойдет. Собственно, бакула, как и все серьезные системы резервного копирования рассчитана на бэкап на ленту, поэтому с винтами не очень удобно работать.
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru

Burner
лейтенант
Сообщения: 693
Зарегистрирован: 2009-06-14 7:02:26

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение Burner » 2009-08-07 13:02:32

сегодня сделал maximum concurrent jobs = 20, а они у меня все по 1 темплейту, в одно время, так бакула перепутала половину томов, плюс насоздавала лишних. Теперь только по одному за раз, не больше, благо что серверов немного.

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

Re: Статья: система резервного копирования bacula на FreeBSD

Непрочитанное сообщение princeps » 2009-08-07 14:14:10

на этот предмет там предусмотрены приоритеты заданий
Deus quos vult perdere dementat prius
http://www.itforum-sochi.ru