Уровень виртуализации сетевых хранилищ данных порой заставляет усомниться в существовании чего-то реального. Сетевому администратору Windows все труднее бывает составить точное представление о том, что происходит с жесткими дисками сервера. Раньше достаточно было установить на сервере жесткий диск и загрузиться, чтобы немедленно получить новое дисковое устройство, которое можно конфигурировать и использовать. Однако определить, как система задействует современные виртуализированные устройства памяти, — сложная задача.

Первым шагом к виртуальным хранилищам данных была технология RAID; администратор имеет дело не с отдельными дисками, а с массивами или группами дисков. Такая организация сложнее, чем простой набор дисков, но преимущества ее очевидны. Следующим шагом было объединение функциональности операционной системы и аппаратных средств; каждый из компонентов обеспечивал простейшие формы виртуализации. Появилась возможность соединить пару массивов RAID в логический диск, пригодный для использования операционной системой и приложениями. Такой подход к хранению данных возможен благодаря абстрактной модели, которая преобразует представление физических устройств в другие логические типы, удобные для практического применения. Данная концепция лежит в основе технологии виртуализации памяти.

При всех достоинствах современных технологий виртуализации памяти одновременно усложняются планирование, проектирование и управление хранилищами памяти. К счастью, в Windows Server 2003 эти процедуры упрощены.

Что стало с дисками?

Проблемы виртуализации начинаются с аппаратных средств. Современные системы высокого уровня — устройства памяти, подключаемые напрямую (Direct Attached Storage, DAS); устройства хранения данных, подключаемые к сети (Network Attached Storage, NAS); сеть устройств памяти (Storage Area Networks, SAN) — предусматривают определенный уровень виртуализации. Даже простой локально подключенный контроллер RAID в сервере виртуально представляет физические диски операционной системе. Например, вместо того, чтобы настраивать конфигурацию 14 отдельных дисков, администратор, как правило, предпочитает объединить диски в массив с некоторым уровнем отказоустойчивости. Контроллер RAID может преобразовать физические диски в другое, виртуальное представление и объявить этот логический объект операционной системе. Даже устройства NAS и SAN на каком-то уровне располагают контроллером, который напрямую подключается к физическому дисковому устройству и обеспечивает абстрактное представление таких устройств. Подобная организация не очень сложна, и большинство администраторов без труда планируют, проектируют и управляют серверами в рамках этой сравнительно простой парадигмы.

Однако в последнее время поставщики аппаратных средств и программного обеспечения, в том числе Microsoft, подняли виртуализацию на новый уровень. Новые продукты NAS и SAN скрывают местоположение и характеристики физических дисковых устройств. Тем из нас, кому необходимо наглядно представлять себе системы, придется изменить привычный способ мышления и потратить значительное время, чтобы научиться управлять новыми устройствами памяти. Например, контроллер HP StorageWorks HSG80 компании Hewlett-Packard (в прошлом Compaq) в таких продуктах SAN, как MA8000 и EMA12000, располагает SCSI-интерфейсами, подключенными к шинам SCSI; каждая шина обслуживает определенное число физических дисков. Планируя систему хранения данных на основе этого продукта, можно просто ориентироваться на физические диски и шины SCSI; существуют простые правила, как сгруппировать устройства по LUN (логический номер устройства) и представить их в SAN для использования хост-машинами. Однако в новых решениях хранилища данных и контроллеры массивов располагают собственными методами виртуализации (в частности, дисковыми группами с более гибкими конфигурируемыми границами). Новые способы применяются также для построения хранилищ и связывания дисковых устройств (например, подключение дисков через канал Fibre Channel и виртуализация на базе контроллера).

Windows 2003 VDS

Разработчики Microsoft дополнили Windows 2003 важнейшим новым компонентом, Virtual Disk Service (VDS). VDS — единственный интерфейс блочных хранилищ данных для платформы Windows, нейтральный по отношению к аппаратным средствам, программному обеспечению, межсоединениям (например, Fibre Channel, SCSI) и подсистемам. Какой бы механизм ни применялся для блочного хранения данных — операционная система, аппаратная оболочка/контроллер или другое средство виртуализации памяти (такое, как VERITAS Volume Manager фирмы VERITAS Software) — в каждом из них непременно используется VDS. VDS задумана как служба виртуализации памяти, которая может быть легко расширена независимыми компаниями и не потребует от Microsoft значительных усилий по поддержке. Поставщикам аппаратных и программных решений достаточно придерживаться спецификации VDS, и их продукты будут совместимы с приложениями Windows 2003 и Windows.

