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
16-й нас вполне устраивает, приступаем к установке:
apt install postgresql
Проверяем статус службы после установки:
systemctl status postgresql
Видим, что служба запущена и имеет статус в автозапуске:
Подключаемся к оболочке базы данных 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
Делаем скрипт исполняемым:
chmod +x add_bareos_repositories.sh
Запускаем скрипт:
./add_bareos_repositories.sh
Обновляем информацию о списке пакетов в репозиториях:
apt update
Проверяем версию пакета в репозиториях:
apt-cache policy bareos
Запускаем установку BareOS:
apt install bareos bareos-database-postgresql
Cистема сообщает нам какие пакеты будут установлены:
Установщик предлагает нам сконфигурировать Posftix, нажимаем enter:
На данном этапе мы не будем настраивать postfix, поэтому выбираем No configuration:
Система предложит нам настроить подключение к базе данных, выбираем YES и нажимаем enter:
В следующем окне выбираем тип размещения базы данных, в нашем случае это локальное на этом же хосте:
Указываем пароль пользователя postgres для подключения к серверу баз данных:
Повторяем ввод пароля и нажимаем Enter:
Видим, что процесс установки завершился успешно:
Установка WEB интерфейса для управления
apt install bareos-webui
Установка завершена! Но при этом скрипт сообщает нам что мы должны зарегистрировать следующее:
NOTICE: a2enconf php8.3-fpm
Выполняем команду в консоли:
a2enconf php8.3-fpm
Получаем сообщение с предложением перезапустить Apache2:
Перезапускаем 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
Отлично, проверяем работу веб интерфейса:
http://ip_address/bareos-webui/
Авторизуемся в системе