MSISCSITARGET_StorageSetting class

Defines a set of properties that are related to the configuration of a storage volume.

A MSISCSITARGET_StorageSetting instance is roughly equivalent to a service-level agreement (SLA). A storage setting defines properties in two categories:

The quality of service (QoS) properties.

  • PackageRedundancyGoal
  • DataRedundancyGoal
  • NoSinglePointOfFailure

The detailed redundant array of independent disks (RAID) properties.

  • ExtentStripeLength
  • ParityLayout
  • UserDataStripeDepth
The use of these properties differs depending on whether the MSISCSITARGET_StorageSetting instance is used as a goal for a storage configuration service operation or whether it is used as a service-level agreement (SLA) for a created storage volume. In a storage setting that is used as a goal, the QoS properties are required as a set. The detailed RAID properties, if supported, can be used optionally in any combination. In a storage setting that is used as a service-level agreement for a volume, the QoS properties reflect the SLA, with a goal, a minimum, and a maximum. The actual current service level is indicated by corresponding properties in the MSISCSITARGET_StorageVolume instance.

The following syntax is simplified from Managed Object Format (MOF) code and includes all of the inherited properties.

Syntax

[Dynamic, Provider("MSiSCSITargetProv"), Version("1.0.0")]
class MSISCSITARGET_StorageSetting : CIM_StorageSetting
{
  string  Caption;
  string  Description;
  string  InstanceID;
  string  ElementName;
  boolean NoSinglePointOfFailure;
  uint16  DataRedundancyMax;
  uint16  DataRedundancyMin;
  uint16  DataRedundancyGoal;
  uint16  PackageRedundancyMax;
  uint16  PackageRedundancyMin;
  uint16  PackageRedundancyGoal;
  uint8   DeltaReservationMax;
  uint8   DeltaReservationMin;
  uint8   DeltaReservationGoal;
  uint16  ChangeableType;
  uint16  ExtentStripeLength;
  uint16  ExtentStripeLengthMin;
  uint16  ExtentStripeLengthMax;
  uint16  ParityLayout;
  uint64  UserDataStripeDepth;
  uint64  UserDataStripeDepthMin;
  uint64  UserDataStripeDepthMax;
};

Members

The MSISCSITARGET_StorageSetting class has these types of members:

Properties

The MSISCSITARGET_StorageSetting class has these properties.

Caption
Data type: string
Access type: Read-only
Qualifiers: MaxLen (64)

The Caption property is a short textual description (one- line string) of the object.

This property is inherited from CIM_ManagedElement.

ChangeableType
Data type: uint16
Access type: Read-only

Enumeration indicating the type of setting. "Fixed - Not Changeable" settings are primordial. These setting are defined at the implementor of the class. "Changeable - Transient" is the type of setting produced by the "CreateSetting" method. A client can subsequently request that the implementation persist the generated and potentially modified setting indefinately. Only a "Changeable - Transient" setting SHALL be converted to a "Changeable = Persistent" setting; the setting SHALL NOT be changed back.

This property is inherited from CIM_StorageSetting.

Fixed - Not Changeable (0)

Changeable - Transient (1)

Changeable - Persistent (2)

DataRedundancyGoal
Data type: uint16
Access type: Read/write
Qualifiers: MinValue (1), ModelCorrespondence ("CIM_StorageSetting.DataRedundancyMax", "CIM_StorageSetting.DataRedundancyMin")

DataRedundancyGoal describes the desired number of complete copies of data to be maintained. Examples would be RAID 5 where 1 copy is maintained and RAID 1 where 2 or more copies are maintained. Possible values are 1 to n. The bounds (max and min) for redundancy are defined using the properties, DataRedundancyMax and DataRedundancyMin.

This property is inherited from CIM_StorageSetting.

DataRedundancyMax
Data type: uint16
Access type: Read/write
Qualifiers: MinValue (1), ModelCorrespondence ("CIM_StorageSetting.DataRedundancyMin", "CIM_StorageSetting.DataRedundancyGoal")

DataRedundancyMax describes the maximum number of complete copies of data to be maintained. Examples would be RAID 5 where 1 copy is maintained and RAID 1 where 2 or more copies are maintained. Possible values are 1 to n. The desired redundancy is specified using DataRedundancyGoal, while the minimum is defined by DataRedundancyMin.

This property is inherited from CIM_StorageSetting.

DataRedundancyMin
Data type: uint16
Access type: Read/write
Qualifiers: MinValue (1), ModelCorrespondence ("CIM_StorageSetting.DataRedundancyMax", "CIM_StorageSetting.DataRedundancyGoal")

