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:

# /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

Пример атрибутов созданной виртуальной сети:

../../_images/vnet_examle.jpg

8.2. Получение токена для учетной записи администратора#

Чтобы получить токен:

  • перейти в меню Система → Пользователи;

  • выбрать созданного ранее пользователя;

  • во вкладке Аутентификация выбрать Управление токенами входа;

  • в открывшемся окне скопировать токен, в случае если токен входа истек, при создании нового токена обязательно выбрать группу «brestadmins» как целевую группу.

Обратить внимание на дату в поле «Действительно до»

8.3. Подготовка файла inventory.yml#

По аналогии с развертыванием других элементов инфраструктуры, перед началом необходимо поменять файлы, отвечающие за переменные. Для этого, на bootstrap сервере:

/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:
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 ackup

пароль пользователя RuBackup для входа в оконное приложение администратора RuBackup (rbm)

rubackup_default_repository

репозиторий пакетов RuBackup

rubackup_pri_intf

имя сетевого интерфейса на сервере RuBackup для трафика резервного копирования (рекомендуется оставить без изменений)

rubackup_clnt_eth

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

Пример файла group_vars/all.yml:

---
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 следует выполнить:

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:

sudo rm /home/astra/iscsi-rubackup/conf/outputs/tfstates/\*

8.6. Запуск оконного приложения#

Для входа в оконное приложение менеджера администратора RuBackup (rbm) необходимо, находясь в графической сессии виртуальной машины с сервером RuBackup, выполнить в терминале:

sudo -i
rbm &

После чего должно открыться оконное приложение RuBackup:

../../_images/rubackup.png

В окне приложения необходимо указать имя сервера, пользователя и тип аутентификации, как показано на скриншоте выше.

Пароль используется тот же, что и в файле group_vars/all.yml, в текущей конфигурации это ABC_1234567890.

/home/astra/iscsi-rubackup/conf/group_vars/all.yml