Méthode CreateStoragePool de la classe MSFT_StorageSubSystem
Crée un pool de stockage à partir de disques physiques disponibles contenus dans un pool primordial commun.
Un disque physique est disponible pour la création d’un pool de stockage si la propriété CanPool de son objet MSFT_PhysicalDisk a la valeur TRUE.
La création d’un pool de stockage n’est disponible que lorsque la propriété SupportsStoragePoolCreation de l’objet MSFT_StorageSubSystem du sous-système de stockage a la valeur TRUE.
Syntaxe
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
);
Paramètres
FriendlyName [in]
Spécifie le nom convivial du nouveau pool de stockage.
Les noms conviviaux sont censés être descriptifs, mais ils ne doivent pas nécessairement être uniques. Notez que certains sous-systèmes de stockage n’autorisent pas la définition d’un nom convivial lors de la création du pool.
Si un sous-système ne prend pas en charge cela, la création du pool de stockage doit toujours réussir. Toutefois, un nom différent peut être attribué au pool.
Ce paramètre est obligatoire et ne peut pas être NULL.
Utilisation [in]
Spécifie l’utilisation prévue pour le pool de stockage.
Vous pouvez spécifier une description prédéfinie ou une description personnalisée. Pour spécifier une description prédéfinie, utilisez une valeur autre que Autre.
Pour spécifier une description personnalisée, utilisez Other et spécifiez une valeur non NULL pour le paramètre OtherUsageDescription .
Autre (1)
Non restreint (2)
Réservé à ComputerSystem (le serveur de blocs) (3)
Réservé en tant que conteneur de réplicas Delta (4)
Réservé aux services de migration (5)
Réservé aux services de réplication locale (6)
Réservé aux services de réplication à distance (7)
Réservé à l’épargne (8)
OtherUsageDescription [in]
Permet à un utilisateur de définir un type d’utilisation personnalisé pour le nouvel objet MSFT_StoragePool . Ce paramètre ne peut être spécifié que si le paramètre Usage est défini sur Autre.
PhysicalDisks [in]
Tableau de chaînes, chacune contenant un instance incorporé de la classe MSFT_PhysicalDisk.
Ce paramètre est utilisé pour spécifier un tableau d’objets MSFT_PhysicalDisk qui seront utilisés comme stockage de données de stockage pour le pool de stockage nouvellement créé. Les disques physiques doivent provenir d’un pool primordial dans le sous-système dans lequel vous créez ce pool. Tous les disques physiques doivent provenir du même pool primordial.
Ce paramètre est obligatoire et ne peut pas être NULL.
ResiliencySettingNameDefault [in]
Paramètre de résilience souhaité à utiliser par défaut lors de la création d’un disque virtuel dans ce pool de stockage. Si la propriété SupportsMultipleResiliencySettingsPerStoragePool du sous-système a la valeur FALSE, ce paramètre agit également comme indicateur pour le fournisseur de gestion du stockage sur lequel le paramètre de résilience doit être hérité par ce pool de stockage. Si aucune valeur n’est donnée, le fournisseur de gestion du stockage est responsable du choix du paramètre de résilience le plus approprié.
ProvisioningTypeDefault [in]
Type d’approvisionnement souhaité à utiliser par défaut lors de la création d’un disque virtuel sur ce pool de stockage. Si ce paramètre est égal à zéro, le type d’approvisionnement par défaut est hérité du pool primordial.
Mince (1)
Résolu (2)
LogicalSectorSizeDefault [in]
Taille de secteur logique par défaut, en octets. Cela est utile lorsqu’un pool de stockage peut contenir une combinaison de disques physiques émulés de 512 octets et de disques physiques natifs de 4 Ko ou natifs de 512 octets.
EnclosureAwareDefault [in]
Stratégie d’allocation par défaut pour les disques virtuels créés dans un pool de stockage prenant en charge le boîtier. Par exemple, un sous-système avec reconnaissance de boîtier peut équilibrer chaque copie des données du disque virtuel parmi plusieurs boîtiers physiques de telle façon que chaque boîtier contienne une copie complète des données du disque virtuel.
WriteCacheSizeDefault [in]
Taille par défaut du cache d’écriture pour la création de disque virtuel.
AutoWriteCacheSize [in]
Si la valeur est TRUE, le fournisseur doit récupérer la taille du cache d’écriture automatique.
RunAsJob [in]
Si la valeur est TRUE, cette méthode utilise le paramètre CreatedStorageJob lorsque la maintenance de la requête prend beaucoup de temps. Si un travail de stockage a été créé pour suivre l’opération, cette méthode retourne paramètres de méthode vérifiés - Travail démarré.
Notes
Même si RunAsJob a la valeur TRUE, cette méthode peut toujours retourner un résultat s’il s’est terminé en suffisamment de temps.
Si la valeur est FALSE ou NULL, cette méthode suit le comportement asynchrone WMI par défaut, tel que déterminé par la méthode du client pour l’appel. En d’autres termes, elle est synchrone, sauf demande contraire.
CreatedStoragePool [out]
Si le pool de stockage est correctement créé, ce paramètre reçoit une chaîne qui contient un objet MSFT_StoragePool incorporé.
CreatedStorageJob [out]
Si RunAsJob a la valeur TRUE et que cette méthode prend beaucoup de temps à s’exécuter, ce paramètre reçoit une référence à l’objet de travail de stockage utilisé pour suivre l’opération de longue durée.
ExtendedStatus [out]
Chaîne qui contient un objet MSFT_StorageExtendedStatus incorporé.
Ce paramètre permet au fournisseur de stockage de retourner des informations d’erreur étendues (spécifiques à l’implémentation).
Valeur retournée
Réussite (0)
Non pris en charge (1)
Erreur non spécifiée (2)
Délai d’expiration (3)
Échec (4)
Paramètre non valide (5)
Objet introuvable (8)
Paramètres de méthode vérifiés - Travail démarré (4096)
Accès refusé (40001)
Il n’y a pas suffisamment de ressources pour terminer l’opération. (40002)
Cache obsolète (40003)
Une erreur d’E/S inattendue s’est produite (40004)
La demande a échoué en raison d’une erreur matérielle irrécupérable de l’appareil. (40007)
Impossible de se connecter au fournisseur de stockage. (46000)
Le fournisseur de stockage ne peut pas se connecter au sous-système de stockage. (46001)
Impossible d’activer le basculement clustering pour cet objet de stockage. (46008)
Il n’existe aucun paramètre de résilience portant ce nom. (49000)
La valeur de WriteCacheSize est en dehors de la plage de valeurs prise en charge. (50005)
L’un des disques physiques spécifiés n’est pas pris en charge par cette opération. (51000)
Il n’y a pas suffisamment de disques physiques spécifiés pour terminer l’opération. (51001)
L’un des disques physiques spécifiés est déjà en cours d’utilisation. (51002)
L’un des disques physiques spécifiés utilise une taille de secteur qui n’est pas prise en charge par ce pool de stockage. (51003)
Un ou plusieurs disques physiques ne sont pas connectés aux nœuds sur lesquels le pool est créé. (51005)
Remarques
Les sous-systèmes qui ne prennent pas en charge les pools de stockage doivent implémenter cette méthode comme suit :
- La propriété SupportsAutomaticStoragePoolSelection de l’objet MSFT_StorageSubSystem doit avoir la valeur TRUE.
- Les propriétés SupportsStoragePoolCreation, SupportsStoragePoolModification et SupportsStoragePoolDeletion de l’objet MSFT_StorageSubSystem doivent avoir la valeur FALSE.
- L’objet MSFT_VirtualDisk doit être créé dans le sous-système en appelant MSFT_StorageSubSystem.CreateVirtualDisk. La prise en charge de cette méthode est obligatoire dans ce cas.
- La prise en charge des classes MSFT_StoragePool et MSFT_ResiliencySetting n’est pas requise.
- La prise en charge de la méthode MSFT_StoragePool.CreateVirtualDisk n’est pas requise.
Les sous-systèmes qui prennent en charge les pools de stockage, mais qui n’autorisent pas la sélection du pool de stockage (sélection par l’administrateur du pool dans lequel le disque virtuel est créé), la création, la modification ou la suppression doivent implémenter cette méthode comme suit :
- La propriété SupportsAutomaticStoragePoolSelection de l’objet MSFT_StorageSubSystem doit avoir la valeur TRUE.
- Les propriétés SupportsStoragePoolCreation, SupportsStoragePoolModification et SupportsStoragePoolDeletion de l’objet MSFT_StorageSubSystem doivent avoir la valeur FALSE.
- L’objet MSFT_VirtualDisk doit être créé dans le sous-système en appelant MSFT_StorageSubSystem.CreateVirtualDisk. La prise en charge de cette méthode est obligatoire dans ce cas.
- Le pool de stockage dans lequel l’objet MSFT_VirtualDisk sera créé doit être automatiquement sélectionné par le SMP.
- La prise en charge des classes MSFT_StoragePool et MSFT_ResiliencySetting n’est pas requise.
- La prise en charge de la méthode MSFT_StoragePool.CreateVirtualDisk n’est pas requise.
Les sous-systèmes qui prennent en charge les pools de stockage et la sélection du pool de stockage, mais qui ne prennent pas en charge la création, la modification ou la suppression du pool de stockage doivent implémenter cette méthode comme suit :
- La propriété SupportsAutomaticStoragePoolSelection de l’objet MSFT_StorageSubSystem doit avoir la valeur TRUE uniquement si la méthode MSFT_StoragePool.CreateVirtualDisk est implémentée.
- Les propriétés SupportsStoragePoolCreation, SupportsStoragePoolModification et SupportsStoragePoolDeletion de l’objet MSFT_StorageSubSystem doivent avoir la valeur FALSE.
- L’objet MSFT_VirtualDisk doit être créé dans le sous-système en appelant MSFT_StorageSubSystem.CreateVirtualDisk. La prise en charge de cette méthode est obligatoire dans ce cas.
- Le pool de stockage dans lequel l’objet MSFT_VirtualDisk sera créé doit être automatiquement sélectionné par l’utilisateur.
- La prise en charge des classes MSFT_StoragePool et MSFT_ResiliencySetting est requise. La prise en charge d’au moins un pool concret et d’un type de paramètre de résilience est requise.
- La prise en charge de la méthode MSFT_StoragePool.CreateVirtualDisk est facultative.
Les sous-systèmes qui prennent en charge les pools de stockage et la sélection de pool de stockage et qui prennent également en charge la création, la modification ou la suppression de pool de stockage doivent implémenter cette méthode comme suit :
- La propriété SupportsAutomaticStoragePoolSelection de l’objet MSFT_StorageSubSystem doit avoir la valeur TRUE uniquement si la méthode MSFT_StoragePool.CreateVirtualDisk est implémentée.
- Les propriétés SupportsStoragePoolCreation, SupportsStoragePoolModification et SupportsStoragePoolDeletion de l’objet MSFT_StorageSubSystem doivent avoir la valeur TRUE.
- L’objet MSFT_VirtualDisk doit être créé dans le sous-système en appelant MSFT_StorageSubSystem.CreateVirtualDisk. La prise en charge de cette méthode est obligatoire dans ce cas.
- Le pool de stockage dans lequel l’objet MSFT_VirtualDisk sera créé doit être automatiquement sélectionné par l’utilisateur.
- La prise en charge des classes MSFT_StoragePool et MSFT_ResiliencySetting est requise. La prise en charge d’au moins un pool concret et d’un type de paramètre de résilience est requise.
- La prise en charge de la méthode MSFT_StoragePool.CreateVirtualDisk est facultative.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 8 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2012 [applications de bureau uniquement] |
Espace de noms | Root\Microsoft\Windows\Storage |
MOF | Storagewmi.mof |