< Previous | Next > | |
Product: Storage Foundation Guides | |
Manual: Storage Foundation 4.1 Intelligent Storage Provisioning Administrator's Guide |
CapabilitiesA capability, as expressed in the ISP language, is a description of what a volume is capable of doing. Each template is associated with one or more capabilities so that ISP can choose those templates that are suitable for use in allocating storage to volumes. A capability is interpreted by ISP as a tag. The format of a typical capability definition is shown here: capability cap_name { extends capname1,capname2, ... description text descriptionid id display_name name display_name_id catalogid, index var varname1:type { defaultvalue value description description descriptionid catalogid, index } var varname2:type { defaultvalue value description text descriptionid catalogid, index } ... }; This definition has the following important components: cap_name Indicates the nature of the capability, for example, Reliable, Performant, Snapshot and EMCSnapshot. extends Indicates that the capability is derived from other named capabilities. See Inheritance of Capabilities for more information. description Describes a capability or one of its variable parameters in English. descriptionid References the message catalog where localized versions of the description may be found, and provides an index number for the description in the catalog. display_name Defines the English name of the capability that is displayed in the VEA. display_name_id References the message catalog where localized versions of the display name may be found, and provides an index number for the display name in the catalog. var Defines a variable that may be specified as a parameter and its value to a capability. A template can use the variables in its rules section to provide the requested capability. Permitted variable types are int or string. defaultvalue Defines the default value of a capability's parameter if no value is specified. For a formal definition of capability in the ISP language, see Capability. The following is a sample capability definition: capability DataMirroring { display_name "Data Mirroring" display_name_id "{b84f1c64-1dd1-11b2-8b42-080020feef8b}", 3 description "Volume has multiple copies of data." descriptionid "{b84f1c64-1dd1-11b2-8b42-080020feef8b}", 4 extends DataRedundancy var nmirs:int { display_name "Number of data copies" display_name_id "{b84f1c64-1dd1-11b2-8b42-080020feef8b}", 5 description "Specify the number of copies of data." descriptionid "{b84f1c64-1dd1-11b2-8b42-080020feef8b}", 6 defaultvalue 2 } }; Inheritance of CapabilitiesThe extends keyword in a capability definition allows a capability to inherit some of the properties of one or more base capabilities. This implies that such a derived capability has an "is a" relationship with these base capabilities. The following rules are applied by the inheritance mechanism:
The following sample capability definitions show how the DataMirrorStripe capability is derived from the more general DataMirroring and Striping capabilities: capability DataMirrorStripe { extends DataMirroring, Striping }; DataMirrorStripe also inherits the variables nmirs and ncols from the two capabilities that it extends. |
^ Return to Top | < Previous | Next > |
Product: Storage Foundation Guides | |
Manual: Storage Foundation 4.1 Intelligent Storage Provisioning Administrator's Guide | |
VERITAS Software Corporation
www.veritas.com |