Автоматизированное обновление СУБД Pangolin
При переходе к данному разделу предполагается, что изучена информация общего блока «Обновление».
Автоматизированное обновление следует запускать на отдельном хосте не входящем в экземпляр кластера СУБД Pangolin.
Автоматизированное обновление поддерживает обновление исполняемых файлов с обновлением данных системных каталогов и без, а также обновление с переносом данных.
Ограничения и требования
Перед запуском Ansible плейбука, либо перед началом использования инструмента Pangolin Installer, убедитесь, что:
- На всех узлах, включая узел запуска, установлены требуемые пакеты, указанные в разделе «Список пакетных зависимостей, требуемых для корректной работы Ansible-скриптов».
- Установлена версия пакета
ansible-core
не ниже 2.11.0 и не выше 2.12.0. Данный пакет устанавливается в рамках поставляемого пакетаansible-venv-controller
, который входит в список пакетных зависимостей. - Выполнено предусловие.
Предусловие
Выполните настройка виртуального окружения перед началом использования скриптов автоматизации:
-
Разархивируйте rpm-пакет
venv
из 3rdparty части:tar -xz -f 3rdparty/3rdparty.tar.gz ./pangolin-ansible-venv-controller*
-
Выполните установку пакета:
- SberLinux, РЕД ОС, CentOS
- Red Hat Enterprise Linux
- Astra Linux
- Альт СП
sudo dnf install pangolin-ansible-venv-controller-{product_version}-{OS}.x86_64.rpm
sudo yum install pangolin-ansible-venv-controller-rhel{version_OS}.x86_64.rpm
sudo apt install pangolin-ansible-venv-controller-{product_version}_amd64.deb
sudo apt-get install pangolin-ansible-venv-controller-altlinux{version_OS}.x86_64.rpm
ПодсказкаПример готовой команды:
sudo dnf -y install pangolin-ansible-venv-controller-6.5.0-sberlinux8.x86_64.rpm
-
Активируйте виртуальное окружение для начала последующей установки:
source /opt/pangolin-ansible-venv-controller/bin/activate
Выбор способа обновления
Автоматизированное обновление СУБД, как и автоматизированная установка, доступно двумя способами:
- Запуск Ansible плейбуков предназначен больше для инженеров. Он более нативный и может использоваться, например, при интеграции его в работу собственных автоматизированных сценариев пользователя.
- Запуск обновления с помощью инструмента Pangolin Installer предназначен скорее для пользователей, которые хотят максимально упростить все процессы по использованию сценариев и не погружаться в тонкости их запуска. Инструмент предоставляет интуитивный запуск сценария, не требующего от пользователя никаких дополнительных шагов, кроме установки rpm/deb-пакета инструмента с помощью пакетного менеджера.
Воспользуйтесь одной из предложенных инструкций, в зависимости от выбора сценария:
Перед выполнением обновления рекомендуется сделать резервную копию базы данных до начала всех работ, чтобы избежать возможных проблем и иметь возможность откатиться к первоначальному состоянию в случае их возникновения.
Схемы процесса автоматизированного обновления
Схемы процессов различных сценариев обновления СУБД Pangolin автоматизированными скриптами представлены в разделе «Схемы работы сценариев автоматизации СУБД Pangolin».
Время обновления
В данном разделе приведена информация о произведенных тестовых обновлениях СУБД Pangolin, при помощи скриптов автоматизации, разной конфигурации и версии под нагрузкой.
Методика тестирования:
-
Установка и обновление продуктов версии:
- c 5.5.4 до 6.4.0 - обновление с переносом данных;
- c 6.1.8 до 6.4.0 - обновление исполняемых файлов с обновлением системных данных;
- с 6.1.6 до 6.3.1 - обновление исполняемых файлов;
- с 6.4.1 до 6.4.3 - обновление исполняемых файлов (патч).
-
Создание тестовой базы данных и генерация тестовых данных (~100ГБ).
-
Запуск сценария стабильной нагрузки на время обновления. Алгоритм:
- запускается нагрузка, продолжается 5 минут (100TPS);
- стартует обновление;
- после окончания обновления запускается повторная нагрузка на протяжении 10 минут.
-
Сравнение результатов
Результаты обновления:
Вариант обновления | Тип конфигурации | Время обновления | Размерность |
---|---|---|---|
c 5.5.4 до 6.4.0 | standalone | 25 | Минуты |
cluster | 64 | Минуты | |
c 6.1.8 до 6.4.0 | standalone | 10 | Минуты |
cluster | 23 | Минуты | |
с 6.1.6 до 6.3.1 | standalone | 9 | Минуты |
cluster | 24 | Минуты | |
с 6.4.1 до 6.4.3 | standalone | 11 | Минуты |
cluster | 32 | Минуты |
Обновление компонентов
Обновление компонентов происходит во время сценария обновления СУБД.
Проверка результатов обновления
Для проверки успешности обновления СУБД рекомендуется использовать чек-лист проверки корректности работы.
Восстановление продукта после неудачного обновления
Сценарий осуществляется автоматически, в случае возникновения проблемы, инструментом Pangolin Installer или Ansible плейбуком.
Пример сообщения из лог-файла после восстановления:
RLM.FAIL__E05002:В процессе обновления возникла ошибка. Было произведено восстановление версии СУБД Pangolin до запуска обновления. Ознакомьтесь с логами.__RLM.FAIL