HP StorageWorks SAN Virtualization Services Platform SMI-S User Guide This document provides the Storage Management Initiative specification for the HP StorageWorks SAN Virtualization Services Platform (SVSP) Provider.
Legal and notice information © Copyright 2010 Hewlett-Packard Development Company, L.P. Confidential computer software. Valid license from HP required for possession, use or copying. Consistent with FAR 12.211 and 12.212, Commercial Computer Software, Computer Software Documentation, and Technical Data for Commercial Items are licensed to the U.S. Government under vendor's standard commercial license. The information contained herein is subject to change without notice.
Contents 1 Storage Virtualizer Profile .................................................................. 19 Profile introduction .................................................................................................................... Functional description ................................................................................................................ Object model ....................................................................................................................
Additional details ..................................................................................................................... Find the top-level ComputerSystem from any non-top-level ComputerSystem ................................. Find the top-level ComputerSystem of any LogicalDevice .......................................................... Additional details .....................................................................................................................
Object model summary ....................................................................................................... Additional details ..................................................................................................................... Client flows—server ............................................................................................................ Health and fault management considerations .........................................................................
HPSVSP_StorageConfigurationService : SNIA_StorageConfigurationService ............................... Class introduction ........................................................................................................ Class keys/properties ................................................................................................... Class associations ........................................................................................................ Methods ................................
Class keys/properties ................................................................................................... 99 HPSVSP_ManagedAuthorizedPrivilege : CIM_ConcreteDependency .......................................... 99 Class introduction ........................................................................................................ 99 Class keys/properties ...................................................................................................
Functional description .............................................................................................................. Object model ......................................................................................................................... Object model overview ..................................................................................................... Object model diagram ..................................................................................................
8 Storage Server Asymmetry Profile ..................................................... 133 Profile introduction .................................................................................................................. Functional description .............................................................................................................. Object model .........................................................................................................................
Creating a migration group with task from a virtual disk group ............................................... Creating an asynchronous mirror group from a virtual disk or snapshot ................................... Creating an asynchronous mirror group from a Vgroup ......................................................... Creating an additional asynchronous mirror task .................................................................. Creating a synchronous mirror group from a virtual disk ..............
Class keys/properties ................................................................................................. HPSVSP_MigrationGroup: SNIA_SynchronizationAspect ........................................................ Class introduction ...................................................................................................... Class keys/properties ................................................................................................. Class associations ........................
Class associations ...................................................................................................... 217 10 Copy Services Profile .................................................................... 219 Profile introduction .................................................................................................................. Functional description .............................................................................................................. Object model ....
Class keys/properties ................................................................................................. HPSVSP_Snapshot : CIM_StorageVirtualDisk ........................................................................ Class introduction ...................................................................................................... Class keys/properties ................................................................................................. Class associations .................
Profile introduction .................................................................................................................. Functional description .............................................................................................................. Object model ......................................................................................................................... Object model overview .....................................................................................
Methods ................................................................................................................... HPSVSP_SyncMirrorJobGroup : CIM_Job ............................................................................. Class introduction ...................................................................................................... Class keys/properties ................................................................................................. Class associations .............
Class associations ...................................................................................................... HPSVSP_StorageServerProduct : CIM_Product ...................................................................... Class introduction ...................................................................................................... Class keys/properties ................................................................................................. Class associations ................
Class introduction ...................................................................................................... Class keys/properties ................................................................................................. Class associations ...................................................................................................... RegisteredSubProfile (HPSVSP_RegisteredSubProfile) .............................................................. Class introduction ...............
Tables 1 Document conventions ...........................................................................................
1 Storage Virtualizer Profile Profile introduction The VSM server supports the Storage Virtualizer Profile version 1.4 which models the VSM server as a system capable of exposing virtual devices aggregated from back-end arrays present on the SAN. In this profile, only the Fabric Agent Architecture is considered.
• Storage Server Asymmetry: Models the primary and active relationship of VSM virtual disks to Data Path Modules. • Job Control Profile: Models the status and progress of processes. In VSM terms, tasks represent virtual disk, snapshot, and virtual disk group migration and replication. • Replication Services and Copy Services Profile: Models the snapshot mirroring, migration, and snapclone functionality of the VSM. Replication Services is vendor-extended to support the VSM migration functionality.
Object model summary Each class in the profile is subclassed to a vendor-unique extension. Additional details Client discovery SMI-S clients performing discovery of the virtualizer and component profiles first check in the SMI-S Agent's Interop namespace for a RegisteredProfile instance whose RegisteredName = "Storage Virtualizer".
• Filter: SELECT * FROM CIM_InstDeletion WHERE SourceInstance ISA CIM_ComputerSystem • Description: Indications are triggered when an existing SVSP domain is removed. • Name: VSM Domain Status Change • Filter: SELECT * FROM CIM_InstModification WHERE SourceInstance ISA CIM_ComputerSystem AND SourceInstance.CIM_ComputerSystem::OperationalStatus <> PreviousInstance.CIM_ComputerSystem::OperationalStatus • Description: Indications are generated when any Domain.Status changes value.
Class associations Association Name To Property HPSVSP_SystemImportedExtent : CIM_SystemDevice HPSVSP_ImportedExtent : CIM_StorageExtent GroupComponent HPSVSP_ApplianceServerComponent : CIM_ComponentCS HPSVSP_StorageVirtualizationServer : CIM_ComputerSystem GroupComponent HPSVSP_ApplianceDPMComponent : CIM_ComponentCS HPSVSP_StorageVirtualizationDataPathModule : CIM_ComputerSystem GroupComponent HPSVSP_ApplianceDatamoverComponent : CIM_ComponentCS HPSVSP_StorageVirtualizationDataMover : CIMComp
Association Name To Property HPSVSP_HostedPrimordialStoragePool : CIM_HostedStoragePool HPSVSP_PrimordialPool : SNIA_StoragePool GroupComponent HPSVSP_HostedConfiguredStoragePool : CIM_HostedStoragePool HPSVSP_ConfiguredPool : SNIA_StoragePool GroupComponent HPSVSP_VirtualDiskSystemDevice : CIM_SystemDevice HPSVSP_VirtualDisk : CIM_StorageVirtualDisk GroupComponent HPSVSP_HostedStorageService : CIM_HostedService HPSVSP_StorageConfigurationService : SNIA_StorageConfigurationService Antecedent
Association Name To Property HPSVSP_HostedVirtualDiskGroup : CIM_HostedCollection HPSVSP_VirtualDiskGroup : SNIA_ReplicationGroup Antecedent HPSVSP_HostedVirtualDiskGroupSnapshot : CIM_HostedCollection HPSVSP_VirtualDiskGroupSnapshot : SNIA_ReplicationGroup Antecedent HPSVSP_HostedLocalDomainEndpoint : CIM_HostedAccessPoint HPSVSP_LocalDomainEndpoint : CIM_SCSIProtocolEndpoint Antecedent HPSVSP_HostedRemoteDomainEndpointCollection : CIM_HostedCollection HPSVSP_RemoteDomainConnectionCollection :
Property Name Description Comments NumberOfBlocks Total number of logically contiguous blocks, of size Block Size, which form this Virtual Disk. ConsumableBlocks The maximum number of blocks, of size BlockSize, which are available for consumption when layering StorageExtents using the BasedOn association.
2 Device Credentials Profile Profile introduction The VSM server supports the SMI-S 1.4.0 Device Credentials Subprofile in the manner specified by the SMI-S 1.4 Storage Virtualizer Profile. The following profiles are related to this one: • None Functional description This profile is used by a client to set the user name and password for an SVSP domain which enables the provider to access the management data from that SVSP domain.
Classes HPSVSP_SharedSecret : CIM_SharedSecret Class introduction This class represents an SVSP domain credential (username/password) created by a client to connect to an SVSP domain. In order for all clients to see other instances present inside of an SVSP domain, an instance of this class must be created. To connect to the SVSP domain, you must have at least one VSM in the active state. The provider supports the CreateInstance() and DeleteInstance intrinsic methods.
Class associations Association Name To Property HPSVSP_SharedSecretIsShared : CIM_SharedSecretIsShare HPSVSP_SharedSecretService : CIM_SharedSecretService Dependent HPSVSP_SharedSecretService : CIM_SharedSecretService Class introduction There is one instance of this class for each shared secret (or in other words, one for each SVSP domain). Class keys/properties Property Name Description Comments SystemCreationClassName “HPSVSP_StorageAppliance" The CreationClassName of the scoping system.
Device Credentials Profile
3 Multiple Computer System Profile Profile introduction The VSM server supports the Multiple Computer System Subprofile in the manner specified by the SMI-S 1.4 Multiple Computer System, which models multiple systems that present a Virtual ComputerSystem. The following profiles are related to this one: • Profile does not define related profiles Functional description The Multiple Computer System Subprofile models multiple systems to present a Virtual ComputerSystem.
Object model diagram Object model summary The HPSVSP_ApplianceComponent Association class aggregates all non-top-level ComputerSystems of this profile to the top-level ComputerSystem HPSVSP_StorageAppliance, defining the topology of the system.
HPSVSP_StorageVirtualizationDataPathModule instances in a RedundancySet for the top-level ComputerSystem HPSVSP_StorageAppliance . HPSVSP_HostedDPMGroup and HPSVSP_HostedServerGroup associate HPSVSP_StorageVirtualizationDPMGroup and HPSVSP_StorageVirtualizationServerGroup with a scoping system, and indicate that these collections have meaning only in the context of the scoping system.
The "TopLevelSystem" result from step 2 must result in either a 0 or 1 Element, and any other result is an error. • If step 2 results in 0 Elements, then the result from step 1 is the top-level ComputerSystem. • If step 2 results in 1 Element, than that Element is the top-level ComputerSystem. Additional details Health and fault management considerations The top-level ComputerSystem of this SubProfile is defined as the head of all non-top-level(real) ComputerSystems defined by this SubProfile.
• Description: Triggered when a VSM server's OperationalStatus property changes value. Class keys/properties Property Name Description Comments CreationClassName HPSVSP_StorageVirtualizationServer Name of the class used in the creation of an instance. With the Name key, used to uniquely identify instances of this class. Name Domain+";"VSM Name.Name An element of the Key that identifies unique instances of this class. NameFormat Set to "Other" Specifies the format of the Name key.
Class associations Association Name To Property HPSVSP_ServerGroupMember : CIM_MemberOfCollection HPSVSP_StorageVirtualizationServerGroup : CIM_RedundancySet Member HPSVSP_ApplianceServerComponent : CIM_ComponentCS HPSVSP_StorageAppliance : CIM_ComputerSystem PartComponent HPSVSP_ServerSystemPackage : CIM_ComputerSystemPackage HPSVSP_StorageServerPackage : CIM_PhysicalPackage Dependent HPSVSP_StorageVirtualizationDataPathModule : CIM_ComputerSystem Class introduction This class represents the Da
Property Name Description Comments ElementName "DataPathModule"+":"+ DomainName()+":"+DPMName User friendly name for this class. The DPM status can be one of: • Present -- The VSM software on the DPM is communicating with the VSM server through all back-end HBAs. • Degraded -- The DPM/switch has multiple back-end HBAs, but on at least one back-end HBA, communication between VSM software on the DPM and VSM server fails.
Class associations Association Name To Property HPSVSP_ApplianceDPMComponent : CIM_ComponentCS HPSVSP_StorageAppliance : CIM_ComputerSystem PartComponent HPSVSP_DPMGroupMember : CIM_MemberOfCollection HPSVSP_StorageVirtualizationDPMGroup : CIM_RedundancySet Member HPSVSP_PortGroupDPM : CIM_StorageProcessorAffinity HPSVSP_TargetPortGroup : CIM_TargetPortGroup Antecedent HPSVSP_LoadGroupDPM : CIM_StorageProcessorAffinity HPSVSP_StorageResourceLoadGroup : CIM_StorageResourceLoadGroup Antecedent
Property Name Description Comments NameFormat Set to "Other" Specifies the format of the Name key. The Name for non-top-level ComputerSystem instances uses an unrestricted format and may be vendor defined. ElementName "VSM Datamover"+":"+Domain+":"+ Name A user-friendly name for the object.
HPSVSP_StorageVirtualizationServerGroup : CIM_RedundancySet Class introduction This collection indicates that the aggregated HPSVSP_StorageVirtualizationServer elements provide redundancy for the top-level ComputerSystem HPSVSP_StorageAppliance. There shall be one instance of this class in an SVSP Domain. Indications • Name: Redundancy Set state change • Filter: SELECT * FROM CIM_InstModification WHERE SourceInstance ISA CIM_RedundancySet AND SourceInstance.RedundancyStatus <> PreviousInstance.
Property Name Description Comments DMTF Defined Types • 0 ( Unknown ) TypeOfSet Set to "4 - Sparing" • 1 ( Other ) NOTE: • 2 ( N+1 ) The property value is an array, so the return value must be formatted as an array with a single value. • 3 ( Load Balanced ) • 4 ( Sparing ) • 5 ( Limited Sparing ) • .. ( DMTF Reserved ) • 0x8000..
Property Name Description Comments ElementName "DPM Group"+":"+DPM Group+DomainName()+":"Name A user-friendly name for the object. RedundancyStatus details the current status of a RedundancySet, and shall be a compilation of the OperationalStatus of each DPM member of a given RedundancySet. RedundancyStatus shall be compiled from the DPM Group's status where: • Present, RedundancyStatus shall be 2 ( Fully Redundant).
Class associations Association Name To Property HPSVSP_DPMGroupIdentity : CIM_ConcreteIdentity HPSVSP_StorageAppliance : CIM_ComputerSystem SameElement HPSVSP_HostedDPMGroupRedundancySet : CIM_HostedCollection HPSVSP_StorageAppliance : CIM_ComputerSystem Dependent HPSVSP_DPMGroupMember : CIM_MemberOfCollection HPSVSP_StorageVirtualizationDataPathModule : CIM_ComputerSystem Collection SAN Virtualization Services Platform SMI-S User Guide 43
Multiple Computer System Profile
4 Cascading Profile This VSM Server Profile supports the SMI-S 1.4 Cascading Profile. Note that this implementation of the SMI Cascading Profile is a minimal one and does not contain certain non-functional classes that are necessary to be compliant with the SMI version. The SMI Cascading Profile has been deprecated and CTP does not currently test it.
Object model diagram Object model summary Each class in the profile is subclassed to a vendor-unique extension. Classes HPSVSP_CascadingCapabilities : SNIA_CascadingCapabilities Class introduction This class models the capabilities supported by the VSM for the Cascading Profile. Class keys/properties Property Name Description Comments string InstanceID HPSVSP_StorageAppliance.
Property Name Description Comments string ElementName "Cascading Capabilities" Mandatory Mandatory • 2 ( Ownership ) uint16[] FeaturesSupported • 3 ( Leaf Credentials ) None • 4 ( OM Dependencies ) • 5 ( Allocation Service ) Mandatory • 2 ( Any Type ) • 3 ( StorageVirtualDisk ) uint16[] SupportedElement- Types 3 - StorageVirtualDisk • 4 ( StorageExtent ) • 5 ( StoragePool ) • 6 ( ComputerSystem ) • 7 ( LogicalDisk ) • 8 ( FileShare ) Mandatory uint16[] SupportedSynchronousActions • 2 ( Allocati
Class keys/properties Property Name Description Comments string CreationClassName HPSVSP_LeafStorageSystem Mandatory string Name HPSVSP_StorageAppliance.
Property Name Description Comments string SystemName HPSVSP_StorageAppliance.Name+";"+Backend LU Node Name Mandatory string CreationClassName HPSVSP_LeafStorageVirtualDisk : CIM_StorageVirtualDisk Mandatory string DeviceID HPSVSP_StorageAppliance.
Cascading Profile
5 Block Services Package Profile introduction The VSM server supports the SMI-S 1.4.0 Block Services Package and Thin Provisioning profiles in the manner specified by the SMI-S 1.4 Storage Virtualizer Profile. The Block Services functionality encompasses the basic virtual disk management actions and state representation for storage virtual disks and storage pools.
Object model diagram 52 Block Services Package
SAN Virtualization Services Platform SMI-S User Guide 53
Object model summary Each class in the profile is subclassed to a vendor-unique extension. Additional details Client flows—server 1. Uninformed Client StorageVirtualdisk Creation (for example CTP conformance testing client): • A client examines pools with StorageConfigurationCapabilities.SupportElementFeatures[] containing "VirtualDisk Creation". If found, perform a create StorageVirtualdisk operation. • If there is no "VirtualDisk Creation" then create a StoragePool.
• • • • • • • Call PrimordialPoolCapabilities.CreateSetting(). Client receives a setting. Client Invokes PrimordialPoolCapabilities.GetSupportedStripeLengthRange(). Client sets the setting ExtentStripeLength to desired number of VirtualDisks. Client invokes PrimordialPoolCapabilities GetSupportedStripeDepths() method. Set the Setting.UserDataStripeDepth to the desired number of bytes. Invoke PrimordialPool.GetAvailableExtents() to retrieve the available extents.
• Name: Capacity Warning • Filter: "SELECT * FROM CIM_AlertIndication WHERE OwningEntity='SNIA' and MessageID='DRM28'" • Description: Virtual disk's allocated capacity is approaching capacity. Produce this alert when the "Guard" threshold is passed, which is produced when the remaining free capacity is the smaller of 5% of thin virtual disk maximum capacity and 40 GB. • Message produced is of the form: "Thin provisioned virtual disk with identifier capacity in use nearing available limit.
Property Name RemainingManagedSpace Description Comments RemainingManageSpace is computed by summing the PrimordialPool resources that have not been used in a dependent ConfiguredPool. Because stripe sets can be created from a PrimordialPool but not immediately used in a ConfiguredPool, they have an intermediate vendor-specific behavior in that they (meaning their constituent "Configured" ImportedExtents ) still "belong" to the Primordial Pool.
Methods uint32 GetSupportedSizes Method Overview This method returns the sizes of the component extents of the StoragePool on which the method is called. This method shall only be supported on the primordial StoragePool. The component extents whose references are returned are those that are not assigned to a concrete StoragePool or a composite StorageExtent (stripe set), or are remaining StorageExtents. Method parameters Parameter Name ElementType Type Comments IN/OUT uint16 Ignored.
uint32 GetSupportedSizeRange Method overview All parameters shall be ignored.
HPSVSP_PrimordialPoolStorageCapabilities : CIM_StorageCapabilities Class introduction Represents a range of capabilities of the PrimordialPool. There is one instance of this class, and it is associated to the HPSVSP_PrimordialPool. Due to the relationship between HPSVSP_PrimordialPool, HPSVSP_PrimordialPoolStorageCapabilities, and HPSVSP_PrimordialPoolSetting, the implementor may choose to implement all three classes in one provider.
Property Name Description Comments Default Value for use when creating a ConfiguredPool from a PrimordialPool using CreateOrModifyStoragePool() ExtentStripeLengthDefault This shall be set to "1". UserDataStripeDepthDefault Property is set to 1048576, which is 1 megabyte.
Parameter Name Type Comments IN/OUT The output value is an array populated with an integer count for each possible stripe length in the array. NOTE: StripeLengths uint16 The system will use a heuristic to return only stripe lengths of possible "Right-Sized" stripes. For example: Suppose there are 5 available primordi¬al extents (HPSVSP_ImportedExtent), 3 extents of 50GB and 2 extents of 100GB.
GetSupportedStripeDepthRange Method parameters All parameters are ignored. Always returns: 2 "Use GetSupportedStripeDepths instead". Parameter Name Type Comments IN/OUT MinimumStripeDepth uint64 N/A OUT MaximumStripeDepth uint64 N/A OUT StripeDepthDivisor uint64 N/A OUT CreateSetting Method Overview This method allows a client to ask for the default setting for creating StoragePools, or create additional transient settings (See HPSVSP_PrimordialPoolSetting).
Class keys/properties Property Name Description Default: HPSVSP_StorageAppliance.Name+";"+"Default" InstanceID HPSVSP_StorageAppliance.Name+";"+ Where is a provider for each instance created. Comments Unique identifier within the scope of the instantiating Namespace. ElementName Default: "Default Setting" Transient: "Transient Setting " + A user-friendly name for the object.
Property Name Description Comments UserDataStripeDepthMax Default: 1048576 ( 1MB ) Transient: Maximum The maximum acceptable value for UserDataStripeDepth. ChangeableType Default: 0 "Fixed, Not Changeable" Transient: 1 "Changeable, Transient" The type of setting.
PackageRedundancyGoal 1 The desired number redundant packages to be used. PackageRedundancyMax 2 The maximum package redundancy (how many spindles can fail without data loss). PackageRedundancyMin 0 The minimum package redundancy (how many spindles can fail without data loss). DeltaReservationGoal 100 A number between 1 (1%) and 100 (100%) which specifies the desired amount of space that should be reserved in a replica.
Class associations Association Name To Property HPSVSP_StorageSettingsGeneratedFromCapabilities HPSVSP_ParentStoragePoolCapabilities Dependent HPSVSP_PrimordialPoolConfigurationCapabilities : SNIA_StorageConfigurationCapabilities Class introduction This class describes the capabilities of PrimordialPool. SMI clients use this class to discern how pools can be created. There will be one instance of this class. This class is currently listed as optional in the SMI-S 1.4 specification.
Property Name Description Comments {2, 6, 7} • 2 "InExtents" SupportedStoragePoolFeatures[] • 6 "Storage Pool Capacity Expansion" Features supported by StoragePool methods. • 7 "Storage Pool Capacity Reduction" {2, 3, 4, 6, 12, 13} • 2 "Storage Pool Creation" • 3 "Storage Pool Deletion" • 4 "Storage Pool Modification" SupportedSynchronousActions[] • 6 "Storage Element Return" • 12 "Storage Element From Element Creation" Operations executed without the creation of a task.
• Filter: "SELECT * FROM CIM_InstDeletion WHERE SourceInstance ISA CIM_StoragePool" • Description: Generate a CIM_InstDeletion when StoragePools are removed from the system. The DeletePool() API or HPSVSP_StorageConfigurationService DeleteStoragePool() method should trigger this indication. • Name: Pool Size Change • Filter: "SELECT * FROM CIM_InstModification WHERE SourceInstance ISA CIM_StoragePool AND SourceInstance.CIM_StoragePool::TotalManagedSpace <> PreviousInstance.
Class associations Association Name To Property HPSVSP_HostedConfiguredStoragePool : CIM_HostedStoragePool HPSVSP_StorageAppliance : CIM_ComputerSystem PartComponent HPSVSP_ConfiguredPoolAllocatedFromPrimordialPool : CIM_AllocatedFromStorage Pool HPSVSP_PrimordialPool : SNIA_StoragePool Dependent HPSVSP_ConfiguredPoolCapabilities : CIM_ElementCapabilities HPSVSP_ConfiguredPoolStorageCapabilities : CIM_StorageCapabilities ManagedElement HPSVSP_VirtualDiskAllocatedFromStoragePool : CIM_AllocatedFr
uint32 GetSupportedSizeRange Method Overview Returns the usable size range for creating virtual disks from this pool. If the method is successful, return 0 (Method Completed OK). Method parameters Parameter Name Type Comments IN/OUT ElementType uint16 Only 3 "StorageVirtualDisk" is accepted, all other values are rejected.
HPSVSP_ConfiguredPoolStorageCapabilities : CIM_StorageCapabilities Class introduction This class represents the allowable capabilities of a StoragePool for creating StorageVirtualDisks. There is one instance of this class for each HPSVSP_ConfiguredPool instance. Due to the relationship between HPSVSP_ConfiguredPool, HPSVSP_ConfiguredPoolStorageCapabilities, and HPSVSP_ConfiguredPoolSetting, the implementor may choose to implement all three classes in one provider.
Class associations Association Name To Property HPSVSP_ConfiguredPoolCapabilities : CIM_ElementCapabilities HPSVSP_ConfiguredPool : SNIA_StoragePool Capabilities HPSVSP_ConfiguredPoolSet tingsAssociatedToCapabilities : CIM_StorageSettingsAssoci atedToCapabilities HPSVSP_ConfiguredPoolSetting : SNIA_StorageSetting Antecedent Methods uint32 CreateSetting Method Overview Method parameters Parameter Name Type Comments IN/OUT SettingType uint16 Accept only the following values: 2 "Default" or 3 "G
Method parameters Parameter Name Type Comments IN/OUT N/A N/A N/A N/A uint32 GetSupportedStripeDepths Method Overview Ignore all parameters. Always return "1" method not supported. Method parameters Parameter Name Type Comments IN/OUT N/A N/A N/A N/A uint32 GetSupportedStripeDepthRange Method Overview Ignore all parameters. Always return "1" method not supported.
Property Name Description Comments NoSinglePointOfFailure False Indicates whether or not the element has a single point of failure. DataRedundancyMin 1 The minimum number of copies of data that can be maintained. DataRedundancyMax 1 The maximum number of complete copies of data to be maintained. DataRedundancyGoal 1 The desired number of copies of data to be maintained. PackageRedundancyMin 0 The minimum package redundancy (how many spindles can fail without data loss).
• Description: VirtualDisks can be deleted using the HPSVSP_StorageConfigurationService ReturnToStoragePool method. When the system sees a VirtualDisk disappear, generate a CIM_InstDeletion indication. • Name: VirtualDisk Status Change • Filter: "SELECT * FROM CIM_InstModification WHERE SourceInstance ISA CIM_StorageVirtualDisk AND SourceInstance.CIM_StorageVirtualDisk::OperationalStatus <> PreviousInstance.
Property Name Description Comments OperationalStatus[] • Volume Status is Init OperationalStatus = 8 "Starting" and ExtentStatus = 2 "Not Applicable" • else ifVolume Status is Normal, then given the values of Volume State as follows: • if Volume State is Restore, Operational- Status = 2 "OK" and ExentStatus = 11 "Rebuild" • else if Volume State is== (| PauseDelete | Absent, set OperationalStatus = 15 "Dormant" and ExtentStatus = 2 "Not Applicable" • else set OperationalStatus = 2 "OK" and ExtentStatus =
Property Name Description Comments 1 Number of complete copies of data currently maintained. 0 How many physical packages can currently fail without data loss. DeltaReservation 0 Current value for Delta reservation. This is a percentage that specifies the amount of space that should be reserved in a replica for caching changes. ThinlyProvisioned VolumeDetails.IsThinVolume Indicates the virtual disk is thinly provisioned.
HPSVSP_VirtualDiskSetting : SNIA_StorageSetting Class introduction There will be one instance of this class associated for each HPSVSP_VirtualDisk. The Settings for the HPSVSP_VirtualDisk will be based on the PoolDetails structure. Class keys/properties Property Name Description Comments InstanceID HPSVSP_StorageAppliance.Name + ";" + VolumeNameName Unique identifier within the scope of the instantiating Namespace.
Property Name Description Comments ExtentStripeLength 1 The number of underlying StorageExtents across which data is striped. ChangeableType 0 "Fixed - Not Changeable" The type of setting.
Property Name Description Comments {5, 6, 7}, which equates to, SupportedSynchronousActions[] • 5 "Storage Element Creation" • 6 "Storage Element Return" Operations executed without the creation of a task. • 7 "Storage Element Modification" SupportedAsynchronousActions[] {}, or NULL (all operations are synchronous). Operations executed that generate a task instance.
Methods uint32 CreateOrModifyStoragePool Method Overview 1. Create ConfiguredPool Creation of an HPSVSP_ConfiguredPool allows multiple Stripe or DiskDetails be grouped to create a StoragePool (via the InExtents parameter and the Size). The resulting ConfiguredPool's Capabilities ExtentStripeLength Default and Range will always be 1 regardless of the pool's constituents. • The Size parameter specifies the desired size. • The InPools parameter must be either null or specify the HPSVSP_PrimordialPool.
Method parameters Parameter Name Type Comments IN/OUT ElementName string The name of the element. Used in pool creation only. The VSM does not support changing pool names. IN Job CIM_ConcreteJob REF Unused (Set to NULL).
Method parameters Parameter Name Type Comments IN/OUT Job ConcreteJob REF Reference to a task. OUT - Not Used (will be null) Pool StoragePool REF Reference to an HPSVSP_ConfiguredPool to delete. IN - Required uint32 CreateOrModifyElementFromStoragePool Method Overview The CreateOrModifyElementFromStoragePool() creates or modifies HPSVSP_VirtualDisk.
Parameter Name Type Comments IN/OUT Accept this value only if it is NULL, or if the passed in StorageSetting reference represents any setting instance of SNIA_StorageSetting, as long as the following criteria is met: Goal SNIA_StorageSetting • DataRedundancy = 1 IN • PackageRedundancy = 0 • ExtentStripeLengthMin = 1 • UserDataStripeDepthMin = 1 Size As an input parameter - the desired size of the virtual disk. As an out parameter, the size achieved. Fail the operation if NULL.
Method parameters Parameter Name Type Comments IN/OUT ElementName string If this parameter is NULL, a name is chosen unique to the system on which the virtual disk will reside. IN ElementType uint16 On create virtual disk operations, allow only ElementType = 2 (Storage VirtualDisk). On modify operations the ElementType must be specified and match the type represented by TheElement. Note: The VSM does not currently support thin provisioning across multiple storage pools.
• If the parameter ElementName is NULL, generate unique stripe set name. • Ensure sure the number of back-end LU's >= Goal.ExtentStripeLength. If not, the operation is failed with: "Not enough extents to meet Goal ExtentStripeLength". • The Element output parameter to a manufactured HPSVSP_StripeSet, and set the Size output parameter to StripeSet.StripeCapacity in bytes. 2. Modify StripeSet StripeSets are modifiable by specifying the back-end LU's to add or remove from the stripe.
Method parameters Parameter Name Type Comments TheElement LogicalElement REF IN/OUT • If a reference to an HPSVSP_VirtualDisk • A reference to an HPSVSP_StripeSet IN - Required HPSVSP_StorageConfigurationCapabilities : SNIA_StorageConfigurationCapabilities Class introduction This class describes the capabilities of the StorageConfigurationService. SMI clients use this class to discern what pools and elements can be created.
{2, 6, 7} which equates to SupportedStoragePoolFeatures[] • 2 "InExtents" • 6 "Storage Pool Capacity Expansion" Features supported by StoragePool methods.
HPSVSP_VirtualDiskAllocatedFromStoragePool : CIM_AllocatedFromStoragePool Class introduction This class represents the number total of bytes allocated to a VSM virtual disk from a VSM storage pool. This association exists between an HPSVSP_VirtualDisk instance and one or more HPSVSP_ConfiguredPools. There will be at least 1 instance for each VSM storage pool present in a given Vdisk.
HPSVSP_PrimordialPoolSettingsGeneratedFromCapabilities : CIM_StorageSettingsGeneratedFromCapabilities Class Introduction This association represents the transient settings for creating pools from the PrimordialPool. There is one instance of this association between the PrimordialPoolStorageCapabilities and the each transient PrimordialPoolSetting.
Block Services Package
6 Masking and Mapping Profile Profile introduction The VSM server supports the SMI-S 1.4.0 Masking and Mapping Subprofile in the manner specified by the SMI-S 1.4 Storage Virtualizer Profile.
Object model diagram 94 Masking and Mapping Profile
Object model summary Each class in the profile is subclassed to a vendor-unique extension. Additional details ExposePaths: mapping hosts to a virtual disk SMI-S clients can specify a set logical units visible to set of initiators (or VSM hosts) through a set of target ports. The SMI-S specification defines the concept of a snapshot, or collection of initiators, logical units, and target ports. Each initiator-logical unit-target port trio is referred to as a 'path'.
HPSVSP_ControllerConfigurationService ExposePaths() method to affect the exposure of the storage entity. HidePaths: hiding hosts from a virtual disk Once a ProtocolController is created, an SMI-S client may remove logical units, initiators, or target ports within the ProtocolController, and hence, can hide certain 'paths' within the storage system.
Class associations Association name To Property HPSVSP_ManagedAuthorizedPrivilege : CIM_ConcreteDependency HPSVSP_PrivilegeManagementService : CIM_PrivilegeManagementService Dependent HPSVSP_AuthorizedSubject : CIM_AuthorizedSubject HPSVSP_HostInitiatorPort : CIM_StorageHardwareID Privilege HPSVSP_AuthorizedSubject : CIM_AuthorizedTarget HPSVSP_SCSIProtocolController : CIM_ProtocolController Privilege HPSVSP_AuthorizedSubject : CIM_AuthorizedSubject Class introduction This association relates HP
HPSVSP_AuthorizedTarget : CIM_AuthorizedTarget Class introduction This association relates an HPSVSP_AuthorizedPrivilege representing an HBA attached to a host having virtual disk access with a SCSIProtocolController representing the same host and aggregating those virtual disks. The reference key properties uniquely identify the instance.
Class keys/properties Property Name Description Comments HPSVSP_StorageHardwareI DManagementService REF Antecedent A reference to the one hardware ID managing service in this SVSP domain. This property is the same for all HPSVSP_ManagedHostInitiatorPort instances in the SVSP domain. Association reference property. HPSVSP_HostInitiatorPort REF Dependent A reference to an HPSVSP_HostInitiatorPort present in the SVSP domain. Association reference property.
Class keys/properties Property Name Description Comments SystemCreationClassName "HPSVSP_StorageAppliance" The CreationClassName of the scoping system. SystemName Same as HPSVSP_StorageAppliance.Namem The name of the scoping system. CreationClassName HPSVSP_ControllerConfigurationService Indicates the name of the class used in the creation of instances.
This method has two modes of operation: Create one or more snapshots and modify an existing snapshot. When creating snapshots, one or more initiators (hosts) are given access to one or more virtual disks or snapshots-on-virtual disks. When a snapshot is modified, virtual disks or snapshots-on-virtual disks can be added. Modify Snapshot Operation: The ProtocolController parameter must contain one reference to an existing ProtocolController.
Parameter Name Type Comments IN/OUT ProtocolControllers CIM_ProtocolController ref An array of references to SCSIProtocolControllers (SPCs). On input, this can be null, or contain exactly one element; there may be multiple references on output. If null on input, the instrumentation will create one or more new SPC instances. If an SPC is specified, the instrumentation will attempt to add associations to one or more existing SPCs.
Parameter Name Type Comments IN/OUT ProtocolControllers CIM_ProtocolController ref Only used for input. This must contain one reference to an existing Only used for input. This must contain one reference to an existing HPSVSP_SCSIProtocolController IN (Required)/Out (Unused) TargetPortIDs string[] Ignore this parameter IN (Unused) HPSVSP_PrivilegeManagementService : CIM_PrivilegeManagementService Class introduction This service is responsible for managing HPSVSP_AuthorizedPrivilege instances.
Methods AssignAccess Method overview This method is "Not Supported" and shall return 1. Method parameters Parameter name Type Comments IN/OUT N/A N/A N/A N/A RemoveAccess Method overview This method is "Not Supported" and shall return 1.
Class keys/properties Property name Description Comments SystemCreationClassName “HPSVSP_StorageAppliance" The CreationClassName of the scoping system. SystemName Same as HPSVSP_StorageAppliance.Name The name of the scoping system. CreationClassName “HPSVSP_SCSIProtocolContoller" The class name responsible for creating instances of this class An ID which uniquely identifies the protocol instance.
• Description: An InstCreation indication is triggered when a stripe set (virtual disk or snapshoton-virtual disk) first participates in access from an HPSVSP_SCSIProtocolController. • Name: ProtocolControllerForUnit - Instance Deletion • Filter: SELECT * FROM CIM_InstDeletion WHERE SourceInstance ISA CIM_ProtocolControllerForUnit • Description: An InstDeletion indication is triggered when a stripe set (virtual disk or snapshoton-virtual disk) is unmapped from an HPSVSP_ProtocolController.
Class keys/properties Property name Description Comments InstanceID " < domain>";"+ControllerMaskingCapabilities" An ID that uniquely defines the one instance of this class within the vendor namespace. ElementName “StorageMaskingCapabilities" A user friendly name for the instance.
Property name Description Comments False The storage system does not allow a client to create a configuration where an SPC has no target SCSIProtocolEndpoints associated via CIM_SAPAvailableForELement associations.
HPSVSP_HostSettingData : CIM_StorageClientSettingData Class introduction This class represents a host operating dystem, allowing SMI-S clients to identify the host mode, or OS specific behavior of a host. This may be desirable when identifying the proper responses in SCSI communications with hosts. Each instance of HPSVSP_HostInitiatorPort will be associated to one static instance of HPSVSP_HostSettingData. HPSVSP_StorageAppliance will be associated to all instances of this class.
Property name Description Comments There is one instance of HPSVSP_HostSettingData for each element in the eHostType enumeration (except for the HostTypeUnknown). Below is a list of the eHostType values, and the corresponding InstanceID, ElementName, and ClientTypes property values. The ClientTypes[] array will contain one element.
HPSVSP_HostInitiatorPort : CIM_StorageHardwareID Class keys/properties Property name Description Comments InstanceID An ID which uniquely names the instance. StorageID Represents a WWN advertised by the HBA. The format of the StorageID property.
Class keys/properties Property name Comments InstanceID The host name which will be unique within the SVSP domain. ElementName A user friendly name for the collection.
Class keys/properties Property name Description Comments SystemCreationClassName “HPSVSP_StorageAppliance" The CreationClassName of the scoping sSystem. SystemName Same as HPSVSP_StorageAppliance.Name The name of the scoping system. CreationClassName “HPSVSP_StorageHardwareIDManagementService" The name of the class that is used in the creation of instances. Name “Host_ID_Management_Service" The Name property uniquely identifies the service.
Method parameters Parameter Name Type Comments IN/OUT N/A N/A N/A N/A CreateHardwareIDCollection Method overview This method organizes HPSVSP_HostInitiatorPorts into HPSVSP_Host collections. Method parameters Parameter Name Type Comments IN/OUT ElementName string The HostName parameter IN/Required HardwareIDs string[] This parameter cannot be NULL, or contain empty elements. Each string in the array will be an HPSVSP_HostInitiatorPort.StorageID.
Parameter Name Type Comments IN/OUT Personality string Host personality IN/Required Type uint16 Host OS type IN/Required StartLun uint16 Starting LUN in range assigned to Host for VirtualDisk assignments IN/Required EndLun uint16 Ending LUN in range assigned to Host for VirtualDisk assignments IN/Required AddHardwareIDsToCollection Method overview This method adds HPSVSP_HostInitiatorPorts into existing HPSVSP_Host collections.
HPSVSP_InitiatorAssociatedHostSetting : CIM_ElementSettingData Class introduction This class relates an HPSVSP_HostInitiatorPort to one HPSVSP_HostSettingData instance. Instances of this association are created and deleted by the Instrinsic CreateInstance and DeleteInstance methods.
7 Extent Composition Profile Profile introduction This profile supports the VirtualDisk Segment functionality of VSM. The following profiles are related to this one: • Storage Virtualizer Profile • Block Services Profile Functional description Discover the segment structure of a virtual disk, its mapping to back-end LUs, and the relation of the segment structure to the pool. When stripe sets are used, they are included in the model of the structure.
Object model diagram Object model summary The Extent Composition Subprofile demonstrates how the storage virtual disk is constructed from its constituent elements by modeling the hierarchy of extents between the primordial extents and the storage virtual disk itself. Elements of the hierarchy are related to each other using associations marking the type of construction as either a composition or decomposition.
• The client will recursively traverse down BasedOn associations (via the Antecedent) to examine the underlying extents. • If a CompositeExtent is encountered, the client examines the associations to the CompositeExtent and traverses the associations to discern how the CompositeExtent is constructed. The RAID level and the storage pool association is discovered. • The client will continue traversal of associations downward to the primordial extents.
Since this class is associated one-to-one with the HPSVSP_VirtualDisk the class's primary keys are similar and capable of being correlated to the keys of an HPSVSP_VirtualDisk. The SystemName key represents the storage domain of the extent. The DeviceID key will represent the virtual disk. Class keys/properties Property name Description Comments SystemCreationClassName “HPSVSP_StorageAppliance" The CreationClassName of the scoping virtualizer. SystemName HPSVSP_StorageAppliance.Name.
Property name Description Comments NoSinglePointOfFailure False Indicates whether or not the element has a single point of failure. IsBasedOnUnderlyingRedundancy False Indicates whether the underlying StorageExtent(s) participate in a StorageRedundancysSet. IsConcatenated True True indicates that the data is concatenated across the various StorageExtents in the group.
Class keys/properties Property name Comments HPSVSP_VirtualDiskCompositeExtent REF Dependent Mandatory HPSVSP_VirtualDiskSegment REF Antecedent Mandatory HPSVSP_VirtualDiskSegment : CIM_StorageExtent Class introduction This class represents the mapping of a VirtualDisk extent from its underlying extents. The SystemName key provides the SVSP domain in which the virtual disk resides. The DeviceID key holds the virtual disk name and the index of the segment inside the VirtualDisk.
Property name Description Comments The status of the extent. Below is a list of the allowed values: • 0 ( Other ) ExtentStatus The ExtentStatus of each segment will be the status of the underlying stripe set making the segment. • 1 ( Unknown ) For StripeDetails, use the StripeDetails.
HPSVSP_VirtualDiskSegmentBasedOn : CIM_BasedOn Class introduction This class associates the representation of a virtual disk segment with the representation of a disk or stripe set that is part of a pool.
Property name Description Comments The status of the extent. The allowed values are: • 0 ( Other ) • 1 ( Unknown ) • 2 ( None/Not Applicable • 3 ( Broken ) • 4 ( Data Lost ) • 5 ( Dynamic Reconfig ) ExtentStatus See the • 6 ( Exposed ) HPSVSP_VirtualDiskSegment .ExtentStatus[] property for discerning the status of disks and stripe sets.
Association Name To Property HPSVSP_StripeSet : CIM_CompositeExtent HPSVSP_ConfiguredExtentBasedOn : CIM_BasedOn or HPSVSP_SystemConfiguredComponentExtent : CIM_SystemDevice HPSVSP_ImportedExtent : CIM_StorageExtent Dependent HPSVSP_ImportedExtent : CIM_StorageExtent PartComponent HPSVSP_AssociatedComponentExtent : CIM_AssociatedComponentExtent Class introduction This class associates a representation of a disk or stripe set used in a pool to the representation of that pool.
Property name DeviceID Description Comments "Disk"+";"+DiskDetails.BaseObject.ObjName An address or other identifying information to uniquely name the LogicalDevice. "Stripe"+";"+StripeDetails.BaseObject.ObjName The status of the extent. Allowed values are: • 0 ( Other ) • 1 ( Unknown ) • 2 ( None/Not Applicable • 3 ( Broken ) • 4 ( Data Lost ) • 5 ( Dynamic Reconfig ) • 6 ( Exposed ) See the ExtentStatus HPSVSP_VirtualDiskSegment.
Property name Description Comments ConsumableBlocks NumberOfBlocks The maximum number of blocks, of size BlockSize, which are available for consumption when layering StorageExtents using the BasedOn association. BlockSize 512 Size in bytes of the blocks which form this StorageExtent. False If true, "Primordial" indicates that the containing system does not have the ability to create or delete this operational element.
HPSVSP_RemainingdExtentBasedOn : CIM_BasedOn Class introduction This class associates the representation of the collective unused space on a disk or stripe set used in a pool to the representation of that disk or stripe set.
Class keys/properties Property name Description Comments SystemCreationClassName “HPSVSP_StorageAppliance" The CreationClassName of the scoping virtualizer. SystemName CreationClassName Same as HPSVSP_StorageAppliance.Name. HPSVSP_StripeSet The name of the scoping system. The name of the class used in the creation of this instance. An ID which uniquely names the instance relative to other instances in the same domain. DeviceID Name "StripeSet:" + DeviceID A name for the stripe set.
Property name ExtentStripeLength Description Comments The number of disks in the stripe. Number of contiguous underlying StorageExtents counted before looping back to the first underlying StorageExtent of the current stripe. It is the number of StorageExtents forming the user data stripe. NumberOfBlocks Total number of logically contiguous blocks, of size Block Size, which form this Extent.
Property name Description The number of bytes which form the stripe size for the Dependent StorageExtent. UserDataStripeDepth StartingAddress EndingAddress 132 Extent Composition Profile Comments 0 StartingAddress indicates where in lower level storage, the higher level Extent begins. EndingAddress indicates where in lower level storage, the higher level Extent ends. This property is useful when mapping noncontiguous Extents into a higher level grouping.
8 Storage Server Asymmetry Profile Profile introduction This VSM server profile supports the SMI-S 1.4 Storage Server Asymmetry Profile. The provided functionality encompasses the management of the primary and active relationship between virtual disks, snapshots, groups, and group snapshots and the Data Path Modules in the VSM server. The following profiles are related to this one: • The Storage Server Asymmetry Component Profile extends the Multiple Computer System Component Profile.
Each such StorageResourceLoadGroup instance is associated to both Data Path Modules by two instances of the association LoadGroupDPM. Properties on the association indicate which Data Path Module has primary (IsPrimary) ownership of the virtual disks and which has active ownership (IsActive).
Object model summary For clarity and ease of implementation, several classes in StorageServeAsymmetry which could not be subclassed for standards reasons are subclassed in the this extension profile. These are: • StorageProcessorAffinity. Subclassed to PortGroupDPM and LoadGroupDPM • AsymmetricAccessibility.
Class keys/properties Property Name Description Comments InstanceID HPSVSP_StorageAppliance.Name Key StorageResourceSymmetryCapability { 2 (Asymmetric) } The VSM virtual disks have an affinity and ownership for one storage processor (DPM) or another. StorageResourceType { 2 (StorageVirtualDisk) } The granularity of ownership is on the virtual disk or snapshot. StorageResourceAffinityAssignable True Indicates support for AssignStorageResourceAffinity methods.
Class associations Association name To Property HPSVSP_HostedTargetPortGroup : CIM_HostedCollection HPSVSP_StorageAppliance : CIM_ComputerSystem Dependent HPSVSP_ProtocolEndpointForTargetPortGroup : CIM_MemberOfCollection HPSVSP_DPMFrontSideSCSIProtocolEndpoint Collection HPSVSP_PortGroupDPM : CIM_StorageProcessorAffinity HPSVSP_StorageVirtualizationDataPathModule : CIM_ComputerSystem, Dependent HPSVSP_DPMStorageResourceAccessibility : CIM_AsymmetricAccessibility HPSVSP_StorageResourceLoadGroup
Class keys/properties Property Name Description Comments Same as InstanceID The friendly name of the collection InstanceID ElementName Class associations Association name To Property HPSVSP_HostedLoadGroup : CIM_HostedCollection HPSVSP_StorageAppliance : ComputerSystem Dependent HPSVSP_LoadGroupMember : CIM_MemberOfCollection HPSVSP_VirtualDisk or HPSVSP_Snapshot Collection HPSVSP_LoadGroupDPM: CIM_StorageProcessorAffinity.
HPSVSP_DPMStorageResourceAccessibility : CIM_AsymmetricAccessibility. Class introduction This subclass of the AsymmetricAccessibility association is between a TargetPortGroup for a Data Path Module and a StorageResourceLoadGroup. Indications • Name: Asymmetric Accessibility Current Access State Change • Filter: "SELECT * FROM CIM_InstModification WHERE SourceInstance ISA CIM_AsymmetricAccessibility AND SourceInstance.CIM_AsymmetricAccessibility::CurrentAccessState <> PreviousInstance.
Property Name Description Comment Name HPSVSP_StorageAppliance.Name Primary Key. Matches system 1-1.
Parameter Name StorageResources Type Comments IN/OUT ReferenceArray: HPSVSP_VirtualHPSVSP VirtualDiskName or HPSVSP_SnapshotName Virtual disks or snapshots to have ownership assigned. If a specified storage element is part of a group, all members of the group must be specified. This effectively assigns the VirtualDiskGroup or VirtualDiskGroupSnapshot. IN This method is synchronous and does not have a task associated with it. OUT Reference: Job HPSVSP_ConcreteJob.
Storage Server Asymmetry Profile
9 Replication Services Profile Profile introduction The storage server supports the SMI-S 1.4 Replication Services Profile. The following profiles are related to this one: • Block Services Package • Job Control Subprofile • Cascading Subprofile NOTE: The term multiapp is used to denote a snapclone, mirror, or migration task. Functional description • This profile presents properties and methods that enable group management and replication services: • Create and manage virtual disk groups.
• • • • Create a synchronous mirroring group from a virtual disk Create additional mirroring jobs Pause and continue jobs Resync and resume a synchronous mirror PiTs and snapshots are supported using the subset of Replication Services states shown in the following state diagram: Snapclone is supported using the subset of Replication Services states shown in the following state diagram: Migration is supported using the subset of Replication Services states shown in the following state diagram: 144 Repl
Asynchronous mirroring is supported using the subset of Replication Services states shown in the following state diagram: Synchronous mirroring is supported using the subset of Replication Services states shown in the following state diagram: SAN Virtualization Services Platform SMI-S User Guide 145
Object model Object model overview This section briefly describes the modeling strategy used to fully exploit the functional use cases for the VSM multi-applications. • The VSM virtual disk group is modeled using subclasses of SNIA_ReplicationGroup and CIM_OrderedMemberOfCollection. • The VSM Point in Time (PiT) object is modeled using subclasses of SNIA_SynchronizationAspect class together with SNIA_SettingsDefineState.
Object model diagram PiTs / snapshots Object model diagram Replication groups SAN Virtualization Services Platform SMI-S User Guide 147
Object model diagram Synchronous mirrors 148 Replication Services Profile
Object model diagram Mirroring feature Object model diagram Snapclone feature SAN Virtualization Services Platform SMI-S User Guide 149
Object model diagram Migration feature Additional details Creating a virtual disk group • Invoke SNIA_ReplicationService.
Creating a PiT • Invoke SNIA_ReplicationService.CreateSynchronizationAspect (Name, SyncType="Snapshot", SourceElement | SourceGroup) • An instance of SettingsDefinePitState is returned that references the created instance SnapshotPit:SynchronizationAspect • No job is returned Creating a snapshot on a PiT • Invoke SNIA_ReplicationService.ModifySettingsDefineState (Operation="Copy To Target", SettingsDefineSnapshotState) • A reference to the newly created snapshot is returned.
Creating a synchronous mirror group from a virtual disk • Invoke SNIA_ReplicationService.CreateElementReplica() Creating an additional synchronous mirror task • Invoke SNIA_ReplicationService.ModifySettingsDefineState() Classes HPSVSP_ReplicationService : SNIA_ReplicationService Class introduction This class provides methods used for replication and group management. There is one instance of this class for each HPSVSP_StorageAppliance.
Methods CreateGroup Method overview This method creates an HPSVSP_VirtualDiskGroup instance. Supported return values: • • • • 0 1 4 5 (Success) (Not Supported) (Failed) (Invalid Parameter) Parameter preconditions: • DeleteOnEmptyElement • Empty groups are not supported. Attempts to remove the final member of a group results in error and failure to remove member. • If this value is supplied, it must be NULL. If otherwise, an INVALID_PARAMETER exception will be thrown.
Method parameters Parameter Name Type Comments IN/OUT GroupName string Name for the new group. In only List of elements to add to the group. Shall be references to instances of either HPSVSP_VirtualDisk or HPSVSP_Snapshot. Members CIM_LogicalElement ref[] Persistent boolean If this value is supplied and is non-null, it must be True. If otherwise, an INVALID_PARAMETER exception will be thrown. In only DeleteOnEmptyElement boolean If this value is supplied and is non-null, it must be True.
Post-conditions: • • • • The VGroup represented by the instance "ReplicationGroup" is deleted. The instance of "ReplicationGroup" is invalid ( GetInstance(ReplicationGroup) fails ). If an error happens after preconditions are checked, the return value is 4 (Failed). If no errors happen, the return value is 0 (OK).
Parameter Name Type Comments IN/OUT Members CIM_LogicalElement ref List of elements to add to the group. Shall be references to instances of either HPSVSP_VirtualDisk or HPSVSP_Snapshot. In only ServiceAccessPoint CIM_ServiceAccessPoint ref6.1.5.5.7.1. If this value is supplied and is nonnull, a 1 (Not Supported) is returned. In only RemoveMembers Method overview This method removes VirtualDisks from an HPSVSP_VirtualDiskGroup instance.
Parameter Name Type Comments IN/OUT DeleteOnEmptyElement boolean If true, provider will attempt to delete the whole group if the member being removed is the last member. If false, provider will not attempt to delete the whole group if the member being removed is the last. In this case, attempting to remove the last member will result in an exception with text derived from the VSM error. This property defaults to FALSE if it is not set.
Method parameters Parameter Name ElementName Type Comments IN/OUT string Name for the VirtualDisk being created. This name will also apply to the MultiApp/SyncMirror Group and initial MultiApp/SyncMirror jobs. In only SyncType describes the type of copy that will be made: SyncType uint16 • Synchronous or Asynchronous Mirroring - 6 ( Mirror ) In only • Snapclone - 8 ( Clone ) • Migration - 0x8000..
Parameter Name Synchronization Type Comments IN/OUT SNIA_Synchronized ref Reference to the created instance of a distinct operation-specific subclass of SNIA_Synchronized between the source and the target element. Out only Created ConcreteJob instance depending on the type of operation created: • Snapclone, migration, or Asynchronous Mirroring: MultiAppJobGroup.
Method parameters Parameter Name RelationshipName Type Comments IN/OUT string A user relevant name for the relationship between the source and target groups or between a source element and a target group. This name is used as the MultiApp group name, the initial MultiApp job name, and for snapclone and asynchronous mirroring is used to create the names of the target or destination virtual disks in the target group by prefixing each source virtual disk element name.
Parameter Name WaitForCopyState Type Comments IN/OUT uint16 Method must wait until the UnSynchronized CopyState is reached before returning. In only This parameter shall be null. Overrides the default group consistency. This parameter shall be NULL. • 2 ( No Consistency ) Consistency uint16 • 3 ( Sequential Consistency ) In only • .. ( DMTF Reserved ) • 0x8000..
Parameter Name Mode Type Comments IN/OUT uint16 Mode describes whether the target elements will be updated synchronously or asynchronously. If null, implementation decides the mode. In only • This is not applicable and shall be set to null. CIM_LogicalElement ref The source storage object which may be a VirtualDisk or Snapshot. Shall be a reference to an instance of either HPSVSP_VirtualDisk or HPSVSP_Snapshot.
• Create an additional synchronous mirroring job for a synchronous mirroring group. The pool for the target VirtualDisk may be in the local SVSP domain or a remote SVSP domain. For snapshot creation, an instance of a distinct subclass of SNIA_StorageSynchronized is created to associate the source VirtualDisk with the created instance of HPSVSP_Snapshot : CIM_StorageVirtualDisk.
Parameter Name Type Comments IN/OUT CIM_ResourcePool ref The underlying storage for the create target VirtualDisk or the virtual disks that are created as members of the create target ReplicationGroup will all be drawn from TargetPool. In only TargetAccessPoint CIM_ServiceAccessPoint ref If null, the target VirtualDisks are allocated from the TargetPool in the local SVSP domain, otherwise the TargetPool is in the SVSP domain specified in the ServiceAccessPoint.Name.
• 1 (Not Supported) • 4 (Failed) • 5 (Invalid Parameter) Method parameters Parameter Name Type Comments IN/OUT • 8 ( Detach ) - Detach an asynchronous mirroring job or detach a synchronous mirroring job • 9 ( Dissolve ) - Delete a snapshot • 14 ( Resync Replica ) - Continue an asynchronous mirroring job or Resume/Resync a synchronous mirroring group Operation • 15 ( Restore from Replica ) - Restore a virtual disk from a snapshot uint16 In only • 16 ( Resume ) - Continue a snapclone or migration job
ModifyListSynchronization Method overview This method is not supported. Supported return values: 1 - Not Supported. Method parameters Parameter Name Type Comments IN/OUT N/A N/A N/A N/A GetAvailableTargetElements Method overview This method is not supported since the VSM creates all target virtual disks and groups when the replication operation is initiated. Supported return values: 1 - Not Supported.
GetServiceAccessPoints Method overview For a given instance of ComputerSystem representing a non-local SVSP domain this method returns an instance of ServiceAccessPoint containing the SVSP domain name suitable for supplying to the ReplicationService methods that takes a TargetAccessPoints parameter. Method parameters Parameter Name Type Comments IN/OUT System HPSVSP_RemoteDomain ref An array of reference to HPSVSP_RemoteDomain for the nonlocal domain.
Property Name Description Comments Valid values: • 2 ( Synchronous Mirror Local ) • 3 ( Asynchronous Mirror Local ) • 4 ( Synchronous Mirror Remote ) SupportedReplicationTypes Set to { 2 ( Synchronous Mirror Local ), 3 ( Asynchronous Mirror Local ), 4 ( Synchronous Mirror Remote ), 5 ( Asynchronous Mirror Remote ), 6 ( Synchronous Snapshot Local ), 10 ( Synchronous Clone Local ), 12 ( Synchronous Clone Remote ), 0x8000 ( Asynchronous Move Local )} • 5 ( Asynchronous Mirror Remote ) • 6 ( Synchronous Sn
Class associations Association Name To Property: HPSVSP_ReplicationServiceHasCapabilities : CIM_ElementCapabilities HPSVSP_ReplicationService : SNIA_ReplicationService Capabilities Methods ConvertSyncTypeToReplicationType Method overview Returns the ReplicationType that corresponds to the input Mode, Locality, and SyncType. Method parameters Parameter Name Type Comments IN/OUT Copy to local or remote replica. LocalOrRemote uint16 • 2 ( Local ) In only • 3 ( Remote ) Specific SNIA_Synchronized.
Parameter Name Type Comments IN/OUT Corresponding locality LocalOrRemote uint16 • 2 ( Local ) • 3 ( Remote ) Out only • 0x8000.. ( Vendor Specific ) Specific SNIA_Synchronized.Mode Mode uint16 • 2 ( Synchronous ) • 3 ( Asynchronous ) 0x8000 ( Move ) Out only • 0x8001.. ( Vendor Specific ) Specific SNIA_Synchronized.SyncType • 6 ( Mirror ) SyncType uint16 • 7 ( Snapshot ) Out only • 8 ( Clone ) • 0x8000..
Method parameters Parameter Name Type Comments IN/OUT ReplicationType uint16 Specified HPSVSP_ReplicationServiceCapabilitiesSupportedReplicationTypes. In only SupportedCopyStates uint16[] Specific SNIA_GroupSynchronized.CopyState(s ). Out only GetSupportedFeatures Method overview For a specified HPSVSP_ReplicationServiceCapabilities.SupportedReplicationTypes, return supported features.
Method parameters Parameter Name Type Comments IN/OUT ReplicationType uint16 Specified HPSVSP_ReplicationServiceCapabilities.SupportedReplicationTypes.
Method parameters Parameter Name Type Comments IN/OUT ReplicationType uint16 Specified HPSVSP_ReplicationServiceCapabilities .SupportedReplicationTypes. In only Available operations: • 8 ( Detach ) • 9 ( Dissolve ) • 14 ( Resync Replica ) SupportedOperations uint16[] • 15 ( Restore from Replica ) Out only • 16 ( Resume ) • 19 ( Return To ResourcePool ) • 21 ( Split ) • 22 ( Suspend ) GetSupportedListOperations Method overview This method is not supported.
Parameter Name Type Comments IN/OUT Available HPSVSP_GroupSynchronized.ConsistencyType values: • 0 ( No default consistency ) • 1 ( DMTF Reserved ) DefaultConsistency uint16[] • 2 ( Sequentially Consistent ) Out only • .. ( DMTF Reserved ) • 0x8000.. ( Vendor Specific ) This method will return 2 ( Sequentially Consistent ) GetDefaultGroupPersistency Method overview Get the default persistency of a newly created group.
HPSVSP_SnapshotPit : SNIA_SynchronizationAspect Class introduction Instances of this class represent a point-in-time of a virtual disk, virtual disk snapshot, or virtual disk group. To enumerate PITs, the provider performs the following steps: 1. Enumerate the elements in PitDetailsSeq - shall be considered 1 instance of this class. Class keys/properties Property Name Description Comments Unique identifier for this instance in the scoping namespace.
Class associations Association Name To Property HPSVSP_SettingsDefineSnapshotPit : CIM_SettingsDefineState HPSVSP_VirtualDisk : CIM_StorageVirtualDisk SettingData HPSVSP_SettingsDefineSnapshotPit : CIM_SettingsDefineState HPSVSP_Snapshot : CIM_StorageVirtualDisk SettingData HPSVSP_SettingsDefineSnapshotPit : CIM_SettingsDefineState HPSVSP_VirtualDiskGroupSnapshot : SNIA_ReplicationGroup SettingData HPSVSP_Snapshot : SNIA_StorageVolume Class introduction This class represents an instance of a sna
Class keys/properties Property Name Description Comments SystemCreationClassName “HPSVSP_StorageAppliance" The CreationClassName of the scoping system. SystemName HPSVSP_StorageAppliance.Name. The Name of the scoping system. CreationClassName “HPSVSP_Snapshot" The name of the class used in the creation of this instance. DeviceID An address or other identifying information to designate this LogicalDevice. Name The label by which the object known. NameFomat 9 "NAA" Format for name property.
Property Name Description Comments The following text describes how the provider sets the first element of the OperationalStatus and ExtentStatus array properties unless otherwise stated. The Snapshot- Details.SnapshotStatus and SnapshotDetails. SnapshotState determine the allowed values for OperationalStatus and Extent- Status as follows.
Property Name Description Comments NoSinglePointOfFailure false Indicates whether or not the element has a single point of failure. DataRedundancy 1 Number of complete copies of data currently maintained. PackageRedundancy 0 How many physical packages can currently fail without data loss. DeltaReservation 0 Current value for Delta reservation. This is a percentage that specifies the amount of space that should be reserved in a replica for caching changes.
Association Name To Property HPSVSP_AffectedJobElement : CIM_AffectedJobElement HPSVSP_MultiAppJobGroup : CIM_ConcreteJob AffectedElement HPSVSP_SnapshotSetting : SNIA_StorageSetting Class introduction There will be one instance of this class associated for each HPSVSP_Snapshot. The settings for the HPSVSP_VirtualDisk will be based on the PoolDetails structure. Class keys/properties Property Name Description Comments InstanceID Unique identifier within the scope of the instantiating Namespace.
Property Name Description Comments ChangeableType 0 "Fixed - Not Changeable" The type of setting. Class associations Association Name To Property HPSVSP_SnapshotSettingData : CIM_ElementSettingData HPSVSP_Snapshot : SNIA_StorageVolume SettingData HPSVSP_SnapshotSynchronized : SNIA_StorageSynchronized Class introduction Represents the relationship of a snapshot to the source object.
Property Name Description Comments SNIA_Synchronized.CopyState • 2 ( Initialized ) • 3 ( Unsynchronized ) • 4 ( Synchronized ) • 5 ( Broken ) • 6 ( Fractured ) • 7 ( Split ) CopyState 2 - Synchronized • 8 ( Inactive ) • 9 ( Suspended ) • 10 ( Failedover ) • 11 ( Prepared ) • 12 ( Aborted ) • 13 ( Skewed ) • 14 ( Mixed ) • 15 ( Not Applicable ) • 0x8000.. ( Vendor Specific ) RequestedCopyState 15 - Not Applicable SNIA_Synchronized.
HPSVSP_VirtualDiskGroup : SNIA_ReplicationGroup Class introduction Instances of this class represent VSM virtual disk groups. Class keys/properties Property Name Description Comments InstanceID Unique identifier for this instance in the scoping namespace. ElementName The friendly name of the element DeleteOnEmptyElement Set to False Empty virtual disk groups are not supported.
Association Name To Property HPSVSP_VirtualDiskGroupMigrationJob : SNIA_GroupSynchronized HPSVSP_VirtualDiskGroup : SNIA_ReplicationGroup SystemElement HPSVSP_VirtualDiskGroupMigrationJob : SNIA_GroupSynchronized HPSVSP_VirtualDiskGroup : SNIA_ReplicationGroup SyncedElement HPSVSP_VirtualDiskGroupMirroringJob : SNIA_GroupSynchronized HPSVSP_VirtualDiskGroup : SNIA_ReplicationGroup SyncedElement HPSVSP_VirtualDiskGroupMirroringJob : SNIA_GroupSynchronized HPSVSP_VirtualDiskGroup : SNIA_Replicati
Association Name To Property HPSVSP_ReplicationServiceAffectsGroups : CIM_ServiceAffectsElement HPSVSP_ReplicationService : SNIA_ReplicationService AffectedElement HPSVSP_SettingsDefineSnapshotPit : CIM_SettingsDefineState HPSVSP_SnapshotPit : SNIA_SynchronizationAspect ManagedElemen HPSVSP_SnapshotSynchronized : CIM_SettingsDefineState HPSVSP_SnapshotPit : SNIA_SynchronizationAspect ManagedElement HPSVSP_SettingsDefineSnapcloneGroup : CIM_SettingsDefineState HPSVSP_SnapcloneGroup : SNIA_Synchr
• Filter: SELECT * FROM CIM_InstCreation WHERE SourceInstance ISA SNIA_GroupSynchronized • Description: A new GroupSynchronized instance has been created. Class keys/properties Property Name Description RelationshipName Comments Unique name for this relationship. ReplicationServiceCapabilities. SyncType • .. ( DMTF Reserved ) SyncType 7 - Snapshot • 6 ( Mirror ) • 7 ( Snapshot ) • 8 ( Clone ) • 0x8000.. ( Move ) ReplicationServiceCapabilities.
Property Name Description Comments This value shall be 15 - Not Applicable As a side effect of modifying this value, an operation begins and attempts to bring the CopyState value of this association to the RequestedCopyState value specified in ModifyReplicaSynchronization(). RequestedCopyState • While the operation is ongoing, RequestedCopyState shall retain its modified value, CopyState shall retain the current (volatile) value as the operation progresses. SNIA_Synchronized.
Property Name Description Comments Consistency type values: ConsistencyType Set to 2 - Sequentially Consistent • 2 ( Sequentially Consistent ) • .. ( DMTF Reserved ) • 0x8000.. ( Vendor Specific ) Available SNIA consistency state values: • 0 ( Unknown ) • 1 ( Other ) ConsistencyState • 2 ( Not Applicable ) 2 - Not Applicable • 3 ( Consistent ) • 4 ( Inconsistent ) • 0x8000..
Property Name Description Comments ReplicationServiceCapabilities.SyncType. Available SNIA values: • 6 ( Mirror ) SyncType 8 ( Clone ) • 7 ( Snapshot ) • 8 ( Clone ) • 0x8000 ( Move ) Available values: ConsistencyType 2 - Sequentially Consistent • 2 ( Sequentially Consistent ) • .. ( DMTF Reserved ) • 0x8000..
Instances of this association class are created as a side effect of the ReplicationService::CreateElementReplica() or ModifySettingsDefineState() methods and can be modified by the ReplicationService::ModifyReplicaSynchronization() method. For enumerating instances of this association, the provider performs the following sequence of operations: Indications • Name: SNIA_StorageSynchronized - InstCreation • Filter: SELECT * FROM CIM_InstCreation WHERE SourceInstance ISA SNIA_StorageSynchronized.
Property Name Description Comments • Job Init, 4 (Synchronized ) • JobNormal, 4 ( Synchronized ) • JobPaused, 15 ( Not Applicable ) • JobFailed,15 ( Not Applicable ) RequestedCopyState • While the operation is ongoing, RequestedCopyState shall retain its modified value, CopyDtate shall retain the current (volatile) value as the operation progresses. SNIA_Synchronized.CopyState Last requested state for this association: Not the actual state.
HPSVSP_VirtualDiskGroupSnapCloneJob : SNIA_GroupSynchronized Class introduction This association represents an association between a virtual disk group and the snapshot of that group. • The synced element represents the target virtual disk group of the replication operation. • The system element represents the source virtual disk group or virtual disk group snapshot of the replication operation.
Property Name Description Comments SNIA_Synchronized.CopyState • 2 ( Initialized ) • 3 ( Unsynchronized ) • 4 ( Synchronized ) • 5 ( Broken ) • 6 ( Fractured ) CopyState • JobInit 3 ( UnSynchronized ) • 7 ( Split ) • Job Normal 3 ( UnSynchronized ) • 8 ( Inactive ) • JobPaused 9 ( Suspended ) • 9 ( Suspended ) • 5 ( Broken ) • 10 ( Failedover ) • 11 ( Prepared ) • 12 ( Aborted ) • 13 ( Skewed ) • 14 ( Mixed ) • 15 ( Not Applicable ) • 0x8000..
Property Name Description Comments Available SNIA Values: • 0 ( Unknown ) • 2 ( Completed ) • 3 ( Dormant ) • 4 ( Initializing ) • 5 ( Preparing ) • 6 ( Synchronizing ) • 7 ( Resyncing ) • 8 ( Restoring ) ProgressStatus • JobInit 6 ( Synchronizing ) • 9 ( Fracturing ) • JobNormal 6 ( Synchronizing ) • 10 ( Splitting ) • JobPaused 3 ( Dormant ) • 11 ( Failing over ) • JobFailed 15 ( Not Applicable ) • 12 ( Failing back ) • 13 ( Aborting ) • 14 ( Mixed ) • 15 ( Not Applicable ) • 16 ( Suspending )
Property Name Description Comments Available SNIA consistency status values: • 0 ( Unknown ) • 1 ( Other ) ConsistencyStatus • 2 ( Completed ) Set to 0 - Unknown • 3 ( Consistency-in-progress ) • 4 ( Consistency disabled ) • 5 ( Consistency-error ) • 0x8000.. ( Vendor Specific ) HPSVSP_MigrationGroup: SNIA_SynchronizationAspect Class introduction Instances of this class represent migration groups.
Property Name Description Comments WhenPointInTime CreatedTime Specifies when point-in-time was created. SourceElement Set to ObjectPath of CIM representation of the SourceName, as presented in comments. Identifies the source instance.
Property Name Description Comments ReplicationServiceCapabilities.SyncType • .. ( DMTF Reserved ) SyncType 0x8000 ( Move ) • 6 ( Mirror ) • 7 ( Snapshot ) • 8 ( Clone ) • 0x8000 ( Move ) ReplicationServiceCapabilities.Mode • 0 ( Unknown ) Mode 3 - Asynchronous • 2 ( Synchronous ) • 3 ( Asynchronous ) • 32768..65535 ( Vendor Specific ) SNIA_Synchronized.
Property Name Description Comments Available SNIA values: • 0 ( Unknown ) • 2 ( Completed ) • 3 ( Dormant ) • 4 ( Initializing ) • 5 ( Preparing ) • 6 ( Synchronizing ) • 7 ( Resyncing ) • 8 ( Restoring ) ProgressStatus • JobInit 6 ( Synchronizing ) • 9 ( Fracturing ) • JobNormal 6 ( Synchronizing ) • 10 ( Splitting ) • JobPaused 3 ( Dormant ) • 11 ( Failing over ) • JobFailed 15 ( Not Applicable ) • 12 ( Failing back ) • 13 ( Aborting ) • 14 ( Mixed ) • 15 ( Not Applicable ) • 16 ( Suspending )
Property Name Description Comments ReplicationServiceCapabilities.SyncType • .. ( DMTF Reserved ) SyncType • 6 ( Mirror ) 8 ( Clone ) • 7 ( Snapshot ) • 8 ( Clone ) • 0x8000.. ( Move ) ReplicationServiceCapabilities.Mode • 0 ( Unknown ) Mode 3 - Asynchronous • 2 ( Synchronous ) • 3 ( Asynchronous ) • 32768..65535 ( Vendor Specific ) SNIA_Synchronized.
Property Name Description Comments Available SNIA Values: • 0 ( Unknown ) • 2 ( Completed ) • 3 ( Dormant ) • 4 ( Initializing ) • 5 ( Preparing ) • 6 ( Synchronizing ) • 7 ( Resyncing ) • 8 ( Restoring ) ProgressStatus • JobInit 6 ( Synchronizing ) • 9 ( Fracturing ) • JobNormal 6 ( Synchronizing ) • 10 ( Splitting ) • JobPaused 3 ( Dormant ) • 11 ( Failing over ) • JobFailed 15 ( Not Applicable ) • 12 ( Failing back ) • 13 ( Aborting ) • 14 ( Mixed ) • 15 ( Not Applicable ) • 16 ( Suspending )
Property Name Description Comments Available SNIA consistency status values: • 0 ( Unknown ) • 1 ( Other ) ConsistencyStatus • 2 ( Completed ) Set to 0 - Unknown • 3 ( Consistency-in-progress ) • 4 ( Consistency disabled ) • 5 ( Consistency-error ) • 0x8000.. ( Vendor Specific ) HPSVSP_MirrorGroup : SNIA_SynchronizationAspect Class introduction Instances of this class represent asynchronous mirror groups.
Property Name Description CopyStatus 2 - Not Applicable Comments • 2 ( Not Applicable • 3 ( Operation In Progress ) • 3 ( Operation Complete ) WhenPointInTime Created Time Specifies when point-in-time was created. SourceElement Set to ObjectPath of CIM representation of the SourceName, as presented in comments. Identifies the source instance. Note this is ObjectPath, not a full Instance (API) or ObjectPath.
Class keys/properties Property Name Description Comments SyncMaintained Progress=100 Whether synchronization is maintained ReplicationServiceCapabilities.SyncType • .. ( DMTF Reserved ) SyncType • 6 ( Mirror ) 6 ( Mirror ) • 7 ( Snapshot ) • 8 ( Clone ) • 0x8000 ( Move ) ReplicationServiceCapabilities.Mode • 0 ( Unknown ) Mode • 2 ( Synchronous ) 3 - Asynchronous • 3 ( Asynchronous ) • 32768..65535 ( Vendor Specific ) SNIA_Synchronized.
Property Name Description Comments • JobInit, 4 ( Synchronized ) • JobNormalProgress!==100 4 ( Synchronized ) • JobNormal Progress==100 15 ( Not Applicable ) • JobPaused 15 ( Not Applicable ) • JobFailed 15 ( Not Applicable ) • JobBreak 15 ( Not Applicable ) • JobDelete 15 ( Not Applicable ) RequestedCopyState • While the operation is ongoing, RequestedCopyState shall retain its modified value, CopyState shall retain the current (volatile) value as the operation progresses. SNIA_Synchronized.
HPSVSP_VirtualDiskGroupMirrorJob : SNIA_GroupSynchronized Class introduction This association represents an association between a virtual disk group and the mirror of that group. • The synced element represents the target virtual disk group of the replication operation. • The system element represents the source virtual disk group of the replication operation.
Property Name Description Comments • JobInit, 6 ( Synchronized ) • JobNormalProgress!==100 4 ( Synchronized ) • JobNormal Progress==100 15 ( Not Applicable ) • JobPaused 15 ( Not Applicable ) • JobFailed 15 ( Not Applicable ) • JobBreak 15 ( Not Applicable ) RequestedCopyState • JobDelete 15 ( Not Applicable ) • While the operation is ongoing, RequestedCopyState retains its modified value, CopyState retains the current (volatile) value as the operation progresses. SNIA_Synchronized.
Property Name Description Comments Consistency type values: ConsistencyType Set to 2 - Sequentially Consistent • 2 ( Sequentially Consistent ) • ( DMTF Reserved ) • 0x8000.. ( Vendor Specific ) Available SNIA consistency state values: • 0 ( Unknown ) • 1 ( Other ) ConsistencyState 2 - Not Applicable • 2 ( Not Applicable ) • 3 ( Consistent ) • 4 ( Inconsistent ) • 0x8000..
Property Name Description Comments ReplicationServiceCapabilities.SyncType. Available SNIA values: • 6 ( Mirror ) SyncType 6 - Mirror • 7 ( Snapshot ) • 8 ( Clone ) • 0x8000 ( Move ) Available values: ConsistencyType 2 Sequentially Consistent • 2 ( Sequentially Consistent ) • .. ( DMTF Reserved ) • 0x8000..
Class keys/properties Property Name Description Comments SyncMaintained JobStatus==Normal Whether synchronization is maintained ReplicationServiceCapabilities.SyncType • .. ( DMTF Reserved ) SyncType • 6 ( Mirror ) 6 ( Mirror ) • 7 ( Snapshot ) • 8 ( Clone ) • 0x8000 ( Move ) ReplicationServiceCapabilities.Mode • 0 ( Unknown ) Mode • 2 ( Synchronous ) 2 ( Synchronous ) • 3 ( Asynchronous ) • 32768..65535 ( Vendor Specific ) SNIA_Synchronized.
Property Name Description Comments This value is {15 Not Applicable} unless SmJobStatus==SmJobSnapSync in which case it is 4 (Synchronized). As a side effect of modifying this value, an operation begins and attempts to bring the CopyState value of this association to the RequestedCopyState value specified in ModifyReplicaSynchronization().
HPSVSP_RemoteSVSPDomain : CIM_ComputerSystem Class introduction This class models the top-level system of a remote SVSP domain. There will be one instance of this class for each such remote SVSP domain. This class is uniquely identified by the CreationClassName and Name keys. The Name key is the Remote SVSP domain name. Class keys/properties Property Name Description Comments CreationClassName “HPSVSP_RemoteDomain" The name of the class used in the creation of this instance.
Class associations Association Name To Property HPSVSP_HostedRemoteDomainConfiguredPool : CIM_HostedStoragePool HPSVSP_RemoteDomainConfiguredPool : SNIA_StoragePool GroupComponent HPSVSP_HostedRemoteDomainEndpoint : CIM_HostedAccessPoint HPSVSP_RemoteDomainEndpoint : CIM_ProtocolEndpoint Antecedent HPSVSP_RemoteDomainConfiguredPool : SNIA_StoragePool Class introduction This class represents a configured pool on a remote SVSP domain.
HPSVSP_RemoteDomainTargetVirtualDisk : SNIA_StorageVolume Class introduction This class represents an instance of VSM storage virtual disk that is actively a target of a remote replication VSM task. This class is intended to support the remote end of a StorageSynchronized association. Class keys/properties Property Name Description Comments SystemCreationClassName “HPSVSP_RemoteDomain" The CreationClassName of the scoping system. SystemName HPSVSP_RemoteDomain.Name The Name of the scoping system.
Class associations Association Name To Property N/A N/A N/A HPSVSP_LocalDomainEndpoint : CIM_SCSIProtocolEndpoint Class introduction This class is a representation of the local end of a protocol link to a remote SVSP domain. There will be one instance of this class for the local SVSP domain represented by HPSVSP_StorageAppliance. Class keys/properties Property Name Description Comments SystemCreationClassName “HPSVSP_StorageAppliance" The CreationClassName of the scoping system.
Class associations Association Name To Property HPSVSP_VDevForEndpoint : CIM_SAPAvailableForElement HPSVSP_VirtualDisk : SNIA_StorageVolumek or HPSVSP_Snapshot : SNIA_StorageVolume Dependent HPSVSP_HostedLocalDomainEndpoint : CIM_HostedAccessPoint HPSVSP_StorageAppliance : CIM_ComputerSystem Dependent HPSVSP_MemberOfRemoteDomainCollection : CIM_MemberOfCollection HPSVSP_RemoteDomainConnectionCollection : ConnectivityCollection Member HPSVSP_RemoteDomainEndpoint : CIM_SCSIProtocolEndpoint Class i
Property Name Description Comments ProtocolIFType 1 "Other" OtherTypeDescriptions "SCSI" Role 4 Both target and initiator Class associations Association Name To Property HPSVSP_HostedRemoteDomainEndpoint : CIM_HostedAccessPoint HPSVSP_RemoteDomain : CIM_ComputerSystem Dependent HPSVSP_MemberOfRemoteDomainCollection : CIM_MemberOfCollection HPSVSP_RemoteDomainConnectionCollection : ConnectivityCollection Member HPSVSP_RemoteDomainConnectionCollection : CIM_ConnectivityCollection Class int
Class associations Association Name To Property HPSVSP_HostedRemoteDomainEndpointCollection : CIM_HostedCollection HPSVSP_StorageAppliance : CIM_ComputerSystem Dependent HPSVSP_MemberOfRemoteDomainCollection : CIM_MemberOfCollection HPSVSP_LocalDomainEndpoint : CIM_ProtocolEndpoint Collection HPSVSP_MemberOfRemoteDomainCollection : CIM_MemberOfCollection HPSVSP_RemoteDomainEndpoint : CIM_ProtocolEndpoint Collection HPSVSP_ReplicationServiceAffectsRemoteDomainCollection : CIM_ServiceAffectsElemen
Replication Services Profile
10 Copy Services Profile Profile introduction This VSM server Profile partially implements the SMI-S 1.4 Copy Services Component Profile for the purpose of supporting legacy clients. The provided functionality encompasses simple single copy, local SVSP domain management of snapshots, synchronous and asynchronous mirroring, and copy in the VSM server. For the full VSM functionality use the Replication Services Profile.
The profile uses the CreateReplica method to create a single snapshot with associated PiT. It uses ModifySynchronization to delete the snapshot and PiT (Detach), and to restore the snapshot to the original virtual disk (Restore).
The profile uses the CreateReplica method to create a mirror pair. It uses ModifySynchronization to resume the mirror after a corrected failure (Resync Replica), and remove the mirror pair (Detach). Asynchronous mirroring is supported using the subset of Copy Services states show in the following state diagram: The profile uses the CreateReplica method to create a mirroring group with single task.
The profile uses the CreateReplica method to establish a virtual disk copy. It uses ModifySynchronization to pause the copy (Stop Copy), and continue the copy (Start Copy).
Object model diagram SAN Virtualization Services Platform SMI-S User Guide 223
Object model summary The following definitions are taken from the SNIA dictionary (see http://www.snia.org/education/ dictionary/). Mirror—A storage volume consisting of separate components with identical contents that can be accessed independently by the storage system.
point-in-time snapshot of a source element. The synchronization semantics between the storage volume and its source element are reflected by properties of the association between the two. Snapshot—A fully usable copy of a defined collection of data that contains an image of the data as it appeared at the point in time at which the copy was initiated. A snapshot may be either a duplicate or a replicate of the data it represents. This always represents a point-in-time snapshot of the source element.
Association Name To Property HPSVSP_MirroringElementCapabilities : CIM_ElementCapabilities HPSVSP_MirroringReplicationCapabilities: CIM_StorageReplicationCapabilities ManagedElement HPSVSP_SnapcloneElementCapabilities : CIM_ElementCapabilities HPSVSP_SnapcloneReplicationCapabilities : CIM_StorageReplicationCapabilities ManagedElement Methods CreateReplica Method overview The CreateReplica method starts a task to create a new storage object that is a replica of the specified source storage object (S
Parameter Name Type Comments IN/OUT This describes the type of copy that will be made. The supported values are: • 2 ("Async") - Create and maintain an asynchronous copy of the source. • 3 ("Sync") - Create and maintain a synchronized copy of the source. • 4 ("UnSyncAssoc") - Create an unsynchronized copy and maintain an association to the source. CopyType uint16 • 5 ("UnSyncUnAssoc") - Create unassociated copy of the source element.
ModifySynchronization Method overview The ModifySynchronization method modifies (or starts a task to modify) the synchronization association between two storage objects. If 0 is returned, the function completed successfully and no ConcreteJob instance was created. If 0x1000 is returned, a ConcreteJob was started and a reference to this Job is returned in the Job output parameter. A return value of 1 indicates the method is not supported. All other values indicate some type of error condition.
Method parameters Parameter Name Type Comments IN/OUT This describes the type of modification to be made to the replica. The supported values are: • 2 ("Detach") - 'Forget' the synchronization between two storage objects. Start to treat the objects as independent. • 3 ("Fracture") - Suspend the synchronization between two storage objects using sync or async replication. The association and (typically) changes are remembered to allow a fast resynchronization.
Parameter Name Type Comments IN/OUT Reference to a task. This is specified only if the operation is performed asynchronously, otherwise a value of null is returned. ConcreteJob REF Job A instance of ConcreteJob is returned or the following operations: • "Start Copy"—startVirtualDiskCopy - an instance of HPSVSP_MultiAppConcreteJob is returned.
Property Name Description Comments Describes the type of synchronization that is characterized by this instance of StorageReplicationCapabilities. Supported values are: • 2 ("Async")—Asynchronous copies may be created and maintained. SupportedCopyTypes {2 ("Async"), 3 ("Sync"), 4 ("UnSyncAssoc"), 5 ("UnSyncUnAssoc"} • 3 ("Sync")—Synchronous copies may be created and maintained. • 4 ("UnSyncAssoc")—Unsynchronized copies may be created and maintained.
Property Name Description Comments SupportedAsynchronousActions { 8 ("Replica Creation"), 9 ("Replica Modification")} Operations executed as asynchronous jobs. SupportedSynchronousActions { 8 ("Replica Creation"), 9 ("Replica Modification") } Operations executed without the creation of a task. Describes the type of synchronization that is characterized by this instance of StorageReplicationCapabilities.
Property Name Description Comments ElementName "SnapshotReplicationCapabilities" A user-friendly name for the object. Describes the type of synchronization that is characterized by this instance of StorageReplicationCapabilities. Supported values are: • 2 ("Async")—Create a mirror that is nearly always synchronized. SupportedSynchronizationType UnSyncAssoc-Delta • 3 ("Sync")—Create a mirror that is always synchronized. • 4 ("UnSyncAssoc-Full")—Create a full size snapshot (PiT image).
Property Name Description Comments Enumeration indicating which ModifySynchronization operations are supported by this instance of StorageReplicationCapabilities.
Property Name Description Comments Maximum number of replicas that can be associated with one source element. MaximumReplicasPerSource Delta replicas can be created in any pool. • 2 ( Any ) DeltaReplicaPoolAccess • 3 ( Exclusive ) 2 -Any • 4 ( Shared ) • .. ( DMTF Reserved ) • 0x8000.. ( Vendor Specific ) LowSpaceWarningThresholdDefault Warning threshold for generating an indication for RemainingManagedSpace. Value of zero means no warning generated.
Property Name Description Comments Describes the type of synchronization that is characterized by this instance of StorageReplicationCapabilities. Supported values are: • 2 ("Async") - create a mirror that is nearly always synchronized. SupportedSynchronizationType Sync • 3 ("Sync") - create a mirror that is always synchronized. • 4 ("UnSyncAssoc-Full") - create a full size snapshot (PiT image). • 5 ("UnSyncAssoc-Delta") - create a delta snapshot (PiT image).
Property Name Description Comments Specifies which initial ReplicationState is supported. The supported values are: • 2 ("Initialized") - the replication relationship is known and unsynchronized, but time required to synchronize may be long. InitialReplicationState 2 ("Initialized") • 3 ("Prepared") - the replication relationship is known and unsynchronized and the time required to synchronize will be short. • 4 ("Synchronized") - the replicas are synchronized.
Property Name Description Comments Lists the replica synchronization states in which the host is allowed access to replicas. Accessibility does not guarantee replica contents are valid or consistent.
Class keys/properties Property Name Description Comments InstanceID HPSVSP_StorageAppliance.Name + ";" +"MirroringReplicationCapabilities" Unique identifier within the scope of the instantiating Namespace. ElementName "MirroringReplicationCapabilities" A user-friendly name for the object. Describes the type of synchronization that is characterized by this instance of StorageReplicationCapabilities. Supported values are: • 2 ("Async") - create a mirror that is nearly always synchronized.
Property Name Description Comments Specifies which initial ReplicationState is supported. The supported values are: • 2 ("Initialized") - the replication relationship is known and unsynchronized, but time required to synchronize may be long. InitialReplicationState 2 ("Initialized") • 3 ("Prepared") - the replication relationship is known and unsynchronized and the time required to synchronize will be short. • 4 ("Synchronized") - the replicas are synchronized.
Property Name Description Comments Lists the replica synchronization states in which the host is allowed access to replicas. Accessibility does not guarantee replica contents are valid or consistent.
Class keys/properties Property Name Description Comments InstanceID HPSVSP_StorageAppliance.Name + ";" +"SnapcloneReplicationCapabilities" Unique identifier within the scope of the instantiating Namespace. ElementName "SnapcloneReplicationCapabilities" A user-friendly name for the object. Describes the type of synchronization that is characterized by this instance of StorageReplicationCapabilities. Supported values are: • 2 ("Async") - create a mirror that is nearly always synchronized.
Property Name Description Comments Specifies which initial ReplicationState is supported. The supported values are: • 2 ("Initialized") - the replication relationship is known and unsynchronized, but time required to synchronize may be long. InitialReplicationState 2 ("Initialized") • 3 ("Prepared") - the replication relationship is known and unsynchronized and the time required to synchronize will be short. • 4 ("Synchronized") - the replicas are synchronized.
Property Name Description Comments • 2 ("Initialized") • 3 ("Prepare In Progress") • 4 ("Prepared") • 5 ("Resync In Progress") • 6 ("Synchronized") • 7 ("Fracture In Progress") HostAccessibleState { 11 ("Idle"), 15 ("Copy In Progress") } • 8 ("Quiesce In Progress") • 9 ("Quiesced") • 10 ("Restore In Progress") • 11 ("Idle") • 12 ("Broken") • 13 ("Fractured") • 14 ("Frozen") • 15 ("Copy In Progress") Maximum number of replicas that can be associated with one source element.
HPSVSP_ConfiguredPoolStorageCapabilities : CIM_StorageCapabilities Class introduction This implementation of Copy Services uses a Delta Replica Variable Space Consumption model (without a special pool). Therefore DeltaReservation values are not used and are set to zero.
Property Name Description Comments This specifies how the Replica is being maintained. The supported values are: • 0 ("Not Specified") - The method of maintaining the copy is not specified. • 2 ("Full Copy") - This indicates that a full copy of the source object is (or will be) generated. ReplicaType 2 ("Full Copy") • 3 ("Before Delta") - This indicates that the source object will be maintained as a delta data from the replica.
Property Name Description Comments This describes the state of the association with respect to replication activity. The supported values are: • 2 ("Initialized") - The link to enable replication is established and source/replica elements are associated, but the Copy engine has not started. • 3 ("PrepareInProgress") - Preparation for replication is in progress and the Copy engine has started. • 4 ("Prepared") - All necessary preparation has completed.
HPSVSP_CopySvcsSyncMirrorGroup : CIM_StorageSynchronized Class introduction An instance of HPSVSP_CopySvcsSyncMirrorGroup is enumerated for each sync mirror group that has single associated target symc mirror job. Class keys/properties Property Name Description Comments This describes the replication policy. The supported values are: • 2 ("Async") - create and maintain an asynchronous copy of the source. CopyType 3 ("Sync") • 3 ("Sync") - create and maintain a synchronized copy of the source.
Property Name Description Comments This describes the state of the association with respect to replication activity. The supported values are: • 2 ("Initialized") - The link to enable replication is established and source/replica elements are associated, but the Copy engine has not started. • 3 ("PrepareInProgress") - Preparation for replication is in progress and the Copy engine has started. • 4 ("Prepared") - All necessary preparation has completed.
HPSVSP_CopySvcsMirroringGroup : CIM_StorageSynchronized Class introduction An instance of HPSVSP_CopySvcsMirroringGroup is enumerated for each MultiAppGroupthat represents a mirroring operation with a single mirror job. Class keys/properties Property Name Description Comments Unique identifier within the scope of the instantiating Namespace. • 2 ("Async") - create and maintain an asynchronous copy of the source. CopyType 2 ("Async") • 3 ("Sync") - create and maintain a synchronized copy of the source.
Property Name Description Comments This describes the state of the association with respect to replication activity. The supported values are: • 2 ("Initialized") - The link to enable replication is established and source/replica elements are associated, but the Copy engine has not started. • 3 ("PrepareInProgress") - Preparation for teplication is in progress and the Copy engine has started. • 4 ("Prepared") - All necessary preparation has completed.
An instance of HPSVSP_CopySvcsSnapcloneGroup is enumerated for each MultiAppGroup that represents a snapclone operation with a single snapclone job. Class keys/properties Property Name Description Comments Unique identifier within the scope of the instantiating Namespace. • 2 ("Async") - create and maintain an asynchronous copy of the source. CopyType 5 ("UnSyncUnAssoc") • 3 ("Sync") - create and maintain a synchronized copy of the source.
Property Name Description Comments This describes the state of the association with respect to replication activity. The supported values are: • 2 ("Initialized") - The link to enable replication is established and source/replica elements are associated, but the Copy engine has not started. • 3 ("PrepareInProgress") - Preparation for replication is in progress and the Copy engine has started. • 4 ("Prepared") - All necessary preparation has completed.
• Description: VirtualDisks can be created using the CreateVirtualDisk() API or the HPSVSP_StorageConfigurationService CreateOrModifyElementFromStoragePool() method. When the system detects a new VirtualDisk, generate a CIM_InstCreation indication.
Property Name Description Comments • statusInit, then set OperationalStatus = 8 "Starting" and ExtentStatus = 2 "Not Applicable"; • statusNormal, then set arrays given the values of SnapshotState as follows: • if (stateRollback| stateMigrate| stateRestore), OperationalStatus = 2 "OK" and ExentStatus =11 "Rebuild" OperationalStatus[] • if statusPartial, OperationalStatus = 3 "Degraded" and ExtentStatus = 3 "Broken" The current statuses of the element.
Property Name DeltaReservation Description Comments 0 Current value for Delta Reservation. This is a percentage that specifies the amount of space that should be reserved in a replica for caching changes.
HPSVSP_ConfiguredPoolSetting : SNIA_StorageSetting Class introduction This implementation of Copy Services uses a Delta Replica Variable Space Consumption Model (without a special pool). Therefore DeltaReservation values are not used and are set to zero.
Copy Services Profile
11 FC Initiator Ports Profile introduction The FC Initiator Ports Profile allows an initiator implementation to report the topology of the SAN from its perspective. The storage virtualization shall use this profile to describe the topology between the virtualizer and the storage array.
Object model diagram Object model summary Typically, this profile is used to report all ports. However, since this profile is being used to report on DPM switch ports, and the unused DPM switch ports have not be assigned to the initiator or target role, this profile cannot be used to report these unused ports. Additional details Health and fault management considerations Health information for the profile is described in the HPSVSP_DPMFCPort OperationalStatus property.
Class keys/properties Property Name Description Comments SystemCreationClassName “HPSVSP_StorageAppliance" The CreationClassName of the scoping system. SystemName Same as The Name of the scoping System. “HPSVSP_StorageAppliance.Name. CreationClassName HPSVSP_DPMBackSideFCPort The name of the class used in the creation of this instance.
Property Name Description Comments MaxSpeed LinkTechnology Max speed in bits per second. Set this property to 4 "FC" This implementation shall only support FC. PermanentAddress This property shall contain 16 un-separated upper case hex digits. PortNumber This is an optional property. SupportedMaximumTransmissionUnit This property lists what the maximum FC frame size (MTU) that is possible for this port.
Property Name Description Comments Name The unique name key for the HPSVSP_DPMBackSideSCSIProtocolEndPoint manufactured from the SVSP domain of the active VSM that views the DPM, the DPM on which the port is located, and the port number itself. ProtocolIFType 1 ("Other") The classification of the ProtocolEndpoint according to the IANA 'ifType' MIB documented at http:// www.iana.org/assignments/ ianaiftype-mib.
FC Initiator Ports
12 FC Target Ports Profile introduction The FC Target Port Profile models the Fibre Channel ports available for use by hosts interested in using devices exposed on the storage system. In VSM terms, the FC Target Ports are the FC ports of a Data Path Module (DPM) to which front-end HBAs (hosts) connect.
Object model diagram Object model summary Each class in the profile is subclassed to a vendor-unique extension. Additional details Health and fault management considerations Health information for the profile is described in the HPSVSP_DPMFCPort OperationalStatus property. Classes HPSVSP_DPMFrontSideFCPort : CIM_FCPort Class introduction The SMI-S specification mandates that FCPort always be associated 1-1 with a SCSIProtocolEndpoint instance.
Indications • Name: FCPort Creation • Filter: SELECT * FROM CIM_InstCreation WHERE SourceInstance ISA CIM_FCPort • Description: The presence of a new DPM target port is discovered in the SVSP domain. • Name: FCPort Operational Status Change • Filter: SELECT * FROM CIM_InstModification WHERE SourceInstance ISA CIM_FCPort AND SourceInstance.CIM_FCPort::OperationalStatus <> PreviousInstance.CIM_FCPort::OperationalStatus • Description: The HbaPortInfoDetails does not currently surface status.
Property Name Description Comments PermanentAddress HbaPortInfoDetails.HbaPortAddress The DPM port's WWN.
Property Name Description Comments ProtocolIFType Set to 1 ("Other") The classification of the ProtocolEndpoint according to the IANA 'ifType' MIB documented at http:// www.iana.org/assignments/ ianaiftype-mib. OtherTypeDescription Set this to the string "SCSI" The endpoint's stated ProtocolIFType (since ProtocolIFType is "Other") ConnectionType Set to 2 ("Fibre Channel") The supported connection type for the endpoint.
FC Target Ports
13 Indication Profile Profile introduction Indications are support for unsolicited event notifications. Each profile that supports event notification through CIM indications would support this profile, its classes, and its associations. The following profiles are related to this one: • Storage Management Technical Specification: Part 2 Common Profiles. V1.4.0. Rev 1. Clause 43 Profile Registration Profile • Storage Management Technical Specification: Part 2 Common Profiles. V1.4.0. Rev 1.
the SMI agent passes the CIM_IndicationFilter to each subclass that supports the Indication Provider interface. When an Indication Subscription is activated, the SMI agent will ask each appropriate Indication Provider whether it supports the Indication (authorizeFilter() is called). The provider must verify that the CIM_IndicationFilter instance specified contains appropriate values in its query, query language, and SourceNamespace property values (see Profile specifications for required property values).
Object model diagram Object model summary The core model of the Indication Profile is the CIM_IndicationSubscription association between CIM_IndicationFilter and CIM_ListenerDestinationCIMXML. This identifies a given SMI client (for example, CIM_ListenerDestinationCIMXML) that is actively listening for notification of a given event (for example, CIM_IndicationFilter).
Classes HPSVSP_CIM_ListenerDestinationCIMXML Class introduction Instances of ListenerDestinationCIMXML represent portals to clients interested in receiving indications from a SMI agent. Clients are responsible for creating an instance of ListenerDestinationCIMXML using the intrinsic instance function createInstance(), and removing it when no longer interested in listening for indications using intrinsic instance function deleteInstance(). According to the rules of Indication Profile v1.4: 1. 2. 3.
Class keys/properties Property Name Description Comments Name The provider may use what the client passes, as long as the name is unique among ListenerDestinationCIMXML instances in the CIM agent's Interop and the vendor namespace. Alternatively, the provider may ignore this key, and choose its own a unique ID. The label by which the object is known. This value may be specified by the SMI client.
IndicationFilter instances are uniquely identified by four keys: Name, SystemCreationClassName, SystemName, and CreationClassName. Clients searching for an existing IndicationFilter instance should examine the Query, QueryLanguage, and SourceNamespace properties of each IndicationFilter instance to discern an applicable filter before requesting the SMI agent create a new one.
should possess their own provider for IndicationSubscription. The provider however may or may not be compliant to Indication Profile v1.4. This section is a guide for the required elements of IndicationSubscription for the Indication Profile v1.4. If the target CIMOM does not support the required functionality the following may be required: 1. 2.
Property Name Description Comments Unit in seconds. RepeatNotificationInterval This property is mandatory if RepeatNotificationPolicy is 'Suppressed' or 'Delay'; optional otherwise. Mandatory if the RepeatNotificationPolicy is 'Suppress' or 'Delay' Unit in seconds. RepeatNotificationGap RepeatNotificationCount This property is mandatory if RepeatNotificationPolicy is 'Delay'; optional otherwise. This property is mandatory if RepeatNotificationPolicy is 'Delay'; optional otherwise.
Property Name Description Comments The model path of the SourceInstance created. SourceInstanceModelPath The exact format of this string is defined in the DMTF CIM Architecture Specification (DSP0004) Section 5.3 "Naming CIM Objects." The model path of the SourceInstance. Some CIMOM implementations provide a function or paradigm for adding this string property. IndicationTime The time the indication was generated by the provider. The time and date of creation of the Indication.
Property Name Description Comments The model path of the SourceInstance created. SourceInstanceModelPath The exact format of this string is defined in the DMTF CIM Architecture Specification (DSP0004) Section 5.3 "Naming CIM Objects." The Model Path of the SourceInstance. Some CIMOM implementations provide a function or paradigm for adding this string property. IndicationTime The time the indication was generated by the provider. The time and date of creation of the Indication.
Class keys/properties Property Name SourceInstance Description Comments A string representation of the new instance managed by the provider A copy of the instance that changed to generate the indication. SourceInstance contains the current values of the properties selected by the IndicationFilter's Query. A string representation of the changed instance with 'old' property values.
CIM_AlertIndication Class introduction This indication is used to convey HP messages, (for example, standard messages) and will use the HP Message Catalog. This indication represents the crossing of storage pool capacity falling below the allowed threshold for a storage pool. This provider will watch for pool capacity alerts from the VSM and propagate these alerts to the CIMOM as alert indications. This provider must implement the indication provider interface.
Property Name Description Comments ProviderName Set to the name of the provider implementation as known to support. The name of the software element that is most related to this implementation. The root name of the provider which produced the alert indication. OwningEntity Set to the trademarked name of the owner of the message registry. If the message registry is produced by HP, then set the value to "HP". MessageID See message registry for value.
Indication Profile
14 Job Control Profile Profile introduction The storage virtualizer supports the SMI-S 1.4 Job Control Profile. Functional description The Job Control Profile provides management applications with the ability to subscribe for event notification on asynchronous tasks and monitor task progress and results. The profile enables: • Retrieving error conditions from jobs that have failed • Subscribing to job Indications related to the status of ongoing jobs that the client may or may not have started.
Object model diagram Object model diagram 286 Job Control Profile
Object model summary The extrinsic method is defined within a subclass of the "Service" element. The "ConcreteJob" element represents the long running operation resulting from the invocation of the extrinsic method. The JobGroup elements represent that JobGroup that collects the jobs.
Classes HPSVSP_MultiAppJobGroup : CIM_Job Class introduction This class represents task group created as a result of: • A client invoking a method on this server/agent • The server/agent invoking a method on itself This class represents the multi-service task group. The affected task elements are themselves ConcreteJob instances. These concrete jobs represent the jobs within the task group.
Class associations Association Name To Property HPSVSP_OwningJobElement : CIM_OwningJobElement HPSVSP_ReplicationService : SNIA_ReplicationService OwnedElement HPSVSP_AffectedJobElement : CIM_AffectedJobElement The element that is being affect by the job AffectingElement Methods RequestStateChange Method overview This method is used to control all the jobs associated to this task group. A change to the state of the group changes the state of all jobs associated to this task group.
This class represents the sync mirror task group. The affected task elements are themselves ConcreteJob instances. These concrete jobs represent the jobs within the task group. AffectedJobElement: • Associates this MultiApp task group to the children of concrete jobs. EnumerateInstances: • Produce the list of sync mirror task groups.
Class associations Association Name To Property HPSVSP_OwningJobElement : CIM_OwningJobElement HPSVSP_ReplicationService : SNIA_ReplicationService OwnedElement HPSVSP_AffectedJobElement : CIM_AffectedJobElement The element that is being affect by the job. AffectingElement Methods RequestStateChange Method overview This method is used to control all the jobs associated to this task group. A change to the state of the group changes the state of all jobs associated to this task group.
This class represents the multiservice task. The affected task elements are elements on which the task is acting. EnumerateInstances: Produce the list of multi-service jobs. GetInstance: Fetch the task. DeleteInstance: Delete the instance. Indications • Name: Job Progress Report • Filter: SELECT * FROM CIM_InstModification WHERE SourceInstance ISA CIM_ConcreteJob AND SourceInstance.CIM_ConcreteJob::PercentComplete <> PreviousInstance.
Property Name Description Comments • 2 "OK" • 3 "Degraded" • 4 "Stressed" uint16[] OperationalStatus • 6 "Error" • 8 "Starting" • 10 "Stopped" • 14 "Aborted" • If Status == 1 "eMultiAppJobInit" then set JobState = 3 "Starting" • If Status == 1 "eMultiAppJobNormal" then set JobState = 4 "Running" uint16 JobState • If Status == 2 "eMultiAppJobPaused" then set JobState = 5 "Suspended" • If Status == 3 "eMultiAppJobDelete" then set JobState = 8 "Terminated" • If Status == 5 "eMultiAppJobFailed" then set J
Methods RequestStateChange Method overview This method is used to control all the tasks associated to the task group.
Indications • Name: Job Progress Report • Filter: SELECT * FROM CIM_InstModification WHERE SourceInstance ISA CIM_ConcreteJob AND SourceInstance.CIM_ConcreteJob::PercentComplete <> PreviousInstance.CIM_ConcreteJob::PercentComplete • Description: Job PercentComplete has changed. • Name: Job Completed Successfully • Filter: SELECT * FROM CIM_InstModification WHERE SourceInstance ISA CIM_ConcreteJob AND ANY SourceInstance.CIM_ConcreteJob::OperationalStatus[*] = 17 AND ANY SourceInstance.
Property Name Description Comments boolean DeleteOnCompletion Set value to TRUE The VSM implementation deletes jobs on its own. The client may delete the task. Set value to 00000000000000.000000:000 The length of time that the job instance is retained after it has finished executing. The TimeBeforeRemoval should be five minutes, but that depends on the support provided by VSM.
HPSVSP_MethodResult : CIM_MethodResult Class introduction An instance of this class shall be created and enumerated for each instance of a subclass of CIM_ConcreteJob created as a result of an extrinsic method invocation. Instances of this class shall be deleted when the associated job instance is deleted.
Class keys/properties Property Name Description Comments • Set to the name of the extrinsic method being invoked in the form .. string MethodName • For every job that can be created, there shall be a service and method defined the describes the job and its parameters. The name of the method invoked. • See the introduction for this class.
15 Physical package profile Profile introduction The VSM server supports the Physical Package in the manner specified by SMI-S 1.4 Physical Package. This profile also supports the SMI-S 1.4 Software profile. The following profiles are related to this one: • Profile does not define related profiles Functional description The Physical Package models information for the physical packages that make up a storage system. It also models product asset information for those packages.
Object model diagram Object model summary The ComputerSystems referenced in this profile. HPSVSP_StorageAppliance is defined in the Storage Virtualizer Profile. The remaining ComputerSystems are defined in the Multiple Computer System Profile. • • • • HPSVSP_StorageAppliance HPSVSP_StorageVirtualizationServer HPSVSP_StorageVirtualizationDatamover HPSVSP_StorageVirtualizationDataPathModule The ComputerSystemPackage Association defines the physical packages that make up a ComputerSystem.
• HPSVSP_ServerSystemPackage • HPSVSP_DataMoverSystemPackage • HPSVSP_DPMSystemPackage The ProductPhysicalComponent Association defines the physical packages that are part of a product. There are four classes that represent this association: • • • • HPSVSP_AppliancePhysicalComponent HPSVSP_ServerPhysicalComponent HPSVSP_DataMoverPhysicalComponent HPSVSP_DPMPhysicalComponent The ProductParentChild association establishes the relationship between all products that make up the main server product.
Class keys/properties Property Name Description Comments CreationClassName HPSVSP_StorageAppliancePackage Name of the class used to create instances. Tag The name of this SVSP domain (HPSVSP_StorageAppliance.
Class associations Association Name To Property HPSVSP_AppliancePhysical Component : CIM_ProductPhysicalComponent HPSVSP_StorageAppliancePackage : CIM_PhysicalPackage GroupComponent HPSVSP_ServerProductChild : CIM_ProductParentChild HPSVSP_StorageServerProduct : CIM_Product Parent HPSVSP_DataMoverProductChild : CIM_ProductParentChild HPSVSP_StorageDataMoverProduct : CIM_Product Parent HPSVSP_DPMProductChild : CIM_ProductParentChild HPSVSP_StorageDPMProduct : CIM_Product Parent HPSVSP_StorageA
Class keys/properties Property Name Description Comments CreationClassName HPSVSP_StorageServerPackage Name of the class used to create instances Tag Unique identifier Manufacturer HPSVSP Manufacturer of the product Model Storage:Server Common name Class associations Association Name To Property HPSVSP_ServerSystemPackage : CIM_ComputerSystemPackaged HPSVSP_StorageVirtualizationServer : CIM_ComputerSystem Antecedent HPSVSP_ServerPhysicalComponent : CIM_ProductPhysicalComponent HPSVSP_St
Class associations Association Name To Property HPSVSP_ServerPhysicalComponent : CIM_ProductPhysicalComponent HPSVSP_StorageServerPackage : CIM_PhysicalPackage GroupComponent HPSVSP_ServerProductChild : CIM_ProductParentChild¯ HPSVSP_StorageApplianceProduct : CIM_Product Child HPSVSP_StorageDataMoverPackage : CIM_PhysicalPackage Class introduction HPSVSP_StorageDataMoverPackage represents the physical containment of the HPSVSP_StorageVirtualizationDataMover ComputerSystems.
Class keys/properties Property Name Description Comments Name HPSVSP_StorageDataMoverProduct Common name IdentifyingNumber Product identification Vendor HPSVSP Product vendor identification Version Product version information ElementName Storage:DataMover User-friendly name Class associations Association Name To Property HPSVSP_DataMoverPhysicalComponent : CIM_ProductPhysicalComponent HPSVSP_StorageDataMoverPackage : CIM_PhysicalPackagei GroupComponent HPSVSP_DataMoverProductChild : CI
Class associations Association Name To Property HPSVSP_DPMSystemPackage : CIM_ComputerSystemPackage HPSVSP_StorageVirtualizationDataPathModule : CIM_ComputerSystem Antecedent HPSVSP_DPMPhysicalComponent : CIM_ProductPhysicalComponent HPSVSP_StorageDPMProduct : CIM_Product PartComponent HPSVSP_StorageDPMProduct : CIM_Product Class introduction HPSVSP_Storage_DPMProduct aggregates the PhysicalElements that make up the HPSVSP_StorageVirtualizationDataPathModule ComputerSystems as a product unit.
Physical package profile
16 Profile Registration Profile Profile introduction The Storage Appliance Provider supports the SMI-S 1.4 Profile Registration Profile as it applies to the registration of the Virtualizer Profile and associated subprofiles. Functional description The Profile Registration Profile models the registration the top-level Virtualizer Profile and its associated subprofiles. This profile models the association of these profiles to the CIM Service and to the HPSVSP_StorageAppliance instance.
Object model summary Each class in the Profile Registration Profile is subclassed to a vendor-unique extension. These extension classes are limited to a trivial extension (for example., name change only; no added attributes or methods). Classes SoftwareIdentity (HPSVSP_ProviderSoftwareIdentity) The classes associated with the Profile Registration Profile are presented in the instance diagram below. Class introduction A single instance of HPSVSP__ProviderSoftwareIdentity is instantiated.
Property Name Description Comments RegisteredOrganization 11 - SNIA The organization that defines this profile. RegisteredName "Virtualizer" The name of this registered profile. RegisteredVersion "1.4.0" The version of this profile. AdvertisedTypes 3 - SLP Signifies the advertisement for the profile information.
RegisteredSubProfile (HPSVSP_RegisteredSubProfile) Class introduction Class keys/properties Property Name Description Comments InstanceID “HPSVSP:" + RegisteredName + "_" + RegisteredVersion.5.4.31 Unique identifier within the scope of the instantiating Namespace. RegisteredOrganization 11 - SNIA The organization that defines this profile. RegisteredNameG "Job Control" The name of this registered profile. RegisteredVersion "1.3.0" The version of this profile.4.
Property Name Description Comments RegisteredName "Extent Composition" The name of this registered profile RegisteredVersion "1.2.0" The version of this profile AdvertisedTypes 2 - Not Advertised Signifies the advertisement for the profile information.
RegisteredSubProfile () Class introduction A single instance of HPSVSP_RegisteredSubProfile is enumerated for the Indications subprofile. Class keys/properties Property Name Description Comments InstanceID “HPSVSP: + RegisteredName + "_" + RegisteredVersion" Unique identifier within the scope of the instantiating Namespace. RegisteredOrganization 11 - SNIA The organization that defines this profile. RegisteredName "Indications" The name of this registered profile. RegisteredVersion "1.4.
Property Name Description Comments AdvertisedTypes 2 - Not Advertised Signifies the advertisement for the profile information.
RegisteredSubProfile (HPSVSP_RegisteredSubProfile) Class introduction A single instance of HPSVSP_RegisteredSubProfile is enumerated for the Storage Server Asymmetry subprofile. Class keys/properties Property Name Description Comments InstanceID HPSVSP + RegisteredName + "_" + RegisteredVersion” Unique identifier within the scope of the instantiating Namespace. RegisteredOrganization 11 - SNIA The organization that defines this profile.
Property Name Description Comments RegisteredOrganization 11 - SNIA The organization that defines this profile. RegisteredName "Masking and Mapping" The name of this registered profile. RegisteredVersion "1.4.0" The version of this profile. AdvertisedTypes 2 - Not Advertised Signifies the advertisement for the profile information.
RegisteredSubProfile (HPSVSP_RegisteredSubProfile) Class introduction A single instance of HPSVSP_RegisteredSubProfile is enumerated for the Multiple Computer System subprofile. Class keys/properties Property Name Description Comments InstanceID HPSVSP + RegisteredName + "_" + RegisteredVersion” Unique identifier within the scope of the instantiating Namespace. RegisteredOrganization 11 - SNIA The organization that defines this profile.
Property Name Description Comments RegisteredName "Cascading" The name of this registered profile. RegisteredVersion "1.3.0" The version of this profile. AdvertisedTypes 2 - Not Advertised Signifies the advertisement for the profile information.
Profile Registration Profile
17 Support and other resources Contacting HP For worldwide technical support information, see the HP support website: http://www.hp.
HP websites For additional information, see the following HP websites: • • • • • • http://www.hp.com http://www.hp.com/go/storage http://www.hp.com/go/svsp http://www.hp.com/support/manuals http://www.hp.com/go/sandesignguide http://www.hp.com/support/downloads Typographic conventions Table 1 Document conventions Convention Element Blue text: Table 1 Cross-reference links and e-mail addresses Blue, underlined text: http://www.hp.
IMPORTANT: Provides clarifying information or specific instructions. NOTE: Provides additional information. TIP: Provides helpful hints and shortcuts. HP product documentation survey Are you the person who installs, maintains, or uses this HP storage product? If so, we would like to know more about your experience using the product documentation. If not, please pass this notice to the person who is responsible for these activities.
Support and other resources