Metodo CreateStoragePool della classe MSFT_StorageSubSystem
Crea un pool di archiviazione da dischi fisici disponibili contenuti in un pool primitivo comune.
Un disco fisico è disponibile per la creazione del pool di archiviazione se la proprietà CanPool del relativo oggetto MSFT_PhysicalDisk è TRUE.
La creazione del pool di archiviazione è disponibile solo quando la proprietà SupportsStoragePoolCreation dell'oggetto MSFT_StorageSubSystem del sottosistema di archiviazione è TRUE.
Sintassi
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
);
Parametri
FriendlyName [in]
Specifica il nome descrittivo per il nuovo pool di archiviazione.
I nomi descrittivi devono essere descrittivi, ma non devono essere univoci. Si noti che alcuni sottosistemi di archiviazione non consentono di impostare un nome descrittivo durante la creazione del pool.
Se un sottosistema non supporta questo problema, la creazione del pool di archiviazione deve comunque essere completata. Tuttavia, il pool potrebbe avere un nome diverso assegnato a esso.
Questo parametro è obbligatorio e non può essere NULL.
Utilizzo [in]
Specifica l'utilizzo previsto per il pool di archiviazione.
È possibile specificare una descrizione predefinita o una descrizione personalizzata. Per specificare una descrizione predefinita, usare un valore diverso da Altro.
Per specificare una descrizione personalizzata, usare Other e specificare un valore non NULL per il parametro OtherUsageDescription .
Altro (1)
Senza restrizioni (2)
Riservato per ComputerSystem (server a blocchi) ( 3)
Riservato come contenitore di replica Delta (4)
Riservato ai servizi di migrazione (5)
Riservato ai servizi di replica locale (6)
Riservato ai servizi di replica remota (7)
Riservato per la sparing (8)
OtherUsageDescription [in]
Consente a un utente di impostare un tipo di utilizzo personalizzato per il nuovo oggetto MSFT_StoragePool . Questo parametro può essere specificato solo se il parametro Usage è impostato su Other.
PhysicalDisks [in]
Matrice di stringhe, ognuna delle quali contiene un'istanza incorporata della classe MSFT_PhysicalDisk .
Questo parametro viene usato per specificare una matrice di oggetti MSFT_PhysicalDisk che verranno usati come archiviazione dati di backup per il pool di archiviazione appena creato. I dischi fisici devono venire da un pool primitivo nel sottosistema in cui si sta creando questo pool. Tutti i dischi fisici devono venire dallo stesso pool primordiale.
Questo parametro è obbligatorio e non può essere NULL.
ResilienzaSettingNameDefault [in]
Impostazione di resilienza desiderata da usare per impostazione predefinita quando si crea un nuovo disco virtuale in questo pool di archiviazione. Se la proprietà SupportsMultipleResiliencySettingsPerStoragePool del sottosistema è impostata su FALSE, questo parametro funge anche da hint per il provider di gestione dell'archiviazione in base al quale l'impostazione di resilienza deve essere ereditata da questo pool di archiviazione. Se non viene specificato alcun valore, il provider di gestione dell'archiviazione è responsabile della scelta dell'impostazione di resilienza più appropriata.
ProvisioningTypeDefault [in]
Tipo di provisioning desiderato da usare per impostazione predefinita quando si crea un nuovo disco virtuale in questo pool di archiviazione. Se questo parametro è zero, il tipo di provisioning predefinito viene ereditato dal pool primitivo.
Sottile (1)
Correzione (2)
LogicalSectorSizeDefault [in]
Dimensione del settore logico predefinita, in byte. Ciò è utile quando un pool di archiviazione può contenere una combinazione di dischi fisici nativi da 512 byte e 4K-byte nativi o da 512 byte.
EnclosureAwareDefault [in]
Criteri di allocazione predefiniti per i dischi virtuali creati in un pool di archiviazione con riconoscimento dell'istanza. Ad esempio, un sottosistema con riconoscimento enclosure abilitato può bilanciare ogni copia dei dati del disco virtuale in più enclosure fisici in modo tale che ogni enclosure contenga una copia completa dei dati del disco virtuale.
WriteCacheSizeDefault [in]
Dimensioni predefinite della cache di scrittura per la creazione di dischi virtuali.
AutoWriteCacheSize [in]
Se TRUE, il provider deve raccogliere le dimensioni della cache di scrittura automatica.
RunAsJob [in]
Se TRUE, questo metodo usa il parametro CreateStorageJob quando la richiesta richiede molto tempo al servizio. Se è stato creato un processo di archiviazione per tenere traccia dell'operazione, questo metodo restituirà i parametri del metodo controllati - Processo avviato.
Nota
Anche se RunAsJob è TRUE, questo metodo può comunque restituire un risultato se è stato completato in tempo sufficiente.
Se FALSE o NULL, questo metodo seguirà il comportamento asincrono WMI predefinito, come determinato dal metodo del client per la chiamata. In altre parole, è sincrono a meno che non sia richiesto altrimenti.
CreateStoragePool [out]
Se il pool di archiviazione viene creato correttamente, questo parametro riceve una stringa contenente un oggetto MSFT_StoragePool incorporato.
CreateStorageJob [out]
Se RunAsJob è impostato su TRUE e questo metodo richiede molto tempo per l'esecuzione, questo parametro riceve un riferimento all'oggetto processo di archiviazione usato per tenere traccia dell'operazione a esecuzione prolungata.
ExtendedStatus [out]
Stringa che contiene un oggetto MSFT_StorageExtendedStatus incorporato.
Questo parametro consente al provider di archiviazione di restituire informazioni di errore estese (specifiche dell'implementazione).
Valore restituito
Successo (0)
Non supportato (1)
Errore non specificato (2)
Timeout (3)
Errore (4)
Parametro non valido (5)
Oggetto non trovato (8)
Parametri del metodo controllati - Processo avviato (4096)
Accesso negato (40001)
Non sono disponibili risorse sufficienti per completare l'operazione. (40002)
Cache non aggiornata (40003)
Si è verificato un errore di I/O imprevisto (40004)
La richiesta non è riuscita a causa di un errore hardware del dispositivo irreversibile. (40007)
Impossibile connettersi al provider di archiviazione. (46000)
Il provider di archiviazione non può connettersi al sottosistema di archiviazione. (46001)
Impossibile abilitare il clustering di failover per questo oggetto di archiviazione. (46008)
Nessuna impostazione di resilienza con tale nome. (49000)
Il valore per WriteCacheSize non è compreso nell'intervallo di valori supportato. (50005)
Uno dei dischi fisici specificati non è supportato da questa operazione. (51000)
Non sono stati specificati dischi fisici sufficienti per completare correttamente l'operazione. (51001)
Uno dei dischi fisici specificati è già in uso. (51002)
Uno dei dischi fisici specificati usa una dimensione del settore non supportata da questo pool di archiviazione. (51003)
Uno o più dischi fisici non sono connessi ai nodi in cui viene creato il pool. (51005)
Commenti
I sottosistemi che non supportano i pool di archiviazione devono implementare questo metodo come segue:
- La proprietà SupportsAutomaticStoragePoolSelection dell'oggetto MSFT_StorageSubSystem deve essere impostata su TRUE.
- Le proprietà SupportsStoragePoolCreation, SupportsStoragePoolModification e SupportsStoragePoolDeletion dell'oggetto MSFT_StorageSubSystem devono essere impostate su FALSE.
- L'oggetto MSFT_VirtualDisk deve essere creato nel sottosistema chiamando MSFT_StorageSubSystem.CreateVirtualDisk. Il supporto per questo metodo è obbligatorio in questo caso.
- Il supporto per le classi MSFT_StoragePool e MSFT_ResiliencySetting non è necessario.
- Il supporto per il metodo MSFT_StoragePool.CreateVirtualDisk non è obbligatorio.
I sottosistemi che supportano i pool di archiviazione, ma non consentono la selezione del pool di archiviazione (selezione amministratore del pool in cui viene creato il disco virtuale), la creazione, la modifica o l'eliminazione devono implementare questo metodo come segue:
- La proprietà SupportsAutomaticStoragePoolSelection dell'oggetto MSFT_StorageSubSystem deve essere impostata su TRUE.
- Le proprietà SupportsStoragePoolCreation, SupportsStoragePoolModification e SupportsStoragePoolDeletion dell'oggetto MSFT_StorageSubSystem devono essere impostate su FALSE.
- L'oggetto MSFT_VirtualDisk deve essere creato nel sottosistema chiamando MSFT_StorageSubSystem.CreateVirtualDisk. Il supporto per questo metodo è obbligatorio in questo caso.
- Il pool di archiviazione in cui verrà creato l'oggetto MSFT_VirtualDisk deve essere selezionato automaticamente dal SMP.
- Il supporto per le classi MSFT_StoragePool e MSFT_ResiliencySetting non è necessario.
- Il supporto per il metodo MSFT_StoragePool.CreateVirtualDisk non è obbligatorio.
I sottosistemi che supportano i pool di archiviazione e la selezione del pool di archiviazione, ma non supportano la creazione, la modifica o l'eliminazione del pool di archiviazione devono implementare questo metodo come indicato di seguito:
- La proprietà SupportsAutomaticStoragePoolSelection dell'oggetto MSFT_StorageSubSystem deve essere impostata su TRUE solo se viene implementato il metodo MSFT_StoragePool.CreateVirtualDisk .
- Le proprietà SupportsStoragePoolCreation, SupportsStoragePoolModification e SupportsStoragePoolDeletion dell'oggetto MSFT_StorageSubSystem devono essere impostate su FALSE.
- L'oggetto MSFT_VirtualDisk deve essere creato nel sottosistema chiamando MSFT_StorageSubSystem.CreateVirtualDisk. Il supporto per questo metodo è obbligatorio in questo caso.
- Il pool di archiviazione in cui verrà creato l'oggetto MSFT_VirtualDisk deve essere selezionato automaticamente dall'utente.
- È necessario il supporto per le classi MSFT_StoragePool e MSFT_ResiliencySetting . È necessario il supporto per almeno un pool concreto e un tipo di impostazione di resilienza.
- Il supporto per il metodo MSFT_StoragePool.CreateVirtualDisk è facoltativo.
I sottosistemi che supportano i pool di archiviazione e la selezione del pool di archiviazione e supportano anche la creazione, la modifica o l'eliminazione del pool di archiviazione devono implementare questo metodo come indicato di seguito:
- La proprietà SupportsAutomaticStoragePoolSelection dell'oggetto MSFT_StorageSubSystem deve essere impostata su TRUE solo se viene implementato il metodo MSFT_StoragePool.CreateVirtualDisk .
- Le proprietà SupportsStoragePoolCreation, SupportsStoragePoolModification e SupportsStoragePoolDeletion dell'oggetto MSFT_StorageSubSystem devono essere impostate su TRUE.
- L'oggetto MSFT_VirtualDisk deve essere creato nel sottosistema chiamando MSFT_StorageSubSystem.CreateVirtualDisk. Il supporto per questo metodo è obbligatorio in questo caso.
- Il pool di archiviazione in cui verrà creato l'oggetto MSFT_VirtualDisk deve essere selezionato automaticamente dall'utente.
- È necessario il supporto per le classi MSFT_StoragePool e MSFT_ResiliencySetting . È necessario il supporto per almeno un pool concreto e un tipo di impostazione di resilienza.
- Il supporto per il metodo MSFT_StoragePool.CreateVirtualDisk è facoltativo.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 8 [solo app desktop] |
Server minimo supportato | Windows Server 2012 [solo app desktop] |
Spazio dei nomi | Root\Microsoft\Windows\Storage |
MOF | Storagewmi.mof |