Обновление Hyper-V кластера Windows 2012 до 2012R2

Внесу поправку в заметку, так как первый полученный результат, описанный ниже (зачеркнутый), был получен случайно.

В связи с выходом Windows Server 2012 R2 предстоит обновление инфраструктуры. По заявлению ответственных лиц компании Microsoft, ноды с операционными системами 2012 и 2012R2 могут работать в одном кластере совместно.

Ноды с разными версиями операционных систем работать совместно не могут. Один раз у меня такая схема переезда получилась, однако повторить я ее не смог. Для корректного переезда с 2012 на 2012R2 необходимо пользоваться схемой создания параллельного кластера и перевозом кластерных ресурсов между кластерами. Операция довольно простая, но для ее осуществления необходим запас свободных вычислительных мощностей в кластере, чтобы можно было безопасно извлечь хотя бы одну ноду и построить на ней новый кластер.

Последовательность действий при переезде (пример для двухнодового кластера):
1. Освобождаем хост от виртуальных машин, мигрируем их на другую ноду
2. Извлекаем ноду из кластера
3. Запускаем обновление операционной системы. Здесь процедура вполне стандартная: соглашаемся с предложением проверить обновления онлайн перед началом установки, вводим ключ лицензии, выбираем вариант установки
4. Когда будет предложен вариант установки или обновления - выбираем обновление
5. Дожидаемся окончания установки, перезагружаем сервер, убеждаемся в наличии и работоспособности всех ранее установленных сервисов (в нашем случае Hyper-V и Failover Cluster). Можно посмотреть журнал событий на предмет скрытых исключений, однако, как правило, все встает нормально.
6. Создаем на обновленной ноде новый кластер (пока из одной ноды)
7. Мигрируем виртуальные машины на обновленную ноду используя мастер Copy Cluster Roles (на старой ноде их нужно будет выключить, если не хотим терять информацию)
8. Разрушаем старый кластер
9. Запускаем виртуалньые машины на обновленной ноде
10. Обновляем операционную систему на оставшейся ноде
11. Добавляем ноду в новый кластер
12. Проверяем обновления операционных систем на обоих нодах, по необходимости устанавливаем их
13. Проверяем необходимость установки интеграционных компонент внутри виртуальных машин, там, где это применимо

Теперь рассмотрю вариант, когда виртуальные машины хранятся на отдельном SAN, презентованном для кластера как CSV, и обладающим некоторым количеством свободного дискового пространства. Отличие данной конфигурации в том, что миграцию виртуальных машин можно произвести на лету без остановки виртуальных машин. Однако для этого понадобится наличие SCVMM 2012R2, так как опция Live Storage Migration доступна только через него, по этому можно установить SCVMM 2012R2 на виртуальную машину внутри того же кластера, и операции производить оттуда.

Последовательность действий:
1. Освобождаем хост от виртуальных машин, мигрируем их на другую ноду
2. Извлекаем ноду из кластера
3. Запускаем обновление операционной системы
4. Дожидаемся окончания установки, перезагружаем сервер, убеждаемся в наличии и работоспособности всех ранее установленных сервисов
5. На SAN создаем еще один кворумный диск и еще один диск для нового CSV
6. Создаем на обновленной ноде новый кластер, подключаем к нему новый CSV и кворум
7. Подключаем новый кластер к SCVMM
8. Через SCVMM делаем Live Migration виртуальных машин со старого на новый кластер
9. Отключаемся от старого кластера на SCVMM Касательно виртуальной машины с SCVMM - я эту виртуальную машину переношу вручную с тома на том и импортирую ее на новый кластер.
10. Разрушаем старый кластер
11. Обновляем операционную систему на оставшейся ноде
12. Добавляем ноду в новый кластер
13. Проверяем обновления операционных систем на обоих нодах, по необходимости устанавливаем их
14. Проверяем необходимость установки интеграционных компонент внутри виртуальных машин, там, где это применимо

Итоги: Радужно обновить кластер с нулевым простоем на Storage Spaces не получилось. Нулевой простой возможет только при наличии нормалнього сторэйджа с запасом и двух CSV (по одному на кластер). Поддержки обоих версий операционных систем одновременно в одном кластере все таки пока нет. Хотелось бы, чтобы это стало одним из следующих шагов в развитии кластеризации от Microsoft.

 

То что ниже - не работающая схема, получившаяся чудом :)

