Поделиться через


Объект LUN

[Начиная с Windows 8 и Windows Server 2012, COM-интерфейс службы виртуальных дисков замечается API управления хранилищем Windows.]

Объект LUN (логический номер единицы) моделирует логическую единицу адресного дискового пространства, созданного поставщиком оборудования и отображаемого подсистемой. Каждое LUN состоит по крайней мере из одного плексора LUN, который, в свою очередь, состоит из экстентов с одного или нескольких дисков.

Типы LUN

VDS поддерживает пять типов LUN: простой, чередуется, зеркально и чередуется с четностью. Простые, распределенные и чередуемые LUN не отказоустойчивы; зеркальные и четные LUN являются отказоустойчивыми. В оставшейся части этого раздела описывается каждый из типов LUN VDS.

  • Простой LUN — это не отказоустойчивый LUN, состоящий из одного непрерывного экстента диска из одного диска. Смежный экстент может состоять из одного диапазона блоков или нескольких диапазонов блоков, связанных друг с другом.
  • Развернутый LUN — это не отказоустойчивый LUN, состоящий из нескольких дисковых экстентов с нескольких дисков. Данные записываются линейно в каждый из экстентов на первом диске, пока не будут заполнены все экстенты первого диска, а затем в каждый из экстентов на втором диске и т. д. Многобайтовые LUN обеспечивают эффективное использование дискового пространства в подсистемах, которые состоят из дисков разных размеров.
  • Чередующийся LUN — это не отказоустойчивый LUN, состоящий из нескольких чередуемых непрерывных экстентов с нескольких дисков. Чередующиеся LUN используют конфигурацию RAID-0, так что данные циклически чередуются по всем экстентам на дисках с разными дисками. Чередуемые LUN лучше всего работают с дисками одинакового размера, модели и изготовителя.
  • Зеркальные LUN — это отказоустойчивые LUN, которые обеспечивают аварийное восстановление путем дублирования данных в несколько сплетений LUN. Каждый плекс в зеркальном LUN содержит копию данных, хранящихся в исходном сплетении. Каждое из сплетений находится на отдельном диске. Все данные, записываемые в зеркальный LUN, записываются одновременно в каждое из сплетений. В случае сбоя одного из участвующих дисков plex на этом диске становится недоступным, но система продолжает работать с помощью не затронутых plex или сплетений. Зеркальный LUN может иметь любое количество сплетений.
  • Чередующиеся с использованием четности LUN — это отказоустойчивые LUN, которые обеспечивают аварийное восстановление, периодически чередуя данные четности на трех или более дисках. Если один из участвующих дисков завершается сбоем, потерянные данные можно воссоздать из оставшихся данных и четности.

Создание LUN

VDS поддерживает четыре модели, с помощью которых приложения могут создавать LUN: явно направленные, частично направленные, автоматические и зависящие от поставщика. Все поставщики оборудования должны поддерживать явное и частичное создание LUN, и настоятельно рекомендуется поддерживать автоматическое создание LUN. (Создание LUN для конкретного поставщика выходит за рамки этого руководства.)

Создание LUN с явным указанием позволяет вызывающей объекту указать все атрибуты LUN. Создание частично направленного LUN позволяет вызывающей объекту указать только те атрибуты, которые представляют особый интерес, а затем позволяет поставщику выбрать остальные. Автоматическое создание LUN включает в себя предоставление вызывающему объекту возможности просто указать тип и размер LUN вместе с набором "автоматических указаний" (предопределенных настроек для атрибутов LUN), а затем позволяет поставщику автоматически создать LUN.

Режим маски LUN

VDS поддерживает развертывание LUN для подсистем, которые предоставляют эту возможность. Все LUN отображаются на компьютере, на котором работает поставщик. Отключение LUN позволяет вызывающему объекту "расмаскировать" выбранные LUN на других компьютерах в сети. Если вы отмените маску LUN на компьютере, компьютер имеет доступ к LUN. Компьютеры, для которых замаскирован LUN, не являются.

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

После того как LUN расмаскируется на целевом компьютере или маскируется с целевого компьютера, видимость LUN на этом компьютере может не измениться до тех пор, пока не будет выполнено повторное сканирование в шине. Приложение VDS на целевом компьютере инициирует повторное сканирование шины, вызывая IVdsService::Reenumerate. За инициализацию повторного сканирования шины отвечает приложение VDS, а не поставщик оборудования.

Многопутевое подключение LUN

Поставщики оборудования, поддерживающие многопутевой ввод-вывод (MPIO), могут устанавливать политики балансировки нагрузки для путей между LUN и локальным узлом. LUN, поддерживающие эту возможность, предоставляют интерфейс IVdsLunMpio локальному узлу.

Работа с LUN

Используйте метод IVdsSubSystem::CreateLun для создания нового объекта LUN. Вы можете запросить LUN, которые отображаются определенной подсистемой, вызвав метод QueryLuns , также предоставляемый IVdsSubSystem. Вызывающий объект может получить указатель на конкретный LUN, выбрав нужный объект LUN из перечисления, возвращаемого QueryLuns. С помощью объекта LUN можно задать состояние LUN; запрашивать все активные контроллеры, сплетения и автоматические подсказки; расширение и сжатие LUN; добавление и удаление сплетений; установить маски; применение подсказок; и удалите LUN.

Помимо идентификатора объекта, имени и серийного номера, свойства объекта LUN включают в себя тип LUN, размер, состояние, работоспособность, состояние перехода и флаги; распакующийся список; и параметр приоритета перестроения.

В следующей таблице перечислены связанные интерфейсы, перечисления и структуры.

Тип Элемент
Интерфейсы, которые всегда предоставляются этим объектом IVdsLun
Интерфейсы, которые всегда предоставляются этим объектом в поставщиках VDS 1.1 и 2.0 Fibre Channel IVdsLunControllerPorts
Интерфейсы, которые всегда предоставляются этим объектом только в поставщиках ISCSI VDS 1.1 и 2.0 IVdsLunIscsi
Интерфейсы, которые могут быть предоставлены этим объектом* IVdsMaintenance, IVdsLunMpio, IVdsLunNaming и IVdsLunNumberWindows Server 2008, Windows Vista и Windows Server 2003: интерфейс IVdsLunNumber не поддерживается.
Связанные перечисления VDS_LUN_FLAG , VDS_LUN_STATUS и VDS_LUN_TYPE
Связанные структуры VDS_LUN_INFORMATION, VDS_LUN_PROP и VDS_LUN_NOTIFICATION

* Дополнительные интерфейсы (IVdsDisk), предоставляемые, если LUN распакован как диск на локальном хост-компьютере, см. в разделе Объект диска.

Объекты поставщика оборудования

Объект Pack

Объект Disk

IVdsLun

IVdsDisk

Добавление буквы диска в LUN