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


Метод CreateVirtualDisk класса MSFT_StorageSubSystem

Создает новый виртуальный диск.

Синтаксис

UInt32 CreateVirtualDisk(
  [in]      String              FriendlyName,
  [in]      UInt16              Usage,
  [in]      String              OtherUsageDescription,
  [in, out] UInt64              Size,
  [in]      Boolean             UseMaximumSize,
  [in]      UInt16              NumberOfDataCopies,
  [in]      UInt16              PhysicalDiskRedundancy,
  [in]      UInt16              NumberOfColumns,
  [in]      UInt64              Interleave,
  [in]      UInt16              ParityLayout,
  [in]      Boolean             RequestNoSinglePointOfFailure,
  [in]      Boolean             IsEnclosureAware,
  [in]      UInt16              ProvisioningType,
  [in]      Boolean             RunAsJob,
  [out]     String              CreatedVirtualDisk,
  [out]     MSFT_StorageJob REF CreatedStorageJob,
  [out]     String              ExtendedStatus
);

Параметры

FriendlyName [in]

Понятное имя виртуального диска.

Понятные имена должны быть описательными, но они не обязательно должны быть уникальными. Обратите внимание, что некоторые подсистемы хранения не позволяют задавать понятное имя во время создания виртуального диска. Если подсистема не поддерживает эту функцию, создание виртуального диска все равно должно завершиться успешно, однако диску может быть присвоено другое имя.

Этот параметр является обязательным и не может иметь значение NULL.

Использование [in]

Указывает предполагаемое использование виртуального диска.

Можно указать предопределенное описание или пользовательское описание. Чтобы указать предопределенное описание, используйте значение, отличное от Другое.

Чтобы указать пользовательское описание, используйте другое и укажите значение, отличное от NULL , для параметра OtherUsageDescription .

Другое (1)

Неограниченный (2)

Зарезервировано для ComputerSystem (блочный сервер) (3)

Зарезервировано службами репликации (4)

Зарезервировано службами миграции (5)

Источник локальной реплики (6)

Источник удаленной реплики (7)

Целевая локальная реплика (8)

Удаленный целевой объект реплики (9)

Источник или цель локальной реплики (10)

Источник или целевой объект удаленной реплики (11)

Целевой объект разностной реплики (12)

Компонент элемента (13)

Зарезервировано в качестве участника пула (14)

Элемент составного тома (15)

Составной элемент VirtualDisk (16)

Зарезервировано для щадя ( 17)

OtherUsageDescription [in]

Использование нового виртуального диска поставщиком. Этот параметр можно указать, только если для параметра Usage задано значение Другое.

Размер [вход, выход]

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

Подсистема хранения использует этот параметр, только если параметр UseMaximumSize имеет значение FALSE или NULL.

Если параметр UseMaximumSize имеет значение TRUE, этот параметр игнорируется.

Этот параметр является обязательным и не может быть равен нулю.

UseMaximumSize [in]

Если задано значение TRUE, используйте максимальный доступный размер для создания виртуального диска.

Этот параметр нельзя использовать вместе с параметром Size .

NumberOfDataCopies [in]

Количество полных копий данных для этого виртуального диска.

PhysicalDiskRedundancy [in]

Количество сбоев физических дисков, которые должен выдержать виртуальный диск до потери данных.

NumberOfColumns [in]

Количество базовых физических дисков, на которых должны быть чередуются данные. Это обязательный параметр.

Interleave [in]

Количество байтов, которое должно быть задано для полосы в общих параметрах устойчивости на основе чередование. Полоса определяется как размер части полосы, лежащей на одном физическом диске. Таким образом , Interleave * NumberOfColumns даст размер одной полосы. Это обязательный параметр.

ParityLayout [in]

Если требуется параметр устойчивости на основе четности, задайте для этого параметра одно из следующих значений.

Если требуемый параметр устойчивости не основан на четности, это свойство должно иметь значение NULL.

Четность без поворота (1)

Повернутая четность (2)

