Найти тему
Тюнинг Админа

Корпоративное резервное копирование на Ubuntu 24.04LTS + BareOS 23.0.4

Оглавление

Bareos — это межсетевое решение для резервного копирования с открытым исходным кодом, предназначенное для сохранения, архивирования и восстановления данных из всех основных операционных систем. Это надежное решение для резервного копирования по принципу клиент-сервер и включает в себе несколько компонентов, которые безопасно обмениваются данными по сети: Bareos Director, один или несколько демонов хранилища и файловые демоны, установленные на клиентах для резервного копирования.

Bareos работает через безопасную клиент-серверную архитектуру, состоящую из нескольких ключевых компонентов:

  • Директор Bareos: Центральный блок управления управляет настройками базы данных, клиентскими подключениями, наборами файлов, конфигурациями подключаемых модулей, хранилищем, пулами носителей, расписаниями и заданиями резервного копирования. Демон Director сохраняет все данные, относящиеся к завершенным сеансам, например, какой файл клиент записал на какой носитель. Он также выполняет управление медиа и собирает сообщения.
  • Storage Daemon: Отвечает за хранение данных резервных копий на различных носителях.
  • Файловый демон: устанавливается на клиентских системах для управления резервным копированием и восстановлением данных.

Содержание статьи

  • Возможности решения
  • Подготовка сервера
  • Установка PostgreSQL
  • Установка BareOS
  • Установка WEB интерфейса для управления
  • Настройка решения
  • Установка клиента на Windows
  • Установка клиента на Linux
  • Добавление пользователя
  • Резервное копирование и восстановление
  • Заключение

Возможности решения

  • Система имеет интуитивно понятный веб-интерфейс
  • Многоязычная панель управления
  • Может получить доступ к нескольким директорам и каталогам
  • Поддержка индивидуальных учетных записей и ACL через ограниченные именованные консоли Bareos
  • Управление авто сменой ленты с возможностью маркировки, импорта/экспорта носителей и обновления состояния слота автосмены
  • Временное включение или отключение заданий, клиентов и расписаний, а также просмотр их текущего состояния
  • Показывать
    Подробная информация о заданиях, клиентах, наборах файлов, пулах, томах, хранилищах, расписаниях, журналах и сообщениях директора
    Обновления Filedaemon, Storage и Director
    Статус клиента, директора, хранилища и планировщика
  • Задания резервного копирования
    Запуск, отмена, повторный запуск и восстановление из
    Отображение списка файлов заданий резервного копирования
  • Восстановление файлов путем просмотра дерева файлов заданий резервного копирования
    Объедините историю заданий резервного копирования и наборы файлов клиента или используйте одно задание резервного копирования для восстановления
    Восстановление файлов на другом клиенте, а не на исходном сервере
  • Интерфейс bconsole (ограничен неинтерактивными командами)

Подготовка сервера

Все манипуляции в системе я осуществляю под root:

sudo -s

Первым делом обновим систему:

apt update -y && apt upgrade -y

Настраиваем сеть:

nano /etc/netplan/00-installer-config.yaml

network:
ethernets:

enp1s0:
dhcp4: false
addresses: [10.0.0.200/24]
routes:
- to: default
via: 10.0.0.254
metric: 100
nameservers:
addresses: [10.0.0.201,10.0.0.202]
search: [tuning-admina.local]
dhcp6: false
version: 2

Сохраняем файл и выходим из редактора:

CTRL+O, CTRL+X

Если вы как и я тестируете решения в VDS, то скорее всего настройки сети у вас жестко прописаны в /etc/network/interfaces

Настраиваем имя Хоста:

hostnamectl set-hostname backup

Установка PostgreSQL

Проверяем версию пакета в репозитории:

apt-cache policy postgresql

-2

16-й нас вполне устраивает, приступаем к установке:

apt install postgresql

-3

Проверяем статус службы после установки:

systemctl status postgresql

Видим, что служба запущена и имеет статус в автозапуске:

-4

Подключаемся к оболочке базы данных psql под пользователем postgres:

sudo -u postgres psql

Установим пароль для суперпользователя postgres:

ALTER USER postgres PASSWORD 'Ваш_пароль';

Выходим из оболочки базы данных:

\q

Установка BareOS

Проверяем наличие пакета в репозиториях Ubuntu:

apt-cache policy bareos

Видим, что его там попросту нет:

N: Unable to locate package bareos

Скачиваем скрипт для добавления репозиториев BareOS:

wget https://download.bareos.org/current/xUbuntu_24.04/add_bareos_repositories.sh

-5

Делаем скрипт исполняемым:

chmod +x add_bareos_repositories.sh

Запускаем скрипт:

./add_bareos_repositories.sh

-6

Обновляем информацию о списке пакетов в репозиториях:

apt update

Проверяем версию пакета в репозиториях:

apt-cache policy bareos

-7

Запускаем установку BareOS:

apt install bareos bareos-database-postgresql

Cистема сообщает нам какие пакеты будут установлены:

-8

Установщик предлагает нам сконфигурировать Posftix, нажимаем enter:

-9

На данном этапе мы не будем настраивать postfix, поэтому выбираем No configuration:

-10

Система предложит нам настроить подключение к базе данных, выбираем YES и нажимаем enter:

-11

В следующем окне выбираем тип размещения базы данных, в нашем случае это локальное на этом же хосте:

-12

Указываем пароль пользователя postgres для подключения к серверу баз данных:

-13

Повторяем ввод пароля и нажимаем Enter:

-14

Видим, что процесс установки завершился успешно:

-15

Установка WEB интерфейса для управления

apt install bareos-webui

-16
-17

Установка завершена! Но при этом скрипт сообщает нам что мы должны зарегистрировать следующее:
NOTICE: a2enconf php8.3-fpm

Выполняем команду в консоли:

a2enconf php8.3-fpm

Получаем сообщение с предложением перезапустить Apache2:

-18

Перезапускаем Apache2:

systemctl reload apache2

Отредактируем учетную запись панели управления WEBUI, для этого переходим в каталог:

cd /etc/bareos/bareos-dir.d/console/

Теперь скопируем файл конфигурации:

cp admin.conf.example admin.conf

Внесем изменения:

nano admin.conf

В значении параметра Password указываем свой пароль:

Console {

Name = admin

Password = "admin"

Profile = "webui-admin"

TLS Enable = No

}

Сохраняем файл и выходим из редактора:

CTRL+O, CTRL+X

Запускаем сервисы:

systemctl start bareos-dir bareos-fd bareos-sd

и проверить статус:

systemctl status bareos-dir bareos-sd bareos-fd

-19

Отлично, проверяем работу веб интерфейса:

http://ip_address/bareos-webui/

-20
-21

Авторизуемся в системе

-22

Настройка решения

Установка клиента на Windows

Установка клиента на Linux

Добавление пользователя

Резервное копирование и восстановление

Заключение