Método CreateStoragePool de la clase MSFT_StorageSubSystem
Crea un grupo de almacenamiento a partir de discos físicos disponibles contenidos en un grupo primordial común.
Un disco físico está disponible para la creación del bloque de almacenamiento si la propiedad CanPool de su objeto MSFT_PhysicalDisk es TRUE.
La creación del bloque de almacenamiento solo está disponible cuando la propiedad SupportsStoragePoolCreation del objeto MSFT_StorageSubSystem del subsistema de almacenamiento es TRUE.
Sintaxis
UInt32 CreateStoragePool(
[in] String FriendlyName,
[in] UInt16 Usage,
[in] String OtherUsageDescription,
[in] String PhysicalDisks[],
[in] String ResiliencySettingNameDefault,
[in] UInt16 ProvisioningTypeDefault,
[in] UInt64 LogicalSectorSizeDefault,
[in] Boolean EnclosureAwareDefault,
[in] UInt64 WriteCacheSizeDefault,
[in] Boolean AutoWriteCacheSize,
[in] Boolean RunAsJob,
[out] String CreatedStoragePool,
[out] MSFT_StorageJob REF CreatedStorageJob,
[out] String ExtendedStatus
);
Parámetros
FriendlyName [in]
Especifica el nombre descriptivo del nuevo bloque de almacenamiento.
Se espera que los nombres descriptivos sean descriptivos, pero no son necesarios para ser únicos. Tenga en cuenta que algunos subsistemas de almacenamiento no permiten establecer un nombre descriptivo durante la creación del grupo.
Si un subsistema no admite esto, la creación del bloque de almacenamiento debería seguir siendo correcta. Sin embargo, el grupo puede tener un nombre diferente asignado.
Este parámetro es obligatorio y no puede ser NULL.
Uso [in]
Especifica el uso previsto para el bloque de almacenamiento.
Puede especificar una descripción predefinida o una descripción personalizada. Para especificar una descripción predefinida, use un valor distinto de Other.
Para especificar una descripción personalizada, use Other y especifique un valor distinto de NULL para el parámetro OtherUsageDescription .
Otros (1)
Sin restricciones (2)
Reservado para ComputerSystem (el servidor de bloqueo) (3)
Reservado como contenedor de réplicas delta (4)
Reservado para Migration Services (5)
Reservado para servicios de replicación local (6)
Reservado para servicios de replicación remota (7)
Reservado para sparing (8)
OtherUsageDescription [in]
Permite a un usuario establecer un tipo de uso personalizado para el nuevo objeto MSFT_StoragePool . Este parámetro solo se puede especificar si el parámetro Usage está establecido en Other.
PhysicalDisks [in]
Matriz de cadenas, cada una de las cuales contiene una instancia incrustada de la clase MSFT_PhysicalDisk .
Este parámetro se usa para especificar una matriz de objetos MSFT_PhysicalDisk que se usarán como almacenamiento de datos de respaldo para el grupo de almacenamiento recién creado. Los discos físicos deben proceder de un grupo primordial en el subsistema en el que está creando este grupo. Todos los discos físicos deben proceder del mismo grupo primordial.
Este parámetro es obligatorio y no puede ser NULL.
ResiliencySettingNameDefault [in]
La configuración de resistencia deseada que se usará de forma predeterminada al crear un nuevo disco virtual en este bloque de almacenamiento. Si la propiedad SupportsMultipleResiliencySettingsPerStoragePool del subsistema se establece en FALSE, este parámetro también actúa como una sugerencia para el proveedor de administración de almacenamiento en el que este grupo de almacenamiento debe heredar la configuración de resistencia. Si no se proporciona ningún valor, el proveedor de administración de almacenamiento es responsable de elegir la configuración de resistencia más adecuada.
ProvisioningTypeDefault [in]
El tipo de aprovisionamiento deseado que se va a usar de forma predeterminada al crear un nuevo disco virtual en este bloque de almacenamiento. Si este parámetro es cero, el tipo de aprovisionamiento predeterminado se hereda del grupo primordial.
Fino (1)
Corregido (2)
LogicalSectorSizeDefault [in]
Tamaño predeterminado del sector lógico, en bytes. Esto resulta útil cuando un grupo de almacenamiento puede contener una combinación de discos físicos nativos de 512 bytes emulados y nativos de 4K byte o 512 bytes.
EnclosureAwareDefault [in]
Directiva de asignación predeterminada para discos virtuales creados en un bloque de almacenamiento compatible con el contenedor. Por ejemplo, un subsistema con reconocimiento de contenedor podría equilibrar cada copia de datos del disco virtual en varios contenedores físicos, de modo que cada contenedor contenga una copia completa de los datos del disco virtual.
WriteCacheSizeDefault [in]
Tamaño predeterminado de la caché de escritura para la creación de discos virtuales.
AutoWriteCacheSize [in]
Si es TRUE, el proveedor debe seleccionar el tamaño de caché de escritura automática.
RunAsJob [in]
Si es TRUE, este método usa el parámetro CreatedStorageJob cuando la solicitud tarda mucho tiempo en atenderse. Si se ha creado un trabajo de almacenamiento para realizar un seguimiento de la operación, este método devolverá Parámetros de método comprobados: trabajo iniciado.
Nota
Incluso si RunAsJob es TRUE, este método todavía puede devolver un resultado si ha terminado en un tiempo suficiente.
Si es FALSE o NULL, este método seguirá el comportamiento asincrónico de WMI predeterminado determinado por el método del cliente para la invocación. En otras palabras, es sincrónica a menos que se solicite lo contrario.
CreatedStoragePool [out]
Si el grupo de almacenamiento se crea correctamente, este parámetro recibe una cadena que contiene un objeto MSFT_StoragePool incrustado.
CreatedStorageJob [out]
Si RunAsJob se establece en TRUE y este método tarda mucho tiempo en ejecutarse, este parámetro recibe una referencia al objeto de trabajo de almacenamiento que se usa para realizar un seguimiento de la operación de ejecución prolongada.
ExtendedStatus [out]
Cadena que contiene un objeto MSFT_StorageExtendedStatus incrustado.
Este parámetro permite al proveedor de almacenamiento devolver información de error extendida (específica de la implementación).
Valor devuelto
Correcto (0)
No compatible (1)
Error no especificado (2)
Tiempo de espera (3)
Error (4)
Parámetro no válido (5)
Objeto no encontrado (8)
Parámetros de método comprobados: trabajo iniciado (4096)
Acceso denegado (40001)
No hay suficientes recursos para completar la operación. (40002)
Caché obsoleta (40003)
Se ha producido un error de E/S inesperado (40004)
Error en la solicitud debido a un error grave de hardware del dispositivo. (40007)
No se puede conectar al proveedor de almacenamiento. (46000)
El proveedor de almacenamiento no puede conectarse al subsistema de almacenamiento. (46001)
No se pudo habilitar la agrupación en clústeres de conmutación por error para este objeto de almacenamiento. (46008)
No existe ninguna configuración de resistencia con ese nombre. (49000)
El valor de WriteCacheSize está fuera del intervalo de valores admitido. (50005)
Esta operación no admite uno de los discos físicos especificados. (51000)
No se especificaron suficientes discos físicos para completar correctamente la operación. (51001)
Uno de los discos físicos especificados ya está en uso. (51002)
Uno de los discos físicos especificados usa un tamaño de sector que no es compatible con este bloque de almacenamiento. (51003)
Uno o varios discos físicos no están conectados a los nodos en los que se crea el grupo. (51005)
Comentarios
Los subsistemas que no admiten grupos de almacenamiento deben implementar este método de la siguiente manera:
- La propiedad SupportsAutomaticStoragePoolSelection del objeto MSFT_StorageSubSystem debe establecerse en TRUE.
- Las propiedades SupportsStoragePoolCreation, SupportsStoragePoolModification y SupportsStoragePoolDeletion del objeto MSFT_StorageSubSystem deben establecerse en FALSE.
- El objeto MSFT_VirtualDisk debe crearse en el subsistema llamando a MSFT_StorageSubSystem.CreateVirtualDisk. La compatibilidad con este método es obligatoria en este caso.
- No se requiere compatibilidad con las clases MSFT_StoragePool y MSFT_ResiliencySetting .
- No se requiere compatibilidad con el método MSFT_StoragePool.CreateVirtualDisk .
Los subsistemas que admiten grupos de almacenamiento, pero no permiten la selección del bloque de almacenamiento (selección de administrador del grupo en el que se crea el disco virtual), la creación, modificación o eliminación deben implementar este método de la siguiente manera:
- La propiedad SupportsAutomaticStoragePoolSelection del objeto MSFT_StorageSubSystem debe establecerse en TRUE.
- Las propiedades SupportsStoragePoolCreation, SupportsStoragePoolModification y SupportsStoragePoolDeletion del objeto MSFT_StorageSubSystem deben establecerse en FALSE.
- El objeto MSFT_VirtualDisk debe crearse en el subsistema llamando a MSFT_StorageSubSystem.CreateVirtualDisk. La compatibilidad con este método es obligatoria en este caso.
- El SMP debe seleccionar automáticamente el bloque de almacenamiento en el que se creará el objeto MSFT_VirtualDisk .
- No se requiere compatibilidad con las clases MSFT_StoragePool y MSFT_ResiliencySetting .
- No se requiere compatibilidad con el método MSFT_StoragePool.CreateVirtualDisk .
Los subsistemas que admiten grupos de almacenamiento y selección de grupos de almacenamiento, pero que no admiten la creación, modificación o eliminación del bloque de almacenamiento deben implementar este método de la siguiente manera:
- La propiedad SupportsAutomaticStoragePoolSelection del objeto MSFT_StorageSubSystem debe establecerse en TRUE solo si se implementa el método MSFT_StoragePool.CreateVirtualDisk .
- Las propiedades SupportsStoragePoolCreation, SupportsStoragePoolModification y SupportsStoragePoolDeletion del objeto MSFT_StorageSubSystem deben establecerse en FALSE.
- El objeto MSFT_VirtualDisk debe crearse en el subsistema llamando a MSFT_StorageSubSystem.CreateVirtualDisk. La compatibilidad con este método es obligatoria en este caso.
- El usuario debe seleccionar automáticamente el bloque de almacenamiento en el que se creará el objeto MSFT_VirtualDisk .
- Se requiere compatibilidad con las clases MSFT_StoragePool y MSFT_ResiliencySetting . Se requiere compatibilidad con al menos un grupo concreto y un tipo de configuración de resistencia.
- La compatibilidad con el método MSFT_StoragePool.CreateVirtualDisk es opcional.
Los subsistemas que admiten grupos de almacenamiento y selección de grupos de almacenamiento y también admiten la creación, modificación o eliminación del bloque de almacenamiento deben implementar este método de la siguiente manera:
- La propiedad SupportsAutomaticStoragePoolSelection del objeto MSFT_StorageSubSystem debe establecerse en TRUE solo si se implementa el método MSFT_StoragePool.CreateVirtualDisk .
- Las propiedades SupportsStoragePoolCreation, SupportsStoragePoolModification y SupportsStoragePoolDeletion del objeto MSFT_StorageSubSystem deben establecerse en TRUE.
- El objeto MSFT_VirtualDisk debe crearse en el subsistema llamando a MSFT_StorageSubSystem.CreateVirtualDisk. La compatibilidad con este método es obligatoria en este caso.
- El usuario debe seleccionar automáticamente el bloque de almacenamiento en el que se creará el objeto MSFT_VirtualDisk .
- Se requiere compatibilidad con las clases MSFT_StoragePool y MSFT_ResiliencySetting . Se requiere compatibilidad con al menos un grupo concreto y un tipo de configuración de resistencia.
- La compatibilidad con el método MSFT_StoragePool.CreateVirtualDisk es opcional.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2012 [solo aplicaciones de escritorio] |
Espacio de nombres | Root\Microsoft\Windows\Storage |
MOF | Storagewmi.mof |