Оглавление

Введение

На странице описывается порядок обновления ПК СВ "Брест" без остановки кластера.

Требования

Порядок обновления узлов

Обновление узлов кластера на Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) выполняется стандартным для debian-систем пакетным менеджером apt. Однако, чтобы сохранить обслуживание клиентов облака во время обновления его узлов, необходимо придерживаться приведенных здесь рекомендаций.

Обновлять узлы следует в следующем порядке:

  1. Узлы виртуализации по очереди;
  2. front-end (если они развернуты отдельно от узлов виртуализации).

Подготовка узла виртуализации

Для обновления узла виртуализации он должен быть выведен в режим обслуживания. Для этого:

  1. Войдите в веб-интерфейс администрирования облака;
  2. Мигрируйте все работающие ВМ с этого узла на другие узлы;
  3. Перейдите в Infrastructure - Hosts;
  4. Отметьте нужный узел и нажмите "Off".

Обновление

Войдите в командную строку узла учетной записью <local-admin> и выполните команды:

sudo apt update

sudo apt dist-upgrade

После окончания установки пакетов перезагрузите узел.

Включение узла

  1. Перейдите в интерфейс управления облаком;
  2. Перейдите в Infrastructure - Hosts;
  3. Отметьте нужный узел и нажмите "Enable". Дождитесь статуса "ON" у данного узла.
  4. Мигрируйте на него виртуальные машины и убедитесь в их работоспособности.

Далее нужно повторить порядок обновления для следующего узла виртуализации.

Обновление front-end

Если не используется RAFT, то на время перезагрузки front-end в ходе обновления доступ к облаку и управление им будет прервано

Если у вас несколько front-end и они работают вместе в конфигурации RAFT, выполняйте их обновление по очереди.

В первую очередь переведите все работающие ВМ с обновляемого узла на другой узел.

Сделайте резервную копию файла /etc/one/oned.conf

Сделайте резервную копию базы данных командой:

sudo -u postgres /usr/bin/pg_dump --dbname=onedb  --format=plain --blobs --verbose --clean --create --file="/tmp/leader_db.backup"

Файл /tmp/leader_db.backup  будет удален после перезагрузки узла. Если собираетесь перезагружать узел, сохраните копию базы к другом каталоге.


Проверьте, какой узел является лидером в данный момент командой:

sudo onezone show 0
Если лидер в данный момент именно тот узел, который вы собираетесь обновить, то перезапустите сервис opennebula на этом узле (лидером станет другой узел) командой:
sudo systemctl restart opennebula
Войдите в командную строку front-end под учетной записью <local-admin> и выполните команды:

sudo apt update

sudo apt dist-upgrade

При обновлении будет задан вопрос о замене файла /etc/one/oned.conf на новую версию. Ответ выберите в зависимости от версии обновления:

Необходимо оставить установленную версию (указать N или просто нажать "ввод"):

Далее сделайте резервную копию файла /etc/apache2/sites-available/000-default.conf.

Выполните команду:

sudo brestcloud-configure

Восстановите файл  /etc/apache2/sites-available/000-default.conf из резервной копии (это позволит вам подключаться к Бресту по старой схеме).

Если требуется использование https:// протокола для подключения к front-end по плавающему имени выполните пункты "Настройка веб-сервисов" и "Настройка Apache2" описанные в разделе RAFT.


После окончания установки пакетов перезагрузите узел.

Если у вас несколько front-end и они работают вместе в конфигурации RAFT, прежде, чем переходить к обновлению следующей машины, убедитесь, что предыдущая корректно вернулась в зону. Для этого войдите в ее командную строку и проверьте вывод команды

sudo onezone show 0
Если статус обновленной машины "follower" или "leader" -  повторите действия пункта "Обновление front-end" для остальных узлов.