Руководство по обновлению
Версия zVirt: 4.2
1. Введение
В данной инструкции описывается процедура обновления системы управления виртуализацией до версии 4.2. Используется следующая терминология:
-
Хост - Физический сервер или персональный компьютер.
-
Гипервизор - это хост, на котором работает одна или несколько виртуальных машин.
-
Менеджер управления - программное обеспечение zVirt, обеспечивающее управление системой виртуализации;
-
Хост с ролью HostedEngine - гипервизор, подготовленный для выполнения на нём виртуальной машины HostedEngine;
-
Хост с ВМ HostedEngine - гипервизор с ролью
HostedEngine
, на котором в текущий момент времени выполняется эта ВМ; -
Стандартный хост - гипервизор, на котором не может выполняться виртуальная машина HostedEngine;
-
Хост с менеджером управления - физический сервер или персональный компьютер, на котором установлен менеджер управления в режиме развёртывания Standalone;
-
Хост с менеджером управления и ролью гипервизора - гипервизор, на котором установлен менеджер управления в режиме развёртывания Standalone All-in-One.
-
Виртуальная машина HostedEngine - специальная виртуальная машина, на которой установлен менеджер управления. Выполняется только на хостах с ролью HostedEngine. zVirt развёрнут в режиме HostedEngine;
-
режимы развёртывания zVirt:
-
Hosted Engine - менеджер управления установлен в специальной виртуальной машине
HostedEngine
, которая выполняется на хостах с рольюHostedEngine
; -
Standalone - менеджер управления установлен на отдельном физическом хосте, который не выполняет функцию гипервизора;
-
Standalone All-in-One - менеджер управления установлен на физическом хосте, который выполняет функцию гипервизора.
-
Обновление zVirt до версии 4.2 заключается в обновлении программного обеспечения менеджера управления и гипервизоров.
Перед обновлением внимательно прочитайте инструкцию, чтобы избежать проблем с гипервизорами. |
Для обновления контроллеров Конвертации и Репликации обратитесь в службу технической поддержки. |
Далее в инструкции в командах настройки доступа к репозиториям будут встречаются <имя\_пользователя> <пароль>, их следует заменить (вместе с угловыми скобками) на имя пользователя (логин) и пароль, которые указаны в лицензионном сертификате, выданном при покупке продукта.
Перед выполнением обновления до версии 4.2 необходимо выполнить обновление текущей версии до 4.0 или выше. |
Перед обновлением важно учесть следующее:
|
2. Рекомендуемый алгоритм обновления
- Обновление zVirt в режиме Hosted Engine
-
-
Обновите все свободные хосты с ролью HostedEngine. Под "свободными" понимаются хосты, на которых в текущий момент не выполняется ВМ HostedEngine.
-
Переведите в режим обслуживания хост с ролью HostedEngine, на котором в текущий момент времени работает ВМ HostedEngine. Дождитесь окончания миграции ВМ HostedEngine. Выполните обновление этого хоста.
-
При необходимости обновите версии совместимости кластеров и центров данных.
- Обновление zVirt в режиме Standalone
- Обновление zVirt в режиме Standalone All-in-One
Если в процессе обновления был выполнен переход с AAA JDBC на Keycloak:
|
Перед выполнением процедуры обновления Менеджера управления убедитесь, что системное имя Менеджера управления (хоста с Менеджером управления в режимах Standalone и Standalone All-in-One) задано в нижнем регистре. Для этого можно использовать команду Если имя задано в верхнем регистре, перед выполнением обновления воспользуйтесь инструкцией для смены регистра системного имени. |
3. Обновление zVirt в режиме развёртывания HostedEngine
Обновление заключается в обновлении менеджера управления, который установлен в ВМ HostedEngine и гипервизоров. Сначала включите на хосте с ВМ HostedEngine режим глобального обслуживания кластера в веб-интерфейсе или выполнив, подключившись по SSH к хосту, следующие команды:
hosted-engine --set-maintenance --mode=global
hosted-engine --vm-status
Убедитесь, что включен режим глобального обслуживания - в выводе должна присутствовать надпись !! Cluster is in GLOBAL MAINTENANCE mode !!
:
3.1. Обновление хостов с ролью HostedEngine
Перед началом обновления гипервизоров (стандартных хостов и хостов с ролью HostedEngine), их требуется переводить в режим обслуживания, для чего необходимо обеспечить отсутствие на нём выполняющихся виртуальных машин:
|
Хост с ролью Hosted Engine - это хост, на котором установлены пакеты Hosted Engine, обеспечивающие возможность размещения на хосте виртуальной машины с Менеджером управления. |
Переведите хост в режим обслуживания если хостов с такой ролью несколько, иначе выключите или мигрируйте все виртуальные машины на другой хост.
Если в среде используется модуль "Репликация и DR" и на обновляемом хосте запущена ВМ агент-отправитель с уровнем поиска ВМ в значении "Хост", то данную ВМ необходимо выключить. |
Если для обновляемого хоста были заданы дополнительные параметры ядра, перед обновлением их необходимо сбросить. Для этого:
Дождитесь переустановки хоста и приступайте к обновлению. |
-
Подключитесь по SSH к хосту.
-
Обновите репозитории в соответствии с разделом Обновление репозиториев
-
Установите rpm-пакет со скриптом автообновления zvirt-update:
dnf install -y zvirt-update
-
Запустите процесс автообновления с помощью команды:
zvirt-update
-
Следуйте инструкциям на экране.
-
По окончанию обновления если хост с ролью HostedEngine является единственным хостом такого типа в кластере:
-
перезапустите сервисы HA:
systemctl restart ovirt-ha-broker.service systemctl restart ovirt-ha-agent.service
-
запустите ВМ HostedEngine:
hosted-engine --vm-start
-
Убедитесь в корректности статуса ВМ HostedEngine (для запуска требуется некоторое время)
hosted-engine --vm-status
Рисунок 1. Ожидаемый статус ВМ HostedEngine
-
-
Выведите гипервизор из обслуживания:
-
На портале администрирования перейдите
. -
Выделите нужный хост и нажмите Управление > Включить.
-
Если в среде используется модуль "Репликация и DR" и на обновляемом хосте до обновления была запущена ВМ агент-отправитель с уровнем поиска ВМ в значении "Хост", то данную ВМ необходимо запустить. |
Для проверки того, что хост успешно обновился:
-
На портале администрирования перейдите
. -
Нажмите на имя обновлённого хоста для перехода в подробное представление.
-
Проверьте версию ОС на вкладке Общее:
Рисунок 2. Ожидаемая версия ОС
3.2. Обновление Менеджера управления в виртуальной машине HostedEngine
Если в среде используются модули "Репликация и DR" или/и "Конвертация", перед началом обновления необходимо остановить или дождаться завершения активных процессов:
После завершения процессов можно приступать к обновлению Менеджеров управления в ОЦОД и РЦОД. |
-
Подключитесь по SSH к виртуальной машине
HostedEngine
. -
Обновите репозитории в соответствии с разделом Обновление репозиториев
-
Установите rpm-пакет со скриптом автообновления zvirt-update:
dnf install -y zvirt-update
-
Запустите процесс автообновления с помощью команды:
zvirt-update
-
Следуйте инструкциям на экране.
-
Верните рабочий режим на хосте с ВМ HostedEngine и убедитесь, что режим глобального обслуживания выключен (в выводе отсутствует уведомление
!! Cluster is in GLOBAL MAINTENANCE mode !!
):hosted-engine --set-maintenance --mode=none hosted-engine --vm-status
Рисунок 3. Ожидаемый статус ВМ HostedEngineЕсли ВМ HostedEngine не запустилась, запустите её:
hosted-engine --vm-start
Если в среде используются модули "Репликация и DR" или/и "Конвертация" и во время обновления Менеджеров управления была включена поддержка Keyclock, необходимо:
|
Проверить обновление можно на странице входа веб-интерфейса
и наличием нового функционала.
4. Обновление хостов
Перед началом обновления необходимо перевести гипервизор с Менеджером управления в режим обслуживания, для чего необходимо обеспечить отсутствие на нём выполняющихся виртуальных машин:
|
Если для обновляемого хоста были заданы дополнительные параметры ядра, перед обновлением их необходимо сбросить. Для этого:
Дождитесь переустановки хоста и приступайте к обновлению. |
-
Переведите хост в режим обслуживания.
-
Подключитесь по SSH к хосту.
-
Обновите репозитории в соответствии с разделом Обновление репозиториев
-
Установите rpm-пакет со скриптом автообновления zvirt-update:
dnf install -y zvirt-update
-
Запустите процесс автообновления с помощью команды:
zvirt-update
-
Следуйте инструкциям на экране.
-
Выведите гипервизор из обслуживания:
-
На портале администрирования перейдите
. -
Выделите нужный хост и нажмите Управление > Включить.
-
Для проверки того, что хост успешно обновился:
-
На портале администрирования перейдите
. -
Нажмите на имя обновлённого хоста для перехода в подробное представление.
-
Проверьте версию ОС на вкладке Общее:
Рисунок 4. Ожидаемая версия ОС -
Для проверки обновления модуля SDN выполните следующую команду:
ovn-controller --version
Ожидаемые значения:
ovn-controller 23.09.1 Open vSwitch Library 3.2.2 OpenFlow versions 0x6:0x6 SB DB Schema 20.29.0
5. Обновление Менеджера управления в режиме развёртывания Standalone
Если в вашей среде Менеджер управления развернут в вариации Standalone All-in-One, воспользуйтесь инструкцией Обновление Менеджера управления в режиме развёртывания Standalone All-in-One. |
Если в среде используются модули "Репликация и DR" или/и "Конвертация", перед началом обновления необходимо остановить или дождаться завершения активных процессов:
После завершения процессов можно приступать к обновлению Менеджеров управления в ОЦОД и РЦОД. |
-
Подключитесь по SSH к хосту с менеджером управления.
-
Обновите репозитории в соответствии с разделом Обновление репозиториев
-
Создайте dump ovirt-engine:
su - postgres -c "pg_dumpall > ~/pgdump_file.sql"
-
Остановите сервисы postgresql и ovirt-engine:
systemctl stop postgresql.service ovirt-engine.service
-
Выполните перенос конфигурации postgresql:
mv /var/lib/pgsql/data /var/lib/pgsql/data_old
-
Удалите все зафиксированные версии пакетов из списка versionlock.list и убедитесь, что список пуст:
dnf versionlock clear dnf versionlock list rm -rf /etc/dnf/modules.d/*
-
Обновите релиз:
rm -rf /etc/dnf/protected.d/*-release-host-node.conf dnf remove -y zvirt-release-host-node dnf install -y zvirt-release-host-node
-
Установите пакет zvirt-standalone:
dnf install -y zvirt-standalone --allowerasing
-
Инициализируйте postgresql и восстановите БД
postgresql-setup --initdb cp /var/lib/pgsql/data_old/pg_hba.conf /var/lib/pgsql/data/ cp /var/lib/pgsql/data_old/pg_ident.conf /var/lib/pgsql/data/ cp /var/lib/pgsql/data_old/postgresql.conf /var/lib/pgsql/data/ systemctl start postgresql.service su - postgres -c 'psql -f ~/pgdump_file.sql postgres'
-
Выполните следующие команды:
rm -rf /etc/dnf/protected.d/*-release-host-node.conf dnf downgrade python3-blivet
-
Выполните команду обновления пакетов. После чего все пакеты zVirt будут обновлены на новые:
dnf -y update --allowerasing
-
Выполните следующую команду:
dnf reinstall zvirt-release-host-node
-
Запустите установку Менеджера управления:
engine-setup --offline
-
После завершения установки перезапустите сервисы:
systemctl restart ovirt-engine.service
Если в среде используются модули "Репликация и DR" или/и "Конвертация" и во время обновления Менеджеров управления была включена поддержка Keyclock, необходимо:
|
Проверить обновление можно на странице входа веб-интерфейса
и наличием нового функционала.
6. Обновление Менеджера управления в режиме развёртывания Standalone All-in-One
Перед началом обновления необходимо перевести гипервизор с Менеджером управления в режим обслуживания, для чего необходимо обеспечить отсутствие на нём выполняющихся виртуальных машин:
|
Если в среде используются модули "Репликация и DR" или/и "Конвертация", перед началом обновления необходимо остановить или дождаться завершения активных процессов:
После завершения процессов можно приступать к обновлению Менеджеров управления в ОЦОД и РЦОД. |
-
Переведите хост в режим обслуживания.
-
Подключитесь по SSH к хосту.
-
Обновите репозитории в соответствии с разделом Обновление репозиториев
-
Установите rpm-пакет со скриптом автообновления zvirt-update:
dnf install -y zvirt-update
-
Запустите процесс автообновления с помощью команды:
zvirt-update
-
Следуйте инструкциям на экране.
-
Выведите гипервизор из обслуживания:
-
На портале администрирования перейдите
. -
Выделите нужный хост и нажмите Управление > Включить.
-
Если в среде используются модули "Репликация и DR" или/и "Конвертация" и во время обновления Менеджеров управления была включена поддержка Keyclock, необходимо:
|
Проверить обновление можно на странице входа веб-интерфейса
и наличием нового функционала.
7. Обновление версий совместимости
7.1. Обновление версии совместимости кластеров
После обновления менеджера управления и хостов необходимо обновить версию совместимости кластеров для получения доступа к новому функционалу.
Обновление версии совместимости кластера необходимо выполнять строго после обновления менеджера управления и всех хостов в этом кластере. |
Необходимо предусмотреть сервисное окно в работе сервисов, выполняющихся на ВМ, поскольку для обновления версии совместимости ВМ требуется их перезагрузка. |
-
На портале администрирования перейдите в
. -
Выделите нужный кластер и нажмите Изменить.
-
На вкладке Общее в меню Версия совместимости выберите последнюю доступную версию.
-
Нажмите OK.
Если в кластере есть запущенные ВМ, появится предупреждение, содержащее описание того, каким образом необходимо обновить версию совместимости ВМ. Нажмите OK. А затем следуйте этому описанию.
7.2. Обновление версии совместимости центров данных
Обновление версии совместимости центра данных необходимо выполнять после обновления версии совместимости всех кластеров в этом центре данных. |
-
На портале администрирования перейдите в
. -
Выделите нужный центр данных и нажмите Изменить.
-
В окне редактирования центра данных установите последнюю версию совместимости.
-
Нажмите OK.
7.3. Проверка версий совместимости
Для проверки версий совместимости выполните следующие действия:
-
Для центра данных: перейдите в
и убедитесь в том, что установлена нужная версия совместимости. -
Для кластера: зайдите в подробное представление нужного кластера и убедитесь, что установлена корректная версия совместимости.
-
Для ВМ: зайдите в подробное представление нужной ВМ и убедитесь, что установлена корректная версия совместимости, а также в отсутствии предупреждения о несоответствии версии.
8. Обновление репозиториев
Описанная ниже последовательность действий позволит обновить репозитории zVirt до версии 4.2.
Обновление репозиториев - это часть процесса обновления компонентов, поэтому приступайте к данной процедуре только тогда, когда это предусматривает процедура обновления соответствующего компонента. |
-
Удалите старые репозитории:
dnf remove -y zvirt-repos-stable rm -rf /etc/yum.repos.d/* dnf clean all
-
С помощью команды
wget
скачайте пакет zvirt-repos-stable с новыми репозиториями и установите его:wget --user=<имя_пользователя> --password=<пароль> https://repo-zvirt.orionsoft.ru/repository/zvirt-4/4.2/packages/zvirt-repos-stable-4.2-X.XXXX.zvirt.el8.noarch.rpm dnf install -y zvirt-repos-stable-4.2-X.XXXX.zvirt.el8.noarch.rpm
Если на хосте уже настроен доступ к репозиторию можно установить пакет непосредственно из него:
dnf install -y https://repo-zvirt.orionsoft.ru/repository/zvirt-4/4.2/packages/zvirt-repos-stable-4.2-X.XXXX.zvirt.el8.noarch.rpm
<имя_пользователя> и <пароль> берутся из лицензионного сертификата, выданного при покупке продукта
-
Убедитесь, что включены новые репозитории zvirt-main и zvirt-extras:
dnf repolist all
Рисунок 5. Ожидаемый вывод командыdnf repolist all
Если указанные репозитории по каким-то причинам отключены, их можно включить следующей командой
dnf config-manager --enable "*"
После использования команды убедитесь, что все репозитории zVirt включились
-
Настройте доступ к репозиториям:
zvirt-credentials.py -u <имя_пользователя> -p <пароль>
Если утилита не найдена, переустановите её:
wget --user=<имя_пользователя> --password=<пароль> https://repo-zvirt.orionsoft.ru/repository/zvirt-4/4.2/packages/zvirt-credentials-0.1.1-1.33204.zvirt.el8.noarch.rpm (1) dnf install -y zvirt-credentials-0.1.1-1.33204.zvirt.el8.noarch.rpm
1 <имя_пользователя> и <пароль> берутся из лицензионного сертификата, выданного при покупке продукта.
9. Возможные ошибки
- Ошибка 1
После обновления и перезагрузки хоста с ролью HostedEngine
, который является единственным с этой ролью, может не запуститься ВМ HostedEngine:
hosted-engine --vm-status
The hosted engine configuration has not been retrieved from shared storage yet,
please ensure that ovirt-ha-agent service is running.
В этом случае следует перезапустить сервис ovirt-ha-agent
:
systemctl restart ovirt-ha-agent
и через некоторое время проверить состояние ВМ:
hosted-engine --vm-status
--== Host znode1.local.ru (id: 1) status ==--
Host ID : 1
Host timestamp : 608
Score : 3400
Engine status : {"vm": "up", "health": "good", "detail": "Up"}
- Ошибка 2
При переходе в раздел
выдает ошибку и не отображает Дата центры при создании логической сети.В этом случае вам будет необходимо перезагрузить службы:
systemctl restart zvirt-engine-backend
systemctl restart ovirt-engine
- Ошибка 3
Обновление хоста завершается следующей ошибкой:
Error: Running QEMU processes found, cannot upgrade Vdsm
Эта ошибка указывает на то, что на обновляемом хосте есть включенные ВМ. Для устранения ошибки выключите или мигрируйте все ВМ с обновляемого хоста и перезапустите процесс обновления.