Развёртывание и настройка oVirt 4.0. Часть 6. Обновление Hosted Engine

imageУчитывая то обстоятельство, что oVirt постоянно развивается и каждое очередное обновление помимо расширения функционала имеет ряд исправлений обнаруженных ранее ошибок, имеет смысл задуматься об установке этих обновлений, особенно если они устраняют проблемы, с которыми вам пришлось столкнуться. В первой части данной серии заметок мы рассматривали процедуру развёртывания oVirt Hosted Engine на примере версии 4.0.1. На протяжении того времени, как были написаны последующие заметки серии, вышло пару обновлений oVirt внутри 4 версии, и на данный момент актуальная версия — 4.0.3. В этой заметке мы рассмотрим практический пример обновления oVirt Hosted Engine до текущей актуальной версии.

Основной отправной точкой для выяснения актуального порядка обновления Hosted Engine является документ oVirt Hosted Engine Howto — Upgrade Hosted Engine.

Посмотреть текущую версию oVirt Engine можно на веб-портале администрирования oVirt (в правом верхнем углу пункт About). В моём случае на момент обновления используется версия oVirt Engine Version: 4.0.1.1-1.el7.centos

 

Шаг 1. Включаем Hosted Engine Global Maintenance

Включаем на любом из хостов обслуживающих Hosted Engine глобальный режим обслуживания, чтобы отключить наблюдение HA-агентов за виртуальной машиной Hosted Engine:

# hosted-engine --set-maintenance --mode=global

Убеждаемся в том, что в консоли статус всех хостов Hosted Engine изменился на Global Maintenance Enabled:

image

 

Шаг 2. Обновляем виртуальную машину Hosted Engine

Переходим на консоль виртуальной машины Hosted Engine и обновляем в системе все доступные к обновлению пакеты, в частности нас интересует обновлённая версия пакета ovirt-engine-setup, который нам в последствии понадобится.

# yum update

image

Забегая вперёд, скажу, что первая моя попытка обновления (выполнение команды engine-setup) завершилась ошибкой, говорящей о том, что Hosted Engine не переведён в режим глобального обслуживания и поэтому обновление невозможно. Это было довольно странно, ведь я точно знал, что режим обслуживания я включил. В конечном итоге, я попросту перезагрузил виртуальную машину с Hosted Engine (Global Maintenance при этом у меня оставался включённым на хостах и мне пришлось включать машину после выключения гостевой ОС вручную). После того, как ВМ снова запустилась и стал доступен портал администрирования oVirt, я снова проверил то, что Global Maintenance включён:

# hosted-engine --vm-status

...
!! Cluster is in GLOBAL MAINTENANCE mode !!
--== Host 1 status ==--
...
        maintenance=False
        state=GlobalMaintenance
        stopped=False
...
--== Host 2 status ==--
...
        maintenance=False
        state=GlobalMaintenance
        stopped=False
...
!! Cluster is in GLOBAL MAINTENANCE mode !!

В итоге после перезагрузки ВМ процедура обновления прошла успешно.

Итак, после окончания обновления пакетов запускаем в виртуальной машине Hosted Engine процедуру обновления:

# engine-setup

После этого будет запущена процедура обновления, которая в штатной ситуации потребует лишь несколько раз нажать Enter, давая утвердительные ответы на вопросы задаваемые программой обновления…

image

image

image

image

В процессе обновления будет создана копия БД Engine (на случай отката, если процедура обновления не будет выполнена успешно), загружены и установлены все необходимые пакеты…

image

После завершения обновления перезапустим веб-консоль портала администрирования oVirt и убедимся в том, что отображается новая версия.

image

 

 

Шаг 3. Обновляем первый хост Hosted Engine

Перед обновлением первого хоста переводим его в веб-консоли oVirt в Maintenance Mode. В процессе перевода в режим обслуживания с хоста должны будут эвакуироваться виртуальные машины. Если этого по какой-то причине не произошло (с таким приходилось сталкиваться), можно выполнить перемещение виртуальных машин на другой хост путём штатной живой миграции.

image

Также если на хосте, который мы собрались обновлять, в данный момент активна роль SPM, то в процессе перевода хоста в режим обслуживания эта роль также автоматически должна будет перейти на другой доступный хост

image

Затем на хосте, переведённом в режим обслуживания, устанавливаем все доступные к обновлению пакеты:

# yum update -y

Перезапускаем службы oVirt на хосте:

# service vdsmd restart
# service ovirt-ha-broker restart
# service ovirt-ha-agent restart

Или же для большей надёжности можно полностью перезагрузить хост.

 

Шаг 4. Отключаем Hosted Engine Global Maintenance

Далее отключаем глобальный режим обслуживания, чтобы снова задействовать наблюдение HA-агентов за виртуальной машиной Hosted Engine:

# hosted-engine --set-maintenance --mode=none

Затем активируем уже обновлённых хост в веб-консоли oVirt, при этом обращаем внимание на то, что в консоли теперь отображается обновлённая версия службы VDSM.

image

Через несколько минут после отключения глобального режима обслуживания и активации обновлённого хоста, виртуальная машина Hosted Engine может начать процедуру миграции на этот обновлённый хост (причиной тому будут очки HA Score):

image

Когда миграция виртуальной машины Hosted Engine на обновлённый хост закончиться, можно приступать к обновлению остальных хостов.

 

Шаг 5. Обновляем второй и последующие хосты Hosted Engine

Обновление остальных хостов Hosted Engine выполняется по аналогичной схеме:

  • Включаем глобальный режим обслуживания Hosted Engine
  • Включаем режим обслуживания хоста (эвакуация виртуальных машин)
  • Обновляем хост с последующим перезапуском служб или перезагрузкой
  • Выводим хост из режима обслуживания и отключаем глобальный режим обслуживания Hosted Engine

***

Рассмотренный в этой заметке пример обновления практически применим только к конфигурации Hosted Engine и только для указанных здесь версий. При обновлении до следующих версий oVirt описанная логика процедуры обновления может остаться такой же, а может и измениться, поэтому на этапе планирования развёртывания каждого последующего обновления крайне рекомендуется внимательно изучать Release Notes к новой версии.  

 

Дополнительные источники информации:

Добавить комментарий