Обновление конфигурационного файла
При необходимости вы можете обновить модуль резервного копирования Openstack. При этом обновится конфигурационный файл модуля.
В конфигурационном файле модуля присутствуют следующие необязательные параметры:
##
## Transport to execute remote scrips: before_backup, after_backup
# possble values: virsh, ssh
# default value: virsh
#script_transport virsh
##
## User name for ssh transport
#ssh_user rubackup_service_user
## Connection timeout for ssh transport, seconds
# minimum 1, maximum 300, default 5
#ssh_connection_timeout 30
## ssh key file for ssh transport, full path only!
#ssh_key_file /root/my_keys/my_key_file
## project`s region, optional
region NONE
Пользователь при создании правила на резервное копирование может задать путь
к скрипту внутри виртуальной машины. Скрипт, путь к которому указан
в качестве значения параметра script_before_snapshot
, будет выполнен на
виртуальной машине, для которой выполняется резервное копирование, перед
созданием снимков состояния дисков этой виртуальной машины.
Скрипт, путь к которому указан в качестве значения параметра
script_after_snapshot
, будет выполнен на виртуальной машине, для
которой выполняется резервное копирование, после создания снэпшотов
дисков этой виртуальной машины.
Выполняемые действия для этих скриптов определяют пользователи.
Значение скрипт-транспорта virsh ставится по умолчанию. При этом, если необходима функция запуска скриптов на целевой виртуальной машине, выполните следующие требования:
-
Настройте доступ к API OpenStack в конфигурационном файле
/opt/rubackup/etc/rb_module_openstack.conf
(подробнее в разделе «Установка Клиента RuBackup»), кроме основной пользовательской учетной записи конфигурационный файл может содержать учетную запись администратора. -
Разверните виртуальную машину, для которой предполагается создание резервных копий, используйте гипервизор типа QEMU.
-
Для виртуальной машины, на которой развернут клиент RuBackup и модуль rb_module_openstack:
-
установите пакет libvirt-clients;
-
скопируйте SSH-ключ на узлы гипервизоров платформы виртуализации. Это необходимо для беспарольного SSH-подключения с виртуальной машины, на которой развернут клиент RuBackup, к узлам гипервизоров платформы виртуализации;
-
на виртуальной машине, для которой предполагается создание резервных копий, установите пакет qemu-guest-agent.
-
Если выбрать значение ssh
, то для запуска скриптов на виртуальной машине,
для которой создаётся резервная копия, вместо обращения к гипервизору будет
использоваться подключение по SSH с узла, где установлен клиент и этот
модуль. В этом случае пользователю необходимо задать новые параметры
в конфигурационном файле, где:
-
ssh_user
— пользователь от имени которого будет инициировано подключение к виртуальной машине через SSH для запуска на ней скрипта. Предполагается, что этому пользователю предоставлены внутри целевой виртуальной машины права на исполнение скриптовscript_before_snapshot
,script_after_snapshot
или/opt/rubackup/scripts/rustack.sh
. -
ssh_connection_timeout
— максимальное время ожидания в секундах, в течение которого модуль ожидает успешное подключение по SSH к виртуальной машине. Если соединение не будет установлено в заданное время, задача на создание резервной копии завершится с ошибкой. -
ssh_key_file
— полный путь к файлу SSH-ключа для пользователя, указанного опциейssh_user
, который позволяет этому пользователю подключаться к виртуальным машинам (для которых предполагается создание резервных копий) в проекте OpenStack без ввода пароля.
Если указать параметр для region
, то его значение будет использовано
совместно с username
, password
, domain
, project_id
в запросе токена
аутентификации для взаимодействия с API. По умолчанию значение — NONE
,
т.е. region не будет фигурировать при запросе токена аутентификации для
взаимодействия с API.
Эта версия модуля содержит конфигурационный файл, параметры которого могут отличаться от текущей версии, поэтому при обновлении модуля на новую версию также обновляется и его конфигурационный файл. Для переноса значений параметров настроек из старого конфигурационного файла в новый предусмотрен механизм слияния конфигурационных файлов.
Может существовать 3 версии конфигурационного файла:
-
/opt/rubackup/etc/rb_module_openstack.conf
— текущий конфигурационный файл модуля. После слияния будет переименован вrb_module_openstack_old.conf
. -
/opt/rubackup/etc/rb_module_openstack_old.conf
— старый конфигурационный файл, который был загружен в предыдущее обновление или при установке модуля. -
/opt/rubackup/etc/rb_module_openstack_upgrade.conf
— конфигурационный файл обновления. Должен быть создан вручную.
Механизм слияния конфигурационных файлов запускается автоматически при
обновлении пакета deb
или rpm
.
Автоматическое обновление конфигурационного файла
Автоматическое обновление конфигурационного файла выполняется при обновлении
пакетов deb
или rpm
и не требует действий от пользователя.
Порядок автоматического обновления:
-
Текущий конфигурационный файл
rb_module_openstack.conf
переименовывается вrb_module_openstack_old.conf
. -
Создается файл
/opt/rubackup/etc/rb_module_openstack.conf
, который далее будет использован в качестве текущего. -
В созданный файл
rb_module_openstack.conf
добавляются параметры конфигурационного файла, которые поставляются в пакетеdeb
илиrpm
. При этом все параметры закомментированы (выставлен символ#
перед каждой строкой). -
Происходит слияние старого конфигурационного файла, конфигурационного файла обновления и нового конфигурационного файла, который поставляется в пакете, при этом:
-
Значение каждого параметра берется из конфигурационного файла обновления.
-
Если в конфигурационном файле обновления параметра нет, то значение берется из старого конфигурационного файла.
-
Если в старом конфигурационном файле значение параметра отсутствует, то такое значение:
-
Добавляется, если это обязательный параметр. Добавляется без значения.
-
Не добавляется, если настройка не обязательная.
-
-
Если у обязательного параметра нет значения, то при установке пакета возникнет ошибка. Информацию об ошибке можно посмотреть в логе установки:
-

В результате автоматического обновления будут обновлены конфигурационные
файлы rb_module_openstack.conf
и rb_module_openstack_vol.conf
. Модуль
Openstack будет готов к работе.
При слиянии конфигурационных файлов будут удалены все комментарии из старого конфигурационного файла.
Если при обновлении конфигурационного файла возникли ошибки, то пользователю
необходимо проверить корректность /opt/rubackup/etc/rb_module_openstack.conf
и /opt/rubackup/etc/rb_module_openstack_vol.conf
и при необходимости
заполнить параметры вручную.