8. Установка RuBackup#
Установка RuBackup производится на виртуальную машину под управлением Брест.
8.1. Создание виртуальной сети под нужды резервного копирования
================================================================
До начала установки требуется создать виртуальную сеть для нужд резервного копирования:
1. В интерфейсе Брест Сеть → Вирт.Сети → Добавить → Создать.
2. Во вкладке Общие задать имя сети;
3. Во вкладке Конфигурация в поле Интерфейс сет. моста указать имя сетевого интерфейса, по которому будет происходить коммуникация, например, br0
или eth0
, в зависимости от сетевой конфигурации, в поле Режим работы сети выбрать «Bridged».
В конфигурации сетевой топологии для RuBackup используется отдельный VLAN. В связи с этим нужно проверить, что ко всем клиентам RuBackup подключен сетевой интерфейс для трафика резервного копирования.
4. Во вкладке Адреса в поле Первый IPv4 адрес указать IP-адрес, с которого начнется присвоение адресов ВМ, в поле Размер указать диапазон доступных адресов, состоящий строго из 1 адреса.
5. Во вкладке Контекст указать Адрес сети, Маска подсети, Шлюз и DNS, в качестве «DNS» необходимо указать IP-адрес лидера контроллера домена ALD Pro.
Пример конфигурации сетевого интерфейса при наличии выделенного VLAN для резервного копирования c ID 1029:
.. code-block:: text
# /etc/network/interfaces
auto eno50.1029
iface eno50.1029 inet manual
vlan-raw-device eno50
auto br1029
iface br1029 inet static
address 10.22.22.11
netmask 255.255.255.0
bridge_ports eno50.1029
bridge_stp on
Пример атрибутов созданной виртуальной сети:
.. image:: img/vnet_examle.jpg
:class: clickable
8.2. Получение токена для учетной записи администратора
========================================================
Чтобы получить токен:
* перейти в меню Система → Пользователи;
* выбрать созданного ранее пользователя;
* во вкладке Аутентификация выбрать Управление токенами входа;
* в открывшемся окне скопировать токен, в случае если токен входа истек, при создании нового токена обязательно выбрать группу «brestadmins» как целевую группу.
Обратить внимание на дату в поле «Действительно до»
8.3. Подготовка файла inventory.yml
=======================================
По аналогии с развертыванием других элементов инфраструктуры, перед началом необходимо поменять файлы, отвечающие за переменные. Для этого, на bootstrap сервере:
.. code-block:: text
/home/astra/iscsi-rubackup/conf/inventory.yml
Переменные из файла inventory.yml
:
+———————————–+———————————–+
| Переменная | Пояснение |
+===================================+===================================+
| rubackup-test | IP-адрес виртуальной машины |
| | RuBackup |
+———————————–+———————————–+
| def_infra_auth_bc_endpoint | http-адрес и порт точки входа в |
| | API Брест (указывается IP-адрес |
| | лидера) |
+———————————–+———————————–+
| def_infra_auth_bc_username | учетная запись Брест, от имени |
| | которой разворачивается RuBackup |
+———————————–+———————————–+
| def_infra_auth_bc_token | токен пользователя Брест c |
| | возможностью беспарольной |
| | авторизации |
+———————————–+———————————–+
| def_infra_auth_bc_group | группа пользователя Брест |
+———————————–+———————————–+
| def_infra_vms_image_url | ссылка на qcow2-образ |
| | операционной системы ALSE 1.7.4, |
| | который используется для |
| | установки RuBackup |
+———————————–+———————————–+
| def_infra_vms_image_ds_id | ID хранилища, в который |
| | загружается qcow2-образ |
+———————————–+———————————–+
| def_infra_vms_system_ds_id | ID хранилища, в котором |
| | расположены данные созданной |
| | виртуальной машины |
+———————————–+———————————–+
| ansible_user | пользователь, от имени которого |
| | выполняется сценарий |
| | автоматизации |
+———————————–+———————————–+
| ansible_password | пароль пользователя |
+———————————–+———————————–+
В блоке rubackup_client
указываются названия и адреса виртуальных машин — клиентов RuBackup, на которых производится установка и настройка.
Клиенты СРК:
* ALD Pro и его реплика;
* серверы управления Брест.
| Пример файла inventory.yml
:
.. code-block:: yaml
aa_default_infra:
hosts:
rubackup-test:
ansible_host: 10.22.22.22
vars:
def_infra_auth_bc_endpoint: «http://192.168.22.100:2633/RPC2»
def_infra_auth_bc_username: «badmin»
def_infra_auth_bc_token: «d2c059d182d7eb67a2806af867dc77f7ac05b0888e6789d8438a294bcf2882bc»
def_infra_auth_bc_group: «brestadmins»
def_infra_vms_network_name: «RuBackup»
def_infra_vms_image_url: «»https://dl.astralinux.ru/artifactory/mg-generic/alse/brest/alse-vanilla-1.7.4-brest-max-mg11.2.0.qcow2»»
def_infra_vms_image_ds_id: 100
def_infra_vms_system_ds_id: 101
rubackup_client:
hosts:
dc1-test:
ansible_host: 10.22.22.230
ansible_user: astra
ansible_password: astra
dc2-test:
ansible_host: 10.22.22.231
ansible_user: astra
ansible_password: astra
node1-test:
ansible_host: 10.22.22.233
ansible_user: astra
ansible_password: astra
node2-test:
ansible_host: 10.22.22.234
ansible_user: astra
ansible_password: astra
node3-test:
ansible_host: 10.22.22.235
ansible_user: astra
ansible_password: astra
8.4. Подготовка файла переменных
==================================
Переменные из файла group_vars/all.yml
:
+———————————–+———————————–+
| Переменная | Значение |
+===================================+===================================+
| rubackup_server_pgsql_user | имя пользователя с |
| | административными правами |
| | управления базой данных |
| | (рекомендуется оставить без |
| | изменений) |
+———————————–+———————————–+
| rubackup_server_psql_password | пароль пользователя postgres БД |
| | для RuBackup (рекомендуется |
| | оставить без изменений) |
+———————————–+———————————–+
| rubackup_server_psql_password_rub | пароль пользователя RuBackup для |
| ackup | входа в оконное приложение |
| | администратора RuBackup (rbm) |
+———————————–+———————————–+
| rubackup_default_repository | репозиторий пакетов RuBackup |
+———————————–+———————————–+
| rubackup_pri_intf | имя сетевого интерфейса на |
| | сервере RuBackup для трафика |
| | резервного копирования |
| | (рекомендуется оставить без |
| | изменений) |
+———————————–+———————————–+
| rubackup_clnt_eth | имя сетевого интерфейса на |
| | клиентских машинах для трафика |
| | резервного копирования |
| | (рекомендуется оставить без |
| | изменений) |
| | Важно: пробел после имени |
| | сетевого интерфейса необходимо |
| | оставить |
+———————————–+———————————–+
Пример файла group_vars/all.yml
:
.. code-block:: yaml
—
rubackup_server_pgsql_user: «postgres»
rubackup_server_psql_password: «ABC_1234567890»
rubackup_server_psql_user_rubackup: «rubackup»
rubackup_server_psql_password_rubackup: «ABC_1234567890»
rubackup_default_repository: deb https://dl.astralinux.ru/rubackup/repository-deb-main/
rubackup_pri_intf: «eth0»
rubackup_clnt_eth: «-i eth1 »
8.5. Запуск установки
=======================
Для запуска развертывания RuBackup под управлением Брест и установки клиентов для RuBackup следует выполнить:
.. code-block:: bash
cd /home/astra/iscsi-rubackup
task deploy
На последнем этапе развертывания выполняются следующие действия:
1. Все клиенты RuBackup автоматически авторизуются.
2. Создаются клиентские группы: dc
, brest
, rubackup
, в них добавляются все клиенты.
В клиентскую группу rubackup
переносится клиент самого сервера RuBackup, в группу dc
— контроллер домена и его реплика, в группу brest
— серверы управления Брест.
3. Для каждого клиента (кроме клиента самого сервера RuBackup) создается правило глобального расписания резервного копирования каталога /etc
первого числа каждого месяца в полночь.
Также в конце развертывания, выполняемого командой task deploy
, на трех серверах управления в каталоге /root
создается bash скрипт backup_db.sh
, который выполняет резервное копирование базы данных кластера при условии, что текущий сервер является лидером кластера управления Брест. Резервная копия базы данных помещается в каталог /backup
. Также скрипт ротирует резервные копии, с периодичностью в 15 дней. Выполнение скрипта добавляется в таблицу планировщика задач cron, с переодичностью запуска скрипта каждый день, в 00:05.
Если при развертывании произошла ошибка, перед повторным запуском необходимо удалить все файлы из директории tfstates
:
.. code-block:: bash
sudo rm /home/astra/iscsi-rubackup/conf/outputs/tfstates/*
8.6. Запуск оконного приложения
==================================
Для входа в оконное приложение менеджера администратора RuBackup (rbm) необходимо, находясь в графической сессии виртуальной машины с сервером RuBackup, выполнить в терминале:
.. code-block:: bash
sudo -i
rbm &
После чего должно открыться оконное приложение RuBackup:
.. image:: img/rubackup.png
:class: clickable
В окне приложения необходимо указать имя сервера, пользователя и тип аутентификации, как показано на скриншоте выше.
Пароль используется тот же, что и в файле group_vars/all.yml
, в текущей конфигурации это ABC_1234567890
.
.. code-block:: text
/home/astra/iscsi-rubackup/conf/group_vars/all.yml