8. Установка RuBackup

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