// Copyright (c) 2011 DMTF. All rights reserved. [Version ( "2.29.0" ), UMLPackagePath ( "CIM::Device::StorageDevices" ), Description ( "A class derived from CIM_Service providing methods related to " "management of multiple paths to SCSI devices." )] class CIM_SCSIPathConfigurationService : CIM_Service { [Description ( "This method requests that the target change the access " "states of the requested SCSITargetPortGroups. This will " "have the effect of doing a failover or failback " "operation." ), ValueMap { "0", "1", "2", "3", "4", "5", "..", "4096", "4097", "4098", "4099", "..", "32768..65535" }, Values { "Success", "Not Supported", "Unknown", "Timeout", "Failed", "Invalid Parameter", "DMTF Reserved", "Unsupported AccessState", "Invalid SCSITargetPortGroup", "Unsupported AccessState combination", "Unsupported SCSITargetPortGroup combination", "Method Reserved", "Vendor Specific" }] uint32 SetTPGAccess( [IN, Description ( "A reference to an instances of a subclass of " "CIM_LogicalDevice representing the SCSI logical " "unit where the command will be sent." )] CIM_LogicalDevice REF LogicalUnit, [IN, Description ( "Array of references to instances of " "SCSITargetPortGroup. All the referenced " "TargetPortGroup instances must be part of the same " "target device." ), ArrayType ( "Indexed" ), ModelCorrespondence { "CIM_SCSITargetPortGroup" }] CIM_SCSITargetPortGroup REF TargetPortGroups[], [IN, Description ( "An array of desired access states. Each access " "state in this array is the desired access state " "for the SCSITargetPortGroup in the corresponding " "entry in the TargetPortGroups parameter. \n" "\n" "The Active value is not part of the SCSI " "Specification; it is a convenience for clients " "that are not sure whether to specify " "Active/Optimized of Active/Non-optimized. The " "instrumentation selects a value based on historic " "information, knowledge of the target " "configuration, or trial and error. \n" "\n" "Note that SCSITargetPortGroup.AccessState includes " "the value \'Transitioning\' that is excluded here " "- a caller cannot request transitioning, though it " "can be reported by a target device." ), ValueMap { "2", "3", "4", "5", "6" }, Values { "Active/Optimized", "Active/Non-optimized", "StandBy", "Unavailable", "Active" }, ArrayType ( "Indexed" ), ModelCorrespondence { "CIM_SCSITargetPortGroup.AccessState" }] uint16 AccessStates[]); [Description ( "This method requests that the target change the load " "balance algorithm for the referenced LogicalDevice " "instance." ), ValueMap { "0", "1", "2", "3", "4", "5", "..", "4096", "4097", "..", "32768..65535" }, Values { "Success", "Not Supported", "Unknown", "Timeout", "Failed", "Invalid Parameter", "DMTF Reserved", "Unsupported LogicalDevice", "Invalid LoadBalanceType", "Method Reserved", "Vendor Specific" }] uint32 SetLoadBalanceAlgorithm( [IN, Description ( "A reference to the LogicalDevice subclass instance " "with an LogicalIdentity to the load balance " "RedundancySet. If " "SCSIMultipathConfigurationCapabilities. " "CanLoadBalanceLUsIndependently is true, just the " "referenced logical unit is modified. Otherwise, " "all logical units sharing the target are modified." )] CIM_LogicalDevice REF LogicalDevice, [IN, Description ( "The desired load balance algorithm." ), ValueMap { "0", "1", "2", "3", "4", "5", "6" }, Values { "Unknown", "Other", "No Load Balancing", "Round Robin", "Least Blocks", "Least IO", "Product Specific" }] uint16 LoadBalanceAlgorithm, [IN, Description ( "When LoadBalanceAlgorithm is \'Other\', this " "parameter specifies a description of the load " "balancing algorithm. When LoadBalanceAlgorithm is " "\'Product Specific\', this property provides a " "string specifying the vendor/product/version of " "the ManagedElement." )] string OtherLoadBalanceAlgorithmDescription); [Description ( "This method allows an administrator to assign a logical " "unit to a target port group. At any time, each LU will " "typically be associated with two target port groups, one " "in active state and one in standby state. The result of " "this method will be that the LU associations change to a " "pair of target port groups. Only valid if the target " "device supports asymmetric access state and " "SCSIMultipathConfigurationCapabilities " "SupportsLuAssignment is set." ), ValueMap { "0", "1", "2", "3", "4", "5", "..", "32768..65535" }, Values { "Success", "Not Supported", "Unknown", "Timeout", "Failed", "Invalid Parameter", "DMTF Reserved", "Vendor Specific" }] uint32 AssignLogicalUnitToPortGroup( [IN, Description ( "A reference to an instance of a subclass of " "LogicalDevice representing a SCSI logical unit." )] CIM_LogicalDevice REF LogicalUnit, [IN, Description ( "A reference to a target port group. The Target " "Port Group should be in an active state." )] CIM_SCSITargetPortGroup REF TargetPortGroup); [Description ( "This method allows an administrator to temporarily " "disable load balancing for a specific logical unit. The " "path specified as a parameter will have its " "AdministrativeOverride property set to \'Overriding\' " "and all I/O to the logical unit will be directed to this " "path. All other paths to this logical unit will have " "AdministrativeOverride set to \'Overridden\'." ), ValueMap { "0", "1", "2", "3", "4", "5", "..", "32768..65535" }, Values { "Success", "Not Supported", "Unknown", "Timeout", "Failed", "Invalid Parameter", "DMTF Reserved", "Vendor Specific" }] uint32 SetOverridePath( [IN, Description ( "A reference to a SCSIInitiatorTargetLogicalUnitPath." )] CIM_SCSIInitiatorTargetLogicalUnitPath REF Path); [Description ( "This method clears an override path as set in " "SetOverridePath and load balancing is enabled. All paths " "to the logical unit specified as a parameter will have " "AdministrativeOverride property set to \'No override in " "effect\'." ), ValueMap { "0", "1", "2", "3", "4", "5", "..", "32768..65535" }, Values { "Success", "Not Supported", "Unknown", "Timeout", "Failed", "Invalid Parameter", "DMTF Reserved", "Vendor Specific" }] uint32 CancelOverridePath( [IN, Description ( "A reference to a SCSIInitiatorTargetLogicalUnitPath." )] CIM_LogicalDevice REF LogicalUnit); };