Миграция на текущую версию
Перед выполнением обновления рекомендуется сделать резервную копию базы данных, чтобы иметь возможность вернуться к первоначальному состоянию в случае возникновения ошибок.
Чтобы выполнить обновление Pangolin:
-
Скачайте и распакуйте дистрибутив на сервере.
-
Перейдите в каталог с распакованным дистрибутивом, а затем в каталог
installer. -
Перед запуском обновления заполните файл
hosts.ini, в зависимости от установленного решения, добавив информацию о хостах и учетных данных пользователя, которые будет использовать Ansible.Внимание!Данные должны содержать те же параметры, что и при установке.
-
Заполните настраиваемый конфигурационный файл
custom_file.yml. -
Заполните конфигурационный файл
all.yml. -
Выполните ansible-сценарий. Далее приведены шаблоны ansible-сценариев для обновления различных решений:
-
Обновление standalone решения:
ansible-playbook playbook_updates.yaml \
-i inventories/standalone/hosts.ini \
-t always,standalone \
--ask-vault-pass \
-vv \
-e '{"update_complexity_level": "update_complexity_level_2"}' \
--extra-vars "local_distr_path=${} \
custom_config=${} \
pangolin_license_path=${}" -
Обновление кластерного решения (cluster):
ansible-playbook playbook_updates.yaml \
-i inventories/cluster/hosts.ini \
-t always,cluster \
--ask-vault-pass \
-vv \
-e '{"update_complexity_level": "update_complexity_level_2"}' \
--extra-vars "local_distr_path=${} \
custom_config=${} \
pangolin_license_path=${}"
Описание параметров:
custom_config- абсолютный путь до файла конфигурацииcustom_file.yml;local_distr_path- абсолютный путь до загруженного и распакованного дистрибутива СУБД Pangolin.
Значения используемых в команде запуска Ansible ключей:
-i- путь до inventory-файла;--extra-vars- переменные, которые по приоритету важнее переменных из inventory;-t- теги для запуска;-v- уровень логирования Ansible. Может быть, как пустым, так и-vvvvvv, где запуск безv- минимальное логирование.
После завершения обновления у пользователя
postgresв его корневой директории будет сгенерирован файл с названием.process_work_statuses. В нем будетотображать состояние корректности установленных обновлений.Ниже приведен пример данного файла с конфигурации продукта
standalone-postgresql-pgbouncer:Разведка перед обновлением СУБД Pangolin запущена, текущая конфигурация standalone-postgresql-pgbouncer , тип обновления update_major, режим обновления hardlink
Разведка перед обновлением СУБД Pangolin завершена, текущая конфигурация standalone-postgresql-pgbouncer , тип обновления update_major, режим обновления hardlink
Обновление СУБД Pangolin запущено, текущая конфигурация standalone-postgresql-pgbouncer , с версии 04.003.00 на версию 05.002.00, статус обновления: {u'aggregate': False, u'hosts': {u'replica': False, u'master': False, u'etcd': False}, u'components': {u'haproxy': False, u'pgbouncer': False, u'patroni': False, u'pg': False, u'etcd': False, u'configuration': False}, u'types': {u'etcd': {u'finally': False, u'main': False}, u'pg': {u'major_main_migrate_replica_db': False, u'remove_pgaudit': False, u'major_pre': False, u'major_post': False, u'bootstrap': False, u'role_switched': False, u'major_main_migrate_master_db': False, u'major_main_start_after_migrate_db': False, u'not_started_db': False, u'started_db': False}, u'patroni': {u'finally': False, u'main': False}}}, тип обновления update_major, режим обновления hardlink
Обновление СУБД Pangolin успешно завершено, текущая конфигурация standalone-postgresql-pgbouncer , с версии 04.003.00 на версию 05.002.00, статус обновления: {u'aggregate': False, u'hosts': {u'replica': False, u'master': False, u'etcd': False}, u'components': {u'haproxy': False, u'pgbouncer': False, u'patroni': False, u'pg': False, u'etcd': False, u'configuration': False}, u'types': {u'etcd': {u'finally': False, u'main': False}, u'pg': {u'major_main_migrate_replica_db': False, u'remove_pgaudit': False, u'major_pre': False, u'major_post': False, u'bootstrap': False, u'role_switched': False, u'major_main_migrate_master_db': False, u'major_main_start_after_migrate_db': False, u'not_started_db': False, u'started_db': False}, u'patroni': {u'finally': False, u'main': False}}}, тип обновления update_major, режим обновления hardlink -
Подробное описание процесса обновления Pangolin приведено в разделе «Обновление» документа «Руководство по установке».
Диаграмма процесса миграции с помощью pgloader
В состав дистрибутива включена утилита pgloader. Она находится в каталоге с исполняемыми файлами Pangolin. При возникновении необходимости миграции данных из СУБД MSSQL/MySQL/SQLLite Администратор АС получает УЗ на сервере, готовит файл конфигурации и запускает миграцию.