DataRedundancyMin describes the minimum number of complete copies of data to be maintained. Examples would be RAID 5 where 1 copy is maintained and RAID 1 where 2 or more copies are maintained. Possible values are 1 to n. The desired redundancy is specified using DataRedundancyGoal, while the maximum is defined by DataRedundancyMax.

This property is inherited from CIM_StorageSetting.

DeltaReservationGoal
Data type: uint8
Access type: Read/write
Qualifiers: Units ("Percentage"), MinValue (1), MaxValue (100), ModelCorrespondence ("CIM_StorageSetting.DeltaReservationMin", "CIM_StorageSetting.DeltaReservationMax")

DeltaReservationGoal is a number between 1 (1%) and a 100 (100%) which specifies the desired amount of space that should be reserved in a replica for caching changes. For a complete copy this would be 100%. The bounds (max and min) for the reservation are defined using the properties, DeltaReservationMax and DeltaReservationMin.

This property is inherited from CIM_StorageSetting.

DeltaReservationMax
Data type: uint8
Access type: Read/write
Qualifiers: Units ("Percentage"), MinValue (1), MaxValue (100), ModelCorrespondence ("CIM_StorageSetting.DeltaReservationMin", "CIM_StorageSetting.DeltaReservationGoal")

DeltaReservationMax is a number between 1 (1%) and a 100 (100%) which specifies the maximum amount of space that should be reserved in a replica for caching changes. For a complete copy this would be 100%. The desired reservation is specified using DeltaReservationGoal, while the minimum is defined by DeltaReservationMin.

This property is inherited from CIM_StorageSetting.

DeltaReservationMin
Data type: uint8
Access type: Read/write
Qualifiers: Units ("Percentage"), MinValue (1), MaxValue (100), ModelCorrespondence ("CIM_StorageSetting.DeltaReservationMax", "CIM_StorageSetting.DeltaReservationGoal")

DeltaReservationMin is a number between 1 (1%) and a 100 (100%) which specifies the minimum amount of space that should be reserved in a replica for caching changes. For a complete copy this would be 100%. The desired reservation is specified using DeltaReservationGoal, while the maximum is defined by DeltaReservationMax.

This property is inherited from CIM_StorageSetting.

Description
Data type: string
Access type: Read-only

Contains a textual description of the object.

This property is inherited from CIM_ManagedElement.

ElementName
Data type: string
Access type: Read-only
Qualifiers: Required

The user-friendly name for this instance of SettingData. In addition, the user-friendly name can be used as an index property for a search or query. (Note: The name does not have to be unique within a namespace.)

This property is inherited from CIM_SettingData.

ExtentStripeLength
Data type: uint16
Access type: Read/write
Qualifiers: MinValue (1), ModelCorrespondence ("CIM_StorageSetting.ExtentStripeLengthMax", "CIM_StorageSetting.ExtentStripeLengthMin")

ExtentStripeLength describes the number of underlying StorageExtents across which data is striped in the common striping-based storage organizations. This is also known as the number of 'members' or 'columns'. When used in a goal setting instance, ExtentStripeLength is the optimal desired value. The bounds (max and min) for Stripe Length are defined using the properties ExtentStripeLengthMax and ExtentStripeLengthMin. ExtentStripeLength MUST be set to NULL if the scoping StorageCapablities indicates that it is not supported in this context. ExtentStripeLength can be used in conjunction with CreateOrModifyElementFromELements to explicitly configure storage. An example would be RAID 0+1 with mirroring two stripe sets, each set being three wide. In this case CreateOrModifyElementFromElements would be passed a goal setting with DataRedundancy = 2 and ExtentStripeLength = 3. The size of the InElements array would be 6 and would contain the StorageExtents to be used to construct the StorageElement as a RAID 0+1. ExtentStripeLengthMin and ExtentStripeLengthMax are meaningless and wouldbe set to NULL. If the property is supported, and is part of StorageSettingWithHints it MAY be set to NULL. If used it will constrain the effects of Hint selections. When used in a Setting instance associated to a Volume, this property indicates the specific value that the Volume was created with, and ExtentStripeLengthMin and ExtentStripeLengthMax will be set to the same specific value.

This property is inherited from CIM_StorageSetting.

ExtentStripeLengthMax
Data type: uint16
Access type: Read/write
Qualifiers: MinValue (1), ModelCorrespondence ("CIM_StorageSetting.ExtentStripeLengthMin", "CIM_StorageSetting.ExtentStripeLength")

