Shared VHDX в Windows Server 2012 R2

Для начала коротко о том, для чего вообщем нужна гостевая кластеризация. Большая часть приложений и сервисов, применяемых в современной ИТ-инфраструктуре, может быть запущена снутри виртуальных машин (ВМ). Виртуализация дает целый ряд тривиальных и не очень преимуществ, перечисление которых выходит за рамки поста. Чем более критическое для компании приложение вертится снутри ВМ, тем паче принципиальной становится задачка обеспечения высочайшей доступности таковой ВМ.

Обеспечить высшую доступность ВМ можно разместив ее на физическом (хостовом) кластере, в данном контексте – кластере Hyper-V. Выход из строя физического узла кластера, на котором была запущена ВМ, приводит к автоматическому восстановлению ВМ на другом узле кластера. Эта процедура отработки отказа может привести пусть и к краткосрочной, но потере связи с ВМ и приложением в ней.

Другой способ увеличения доступности – объединение в Failover Cluster 2-ух либо более ВМ, другими словами создание гостевого кластера в том смысле, что кластер создается на базе гостевых ОС. В данном случае мы уже говорим о высочайшей доступности не ВМ как таких, а приложения (либо приложений) снутри гостевого кластера.

Очевидно, для большей надежности можно соединять хостовую и гостевую кластеризацию.
Гостевая кластеризация, вобщем как и хостовая, подразумевает наличие некого общего хранилища. Применительно к виртуальным машинам таким хранилищем до выхода Windows Server 2012 мог выступать iSCSI-storage.

Shared VHDX в Windows Server 2012 R2
Прирастить

В Windows Server 2012 благодаря Virtual Fibre Channel появилась возможность подключать ВМ через HBA-адаптер хоста конкретно к FC-storage.

Shared VHDX в Windows Server 2012 R2
Прирастить

Но в любом случае для построения гостевого кластера нужно было предоставить ВМ прямой доступ к хранилищу. В почти всех сценариях, к примеру для хостинг-провайдеров, таковой вариант является очень неловким. Общие VHDX-файлы как раз и позволяют эту делему решить, так как абстрагируют ВМ от особенностей реализации СХД. Для сотворения гостевого кластера к виртуальным машинам подключается необходимое количество Shared VHDX, которые и представляют собой общее кластерное хранилище. А где на физическом уровне, на каком непосредственно СХД и LUN-е эти файлы размещаются – это уже дело провайдера.

Shared VHDX в Windows Server 2012 R2
Прирастить

Поддерживаемые конфигурации и настройка Shared VHDX

Исходя из убеждений реализации описанного подхода можно выделить две главные конфигурации использования Shared VHDX. В первой конфигурации общие VHDX-файлы размещаются на CSV-томе физического кластера. CSV-том, в свою очередь, может быть реализован на любом поддерживаемом службой кластеризации Windows Server блочном хранилище (Fibre Channel, iSCSI, Shared SAS).

Во 2-ой конфигурации VHDX-файлы размещаются в общей папке файлового кластера Scale-Out File Server. Последний, замечу, также подразумевает наличие CSV-тома. Как видно, и та, и другая конфигурация в конечном итоге приводят к сочетанию хостовой и гостевой кластеризации. Хостовая кластеризация увеличивает доступность общих VHDX, создаваемый потом поверх гостевой кластер обеспечивает высшую доступность сервисов и приложений снутри ВМ.

Shared VHDX в Windows Server 2012 R2
Прирастить

Для опции Shared VHDX сначала, естественно, нужно сделать один либо несколько VHDX-файлов и расположить их, используя одну из вышеперечисленных конфигураций. Потом подключить Shared VHDX можно в консоли Hyper-V, командлетами PowerShell либо при помощи сервисного шаблона (service template) в System Center 2012 R2 Virtual Machine Manager.

В консоли Hyper-V это делается методом прибавления нового SCSI-диска: в свойствах ВМ выбираете SCSI Controller, потом Hard Drive, нажимаете кнопку Add, указываете путь к VHDX-файлу, после этого выбираете Advanced Features и помечаете соответственный чекбокс.

Shared VHDX в Windows Server 2012 R2
Прирастить

Повторяете функцию для всех ВМ, которые планируется соединить в кластер.

Тоже самое можно сделать в PowerShell последующими командлетами:

New-VHD -Path C:ClusterStorageVolume1Shared.VHDX -Fixed -SizeBytes 30GB
Add-VMHardDiskDrive -VMName Node1 -Path C:ClusterStorageVolume1Shared.VHDX -ShareVirtualDisk
Add-VMHardDiskDrive -VMName Node2 -Path C:ClusterStorageVolume1Shared.VHDX –ShareVirtualDisk

В VMM 2012 R2 в сервисном шаблоне в разделе Hardware Configuration нужно также добавить SCSI-диск, указать путь к VHDX-файлу и пометить чекбокс Share the disk across the service tier. При развертывании ВМ на базе такового шаблона VMM подключит обозначенный файл в качестве Shared VHDX.

Shared VHDX в Windows Server 2012 R2
Прирастить

Какой бы вариант вы не избрали, снутри ВМ присоединенный VHDX будет смотреться как обыденный SAS-диск.

Shared VHDX в Windows Server 2012 R2
Прирастить

Требования к Shared VHDX

Нужно держать в голове последующие требования к Shared VHDX:
Файлы должны быть непременно VHDX, формат VHD для shared-конфигурации не поддерживается. При всем этом сама гостевая ОС полностью может быть установлена на VHD-диск.
На хостах Hyper-V, а в случае использования Scale-Out File Server и на узлах файлового кластера, должна быть установлена версия Windows Server 2012 R2.
Гостевой ОС может быть Windows Server 2012 R2 либо Windows Server 2012 с последней версией интеграционных компонент.
Поддерживаются как ВМ первого поколения (Generation 1), так и второго (Generation 2).

Диагностика и тестирование

Для диагностики вероятных заморочек в Performance Monitor добавлен новый объект Hyper-V Shared VHDX с набором разных счетчиков, которые вы сможете рассматривать на хостах Hyper-V.

Shared VHDX в Windows Server 2012 R2
Прирастить

Не считая того, добавлены новые журнальчики, просмотр которых вероятен, как обычно, при помощи Event Viewer,

Shared VHDX в Windows Server 2012 R2
Прирастить

или PowerShell:

Get-WinEvent -LogName Microsoft-Windows-Hyper-V-Shared-VHDX/Operational
Get-WinEvent -LogName Microsoft-Windows-Hyper-V-Shared-VHDX/Reservation

В конце концов, для целей тестирования, исследования, разработки есть возможность использовать «специальную» конфигурацию Shared VHDX. Для этой конфигурации довольно 1-го физического хоста с Windows Server 2012 R2 и поднятой ролью Hyper-V, на котором и можно расположить общие VHDX-файлы, не создавая кластеры с CSV-томами и пр. Чтоб воплотить схожий вариант вам необходимо:
Установить службу Failover Clustering
Install-WindowsFeature Failover-Clustering
Вручную подключить фильтр Shared Virtual Disk для раздела, на котором будут размещаться общие VHDX-файлы, к примеру для диска D: это будет смотреться как
FLTMC.EXE attach svhdxflt D:

Но помните, что это неподдерживаемая конфигурация и использовать ее в реальной среде не следует.

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

Аналогичный товар: Комментирование на данный момент запрещено, но Вы можете оставить ссылку на Ваш сайт.

Комментарии закрыты.