Ну что же, я решил проверить это на живом тестовом двухнодовом кластере 2012 с шарой в качестве свидетеля. В качестве подопытных виртуальных машин на кластере крутятся Windows 2012, Windows 2008R2 и FreeBSD. Предварительно заявлено, что виртуальные машины с 2012 даже не придется перезагружать после переезда. Однако более ранние клиентские операционные системы потребуют обновления Integration Components, а следовательно небольшого downtime, для перезагрузки после их установки.
Итак, начальное состояние: работает две ноды с Windows 2012 на борту, все обновления установлены, виртуальные машины равномерно распределены по нодам и располагаются на SMB хранилище. Кстати, хочу заметить, что начиная с ОС Windows Server 2012, каждая нода кластера не обязательно должна содержать абсолютно идентичный набор обновлений, как этого требовали кластеры 2008. Раньше это вызывало кучу проблем при добавлении новых нод к кластеру, по прошествии большого интервала времени, когда какие либо обновления или группы поглощались более новыми или организовывались в сервиспаки. Сейчас проверка на обновления более интеллектуальна. Важно чтобы на всех нодах стояли самые свежие обновления, не важно каким набором это было достигнуто.

1. Освобождаем хост от виртуальных машин, мигрируем их на другую ноду
2. Извлекаем ноду из кластера
3. Запускаем обновление операционной системы. Здесь процедура вполне стандартная: соглашаемся с предложением проверить обновления онлайн перед началом установки, вводим ключ лицензии, выбираем вариант установки
4. Когда будет предложен вариант установки или обновления - выбираем обновление
5. Дожидаемся окончания установки, перезагружаем сервер, убеждаемся в наличии и работоспособности всех ранее установленных сервисов (в нашем случае Hyper-V и Failover Cluster). Можно посмотреть журнал событий на предмет скрытых исключений, однако, как правило, все встает нормально. (важный нюанс - не устанавливать обновления для новой операционной системы до тех пор, пока все ноды кластера не обновятся. Я поймал ошибку, когда обновив ноду и поставив на ней обновление драйвера сетевой карты больше не смог присоеденить ее к кластеру)
6. Добавляем обновленную ноду в кластер
7. Мигрируем виртуальные машины на обновленную ноду
8. Устанавилваем на виртуальные машины новые версии Integration Components
9. Извлекаем вторую ноду из кластера
10. Обновляем операционную систему
11. Добавляем ноду в кластер
12. Проверяем обновления операционных систем на обоих нодах, по необходимости устанавливаем их

Вот и все, кластер переехал на Windows 2012R2

Поделиться

Опубликовать в Facebook
Опубликовать в LiveJournal

Обновление Hyper-V кластера Windows 2012 до 2012R2: 9 комментариев

  1. Спасибо, коротко и ясно, думаю смогу обновиться без предварительной тестовой среды благодаря этому посту.

    1. Кстати тут еще не все так ясно оказалось. Как бы не пришлось все таки строить два кластера рядом :(
      Попробовал сейчас создать кластер с одной нодой на 2012R2 и добавить к нему еще одну ноду 2012 — не смогла присоединиться. Валидацию ноды не прошли тоже — ошибка на идентичности операционных систем.
      Возможно я поторопился и у меня пересобрался кластер как то исключительно единичным образом.
      Требует дополнительной проверки.

  2. Добрый день,
    Алексей есть ли какие новости с обновлением кластера? Подтвердилось ли ваше предположение?

  3. 2012 и 2012 r2 в кластер не объединяются принципиально! Только что проверено. Ругается на разные версии операционных систем и не подключает сервер с 2012r2 к кластеру с 2012.

  4. Да, тогда у меня получилось единственный раз подружить оси в кластере. Больше не получается. Хоть и Алексей Кибкало говорил на вебинаре jumpstart о полной совместимости в одном кластере обоих ОС, но на практике это не работает.

    Перенос возможен путем миграции кластерных ресурсов. Так что поднятия двух параллельных кластеров не избежать :(
    Честно говоря я сам удивляюсь, как оно получилось в первый раз. Сценарий повторить не удалось.

  5. Мало того, у меня даже кластер на Hyper-v 2012R2 поднять не удается. Та конфигурация, что на ура хавалась Hyper-V 2012 в 2012R2 наотрез отказывается применяться.

  6. Вру. Кластер собирается, но при условии, что собирают его на 2012R2 системе. Пытался собрать кластера на SCVMM2012r2 установленном на 2012 сервере — не получилось. Через диспетчер отказоустойчивости кластера на 2012ОС — тот же результат. Как только создал тестовую вирту с 2012R2 системой, кластер из нее собрался за 20 секунд.

    1. Пересмотрел запись JumpStart. Видимо мне приснилось, или я в первый раз не так услышал :) Он сказал «или 2012 и 2012R2″ а я видимо услышал «и 2012 и 2012R2″ и домыслил.
      Он как раз говорит о том что они НЕ совместимы. там как раз с 33 минуты его выступления про кластеры и обновление.
      Остается пока по старому. эвикт, создание параллельного кластера, миграция кластерных ресурсов, снова эвикт и так далее.

      Заметку поправил, на этот раз варианты работают.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>