ExtentStripeLength describes the number of underlying StorageExtents across which data is striped in the common striping-based storage organizations. This is also known as the number of 'members' or 'columns'. When used in a goal setting instance, ExtentStripeLengthMax is the maximum acceptable value. The desired Stripe Length is specified using ExtentStripeLength, while the minimum is defined by ExtentStripeLengthMin. ExtentStripeLengthMax MUST be set to NULL if the scoping StorageCapablities indicates that it is not supported in this context. If the property is supported, and is part of StorageSettingWithHints it MAY be set to NULL. If used it will constrain the effects of Hint selections. When used in a Setting instance associated to a Volume, this property is set to the specific value of ExtentStripeLength.

This property is inherited from CIM_StorageSetting.

ExtentStripeLengthMin
Data type: uint16
Access type: Read/write
Qualifiers: MinValue (1), ModelCorrespondence ("CIM_StorageSetting.ExtentStripeLengthMax", "CIM_StorageSetting.ExtentStripeLength")

ExtentStripeLength describes the number of underlying StorageExtents across which data is striped in the common striping-based storage organizations. This is also known as the number of 'members' or 'columns'. When used in a goal setting instance, ExtentStripeLengthMin is the minimum acceptable value. The desired Stripe Length is specified using ExtentStripeLength, while the maximum is defined by ExtentStripeLengthMax. ExtentStripeLengthMin MUST be set to NULL if the scoping StorageCapablities indicates that it is not supported in this context. If the property is supported, and is part of StorageSettingWithHints it MAY be set to NULL. If used it will constrain the effects of Hint selections. When used in a Setting instance associated to a Volume, this property is set to the specific value of ExtentStripeLength.

This property is inherited from CIM_StorageSetting.

InstanceID
Data type: string
Access type: Read-only
Qualifiers: Key

Within the scope of the instantiating Namespace, InstanceID opaquely and uniquely identifies an instance of this class. To ensure uniqueness within the NameSpace, the value of InstanceID should be constructed using the following "preferred" algorithm:

<OrgID>:<LocalID>

Where <OrgID> and <LocalID> are separated by a colon (:), and where <OrgID> must include a copyrighted, trademarked, or otherwise unique name that is owned by the business entity that is creating or defining the InstanceID or that is a registered ID assigned to the business entity by a recognized global authority. (This requirement is similar to the <Schema Name>_<Class Name> structure of Schema class names.) In addition, to ensure uniqueness, <OrgID> must not contain a colon (:). When using this algorithm, the first colon to appear in InstanceID must appear between <OrgID> and <LocalID>.

<LocalID> is chosen by the business entity and should not be reused to identify different underlying (real-world) elements. If the above "preferred" algorithm is not used, the defining entity must assure that the resulting InstanceID is not reused across any InstanceIDs produced by this or other providers for the NameSpace of this instance.

For DMTF-defined instances, the "preferred" algorithm must be used with the <OrgID> set to CIM.

This property is inherited from CIM_SettingData.

NoSinglePointOfFailure
Data type: boolean
Access type: Read/write

Indicates the desired value for No Single Point of Failure. Possible values are false = single point of failure, and true = no single point of failure.

This property is inherited from CIM_StorageSetting.

PackageRedundancyGoal
Data type: uint16
Access type: Read/write
Qualifiers: ModelCorrespondence ("CIM_StorageSetting.PackageRedundancyMax", "CIM_StorageSetting.PackageRedundancyMin")

PackageRedundancyGoal describes the desired number of redundant packages to be used. For example, in the storage domain, package redundancy describes how many disk spindles can fail without data loss including, at most, one spare. An example would be RAID5 with a spare disk which would have a PackageRedundancy of 2. Possible values are 0 to n. The bounds (max and min) for redundancy are defined using the properties, PackageRedundancyMax and PackageRedundancyMin.

This property is inherited from CIM_StorageSetting.

PackageRedundancyMax
Data type: uint16
Access type: Read/write
Qualifiers: ModelCorrespondence ("CIM_StorageSetting.PackageRedundancyMin", "CIM_StorageSetting.PackageRedundancyGoal")

PackageRedundancyMax describes the maximum number of redundant packages to be used. For example, in the storage domain, package redundancy describes how many disk spindles can fail without data loss including, at most, one spare. An example would be RAID5 with a spare disk which would have a PackageRedundancy of 2. Possible values are 0 to n. The desired redundancy is specified using PackageRedundancyGoal, while the minimum is defined by PackageRedundancyMin.

This property is inherited from CIM_StorageSetting.

PackageRedundancyMin
Data type: uint16
Access type: Read/write
Qualifiers: ModelCorrespondence ("CIM_StorageSetting.PackageRedundancyMax", "CIM_StorageSetting.PackageRedundancyGoal")

PackageRedundancyMin describes the minimum number of redundant packages to be used. For example, in the storage domain, package redundancy describes how many disk spindles can fail without data loss including, at most, one spare. An example would be RAID5 with a spare disk which would have a PackageRedundancy of 2. Possible values are 0 to n. The desired redundancy is specified using PackageRedundancyGoal, while the maximum is defined by PackageRedundancyMax.

