BareOS 17 | Установка, настройка в Ubuntu 14.04.5 x64

[Всего голосов: 1    Средний: 2/5]

Всем, привет.

С миру по нитке… поможет установить и настроить систему резервного копирования BareOS. Является ответвлением от Bacula. В последних версиях систем существенные различия по настройке. Т.к. в Интернетах мало мануалов именно про BareOS, то я собрав какой-то объем информации  постараюсь тут всё это дело систематизировать. Так же будет установлен и WebUI.

Статья будет писаться несколько дней, а может и недель, т.к. всё делаю на работе.

И, как всегда, все ссылки и сохраненные версии материалов в конце заметки.

Начнем…

Добавим в /etc/hosts следующее:

Это не обязательно, т.к. у вас может быть настроен DNS.

! Здесь и далее все названия файлов, названия внутри конфигурационных файлов, а так же ip-адреса и т.п. указаны исключительно для примера.

Пожалуйста, будьте внимательны при настройке – указывайте данные соответствующие вашей сети!

Добавим репозиторий и установим. В качестве СУБД тут используется MySQL (установлен и настроен). Из официальной документации:

создаем скрипт:

со следующим содержимым:

DIST – раскомментить нужную версию ОС.

Даем права на выполнение:

И выполним:

В процессе установки будет запрошен пароль от административной учетной записи MySQL для создания БД и пользователя.

Далее, из документации:

MySQL/MariaDB

Make sure, that root has direct access to the local MySQL server. Check if the command mysql connects to the database without defining the password. This is the default on RedHat and SUSE distributions. On other systems (Debian, Ubuntu), create the file ~/.my.cnf with your authentication informations:

Configuration 2.7: MySQL credentials file .my.cnf

It is recommended, to secure the Bareos database connection with a password. See Catalog Maintenance – MySQL about how to archieve this. For testing, using a password-less MySQL connection is probable okay. Setup the Bareos database tables by following commands:

Commands 2.8: Setup Bareos catalog with MySQL

As some Bareos updates require a database schema update, therefore the file /root/.my.cnf might also be useful in the future.

При выполнении части 2.7 у меня были ошибки, что всё это уже существует, т.ч. я думаю это можно пропустить.

Стартуем сервисы:

Установим WebUI. Для этого в терминале выполним:

Далее, надо скопировать конфиг для этого дела:

Содержимое файла:

При изменении конфигурационных файлов необходимо перезапускать службы:

Далее, что бы попасть на web-интерфейс надо зайти

http://[ip или имя]/bareos-webui

Вводим логин и пароль и попадаем на стартовую страницу.

(скрин успешного входа в WebUI Bareos. После начальной установки всё будет по нулям)

Теперь самое интересное: НАСТРОЙКА хранилища, клиентов, заданий и т.п.

Нашел вот такую статью (годичной давности от создаваемой заметки). Дело в том, что в версии 17.2 файлы конфигурации размазаны по разным каталогам, в отличии от той версии, которая по ссылке выше.

Я попробую повторить тоже самое, только изменяя части файлов конфигурации относительно новой версии или добавляя новые. Соответственно, буду указывать путь до файла и что там будет добавлено и\или изменено\удалено. Там установка расписана с поддержкой TLS, но я буду пробовать без нее. Если всё получится, то потом можно будет докрутить.

Из основных директив:

Director — описание самого директора,
Storage — устройство на которое пишем бэкапы,
Catalog — содержит информацию по выполненным Job, сохраненным файлам, клиентам, статусам,
Messages — какие сообщения будут собраны и как их доставлять,
Console — настройка консоли для управления директором,
Client — описание клиента, с которого будут сниматься резервные копии,
Pool — позволяет управлять т.н. Volume куда будут писаться данные для разных типов бэкапа (Full, Incremental, Differential), ограничить сроки хранения Volume, размеры,
FileSet — что бэкапим и дополнительные атрибуты,
Schedule — расписание,
Job — описание задачи по бэкапу.

Взаимосвязь между файлами конфигурации (за основу взята оригинальная картинка и чуть доделана):

Т.е. часть одного конфигурационного файла связана с частью другого конфигурационного файла.

Каталог с файлами конфигураций: /etc/bareos

содержимое каталога:

Каталог director: /etc/bareos/bareos-dir.d

содержимое:

Будем редактировать каждый файл. В статье по ссылке выше это будет секция одного файла. Возможно, можно всё это дело удалить и сделать как в мануале – одним файлом, но я попробую настроить так, как установилось.

Секция: Director {}

Содержимое файла:

Изменил строки, как в мануале:

Messages = Standard

# Auditing = yes


Секция: Storage{}

Содержимое файла:

Тут я ничего не менял. Главное, что бы Address был доступен с других машин в сети.

Address – имя сервера, где стоит BareOS, как раз в начале добавляли в hosts.