RequestNoSinglePointOfFailure [in]

Задайте значение TRUE , чтобы не запрашивать ни одной точки отказа.

IsEnclosureAware [in]

Поведение выделения для этого виртуального диска. Виртуальные диски с поддержкой корпуса будут интеллектуально выбирать физические диски для обеспечения избыточности. Если значение РАВНО TRUE, виртуальный диск попытается использовать физические диски из разных корпусов, чтобы сбалансировать отказоустойчивость между двумя или более физическими корпусами.

ProvisioningType [in]

Тип подготовки для виртуального диска.

Тонкий (1)

Исправлено (2)

RunAsJob [in]

Если задано значение TRUE, этот метод использует параметр CreatedStorageJob , когда обслуживание запроса занимает много времени. Если для отслеживания операции было создано задание хранилища, этот метод возвращает параметры метода Checked — Job Started .

Примечание

Даже если runAsJob имеет значение TRUE, этот метод по-прежнему может возвращать результат, если он был завершен в достаточное время.

Если значение РАВНО FALSE или NULL, этот метод будет следовать асинхронной реакции WMI по умолчанию, определяемой методом клиента для вызова. Другими словами, он является синхронным, если не запрошено иное.

CreatedVirtualDisk [out]

Если виртуальный диск успешно создан, этот параметр получает строку, содержащую внедренный объект MSFT_VirtualDisk .

CreatedStorageJob [out]

Если параметр RunAsJob имеет значение TRUE и выполнение этого метода занимает много времени, этот параметр получает ссылку на объект задания хранилища, который используется для отслеживания длительной операции.

ExtendedStatus [out]

Строка, содержащая внедренный объект MSFT_StorageExtendedStatus .

Этот параметр позволяет поставщику хранилища возвращать расширенные (зависящие от реализации) сведения об ошибках.

Возвращаемое значение

Успешное выполнение (0)

Не поддерживается (1)

Неустановленная ошибка (2)

Время ожидания (3)

Сбой (4)

Недопустимый параметр (5)

Проверенные параметры метода — задание запущено (4096)

Размер не поддерживается (4097)

Недостаточно свободного места (40000)

Доступ запрещен (40001)

Недостаточно ресурсов для завершения операции. (40002)

Кэш устарел (40003)

Необходимо указать размер с помощью параметра Size или UseMaximumSize. Одновременно можно указать только один из этих параметров. (40005)

Не удается подключиться к поставщику хранилища. (46000)

Поставщик хранилища не может подключиться к подсистеме хранения. (46001)

Не найдены пулы носителей, которые могут поддерживать эту конфигурацию виртуальных дисков. (47000)

Значение noSinglePointOfFailure не поддерживается. (49001)

Значение PhysicalDiskRedundancy выходит за пределы поддерживаемого диапазона значений. (49002)

Значение numberOfDataCopies выходит за пределы поддерживаемого диапазона значений. (49003)

Значение ParityLayout выходит за пределы поддерживаемого диапазона значений. (49004)

Значение interleave выходит за пределы поддерживаемого диапазона значений. (49005)

Значение numberOfColumns выходит за пределы поддерживаемого диапазона значений. (49006)

Комментарии

Этот метод обычно используется, если выполняется одно из следующих действий:

  • Пулы носителей подсистемы хранения не разрешают создание виртуальных дисков напрямую.
  • Подсистема хранения не поддерживает пулы носителей.

Поставщики управления хранилищем также могут реализовать этот метод, чтобы "интеллектуально" выбрать пул носителей для пользователя. Если этот метод поддерживается, для свойства SupportsAutomaticStoragePoolSelection подсистемы должно быть задано значение TRUE.

Требования

Требование Значение
Минимальная версия клиента Windows 8 [только классические приложения]
Минимальная версия сервера Windows Server 2012 [только классические приложения]
Пространство имен Root\Microsoft\Windows\Storage
MOF Storagewmi.mof

См. также раздел

MSFT_StorageSubSystem