This property is inherited from CIM_StorageSetting.

ParityLayout
Data type: uint16
Access type: Read/write

ParityLayout specifies whether a parity-based storage organization is using rotated or non-rotated parity. When used in a goal setting instance, ParityLayout is the desired value. It MUST be set to NULL if the scoping StorageCapablities indicates that it is not supported in this context. If the property is supported, and is part of StorageSettingWithHints it MAY be set to NULL. If used it will constrain the effects of Hint selections. When used in a Setting instance associated to a Volume, this property indicates the specific value that the Volume was created with.

This property is inherited from CIM_StorageSetting.

Non-rotated Parity (1)

Rotated Parity (2)

UserDataStripeDepth
Data type: uint64
Access type: Read/write
Qualifiers: Units ("Bytes"), MinValue (1), ModelCorrespondence ("CIM_StorageSetting.UserDataStripeDepthMax", "CIM_StorageSetting.UserDataStripeDepthMin")

UserDataStripeDepth describes the number of bytes forming a strip in common striping-based storage organizations. The strip is defined as the size of the portion of a stripe that lies on one extent. Thus, ExtentStripeLength * UserDataStripeDepth will yield the size of one stripe of user data. When used in a goal setting instance, UserDataStripeDepth is the optimal desired value. The bounds (max and min) for Stripe Depth are defined using the properties UserDataStripeDepthMax and UserDataStripeDepthMin. UserDataStripeDepth MUST be set to NULL if the scoping StorageCapablities indicates that it is not supported in this context. If the property is supported, and is part of StorageSettingWithHints it MAY be set to NULL. If used it will constrain the effects of Hint selections. When used in a Setting instance associated to a Volume, this property indicates the specific value that the Volume was created with, and UserDataStripeDepthMin and UserDataStripeDepthMax will be set to the same specific value.

This property is inherited from CIM_StorageSetting.

UserDataStripeDepthMax
Data type: uint64
Access type: Read/write
Qualifiers: Units ("Bytes"), MinValue (1), ModelCorrespondence ("CIM_StorageSetting.UserDataStripeDepthMin", "CIM_StorageSetting.UserDataStripeDepth")

UserDataStripeDepth describes the number of bytes forming a strip in common striping-based storage organizations. The strip is defined as the size of the portion of a stripe that lies on one extent. Thus, ExtentStripeLength * UserDataStripeDepth will yield the size of one stripe of user data. When used in a goal setting instance, UserDataStripeDepthMax is the maximum acceptable value. The desired Stripe Depth is specified using UserDataStripeDepthGoal, while the minimum is defined by UserDataStripeDepthMin. UserDataStripeDepthMax MUST be set to NULL if the scoping StorageCapablities indicates that it is not supported in this context. If the property is supported, and is part of StorageSettingwWithHints it MAY be set to NULL. If used it will constrain the effects of Hint selections. When used in a Setting instance associated to a Volume, this property is set to the specific value of UserDataStripeDepth.

This property is inherited from CIM_StorageSetting.

UserDataStripeDepthMin
Data type: uint64
Access type: Read/write
Qualifiers: Units ("Bytes"), MinValue (1), ModelCorrespondence ("CIM_StorageSetting.UserDataStripeDepthMax", "CIM_StorageSetting.UserDataStripeDepth")

UserDataStripeDepth describes the number of bytes forming a strip in common striping-based storage organizations. The strip is defined as the size of the portion of a stripe that lies on one extent. Thus, ExtentStripeLength * UserDataStripeDepth will yield the size of one stripe of user data. When used in a goal setting instance, UserDataStripeDepthMin is the minimum acceptable value. The desired Stripe Depth is specified using UserDataStripeDepth, while the maximum is defined by UserDataStripeDepthMax. UserDataStripeDepthMin MUST be set to NULL if the scoping StorageCapablities indicates that it is not supported in this context. If the property is supported, and is part of StorageSettingWithHints it MAY be set to NULL. If used it will constrain the effects of Hint selections. When used in a Setting instance associated to a Volume, this property is set to the specific value of UserDataStripeDepth.

This property is inherited from CIM_StorageSetting.

Requirements

Minimum supported client

None supported

Minimum supported server

Windows Server 2012 R2

Namespace

Root\CIMv2\Storage\iScsiTarget

MOF

SmIscsiTarget.mof

DLL

SMiSCSITargetProv.dll

See also

CIM_StorageSetting
iSCSI Target Server Reference
MSISCSITARGET_StorageCapabilities
MSISCSITARGET_StorageConfigurationService
MSISCSITARGET_StorageVolume

 

 

Show: