Condividi tramite


VDS_STORAGE_POOL_PROP struttura (vds.h)

[A partire da Windows 8 e Windows Server 2012, l'interfaccia COM del servizio disco virtuale viene sostituita dall'API gestione archiviazione di Windows.

Definisce le proprietà di un oggetto pool di archiviazione.

Sintassi

typedef struct _VDS_STORAGE_POOL_PROP {
  VDS_OBJECT_ID           id;
  VDS_STORAGE_POOL_STATUS status;
  VDS_HEALTH              health;
  VDS_STORAGE_POOL_TYPE   type;
  LPWSTR                  pwszName;
  LPWSTR                  pwszDescription;
  ULONGLONG               ullTotalConsumedSpace;
  ULONGLONG               ullTotalManagedSpace;
  ULONGLONG               ullRemainingFreeSpace;
} VDS_STORAGE_POOL_PROP, *PVDS_STORAGE_POOL_PROP;

Members

id

Valore VDS_OBJECT_ID che identifica l'oggetto pool di archiviazione.

status

Valore di enumerazione VDS_STORAGE_POOL_STATUS che specifica lo stato del pool di archiviazione.

health

Valore di enumerazione VDS_HEALTH che specifica l'integrità del pool di archiviazione. Di seguito sono riportati i valori validi per questo membro.

Windows Server 2008, Windows Vista e Windows Server 2003: VDS_H_DEGRADED non è supportato.

VDS_H_UNKNOWN (0)

VDS_H_HEALTHY (1)

VDS_H_DEGRADED (11)

type

Valore di enumerazione VDS_STORAGE_POOL_TYPE che specifica il tipo del pool di archiviazione.

pwszName

Stringa che specifica il nome del pool di archiviazione.

pwszDescription

Stringa contenente una descrizione del pool di archiviazione.

ullTotalConsumedSpace

Quantità di archiviazione fisica che esegue il backup del pool di archiviazione, in byte. Il valore di questo membro deve essere minore o uguale al valore del membro ullProvisionedSpace della struttura VDS_POOL_ATTRIBUTES .

ullTotalManagedSpace

Lo spazio, in byte, in questo pool di archiviazione che può essere allocato per creare elementi di archiviazione figlio (LUN o pool), incluso lo spazio già allocato. A seconda della modalità di configurazione del pool di archiviazione, il valore di questo membro può essere molto minore del valore del membro ullTotalConsumedSpace . Ad esempio, se il pool di archiviazione è configurato come pool con mirroring, il valore di ullTotalManagedSpace è solo metà del valore del membro ullTotalConsumedSpace .

ullRemainingFreeSpace

Dimensione massima che può essere usata per creare nuovi pool di archiviazione LUN o figlio da questo pool o per espandere i pool di archiviazione esistente o figlio. Per calcolare la quantità di spazio gestito già allocata ai pool di archiviazione lun o figlio esistenti, sottrae il valore di questo membro dal valore del membro ullTotalManagedSpace .

Commenti

IVdsStoragePool::GetProperties restituisce questa struttura per segnalare le proprietà di un oggetto pool di archiviazione.

Negli esempi seguenti viene illustrato come i membri ullTotalConsumedSpace, ullTotalManagedSpace e ullRemainingFreeSpace interagiscono.

Esempio 1

Si supponga di avere 2 unità di 1 TB ogni. Si supponga di eseguire ulteriormente le operazioni seguenti:
  1. Creare un pool di archiviazione come pool mirror.
  2. Creare un LUN le cui dimensioni sono 200 GB.

ullTotalConsumedSpace = 2 TB. Si tratta della quantità di spazio del pool di archiviazione supportato dall'archiviazione fisica o dai dischi fisici. La creazione di LUN dal pool non modifica questo numero.

ullTotalManagedSpace = 1 TB. Questa è la dimensione massima del pool di archiviazione o LUN che può essere creata da questo pool. È disponibile solo 1 TB, perché il tipo di pool è un mirror con solo 2 plessi.

Nota Se il tipo di pool era RAID5, ullTotalManagedSpace sarebbe (N-1)/N * ullTotalConsumedSpace, dove N è il numero di colonne. Ad esempio, con 5 unità e 5 colonne, ullTotalManagedSpace sarebbe (5-1)/5 * ullTotalConsumedSpace o 1,6 TB.

 

ullRemainingFreeSpace = 800 GB (1 TB – 200 GB), perché 200 GB è già stato allocato a un LUN.

(ullTotalManagedSpace - ullRemainingFreeSpace) è la quantità di spazio gestito allocata a LUN e pool creati da questo pool. In questo esempio ullTotalManagedSpace - ullRemainingFreeSpace = 200 GB.

Esempio 2

Si supponga di avere 2 unità di 1 TB ogni. Si supponga di eseguire ulteriormente le operazioni seguenti:
  1. Creare un pool di archiviazione come pool mirror.
  2. Creare un LUN con provisioning sottile le cui dimensioni sono pari a 10 TB.

ullProvisionedSpace = 10 TB. Questo vale solo per i pool con provisioning sottile. Questo è lo spazio totale di cui è stato effettuato il provisioning per il pool. Lo spazio totale utilizzato dal pool è minore o uguale allo spazio totale di cui è stato effettuato il provisioning per il pool.

ullTotalConsumedSpace = 2 TB.

ullTotalManagedSpace = 1 TB.

ullRemainingFreeSpace = 1 TB meno la quantità di spazio gestito attualmente di backup del LUN.

Nota Anche se le dimensioni del LUN sono pari a 10 TB, potrebbe essere presente un numero minimo di 10 GB di spazio gestito che esegue il backup del LUN, nel qual caso ci sarebbero 20 GB di spazio utilizzato di backup del LUN con mirroring.

 

Requisiti

Requisito Valore
Client minimo supportato Windows 7 [solo app desktop]
Server minimo supportato Windows Server 2008 R2 [solo app desktop]
Intestazione vds.h

Vedi anche

IVdsStoragePool::GetProperties