(file) Return to Core_Redundancy.mof CVS log (file) (dir) Up to [Pegasus] / pegasus / Schemas / CIMPrelim291

  1 a.dunfey 1.1 // ===================================================================
  2              // Title:  Core Redundancy
  3              // $State: Preliminary $
  4              // $Date: 2005/01/05 00:54:00 $
  5              // $Source: /home/dmtf2/dotorg/var/cvs/repositories/dev/Schema/MOF/Core_Redundancy.mof,v $
  6              // $Revision: 1.14 $
  7              // ===================================================================
  8              //#pragma inLine ("Includes/copyright.inc")
  9              // Copyright 1998-2005 Distributed Management Task Force, Inc. (DMTF).
 10              // All rights reserved.
 11              // DMTF is a not-for-profit association of industry members dedicated
 12              // to promoting enterprise and systems management and interoperability.
 13              // DMTF specifications and documents may be reproduced for uses
 14              // consistent with this purpose by members and non-members,
 15              // provided that correct attribution is given.
 16              // As DMTF specifications may be revised from time to time,
 17              // the particular version and release date should always be noted.
 18              // 
 19              // Implementation of certain elements of this standard or proposed
 20              // standard may be subject to third party patent rights, including
 21              // provisional patent rights (herein "patent rights"). DMTF makes
 22 a.dunfey 1.1 // no representations to users of the standard as to the existence
 23              // of such rights, and is not responsible to recognize, disclose, or
 24              // identify any or all such third party patent right, owners or
 25              // claimants, nor for any incomplete or inaccurate identification or
 26              // disclosure of such rights, owners or claimants. DMTF shall have no
 27              // liability to any party, in any manner or circumstance, under any
 28              // legal theory whatsoever, for failure to recognize, disclose, or
 29              // identify any such third party patent rights, or for such party's
 30              // reliance on the standard or incorporation thereof in its product,
 31              // protocols or testing procedures. DMTF shall have no liability to
 32              // any party implementing such standard, whether such implementation
 33              // is foreseeable or not, nor to any patent owner or claimant, and shall
 34              // have no liability or responsibility for costs or losses incurred if
 35              // a standard is withdrawn or modified after publication, and shall be
 36              // indemnified and held harmless by any party implementing the
 37              // standard from any and all claims of infringement by a patent owner
 38              // for such implementations.
 39              // 
 40              // For information about patents held by third-parties which have
 41              // notified the DMTF that, in their opinion, such patent may relate to
 42              // or impact implementations of DMTF standards, visit
 43 a.dunfey 1.1 // http://www.dmtf.org/about/policies/disclosures.php.
 44              //#pragma inLine
 45              // ===================================================================
 46              // Description: The Core Model defines basic management concepts.
 47              //              This file defines the concepts and classes to support
 48              //              Redundancy.
 49              // 
 50              //              The object classes below are listed in an order that
 51              //              avoids forward references. Required objects, defined
 52              //              by other working groups, are omitted.
 53              // ==================================================================
 54              // Change Log for v2.9 Preliminary
 55              // CR1291 - Add VendorIdentifyingInfo to RedundancySet
 56              // CR1209 - Introduce RedundancySet model to fix and replace
 57              //          the RedundancyGroup mode
 58              // CR1428 - SNIA review tweaks to RedundancySet
 59              // 
 60              // Change Log for v2.8 Final
 61              // CR1210 - Removal of experimental Qualifiers for core.
 62              // CR1223 - SysDev Omnibus CR - Minor MOF corrections.
 63              // 
 64 a.dunfey 1.1 // Change Log for v2.8 Preliminary
 65              // CR1019 - CIM Versioning for 2.8 Preliminary
 66              // CR1071 - Add RedundancySet, SparedSet, IsSpare, StorageRedundancySet,
 67              //          and ExtraCapacitySet.
 68              // 
 69              // Change Log for v2.7.1
 70              //       - Remove aggregate qualifier from the PartComponent of
 71              //         RedundancyComponent.
 72              // 
 73              // Change Log for v2.7 Final
 74              // CR940 - Fix Value/ValueMap mismatch in StorageRedundancySet.
 75              //         TypeOfAlgorithm
 76              // CR968 - Keep RedundancySet, SparedSet, IsSpare, StorageRedundancySet,
 77              //         and ExtraCapacitySet experimental for 2.8
 78              // 
 79              // Change Log for v2.7
 80              // CR722 - Update description for StorageRedundancyGroup
 81              // CR752 - Add RedundancySet, SparedSet, IsSpare, StorageRedundancySet,
 82              //         and ExtraCapacitySet
 83              //       - Update the description for RedundancyGroup
 84              // ==================================================================
 85 a.dunfey 1.1 
 86              #pragma locale ("en_US")
 87              
 88              // ===================================================================
 89              // RedundancySet
 90              // ===================================================================
 91                 [Experimental, Version ( "2.8.1000" ), Description (
 92                     "A class derived from SystemSpecificCollection that is a "
 93                     "special collection of ManagedElements. This collection "
 94                     "indicates that the aggregated elements together provide "
 95                     "redundancy, or that redundancy is provided via sparing. All "
 96                     "elements collected in a RedundancySet SHOULD be instantiations "
 97                     "of the same object class.")]
 98              class CIM_RedundancySet : CIM_SystemSpecificCollection {
 99              
100                    [Description (
101                        "RedundancyStatus provides information on the state of the "
102                        "RedundancySet. \n"
103                        "- Redundant (=2) means that there is no single point of "
104                        "failure. It is possible that some elements in the set have "
105                        "failed leaving greater than the minimum required "
106 a.dunfey 1.1           "('MinNumberNeeded' ) to have Redundancy. This 'Partial "
107                        "Redundancy' can be determined by evaluating the number of "
108                        "failed members in the set. When calculating this number, "
109                        "failed members with a Spared relationship SHOULD NOT be "
110                        "included as each has another member that was added to the "
111                        "set when it failed. \n"
112                        "- Redundancy Lost (=3) means that a single point of failure "
113                        "exists. It is possible that some aspects are redundant."), 
114                     ValueMap { "0", "1", "2", "3", "..", "0x8000.." }, 
115                     Values { "Unknown", "Other", "Redundant", "Redundancy Lost",
116                        "DMTF Reserved", "Vendor Reserved" }, 
117                     ModelCorrespondence { "CIM_RedundancySet.MinNumberNeeded" }]
118                 uint16 RedundancyStatus;
119              
120                    [Description (
121                        "TypeOfSet provides information on the type of redundancy. - "
122                        "N+1 (=2) indicates all members are active, are unaware and "
123                        "function independent of one another. However, there exist "
124                        "at least one extra member to achieve functionality. "
125                        "'Sparing' is implied (i.e. each member can be a spare for "
126                        "the other(s). An example of N+1 is a system that has 2 "
127 a.dunfey 1.1           "power supplies, but needs only 1 power supply to "
128                        "functioning properly. \n"
129                        "- Load Balanced (=3) indicates all members are active. "
130                        "However, there functionality is not independent of each "
131                        "other. Their functioning is determined by some sort of load "
132                        "balancing algrothim (implemented in hardware and/or "
133                        "software). 'Sparing' is implied (i.e. each member can be a "
134                        "spare for the other(s). \n"
135                        "- Sparing (=4) indicates that all members are active and "
136                        "are aware of each others. However, their functionality is "
137                        "independent until failover. Each member can be a spare for "
138                        "the other(s). \n"
139                        "- Limited Sparing (=5) indicates that all members are "
140                        "active, and they may or may not be aware of each and they "
141                        "are not spares for each other. Instead, their redundancy is "
142                        "indicated by the IsSpare relationship."), 
143                     ValueMap { "0", "1", "2", "3", "4", "5", "..", "0x8000.." }, 
144                     Values { "Unknown", "Other", "N+1", "Load Balanced", "Sparing",
145                        "Limited Sparing", "DMTF Reserved", "Vendor Reserved" },
146                     ArrayType ( "Indexed" ), 
147                     ModelCorrespondence { "CIM_RedundancySet.OtherTypeOfSet" }]
148 a.dunfey 1.1    uint16 TypeOfSet[];
149              
150                    [Description (
151                        "MinNumberNeeded indicates the smallest number of elements "
152                        "that MUST be operational in order to function. For example, "
153                        "in an N+1 redundancy relationship, the MinNumberNeeded "
154                        "property is set equal to N. In a 'LimitedSparing' "
155                        "environment, this property is meaningless and SHOULD be set "
156                        "to zero."), 
157                     MinValue ( 0 )]
158                 uint32 MinNumberNeeded;
159              
160                    [Description (
161                        "MaxNumberSupported indicates the largest number of elements "
162                        "that can participate in the RedundancySet. A value of 0 "
163                        "indicates there is no limit on the number of elements.")]
164                 uint32 MaxNumberSupported;
165              
166                    [Description (
167                        "This method forces a failover from one ManagedElement to "
168                        "another. There are two parameters to the Failover method. \n"
169 a.dunfey 1.1           "- FailoverFrom is a reference to an 'active' ManagedElement "
170                        "that will become inactive after the method. This element "
171                        "SHOULD be part of the RedundancySet via a "
172                        "MemberOfCollection relationship. \n"
173                        "- FailoverTo is a reference to the ManagedElement that will "
174                        "take over for the FailoverFrom element. This element SHOULD "
175                        "either be a member of the RedundancySet or be associated "
176                        "with the RedundancySet via an IsSpare relationship. \n"
177                        "\n"
178                        "Upon sucessful completion: \n"
179                        "- the FailoverTo element SHOULD be associated to the "
180                        "RedundancySet via MemberOfCollection. \n"
181                        "- the FailFrom element SHOULD either still be associated to "
182                        "the RedundandySet via MemberOfCollection with a "
183                        "OperationalStatus or EnableState that indicates it not "
184                        "active, or it SHOULD be associated to the 'Spared' "
185                        "collection via the MemberOfCollection association."), 
186                     ValueMap { "0", "1", "2", "3", "4", "..", "32768..65535" }, 
187                     Values { "Completed with No Error", "Not Supported",
188                        "Unknown/Unspecified Error", "Busy/In Use", "Paramter Error",
189                        "DMTF Reserved", "Vendor Reserved" }]
190 a.dunfey 1.1    uint32 Failover( 
191                       [IN, Description (
192                           "The primary ManagedSystemElement that will become "
193                           "inactive after the method.")]
194                    CIM_ManagedElement REF FailoverFrom, 
195                       [IN, Description (
196                           "The ManagedSystemElement that will take over from the "
197                           "primary MSE.")]
198                    CIM_ManagedElement REF FailoverTo); 
199              
200                    [Description (
201                        "VendorIdentifyingInfo captures the vendor identifying data "
202                        "for the RedundancySet. One example is the product name for "
203                        "a cluster.")]
204                 string VendorIdentifyingInfo;
205              
206                    [Description (
207                        "When the corresponding array entry in TypeOfSet[] is "
208                        "'Other', this entry provides a string describing the type "
209                        "of set."), 
210                     ArrayType ( "Indexed" ), 
211 a.dunfey 1.1        ModelCorrespondence { "CIM_RedundancySet.TypeOfSet" }]
212                 string OtherTypeOfSet[];
213              
214                    [Write, Description (
215                        "The current load balance algorithm. \n"
216                        "Least Blocks, Least IO, and Address Region are used in "
217                        "storage device path redundancy drivers to optimize load "
218                        "balancing by routing requests to a path with the least "
219                        "queued blocks or IO requests, or based on locality of "
220                        "reference. \n"
221                        "'Product Specific' indicates that the algorithm is "
222                        "optimized for a particular type of product. Information "
223                        "about that product SHOULD be provided in an associated "
224                        "CIM_Product instance."), 
225                     ValueMap { "0", "1", "2", "3", "4", "5", "6", "7" }, 
226                     Values { "Unknown", "Other", "No Load Balancing", "Round Robin",
227                        "Least Blocks", "Least IO", "Address Region",
228                        "Product Specific" }, 
229                     ModelCorrespondence { 
230                        "CIM_RedundancySet.OtherLoadBalanceAlgorithm" }]
231                 uint16 LoadBalanceAlgorithm = 2;
232 a.dunfey 1.1 
233                    [Write, Description (
234                        "When LoadBalanceAlgorithm is Other, this property describes "
235                        "the algorithm."), 
236                     ModelCorrespondence { "CIM_RedundancySet.LoadBalanceAlgorithm" }]
237                 string OtherLoadBalanceAlgorithm;
238              };
239              
240              // ===================================================================
241              // StorageRedundancySet
242              // ===================================================================
243                 [Experimental, Version ( "2.8.1000" ), Description (
244                     "A class derived from RedundancySet describing storage-related "
245                     "redundancy information. StorageRedundancySets are used to "
246                     "protect user data. They aggregate one or more underlying "
247                     "StorageExtents, associated via MemberOfCollection, and produce "
248                     "one or more higher-level Extents. The Extents are related to "
249                     "each other via a BasedOn association. And, the higher level "
250                     "Extent is related to the StorageRedundancy Set via the "
251                     "LogicalIdentity association. \n"
252                     "Note that StorageRedundancySets may overlap in their "
253 a.dunfey 1.1        "aggregation of members. If this occurs, the overlapping "
254                     "Extents SHOULD NOT contain any check data.")]
255              class CIM_StorageRedundancySet : CIM_RedundancySet {
256              
257                    [Description (
258                        "TypeOfAlgorithm specifies the algorithm used for storage "
259                        "data redundancy and reconstruction. For example, 'P+Q' (=5) "
260                        "or 'P+S' (=7) may be specified."), 
261                     ValueMap { "0", "1", "3", "4", "5", "6", "7" }, 
262                     Values { "Unknown", "Other", "Copy", "XOR", "P+Q", "S", "P+S" }, 
263                     MappingStrings { "MIF.DMTF|Redundancy Group|001.2" }, 
264                     ModelCorrespondence { "CIM_StorageRedundancySet.OtherAlgorithm" 
265                        }]
266                 uint16 TypeOfAlgorithm;
267              
268                    [Description (
269                        "A string describing the redundancy algorithm when the "
270                        "TypeOfAlgorithm is set to 1 'Other'."), 
271                     ModelCorrespondence { "CIM_StorageRedundancySet.TypeOfAlgorithm" 
272                        }]
273                 string OtherAlgorithm;
274 a.dunfey 1.1 };
275              
276              // ===================================================================
277              // IsSpare
278              // ===================================================================
279                 [Association, Experimental, Version ( "2.8.1000" ), Description (
280                     "The IsSpare association indicates an element that can spare or "
281                     "replace any of the elements in the referenced RedundancySet. "
282                     "If the 'spare' is itself a Collection, this indicates that "
283                     "each of the 'spare' members can replace any of the elements in "
284                     "the RedundancySet. In the case of a collection all of the "
285                     "values in the properties of this association MUST apply to all "
286                     "members of the Collection. \n"
287                     "In the case of a collection, all of the values in the "
288                     "properties of this association (such as FailoverSupported) "
289                     "MUST apply to all members. If this is not true, then the "
290                     "Collection SHOULD be broken down into smaller sets (and the "
291                     "IsSpare association defined for each of these smallar sets), "
292                     "such that the properties of this association apply to all "
293                     "collected members.")]
294              class CIM_IsSpare : CIM_Dependency {
295 a.dunfey 1.1 
296                    [Override ( "Antecedent" ), Description (
297                        "A ManagedElement or Collection of elements acting as a "
298                        "spare.")]
299                 CIM_ManagedElement REF Antecedent;
300              
301                    [Override ( "Dependent" ), Description (
302                        "The set of elements that ARE spared.")]
303                 CIM_RedundancySet REF Dependent;
304              
305                    [Description (
306                        "Indicates theat state of the 'spare'. \n"
307                        "- Hot Standby. The element is available 'immediately' to "
308                        "become a functioning member of the set. Such an element is "
309                        "powered on and has been initialized for it's role as a "
310                        "spare. \n"
311                        "- Cold Standby. The element is not available to join the "
312                        "set without action to prepare it."), 
313                     ValueMap { "0", "2", "3" }, 
314                     Values { "Unknown", "Hot Standby", "Cold Standby" }, 
315                     MappingStrings { "MOF.DMTF|CIM_IsSpare.HotStandby|2.7.1000" }]
316 a.dunfey 1.1    uint8 SpareStatus;
317              
318                    [Description (
319                        "Indicates whether or not the failover to the spare is a "
320                        "manual or automatic."), 
321                     ValueMap { "0", "2", "3", "4" }, 
322                     Values { "Unknown", "Automatic", "Manual",
323                        "Both Manual and Automatic" }]
324                 uint8 FailoverSupported;
325              };
326              
327              // ===================================================================
328              // Spared
329              // ===================================================================
330                 [Association, Experimental, Version ( "2.8.1000" ), Description (
331                     "The Spared association indicates an element that is acting as "
332                     "a replacement for another element. If the Dependent references "
333                     "a Collection, this indicates that 'spared' element is a member "
334                     "of that collection and the actual mapping between the spare "
335                     "and the spared is un-important.")]
336              class CIM_Spared : CIM_Dependency {
337 a.dunfey 1.1 
338                    [Override ( "Antecedent" ), Description (
339                        "A ManagedElement that has replaced/spared another the "
340                        "reference Dependent element.")]
341                 CIM_ManagedElement REF Antecedent;
342              
343                    [Override ( "Dependent" ), Description (
344                        "The Element or Elements (in the case of a collection) that "
345                        "have been replaced/spared.")]
346                 CIM_ManagedElement REF Dependent;
347              };
348              
349              // ===================================================================
350              // RedundancyGroup
351              // ===================================================================
352                 [Deprecated { "CIM_RedundancySet" }, Version ( "2.8.1000" ), 
353                  Description (
354                     "A class derived from LogicalElement that is a special "
355                     "collection of ManagedSystemElements. This collection indicates "
356                     "that the aggregated components together provide redundancy. "
357                     "All elements aggregated in a RedundancyGroup should be "
358 a.dunfey 1.1        "instantiations of the same object class. \n"
359                     "The use of this class is being deprecated in lieu of using the "
360                     "RedundancySet class.")]
361              class CIM_RedundancyGroup : CIM_LogicalElement {
362              
363                    [Deprecated { "No Value" }, Key, Description (
364                        "CreationClassName indicates the name of the class or the "
365                        "subclass used in the creation of an instance. When used "
366                        "with the other key properties of this class, this property "
367                        "allows all instances of this class and its subclasses to be "
368                        "uniquely identified."), 
369                     MaxLen ( 256 )]
370                 string CreationClassName;
371              
372                    [Deprecated { "CIM_RedundancySet.InstanceID" }, Key,
373                        Override ( "Name" ), Description (
374                        "The RedundancyGroup Name serves as the key for the Group's "
375                        "instance in an enterprise environment."), 
376                     MaxLen ( 256 )]
377                 string Name;
378              
379 a.dunfey 1.1       [Deprecated { "CIM_RedundancySet.RedundancyStatus" }, 
380                     Description (
381                        "RedundancyStatus provides information on the state of the "
382                        "RedundancyGroup. \"Fully Redundant\" (value=2) means that "
383                        "all of the configured redundancy is still available; "
384                        "\"Degraded Redundancy\" (3) means that some failures have "
385                        "been experienced but some reduced amount of redundancy is "
386                        "still available; \"Redundancy Lost\" (4) means that a "
387                        "sufficient number of failures have been experienced such "
388                        "that no redundancy is available and the next failure "
389                        "experienced will cause overall failure. Also, the values, "
390                        "\"Other\" (1) and \"Unknown\" (0), are defined."), 
391                     ValueMap { "0", "1", "2", "3", "4" }, 
392                     Values { "Unknown", "Other", "Fully Redundant",
393                        "Degraded Redundancy", "Redundancy Lost" }]
394                 uint16 RedundancyStatus;
395              };
396              
397              
398              // ===================================================================
399              // RedundancyComponent
400 a.dunfey 1.1 // ===================================================================
401                 [Association, Deprecated { "CIM_MemberOfCollection" }, Aggregation,
402                  Version ( "2.8.1000" ), Description (
403                     "A RedundancyGroup aggregates Managed System Elements and "
404                     "indicates that these elements, taken together, provide "
405                     "redundancy. All elements aggregated in a RedundancyGroup "
406                     "should be instantiations of the same object class. \n"
407                     "The use of this class is being depreacted in lieu of using "
408                     "MemberOfCollection in conjunction with RedundancySet.")]
409              class CIM_RedundancyComponent : CIM_Component {
410              
411                    [Deprecated { "CIM_MemberOfCollection.Collection" }, Aggregate,
412                     Override ( "GroupComponent" ), Description (
413                        "The RedundancyComponent association indicates that 'this "
414                        "set of fans' or 'these physical extents' participate in a "
415                        "single RedundancyGroup.")]
416                 CIM_RedundancyGroup REF GroupComponent;
417              
418                    [Deprecated { "CIM_MemberOfCollection.Member" },
419                        Override ( "PartComponent" ), Description (
420                        "The component of the redundancy group.")]
421 a.dunfey 1.1    CIM_ManagedSystemElement REF PartComponent;
422              };
423              
424              
425              // ===================================================================
426              // SpareGroup
427              // ===================================================================
428                 [Deprecated { "CIM_RedundancySet" }, Version ( "2.8.1000" ), 
429                  Description (
430                     "A class derived from RedundancyGroup indicating that one or "
431                     "more of the aggregated elements can be spared. (The actual "
432                     "Spares are defined using the ActsAsSpare association.) An "
433                     "example is the use of redundant NICs in a ComputerSystem - "
434                     "where one NIC is primary and the other is Spare. The 'primary' "
435                     "NIC would be a member of the SpareGroup (associated using the "
436                     "RedundancyComponent class) and the 'other' NIC would be "
437                     "associated using the ActsAsSpare relationship. \n"
438                     "The use of the class is being deprecated in lieu of using the "
439                     "RedundancySet class.")]
440              class CIM_SpareGroup : CIM_RedundancyGroup {
441              
442 a.dunfey 1.1       [Deprecated { "CIM_RedundancySet.FailOver()" }, Description (
443                        "This method is forces a failover from one ManagedSystem "
444                        "Element to another. There are two parameters to the "
445                        "Failover method, FailoverFrom and FailoverTo. The "
446                        "FailoverFrom parameter is a reference to the primary "
447                        "ManagedSystemElement that will become inactive after the "
448                        "method. This Element should be associated with the "
449                        "SpareGroup through the RedundancyComponent relationship. "
450                        "The FailoverTo parameter is a reference to the "
451                        "ManagedSystemElement that will take over for the primary. "
452                        "This Element should be associated with the SpareGroup "
453                        "through the ActsAsSpare association. Once the failover has "
454                        "occurred, the SpareGroup and the Redundancy Component and "
455                        "ActsAsSpare associations will be updated with current "
456                        "status. For example, the ActsAsSpare association that "
457                        "contained the FailoverTo Element will be deleted and a new "
458                        "RedundancyComponent association instantiated in its place. "
459                        "The method should return 0 if successful, 1 if the request "
460                        "is not supported, and some other value if any other error "
461                        "occurred. In a subclass, the set of possible return codes "
462                        "could be specified, using a ValueMap qualifier on the "
463 a.dunfey 1.1           "method. The strings to which the ValueMap contents are "
464                        "'translated' may also be specified in the subclass as a "
465                        "Values array qualifier.")]
466                 uint32 Failover( 
467                       [IN, Description (
468                           "The primary ManagedSystemElement that will become "
469                           "inactive after the method.")]
470                    CIM_ManagedSystemElement REF FailoverFrom, 
471                       [IN, Description (
472                           "The ManagedSystemElement that will take over from the "
473                           "primary MSE.")]
474                    CIM_ManagedSystemElement REF FailoverTo); 
475              };
476              
477              
478              // ===================================================================
479              // ActsAsSpare
480              // ===================================================================
481                 [Association, Deprecated { "CIM_IsSpare" }, Version ( "2.8.1000" ), 
482                  Description (
483                     "The ActsAsSpare association indicates which elements can spare "
484 a.dunfey 1.1        "or replace the other aggregated elements. The fact that a "
485                     "spare can operate in \"hot standby\" mode is specified on an "
486                     "element by element basis. \n"
487                     "The use of this class is being deprecated in lieu of using the "
488                     "IsSpare relationship.")]
489              class CIM_ActsAsSpare {
490              
491                    [Deprecated { "CIM_IsSpare.Dependent" }, Key, Description (
492                        "The SpareGroup.")]
493                 CIM_SpareGroup REF Group;
494              
495                    [Deprecated { "CIM_IsSpare.Antecedent" }, Key, Description (
496                        "A ManagedSystemElement acting as a spare and participating "
497                        "in the SpareGroup.")]
498                 CIM_ManagedSystemElement REF Spare;
499              
500                    [Deprecated { "CIM_IsSpare.SpareStatus" }, Description (
501                        "HotStandby is a boolean indicating that the spare is "
502                        "operating as a hot standby.")]
503                 boolean HotStandby;
504              };
505 a.dunfey 1.1 
506              
507              // ===================================================================
508              // StorageRedundancyGroup
509              // ===================================================================
510                 [Deprecated { "CIM_StorageRedundancySet" }, Version ( "2.8.1000" ), 
511                  Description (
512                     "A class derived from RedundancyGroup containing mass "
513                     "storage-related redundancy information. StorageRedundancy "
514                     "Groups are used to protect user data. They act on one or more "
515                     "underlying StorageExtents, associated via "
516                     "ExtentRedundancyComponent and produce one or more protected "
517                     "StorageExtents that are associated to the underlying "
518                     "StorageExtents via ProtectedExtentBasedOn or "
519                     "CompositeExtentBasedOn. StorageRedundancyGroups may overlap. "
520                     "However, the underlying StorageExtents within the overlap "
521                     "should not contain any check data. \n"
522                     "The use of this class is being deprecated in lieu of using the "
523                     "StorageRedundancySet class.")]
524              class CIM_StorageRedundancyGroup : CIM_RedundancyGroup {
525              
526 a.dunfey 1.1       [Deprecated { "CIM_StorageRedundancySet.TypeOfAlgorithm" }, 
527                     Description (
528                        "The TypeOfAlgorithm specifies the algorithm used for data "
529                        "redundancy and reconstruction. For example, \"P+Q\" (value "
530                        "=5) or \"P+S\" (7) may be specified. The value of 0, is "
531                        "defined as \"None\" to indicate that data redundancy is not "
532                        "active. An inactive redundancy should only be instantiated "
533                        "if data striping or concatenation are active. These are "
534                        "indicated by the IsStriped or IsConcatentated boolean "
535                        "properties of this RedundancyGroup."), 
536                     ValueMap { "0", "1", "2", "3", "4", "5", "6", "7" }, 
537                     Values { "None", "Other", "Unknown", "Copy", "XOR", "P+Q", "S",
538                        "P+S" }, 
539                     MappingStrings { "MIF.DMTF|Redundancy Group|001.2" }]
540                 uint16 TypeOfAlgorithm;
541              
542                    [Deprecated { "No Value" }, Description (
543                        "StorageRedundancy provides additional information on the "
544                        "state of the RedundancyGroup, beyond the RedundancyStatus "
545                        "property. Information like \"Reconfig In Progress\" (value "
546                        "=1) or \"Redundancy Disabled\" can be specified using this "
547 a.dunfey 1.1           "property."), 
548                     ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8" }, 
549                     Values { "No Additional Status", "Reconfig In Progress",
550                        "Data Lost", "Not Currently Configured", "Protected Rebuild",
551                        "Redundancy Disabled", "Unprotected Rebuild",
552                        "Recalculating", "Verifying" }]
553                 uint16 StorageRedundancy;
554              
555                    [Deprecated { "CIM_CompositeExtent.ExtentStripeLength" }, 
556                     Description (
557                        "True indicates that the data is striped across the various "
558                        "StorageExtents in the Group.")]
559                 boolean IsStriped;
560              
561                    [Deprecated { "CIM_CompositeExtent.IsConcatenated" }, 
562                     Description (
563                        "True indicates that the data is concatenated across the "
564                        "various StorageExtents in the Group.")]
565                 boolean IsConcatenated;
566              };
567              
568 a.dunfey 1.1 // ===================================================================
569              // ExtraCapacityGroup
570              // ===================================================================
571                 [Deprecated { "CIM_RedundancySet" }, Version ( "2.8.1000" ), 
572                  Description (
573                     "A class derived from RedundancyGroup indicating that the "
574                     "aggregated elements have more capacity or capability than is "
575                     "needed. An example of this type of redundancy is the "
576                     "installation of N+1 power supplies or fans in a system. \n"
577                     "The use of this class is being deprecated in lieu of using "
578                     "RedundancySet.")]
579              class CIM_ExtraCapacityGroup : CIM_RedundancyGroup {
580              
581                    [Deprecated { "CIM_RedundancySet.MinNumberNeeded" }, 
582                     Description (
583                        "MinNumberNeeded indicates the smallest number of elements "
584                        "that must be operational in order to have redundancy. For "
585                        "example, in an N+1 redundancy relationship, the "
586                        "MinNumberNeeded property should be set equal to N.")]
587                 uint32 MinNumberNeeded;
588              
589 a.dunfey 1.1       [Deprecated { "CIM_RedundancySet.TypeOfSet" }, Description (
590                        "Boolean indicating whether load balancing is supported by "
591                        "the ExtraCapacityGroup.")]
592                 boolean LoadBalancedGroup;
593              };
594              
595              
596              // ===================================================================
597              // ExtentRedundancyComponent
598              // ===================================================================
599                 [Association, Deprecated { "CIM_MemberOfCollection" }, Aggregation,
600                  Version ( "2.8.1000" ), Description (
601                     "Describes the StorageExtents participating in a Storage "
602                     "RedundancyGroup. \n"
603                     "The use of this class is being deprecated in lieu of using "
604                     "MemberOfCollection in conjunction with StorageRedundancySet.")]
605              class CIM_ExtentRedundancyComponent : CIM_RedundancyComponent {
606              
607                    [Deprecated { "CIM_MemberOfCollection.Collection" }, Aggregate,
608                     Override ( "GroupComponent" ), Description (
609                        "The StorageRedundancyGroup.")]
610 a.dunfey 1.1    CIM_StorageRedundancyGroup REF GroupComponent;
611              
612                    [Deprecated { "CIM_MemberOfCollection.Member" },
613                        Override ( "PartComponent" ), Description (
614                        "The StorageExtent participating in the RedundancyGroup.")]
615                 CIM_StorageExtent REF PartComponent;
616              };
617              
618              
619              // ===================================================================
620              // end of file
621              // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2