Сегодня мы поговорим об использовании кластеризации внутри виртуальных машин «любимого» конкурента – VMware. Благодаря тонкой политики этой компании, у многих её заказчиков складывается ошибочное впечатление о поддержке кластеризации серверных ОС и продуктов Microsoft в виртуальной среде. На днях официальную позицию и разъяснения по данному поводу были изложены руководителем подразделения кластеризации и высокой доступности на английском языке. Переведу и добавлю несколько ссылок на ложную информацию, предоставляемую вам VMware.
Что можно сказать о поддержке кластеризации серверных операционных систем Microsoft в виртуальной среде? Поддержка существенно отличается для разных версий ОС Windows Server.
Для ОС NT 4.0 и Windows 2000 не поддерживается кластеризация в виртуальной среде. Ни для каких вендоров.
Для того, чтобы кластерное решение на базе Windows Server 2003 поддерживалось Microsoft, решение должно быть валидировано Microsoft и включено в специальный каталог поддержки. Политика поддержки кластеров Windows Server 2003 официально изложена на http://support.microsoft.com/kb/309395.
Решение, прошедшее валидацию получает логотип 'Designed for Microsoft® Windows® Server 2003' и публикуется в Windows Server Catalog в категории "Cluster Solutions".
Для решений компании VMware такую валидацию прошли две конкретных платформы:
Эти два решения требуют:
Программа валидации Windows Server 2003 Logo перестала принимать заявки с 31/12/2009, так что новых поступлений в список не предвидится. Все кто используют vSphere 4.0 Update 1 и vSphere 4.1 лишены поддержки кластеров в виртуальных машинах Windows Server 2003.
С выходом Windows Server 2008 политика поддержки кластерных решений существенно изменилась. Исчезло требование обязательной валидации конкретных конфигураций. Более гибкая программа теперь лишь требует, чтобы каждый компонент решения имел логотип Windows Server logo, и само решение должно успешно проходить все тесты в консоли кластера при запуске операции Validate Cluster Configuration.
Подробно новая политика поддержки изложена на http://technet.microsoft.com/en-us/library/cc732035(WS.10).aspx
Особое внимание следует уделить разделу «Virtualized Servers»: http://technet.microsoft.com/en-us/library/cc732035(WS.10).aspx#BKMK_validation_scenarios
На сайте поддержки VMware есть раздел, посвященный ограничениям поддержки кластеризации Microsoft со стороны VMware. Для каждой версии ESX существует отдельный документ, рекомендую ознакомиться. Сделаю краткие выкладки из этих документов:
Более подробный список ограничений доступен в документах по ссылке выше. Смотрите раздел «vSphere MSCS Setup Limitations».
Для удобства и целостного восприятия картины предлагается таблица, суммирующая поддержку кластеров в виртуальных машинах VMware для разных серверных ОС Microsoft:
ESX 3.5 и ранее
vSphere 4.0
vSphere 4.1
Windows NT Server 4.0
Нет
Windows 2000 Server
Windows Server 2003
Да (для двух конкретных конфигураций, с существенными ограничениями)
Windows Server 2008
Да (с существенными ограничениями)
Windows Server 2008 R2
Кроме технических документов, явно указывающих на ограничения поддержки со стороны VMware и документов, описывающих глобальные правила поддержки Microsoft, заказчики часто читают маркетинговые заявления и рекламные воззвания. Ярким примером бессовестной лжи является документ «What's New in VMware vSphere 4.0»
Процитирую это маркетинговое воззвание: «High Availability Clustering with Windows Server 2000, 2003, 2008 — vSphere 4.0 supports Microsoft Cluster Service (MSCS) with Windows 2000 and Windows 2003, and Failover Clustering for Windows 2008»
Мы теперь знаем, что не может быть и речи о поддержке кластеров Windows 2000 в виртуальных машинах. Что поддержка Windows Server 2003 доступна лишь на двух конкретных моделях серверов с двумя типами дисковых хранилищ, без права установки обновлений на гипервизор. Что поддержка кластеров Windows Server 2008 настолько ограничена, что в маркетинговом заявлении было бы более резонно промолчать, чем через пару предложений давать ссылку на документ, отражающий реальное положение дел: «For details regarding MSCS support, including important restrictions, see Setup for Failover Clustering and Microsoft Cluster Service»
Всех хороших людей поздравляю с тем, что они, наконец, смогут опробовать в деле новые возможности виртуализации, о которых уже давно ходили слухи (а также слабоконкретные пресс-релизы). Речь идёт, конечно же, о Dynamic Memory в Hyper-V и Remote FX. Ведь сегодня на Международной партнёрской конференции (Wordlwide Partner Conference, WPC) Microsoft было объявлено о том, что предварительная версия первого Пакета обновления (Service Pack 1, SP1) для Windows Server 2008 R2 переходит в общий доступ. Иными словами, теперь загрузить дистрибутив может любой желающий.
Пара замечаний по этому поводу.
Кроме того, на WPC было сделано ещё одно интересное объявление, связанное с виртуализацией. А именно, в общий доступ вышел кандидат для выпуска (Release Candidate, RC) продукта, который теперь называется Microsoft System Center Virtual Machine Manager Self-Service Portal 2.0. Если вам это ни о чём не говорит — неудивительно. Ведь в процессе разработки этот продукт уже дважды менял своё название. Первоначально он был объявлен как Dynamic Datacenter Toolkit for Enterprises, DDTK-E (по аналогии с Dynamic Datacenter Toolkit for Hosters, DDTK-H). А затем его переименовали в Dynamic Datacenter Toolkit for System Center (DDTK-SC). И теперь вот — ещё более радикальная смена названия.
При этом надо понимать, что хотя этот продукт теперь позиционируется как дополнение к System Center Virtual Machine Manager, SCVMM (и после выхода будет поддерживаться на тех же условиях), он не заменяет собой встроенный Портал самообслуживания (Self-Service Protal). Строго говоря, он служит несколько другим целям — помогает максимально быстро разворачивать виртуальные машины с использованием партнёрских расширений для оборудования или ПО, использующегося в вашей инфраструктуре. Для этого поставщики этого оборудования или ПО должны добавить свою часть — коммандлеты Windows PowerShell или сценарии для работы со своими продуктами. О поддержке нового решения уже заявили такие компании как HP, NetApp, F5 и Citrix. Чего из этого получится на практике — увидим.
Ещё на WPC было сделано несколько интересных объявлений о развитии Windows Azure. Например, Microsoft планирует поставлять так называемые Windows Azure Platform Appliance — т.е. программно-аппаратные комплексы, готовые к развёртыванию «облака» на вашей собственной площадке. Очевидно, что и в этом предложении виртуализация будет играть ключевую роль — однако технических подробностей пока что нету совсем.
На всякий случай хочу упомянуть об одной новости, которая появилась какое-то время назад и не связана с объявлениями, сделанными на WPC. Пару недель назад вышла окончательная версия Microsoft Assessment and Planning (MAP) Toolkit 5.0. Если вы заинтересованы в этом инструменте, но по какой-то причине пропустили появление новой версии — теперь у вас есть отличная возможность исправиться.
Написав заметку об использовании Microsoft MPIO, встроенного в ОС Windows Server 2008/R2, я получил неожиданно много откликов (и запретил на будущее анонимные комментарии). Сегодня я вкратце расскажу о методах работы Microsoft Multipath I/O и вариантах его настройки в Server Core.
Что такое MPIO я уже описал в прошлой заметке, сейчас поговорим о теории.
Multipath I/O в Windows Server 2008 R2 включает в себя стандартный Device-Specific Module (DSM), который умеет работать с дисковыми системами, поддерживающими технологию Asymmetric Logical Unit Access (ALUA) согласно спецификации SPC-3, а также с дисковыми системами, работающими в режиме «Active/Active».
Microsoft Multipath I/O DSM позволяет использовать различные режимы балансировки. Очевидно, что возможность использовать тот или ин6ой режим зависит, в первую очередь, от аппаратных возможностей контроллера — ALUA или Active/Active — в подключенном дисковом хранилище. Рассмотрим эти режимы.
В Windows Server 2008 R2 по умолчанию для контроллеров Active/Active выбирается режим Round-robin, а для контроллеров ALUA SPC-3 выбирается режим Failover. В Windows Server 2008 по умолчанию всегда предлагается режим Failover.
Для установки Microsoft Multipath I/O в Server Core следует воспользоваться одной из следующих команд.
Для настройки из командной строки используется утилита "%SystemRoot%\System32\MPClaim.exe". Синтаксис утилиты выклядит примерно так:
"%SystemRoot%\System32\MPClaim.exe" restart_option install_switch device_switch device_hwid
Посмотреть примеры использования утилиты можно на страницах TechNet.
Кроме того, в Windows Server 2008 R2 можно запустить графическую утилиту командой "%SystemRoot%\System32\MPIOCPL.exe".