Секция: Catalog {}

Содержимое файла:

Здесь указываются параметры подключения к БД.


Секция: Messages {}

Содержимое файла:

Описываются типы сообщений, которые должны быть отправлены и записаны в лог.

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


Секция: Client {}

Содержимое файла:

Имя клиента для бэкапа.

В общем, тут есть 2 пути:

1 – сами создаете конфиг пользователя, указывая все необходимые параметры;

2 – при установке клиента в Windows он сам генерирует конфиг-файл и оттуда можно взять.

Скопировал данный файл и отредактировал:

Содержимое файла:

Name – указал своё имя.

Address – адрес клиента (полное доменное имя)

Password – задается вручную или при установке клиента (в Windows).

Port – добавил порт из мануала. Хотя, проверил на машине – порт слушался, но пусть будет. Добавил в исключение фиреволла, что бы пускал.

Если есть сомнения в доступности порта, то можно telnet’ом проверить:


Секция: Pool {}

В мануале расписаны 3 секции: Full, Incremental, Differential. В нашем случае в каталоге присутствуют такие файлы конфигураций:

Файлы трогать не стал.

Скопировал Full.conf и отредактировал:

Содержимое файла:

Name – будет отображаться в web-интерфейсе.

Label Format – с каким именем будут сохраняться резервные копии.

Я так понимаю, что это что-то типа шаблона.


Секция: FileSet {}

В данном каталоге находятся 4 файла:

Содержимое файлов:

Файл настроек файлов и каталогов для резервного копирования.

Содержимое файла:

Name – задаем имя.

Description – описание.

Include – то, что включено в резервное копирование:

Options – параметры, применяемые к обрабатываемым файлам и папкам.

compression – включаем сжатие,

RegexDir – регулярное выражение для обработки исключения (в данном примере).

exclude = yes – включаем исключение из обработки, т.е. указанные файлы и\или папки (ниже) не будут включены в резервную копию.

IgnoreCase = yes – не знаю, что это за параметр, в официально документации он указан в примере.

File – указал папку для сохранения в резервной копии.

Exclude – секция того, что надо исключить (или не включать) из резервного копирования.

File – указываем исключение (я). В моем примере это все папки содержащие имя test-folders- и для этого выше написано регулярное выражение (RegexDir), которое выбирает папки согласно заданому в ней шаблону.

Тут еще много чего можно указать, но в таком случае проще обратиться к документации.


Секция: Schedule {}

Здесь 2 файла конфигурации:

Содержимое файлов:

Создадим тут же новый файл конфигурации – host21.conf со след. содержимым:

Name – название

Run = Level=Full Pool=HOST21-Full sat at 22:00

запустить полное резервное копирование, с параметрами из Pool’а для HOST21-Full в каждую субботу в 22 часа.

Run = Level=Full Pool=HOST21-Diff Sun-Fri at 21:00

запустить полное разностное копирование, с параметрами из Pool’а для HOST21-Diff с воскр по пятницу в 21:00.

В WebUI  можно проверить как все это выглядит.

Далее сменим владельца:

Опять шаблон. Можно сделать тот, который нужно. И применять для каждого пользователя.


Секция: Job {}

Скопировал backup-bareos-fd.conf и отредактировал:

Содержимое файла:

JobDefs – указание выполняемого задания (?).

Client – название клиента (создавали выше).

Fileset – что бэкапить (создавали выше).

Мне требовалось,  что бы после завершения (успешного) клиент выключился.

Для этого я в корне диска C:\ (указано в качестве примера) положил shutdown.bat

где,

/s – выключение,

/t – время перед выключением, указывается в секундах.

Секция RunScript отвечает за запуск команд. В моем случае я указал:

RunWhen = After – когда произвести выполнение (запуск) команды,

RunsOnClient = yes – указываем, где выполнить (в данном случае на клиенте)

Command = “c:/shutdown.bat” – сама команда (в данном случае скрипт).

Скопировал RestoreFiles.conf и отредактировал

Содержимое файла:

Name – как будет называться задание (будет отображаться в консоли или веб-морде),

Client – указываем нашего клиента,

FileSet – указываем конфиг файлов для бэкапа

Where – куда распаковывать.

Т.е. создал задания для бэкапа и восстановления.


Полезности:

  • удаление несколько заданий в bconsole:

 

 


Теперь надо установить клиент на тестовой машине и проверить.

Ссылка на него в конце заметки.

 


Настройки клиента в Windows находятся:

«C:\Program Data\Bareos\».

 

Ссылки:

Документация к BareOS. |

Выключение ПК после выполнения резервной копии.

If you found an error, highlight it and press Shift + Enter or Уведомлятор ошибок (очепяток) to inform us.

DimmKo

родился, учился, работаю-учусь

Добавить комментарий