Невозможно подробно рассмотреть VDS в рамках небольшой статьи, но суть ее состоит в том, что поставщики решений могут использовать VDS API для связи с операционной системой и приложениями. Как показано на Экране 1, многоуровневая архитектура VDS охватывает VDS и VDS-провайдеров, поставляемых Microsoft или независимыми поставщиками. VDS обменивается данными с инструментами управления и интерфейсами, которые используются администраторами и провайдерами VDS-совместимых программных и аппаратных продуктов. Данная архитектура демонстрирует, какой цели намерена достичь Microsoft с помощью VDS — обеспечить единый интерфейс управления виртуализацией хранилищ данных, расширяемую инфраструктуру для независимых поставщиков запоминающих устройств и удобство поддержки для Microsoft.

Экран 1. Архитектура VDS.

Какие функции выполняет VDS? Прежде всего, VDS играет роль координатора всех устройств и провайдеров памяти, связанных с операционной системой. Впервые Windows располагает единым «регулировщиком движения» для управления функциональностью хранилища данных, независимо от того, реализована эта функциональность в операционной системе или в продуктах независимых поставщиков. Кроме того, VDS обеспечивает необходимый уровень абстракции, устанавливая соответствие между физическими или виртуальными дисками аппаратных устройств и программно управляемыми дисками. VDS также координирует действия различных клиентов VDS (например, программ управления, инструментов командной строки), с помощью которых администраторы управляют хранилищами данных Windows. VDS обеспечивает такие базовые функции файловой системы, как выделение разделов, форматирование, назначение символов дисков и точек монтирования. И, наконец, VDS предоставляет доступ к обширному API управления хранилищами данных, через который Microsoft, независимые разработчики и даже администраторы Windows могут расширить функциональность VDS.

Функции, связанные с VDS

Windows 2003 располагает тремя вспомогательными функциями, связанными с VDS. Microsoft предоставляет двух провайдеров программных хранилищ: Basic Disk Provider и Dynamic Disk Provider. О различиях между базовыми и динамическими типами дисков можно прочитать в статье «Диски для серверов Windows — базового или динамического типа?» (http://www.osp.ru/win2000/2003/01/088.htm). Basic Disk Provider обеспечивает базовую функциональность, например выделение разделов и томов. Dynamic Disk Provider предоставляет дополнительные динамические возможности, в частности чередование и распределение данных по дискам, и обеспечивает отказоустойчивость, например RAID 5 и зеркалирование.

Третий компонент — набор административных инструментов, обеспечивающих интерфейс с VDS. Один из этих инструментов — оснастка Disk Management консоли управления Microsoft Management Console (MMC), хорошо знакомая большинству администраторов. Оснастка Disk Management системы Windows 2003 визуально не отличается от привычных программ Windows XP и Windows 2000, но в нее внесены изменения для прямой связи в VDS (это настоящий клиент VDS).

Еще один известный инструмент — запускаемая из командной строки утилита Diskpart. Diskpart поставляется также с XP и Windows 2000. Версия инструмента для Windows 2003 дополнена новыми командами. В результате администратор может запустить из командной строки функции SAN (например, указать параметры для автомонтируемых LUN и отмечать LUN как неактивные).

Последний инструмент, Diskraid, — новшество Windows 2003, он будет поставляться в составе пакета ресурсов Windows 2003. Как и Diskpart, Diskraid — инструмент командной строки, с помощью которого администраторы могут выполнять операции с LUN (например, создавать и удалять). Эти инструменты непосредственно связаны с VDS как клиенты и расширяют возможности управления хранилищами данных Windows.

Унификация VDS

Поставщики решений Windows для хранения данных быстро расширяют функциональность, и управлять процессом виртуализации становится все сложнее. Эта тенденция может затруднить администрирование систем Windows, если не будет проведена унификация методов управления и виртуализации хранилищ данных. Windows 2003 VDS обеспечивает точку унификации, так как администраторы и независимые поставщики получают открытую и расширяемую инфраструктуру, а компания Microsoft — очень стабильную и удобную для обслуживания платформу.

Джерри Кохран — автор выпусков Administrator и еженедельной редакторской колонки в выпусках новостей Exchange Administrator UPDATE (http://www.win2000mag.net/email/). Старший консультант по вопросам технологий в группе Applied Microsoft Technologies Group в Compaq Global Services. С ним можно связаться по адресу: jerry.cochran@compaq.com.