VDS_STORAGE_POOL_PROP結構 (vds.h)

[從 Windows 8 和 Windows Server 2012 開始,虛擬磁碟服務 COM 介面會由 Windows 記憶體管理 API 取代。

定義 存放集區對象的屬性。

語法

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;

成員

id

識別存放集區物件的 VDS_OBJECT_ID 值。

status

指定存放集區狀態 的VDS_STORAGE_POOL_STATUS 列舉值。

health

指定存放集區健全狀況 的VDS_HEALTH 列舉值。 以下是這個成員的有效值。

不支援 Windows Server 2008、Windows Vista 和 Windows Server 2003: 不支援VDS_H_DEGRADED

VDS_H_UNKNOWN (0)

VDS_H_HEALTHY (1)

VDS_H_DEGRADED (11)

type

指定存放集區類型的 VDS_STORAGE_POOL_TYPE 列舉值。

pwszName

指定存放集區名稱的字串。

pwszDescription

包含存放集區描述的字串。

ullTotalConsumedSpace

備份存放集區的實體記憶體數量,以位元組為單位。 這個成員的值必須小於或等於 VDS_POOL_ATTRIBUTES 結構的 ullProvisionedSpace 成員的值。

ullTotalManagedSpace

此儲存集區中的空間,以位元組為單位,可配置來建立 (LUN 或集區) 的子儲存元素,包括已配置的空間。 根據儲存集區設定的方式,此成員的值可能小於 ullTotalConsumedSpace 成員的值。 例如,如果儲存集區設定為鏡像集區, ullTotalManagedSpace 的值就只有 ullTotalConsumedSpace 成員的值一半大。

ullRemainingFreeSpace

可用來從這個集區建立新 LUN 或子存放集區的大小上限,或擴充現有的 LUN 或子存放集區。 若要計算已配置給現有 LUN 或子存放集區的 Managed 空間量,請從 ullTotalManagedSpace 成員的值減去此成員的值。

備註

IVdsStoragePool::GetProperties 會傳回此結構來報告存放集區對象的屬性。

下列範例示範 ullTotalConsumedSpaceullTotalManagedSpaceullRemainingFreeSpace 成員如何一起運作。

範例 1

假設每個磁碟驅動器有 1 TB 的 2 個磁碟驅動器。 假設您進一步執行下列動作:
  1. 建立存放集區作為鏡像集區。
  2. 建立大小為 200 GB 的 LUN。

ullTotalConsumedSpace = 2 TB。 這是實體記憶體或實體磁碟所支援的存放集區空間數量。 從集區建立 LUN 並不會變更此號碼。

ullTotalManagedSpace = 1 TB。 這是可從這個集區建立的 LUN 或存放集區大小上限。 只有 1 TB 可用,因為集區類型是只有 2 個 plex 的鏡像。

注意如果集區類型是RAID5,則 ullTotalManagedSpace 會 (N-1) /NullTotalConsumedSpace,其中 N * 是數據行數目。 例如,5 個磁碟驅動器和 5 個數據行, ullTotalManagedSpace 會 (5-1) /5 * ullTotalConsumedSpace 或 1.6 TB。

 

ullRemainingFreeSpace = 800 GB (1 TB – 200 GB) ,因為 200GB 已配置給 LUN。

(ullTotalManagedSpace - ullRemainingFreeSpace) 是配置給從此集區建立之 LUN 和集區的受控空間數量。 在此範例中, ullTotalManagedSpace - ullRemainingFreeSpace = 200 GB。

範例 2

假設每個磁碟驅動器有 1 TB 的 2 個磁碟驅動器。 假設您進一步執行下列動作:
  1. 建立存放集區作為鏡像集區。
  2. 建立大小為 10 TB 的精簡布建 LUN。

ullProvisionedSpace = 10 TB。 這隻適用於精簡布建的集區。 這是為集區布建的總空間。 集區所耗用的總空間小於或等於為集區布建的總空間。

ullTotalConsumedSpace = 2 TB。

ullTotalManagedSpace = 1 TB。

ullRemainingFreeSpace = 1 TB 減去目前支援的 LUN 受控空間數量。

注意 雖然 LUN 的大小為 10 TB,但支援 LUN 的受控空間可能最小為 10 GB,在此情況下,有 20 GB 的取用空間支援鏡像 LUN。

 

規格需求

需求
最低支援的用戶端 Windows 7 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 R2 [僅限桌面應用程式]
標頭 vds.h

另請參閱

IVdsStoragePool::GetProperties