// Copyright (c) 2005 DMTF. All rights reserved. // Add VendorIdentifyingInfo // to RedundancySet // Add VendorIdentifyingInfo // to RedundancySet // Remove ExperimentalAdd UmlPackagePath // qualifier values to CIM Schema. // ================================================================== // CIM_RedundancySet // ================================================================== [Version ( "2.10.0" ), UMLPackagePath ( "CIM::Core::Redundancy" ), Description ( "A class derived from SystemSpecificCollection that is a " "special collection of ManagedElements. This collection " "indicates that the aggregated elements together provide " "redundancy, or that redundancy is provided via sparing. All " "elements collected in a RedundancySet SHOULD be instantiations " "of the same object class.")] class CIM_RedundancySet : CIM_SystemSpecificCollection { [Description ( "RedundancyStatus provides information on the state of the " "RedundancyGroup. 'Fully Redundant' (value=2) means that all " "of the configured redundancy is still available; 'Degraded " "Redundancy' (3) means that some configured elements are " "degraded, missing or failed but that the number of elements " "in the set is still greater than the minimum required " "('MinNumberNeeded'); 'Redundancy Lost' (4) means that " "sufficient configured elements are missing or failed that " "no redundancy is available and the next failure experienced " "will cause overall failure. 'Overall Failure' (5) means " "that there has been an overall failure of the " "RedundancySet."), ValueMap { "0", "1", "2", "3", "4", "5" }, Values { "Unknown", "DMTF Reserved", "Fully Redundant", "Degraded Redundancy", "Redundancy Lost", "Overall Failure" }, ModelCorrespondence { "CIM_RedundancySet.MinNumberNeeded" }] uint16 RedundancyStatus; [Description ( "TypeOfSet provides information on the type of redundancy. - " "N+1 (=2) indicates all members are active, are unaware and " "function independent of one another. However, there exist " "at least one extra member to achieve functionality. " "'Sparing' is implied (i.e. each member can be a spare for " "the other(s). An example of N+1 is a system that has 2 " "power supplies, but needs only 1 power supply to " "functioning properly. \n" "- Load Balanced (=3) indicates all members are active. " "However, there functionality is not independent of each " "other. Their functioning is determined by some sort of load " "balancing algrothim (implemented in hardware and/or " "software). 'Sparing' is implied (i.e. each member can be a " "spare for the other(s). \n" "- Sparing (=4) indicates that all members are active and " "are aware of each others. However, their functionality is " "independent until failover. Each member can be a spare for " "the other(s). \n" "- Limited Sparing (=5) indicates that all members are " "active, and they may or may not be aware of each and they " "are not spares for each other. Instead, their redundancy is " "indicated by the IsSpare relationship."), ValueMap { "0", "1", "2", "3", "4", "5", "..", "0x8000.." }, Values { "Unknown", "Other", "N+1", "Load Balanced", "Sparing", "Limited Sparing", "DMTF Reserved", "Vendor Reserved" }, ArrayType ( "Indexed" ), ModelCorrespondence { "CIM_RedundancySet.OtherTypeOfSet" }] uint16 TypeOfSet[]; [Description ( "MinNumberNeeded indicates the smallest number of elements " "that MUST be operational in order to function. For example, " "in an N+1 redundancy relationship, the MinNumberNeeded " "property is set equal to N. In a 'LimitedSparing' " "environment, this property is meaningless and SHOULD be set " "to zero."), MinValue ( 0 )] uint32 MinNumberNeeded; [Description ( "MaxNumberSupported indicates the largest number of elements " "that can participate in the RedundancySet. A value of 0 " "indicates there is no limit on the number of elements.")] uint32 MaxNumberSupported; [Description ( "This method forces a failover from one ManagedElement to " "another. There are two parameters to the Failover method. \n" "- FailoverFrom is a reference to an 'active' ManagedElement " "that will become inactive after the method. This element " "SHOULD be part of the RedundancySet via a " "MemberOfCollection relationship. \n" "- FailoverTo is a reference to the ManagedElement that will " "take over for the FailoverFrom element. This element SHOULD " "either be a member of the RedundancySet or be associated " "with the RedundancySet via an IsSpare relationship. \n" "\n" "Upon sucessful completion: \n" "- the FailoverTo element SHOULD be associated to the " "RedundancySet via MemberOfCollection. \n" "- the FailFrom element SHOULD either still be associated to " "the RedundandySet via MemberOfCollection with a " "OperationalStatus or EnableState that indicates it not " "active, or it SHOULD be associated to the 'Spared' " "collection via the MemberOfCollection association."), ValueMap { "0", "1", "2", "3", "4", "..", "32768..65535" }, Values { "Completed with No Error", "Not Supported", "Unknown/Unspecified Error", "Busy/In Use", "Paramter Error", "DMTF Reserved", "Vendor Reserved" }] uint32 Failover( [IN, Description ( "The primary ManagedSystemElement that will become " "inactive after the method.")] CIM_ManagedElement REF FailoverFrom, [IN, Description ( "The ManagedSystemElement that will take over from the " "primary MSE.")] CIM_ManagedElement REF FailoverTo); [Description ( "VendorIdentifyingInfo captures the vendor identifying data " "for the RedundancySet. One example is the product name for " "a cluster.")] string VendorIdentifyingInfo; [Description ( "When the corresponding array entry in TypeOfSet[] is " "'Other', this entry provides a string describing the type " "of set."), ArrayType ( "Indexed" ), ModelCorrespondence { "CIM_RedundancySet.TypeOfSet" }] string OtherTypeOfSet[]; [Write, Description ( "The current load balance algorithm. \n" "Least Blocks, Least IO, and Address Region are used in " "storage device path redundancy drivers to optimize load " "balancing by routing requests to a path with the least " "queued blocks or IO requests, or based on locality of " "reference. \n" "'Product Specific' indicates that the algorithm is " "optimized for a particular type of product. Information " "about that product SHOULD be provided in an associated " "CIM_Product instance."), ValueMap { "0", "1", "2", "3", "4", "5", "6", "7" }, Values { "Unknown", "Other", "No Load Balancing", "Round Robin", "Least Blocks", "Least IO", "Address Region", "Product Specific" }, ModelCorrespondence { "CIM_RedundancySet.OtherLoadBalanceAlgorithm" }] uint16 LoadBalanceAlgorithm = 2; [Write, Description ( "When LoadBalanceAlgorithm is Other, this property describes " "the algorithm."), ModelCorrespondence { "CIM_RedundancySet.LoadBalanceAlgorithm" }] string OtherLoadBalanceAlgorithm; };