Stronghold Enterprise Edition (EE) можно обновить до Stronghold Certified Security Edition (CSE) одним из следующих способов:
- в исполнении Standalone;
- в исполнении DKP.
Поддерживается обновление с Stronghold EE 1.15.x до Stronghold CSE 1.16.0. Если используется версия Stronghold EE ниже 1.15.x, сначала обновитесь до последней версии ветки.
При обновлении до Stronghold CSE возможна временная недоступность сервиса.
Обновление в исполнении Standalone
Перед началом обновления выполните следующие действия:
Проверьте текущую версию Stronghold:
stronghold versionСохраните unseal-ключи и root-токен в защищённое хранилище.
Создайте снимок (snapshot) кластера Stronghold. Пример:
stronghold operator raft snapshot save stronghold-$(date +%F_%H-%M).snap ls -lh stronghold-*.snapПроверьте, что снапшот создан:
ls -lh ./stronghold-*.snapПолученные файлы храните вне кластера Stronghold и вне узлов, на которых он запущен.
Подготовьте пакет или бинарный файл Stronghold CSE 1.16.0 на каждом узле.
Обновление кластера с одним узлом
Для обновления кластера с одним узлом выполните следующие действия:
Проверьте состояние кластера перед обновлением:
stronghold statusНеобходимо наличие следующих значений:
Initialized true Sealed false Version 1.15.0+ee HA Mode activeОстановите сервис
stronghold:sudo systemctl stop strongholdЗамените бинарный файл Stronghold EE на бинарный файл Stronghold CSE 1.16.0.
Убедитесь, что права на бинарный файл остались прежними, либо выполните:
sudo chmod 511 /opt/stronghold/stronghold sudo chown stronghold:stronghold /opt/stronghold/strongholdЗапустите сервис
stronghold:sudo systemctl start stronghold sudo systemctl status stronghold --no-pagerПроверьте, что узел запустился корректно:
stronghold status stronghold versionПроверьте, что:
- сервис
strongholdнаходится в состоянииRunning; - ошибки запуска отсутствуют;
- версия соответствует 1.16.0 (CSE).
- сервис
При необходимости распечатайте Stronghold.
Обновление кластера с несколькими узлами
Обновление кластера с несколькими узлами выполняется поочерёдно, чтобы кластер оставался доступным.
Определите текущий leader-узел:
stronghold statusВ выводе будет указан адрес текущего leader-узла в поле
HA Cluster:... HA Cluster https://10.241.32.36:8201 ...Зафиксируйте leader-узел.
Поочерёдно обновите все follower-узлы. На каждом follower-узле:
Остановите сервис:
sudo systemctl stop strongholdЗамените бинарный файл Stronghold EE на Stronghold CSE 1.16.0. При необходимости восстановите права:
sudo chmod 511 /opt/stronghold/stronghold sudo chown stronghold:stronghold /opt/stronghold/strongholdЗапустите сервис:
sudo systemctl start stronghold sudo systemctl status stronghold --no-pagerПри необходимости распечатайте узел Stronghold.
Проверьте состояние узла:
stronghold status stronghold versionПроверьте, что:
- сервис
strongholdнаходится в состоянииRunning; - ошибки запуска отсутствуют;
- версия соответствует 1.16.0 (CSE).
- сервис
Переходите к следующему follower-узлу только после успешной проверки текущего.
После обновления всех follower-узлов выполните смену leader-узла:
stronghold operator step-down # Подождите некоторое время. stronghold statusОжидаемый результат: leader-узел сменился, в поле
HA Clusterуказано другое значение.Обновите прежний leader-узел:
sudo systemctl stop stronghold # Замените бинарный файл Stronghold EE на Stronghold CSE 1.16.0. # При необходимости восстановите права: # sudo chmod 511 /opt/stronghold/stronghold # sudo chown stronghold:stronghold /opt/stronghold/stronghold sudo systemctl start stronghold sudo systemctl status stronghold --no-pager stronghold status stronghold versionПроверьте, что:
- сервис
strongholdнаходится в состоянииRunning; - ошибки запуска отсутствуют;
- версия соответствует 1.16.0 (CSE).
- сервис
При необходимости распечатайте последний узел Stronghold.
Выполните финальную проверку кластера:
stronghold status stronghold versionПроверьте, что:
- все узлы кластера доступны;
- отсутствуют ошибки репликации и проблемы с кворумом;
- на узлах установлена версия 1.16.0 (CSE).