MSFT_StoragePool 类
表示可用于创建虚拟磁盘的物理磁盘逻辑分组。
根据可用物理磁盘的数量和存储池的功能,可以创建具有不同特性和弹性级别的虚拟磁盘。
以下语法由托管对象格式 (MOF) 代码简化而来。
语法
class MSFT_StoragePool : MSFT_StorageObject
{
String FriendlyName;
String Name;
UInt16 Usage;
String OtherUsageDescription;
Boolean IsPrimordial;
UInt16 HealthStatus;
UInt16 OperationalStatus[];
String OtherOperationalStatusDescription;
UInt64 Size;
UInt64 AllocatedSize;
UInt64 LogicalSectorSize;
UInt64 PhysicalSectorSize;
UInt16 ProvisioningTypeDefault;
UInt16 SupportedProvisioningTypes[];
String ResiliencySettingNameDefault;
Boolean IsReadOnly;
UInt16 ReadOnlyReason;
Boolean IsClustered;
Boolean SupportsDeduplication;
UInt16 ThinProvisioningAlertThresholds[];
Boolean ClearOnDeallocate;
Boolean IsPowerProtected;
UInt16 RepairPolicy;
Boolean EnclosureAwareDefault;
UInt16 FaultDomainAwarenessDefault;
UInt16 RetireMissingPhysicalDisks;
UInt16 Version;
UInt64 WriteCacheSizeDefault;
UInt64 WriteCacheSizeMin;
UInt64 WriteCacheSizeMax;
};
成员
MSFT_StoragePool 类具有这些类型的成员:
方法
MSFT_StoragePool 类具有这些方法。
方法 | 说明 |
---|---|
AddPhysicalDisk | 将物理磁盘添加到存储池。 |
CreateStorageTier | 在存储池上创建存储层模板。 |
CreateVirtualDisk | 在存储池中创建虚拟磁盘。 |
CreateVolume | 使用存储池的资源创建虚拟磁盘和单个卷。 |
DeleteObject | 删除空的存储池。 |
GetSecurityDescriptor | 检索存储池对象实例的安全描述符。 |
GetSupportedSize | 检索可在存储池中创建的受支持虚拟磁盘的大小。 |
优化 | 优化存储池。 |
RemovePhysicalDisk | 从存储池中删除物理磁盘。 |
SetAttributes | 设置或更改存储池对象的属性值。 |
SetDefaults | 设置或更改存储池对象属性的默认值。 |
SetFriendlyName | 设置或更改存储池对象的友好名称。 |
SetSecurityDescriptor | 设置或更改存储池对象的安全描述符。 |
SetUsage | 设置或更改存储池对象的预期用途。 |
升级 | 升级存储池上的元数据。 |
属性
MSFT_StoragePool 类具有这些属性。
AllocatedSize
数据类型:UInt64
访问类型:只读
限定符:单位(字节)
此存储池使用的总容量。 如果是原始存储池,则这是当前分配给具体存储池的所有容量的总和。 如果是具体的池,则此值应是当前分配给虚拟磁盘和其他池元数据的所有容量的总和。
ClearOnDeallocate
数据类型:布尔
访问类型:只读
如果物理磁盘在未映射或从存储池中移除时应清零(清除所有数据),则为 TRUE。
EnclosureAwareDefault
数据类型:布尔
访问类型:只读
在此池中创建的虚拟磁盘的默认分配行为。 机箱感知虚拟磁盘会智能选择要用于冗余的物理磁盘。 如果为 TRUE,则虚拟磁盘将使用不同机箱中的物理磁盘,以平衡两个或多个物理磁盘盒之间的容错。
FaultDomainAwarenessDefault
数据类型:UInt16
访问类型:只读
确定在此池中创建的虚拟磁盘的默认分配行为。 容错域感知虚拟磁盘可智能地选择用于冗余的物理磁盘,以平衡指定类型的两个(或多个)容错域单元之间的容错。
物理磁盘 (1)
StorageEnclosure (2)
StorageScaleUnit (3)
StorageChassis (4)
StorageRack (5)
FriendlyName
数据类型:String
访问类型:读/写
限定符:Required
用户友好的存储池名称。 可以通过调用 SetFriendlyName 方法来设置此名称。
HealthStatus
数据类型:UInt16
访问类型:只读
限定符:Required
存储池的运行状况。
存储池的运行状况取决于备份物理磁盘的运行状况,以及存储池是否能保持所需的冗余级别。
值 | 含义 |
---|---|
运行状况 0 | 所有物理磁盘都存在,且处于正常状态。 |
警告 1 | 大部分物理磁盘都运行正常,但一个或多个磁盘可能会出现 I/O 请求失败。 |
运行不正常 2 | 大部分物理磁盘运行不正常或处于故障状态,而存储池不再具有数据完整性。 |
未知 5 | 存储池的运行状况未知。 |
IsClustered
数据类型:布尔
访问类型:只读
如果存储池用于集群环境中,则为 TRUE。
IsPowerProtected
数据类型:布尔
访问类型:只读
如果此池中的磁盘能够承受断电而不丢失数据,则为 TRUE。 例如,在断开外部电源后,它们会自动将易失性缓冲区刷新到非易失性介质中。
IsPrimordial
数据类型:布尔
访问类型:只读
限定符:Required
如果此字段设置为 TRUE,则为原始存储池。 原始池又称为“可用存储”池,它是在创建和删除具体存储池时提取和返回存储容量的地方。 原始池无法创建或删除。
如果此字段设置为 FALSE,则为具体的存储池。 这些池可执行存储池类上定义的所有管理操作,包括创建和删除虚拟磁盘。
IsReadOnly
数据类型:布尔
访问类型:只读
表示存储池的配置是否为只读。 如果为 TRUE,则存储池不允许修改其自身或任何虚拟磁盘和物理磁盘。 请注意,即使此属性为 TRUE,虚拟磁盘上的数据仍可写入。
LogicalSectorSize
数据类型:UInt64
访问类型:只读
限定符:单位(字节)
存储池的逻辑扇区大小(以字节为单位)。 此值应源自于备份物理磁盘以及创建该存储池时指定的首选项。
Name
数据类型:String
访问类型:只读
限定符:Required
用于标识存储池的半唯一(作用域为拥有的存储子系统)、人类可读的字符串。
OperationalStatus
数据类型:UInt16 数组
访问类型:只读
限定符:Required
存储池的运行状况。 与 HealthStatus 不同,此属性指示与存储池相关的硬件、软件和基础架构问题的状态,并可包含多个值。
值 | 含义 |
---|---|
未知 0 | 运行状态未知。 |
其他 1 | 通过设置 OtherOperationalStatusDescription 属性,指定了特定于供应商的 OperationalStatus。 |
OK 2 | 存储池正在响应命令,处于正常运行状态。 |
已降级 3 | 存储池正在响应命令,但未以最佳运行状态运行。 |
已强调 4 | 存储池正在运行,但需要引起注意。 例如,存储子系统可能超载或过热。 |
预计故障 5 | 存储池正在运行,但预计不久的将来会出现故障。 |
错误 6 | 发生错误。 |
不可恢复错误 7 | 发生了不可恢复的错误。 |
正在启动 8 | 存储池正在启动。 |
正在停止 9 | 存储池正在停止。 |
已停止 10 | 存储池以干净有序的方式停止。 |
服务中 11 | 正在配置、维护、清理或以其他方式管理存储池。 |
无联系人 12 | 存储提供程序知道存储池的情况,但一直无法与其建立通信。 |
通信中断 13 | 存储提供程序知道存储池,并在过去成功与之联系过,但目前无法联系到存储子系统。 |
已中止 14 | 与已停止类似,只是存储池突然停止,可能需要配置或维护。 |
暂停活动 15 | 存储池可访问,但处于非活动状态。 |
支持实体出错 16 | 此状态值不一定表示存储池出现问题,但确实表示存储池依赖的其他设备或连接可能需要注意。 |
已完成 17 | 存储池已完成一项操作。 根据操作结果,该状态值应与OK、错误或已降级结合使用 |
电源模式 18 | 保留此值供系统使用。 |
正在重新定位 19 | 存储池正在重新定位。 |
Microsoft 保留。 | 保留此值供系统使用。 |
多数磁盘运行不正常 0x8000 | 保留此值供系统使用。 |
少数磁盘运行不正常 0x8001 | 保留此值供系统使用。 |
Microsoft 保留 0x8002。 | 保留此值供系统使用。 |
OtherOperationalStatusDescription
数据类型:String
访问类型:只读
供应商定义的状态的字符串表示。 只有当 OperationalStatus 属性的值为其他时,才应设置此属性。
OtherUsageDescription
数据类型:String
访问类型:只读
供应商定义的存储池使用情况的字符串表示。 只有当使用情况属性设置为其他时,才能指定此属性。
PhysicalSectorSize
数据类型:UInt64
访问类型:只读
限定符:单位(字节)
物理扇区大小(以字节为单位)。 该值来自于属于存储池的后备物理磁盘。
ProvisioningTypeDefault
数据类型:UInt16
访问类型:只读
限定符:Required
在存储池中创建新虚拟磁盘时使用的默认预配方案。
值 | 含义 |
---|---|
未知 0 | 分配策略未知。 这可能意味着该信息不可用,或者存储池使用专有的分配方法。 |
瘦 1 | 虚拟磁盘的存储空间按需分配。 |
固定 2 | 虚拟磁盘的存储空间在创建虚拟磁盘时分配。 |
ReadOnlyReason
数据类型:UInt16
访问类型:只读
存储池只读的原因。
值 | 含义 |
---|---|
未知 0 | 原因未知。 |
无 1 | 池并非只读。 |
被策略分离 2 | 管理员要求将池设置为只读,或在系统中制定了要求池为只读的策略。 |
多数磁盘不正常 3 | 大部分支持的物理磁盘处于运行不正常状态,从而强制存储池进入只读状态。 |
RepairPolicy
数据类型:UInt16
访问类型:只读
操作系统如何修复此存储池的虚拟磁盘。
值 | 含义 |
---|---|
2 | 顺序 - 一次处理一个分配碎片。 修复时间较长,但对 I/O 负载的影响较小。 |
3 | 并行 - 尽可能多地并行处理分配碎片。 虽然修复时间缩至了最短,但对 I/O 负载的影响却很大。 |
ResiliencySettingNameDefault
数据类型:String
访问类型:只读
限定符:必填,ModelCorrespondence {"MSFT_ResiliencySetting.Name"}
在存储池上创建新虚拟磁盘时默认使用的所需复原能力设置。 在创建虚拟磁盘时,可以覆盖此默认值。 此属性的值应与 MSFT_ResiliencySetting 对象的名称属性相对应。
RetireMissingPhysicalDisks
数据类型:UInt16
访问类型:只读
限定符:值(“自动”、“始终”、“从不”),ValueMap ("1", "2", "3")
指定存储子系统是否会自动停用此存储池中缺失的物理磁盘,并用热备磁盘或存储池中可用的其他物理磁盘进行替换。
大小
数据类型:UInt64
访问类型:只读
限定符:单位(字节)
存储池的容量。 如果是原始池,则这是所有运行正常的物理磁盘大小的总和。 如果是具体的池,则这是所有相关物理磁盘(热备除外,包括故障驱动器)的总和。
SupportedProvisioningTypes
数据类型:UInt16 数组
访问类型:只读
限定符:Required
存储池支持用于创建虚拟磁盘的预配方案。
值 | 含义 |
---|---|
未知 0 | 分配策略未知。 这可能意味着该信息不可用,或者存储池使用专有的分配方法。 |
瘦 1 | 虚拟磁盘的存储空间按需分配。 |
固定 2 | 虚拟磁盘的存储空间在创建虚拟磁盘时分配。 |
SupportsDeduplication
数据类型:布尔
访问类型:只读
如果存储池支持重复数据删除,则为 TRUE。
ThinProvisioningAlertThresholds
数据类型:UInt16 数组
访问类型:只读
限定符:单位(“百分比”),MinValue (0),MaxValue (100)
表示各种稀疏(精简预配)阈值的百分比数组。 当虚拟磁盘空间使用量超过这些阈值之一时,将向所有订阅的客户端广播通知。
使用情况
数据类型:UInt16
访问类型:只读
限定符:Required
存储池的预期用途。
可以指定预定义说明或自定义说明。 要指定预定义描述,请使用其他以外的值。
要指定自定义说明,请使用其他并为 OtherUsageDescription 属性指定一个非 NULL 值。
未知 (0)
其他 (1)
非受限 (2)
为 ComputerSystem(块服务器)保留 (3)
保留为 Delta 副本容器 (4)
为迁移服务保留 (5)
为本地复制服务保留 (6)
为远程复制服务保留 (7)
为备份保留 (8)
版本
数据类型:UInt16
访问类型:只读
支持此存储池的最低 OS 版本。
值 | 含义 |
---|---|
1 | Windows Server 2012 |
2 | Windows Server 2012 R2 预览版 |
3 | Windows Server 2012 R2 |
WriteCacheSizeDefault
数据类型:UInt64
访问类型:只读
创建虚拟磁盘时写入缓存的默认大小。
WriteCacheSizeMax
数据类型:UInt64
访问类型:只读
创建虚拟磁盘时写入缓存的最大大小。
WriteCacheSizeMin
数据类型:UInt64
访问类型:只读
创建虚拟磁盘时写入缓存的最小大小。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 8 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2012 [仅限桌面应用] |
命名空间 | Root\Microsoft\Windows\Storage |
MOF | Storagewmi.mof |