APIs in Category: resourcepool
API version 3.8

 
resourcepool-add-member
resourcepool-create
resourcepool-destroy
resourcepool-get-defaults
resourcepool-list-info-iter-end
resourcepool-list-info-iter-next
resourcepool-list-info-iter-start
resourcepool-member-list-info-iter-end
resourcepool-member-list-info-iter-next
resourcepool-member-list-info-iter-start
resourcepool-modify
resourcepool-modify-member
resourcepool-remove-member
resourcepool-update-free-space-status
A resource pool typically describes physical resources such as spare disks, aggregates or storage systems which are used for provisioning.

When a resource pools contains a storage system, all aggregates and spare disks on the storage system are available for provisioning.

NetApp Manage ONTAP
 
resourcepool-add-member [top]

Add member -- storage system or aggregate -- to an existing resource pool.
Error Conditions:
  • EACCESSDENIED - When the user does not have DFM.Database.Write capability on the specified resource pool or DFM.Database.Read privilege on the object being added.
  • ERESOURCEPOOLDOESNOTEXIST - When the specified resource pool does not exist.
  • EOBJECTNOTFOUND - When the specified object of valid type to add is not found or object does not exist at all.
  • EINVALIDMEMBERTYPE - When an aggregate to add contains traditional volume or it is aggregate snapshot.
  • EOBJECTINANOTHERDYNAMICREFERENCE - When the specified object or its relative members, are already in another resource pool/storage set. Try again with move flag to move resources across resource pools. When used by storage set, you need to manually remove resource from storage set and add it to resource pool.
  • EOBJECTINDIRECTMEMOFANOTHERDYNAMICREF - Object being added to Resource pool is in another Resource pool and it's a indirect member of the Resource pool.
  • EOBJECTEXISTSINRESOURCEPOOL - When the specified object already exists in the resource pool.
  • EOBJECTAMBIGUOUS - When the specified object name is ambiguous to denote whether its storage system or aggregate. Try again with fully qualified name or object id.
  • EDATABASEERROR - On database error.
Input Name Range Type Description
member-name-or-id string
Name or identifier of the member to add to the resource pool. Possible values are name/id of storage system or aggregate. It should be a valid DFM object name or object id. A valid DFM object name should contain at least one non-numeric character. A valid DFM object id should be in the range of [1..2^31-1].
move-if-exists boolean
optional
If the object to add, or one or more of its contents, is already in a resource pool, this flag specifies that the object should be removed from the old dynamic reference and added to the resource pool. By default, the add operation fails if the object, or one of its contents, is already in a storage set or resource pool.
resource-tag resource-tag
optional
resource tag of the member which is set on the member.
resourcepool-name-or-id string
Name or identifier of the resource pool to extend. It should be a valid DFM object name or object id. A valid DFM object name should contain at least one non-numeric character. A valid DFM object id should be in the range of [1..2^31-1].
 Errno  Description
 EACCESSDENIED
 ERESOURCEPOOLDOESNOTEXIST
 EOBJECTNOTFOUND
 EOBJECTAMBIGUOUS
 EINVALIDMEMBERTYPE
 EOBJECTINANOTHERDYNAMICREFERENCE
 EOBJECTINDIRECTMEMOFANOTHERDYNAMICREF
 EOBJECTEXISTSINRESOURCEPOOL
 EDATABASEERROR

 
resourcepool-create [top]
Create a new, empty resource pool.
Error Conditions:
  • EINVALIDINPUT - When invalid name specified. A valid name is non empty and constitutes at least one non-numeric character.
  • ERESOURCEPOOLEXISTS - When the specified resource pool already exists.
  • EDATABASEERROR - On database error.
Input Name Range Type Description
resourcepool resourcepool-info
New information about a resource pool to modify. If any field is not specified, that field will not be changed.

Name field should be specified and others are optional. If the optional fields are specified, they would be set during creation itself.

 
Output Name Range Type Description
resourcepool-id integer
Identifier of the new resource pool. Its a valid DFM object id. A valid DFM object id would be in the range of [1..2^31-1].
 Errno  Description
 EINVALIDINPUT
 ERESOURCEPOOLEXISTS
 EDATABASEERROR

 
resourcepool-destroy [top]
Destroy a resource pool. If the resource pool is in use by a storage set or resource pool is not empty, the resource pool may only be destroyed by specifying the force flag.
Error Conditions:
  • EACCESSDENIED - When the user does not have DFM.Database.Delete capability on the specified resource pool.
  • ERESOURCEPOOLDOESNOTEXIST - When the specified resource pool does not exist.
  • ERESOURCEPOOLNOTEMPTY - When the specified resource pool is not empty. Try again with force flag.
  • ERESOURCEPOOLINUSE - When the specified resource pool is in use by a storage set. Try again with force flag.
  • EDATABASEERROR - On database error.
Input Name Range Type Description
force boolean
optional
If specified, allows destroying a resource pool that has members or in use by storage set.
resourcepool-name-or-id string
Name or identifier of resource pool to destroy. It should be a valid DFM object name or object id. A valid DFM object name should contain at least one non-numeric character. A valid DFM object id should be in the range of [1..2^31-1].
 Errno  Description
 EACCESSDENIED
 ERESOURCEPOOLDOESNOTEXIST
 ERESOURCEPOOLNOTEMPTY
 ERESOURCEPOOLINUSE
 EDATABASEERROR

 
resourcepool-get-defaults [top]
Get the default values of attributes defined by this ZAPI set.
Output Name Range Type Description
resourcepool-defaults resourcepool-defaults
The default values of the attributes defined by this ZAPI.

 
resourcepool-list-info-iter-end [top]
Ends iteration of resource pools.
Input Name Range Type Description
tag string
Tag from a previous resourcepool-list-info-iter-start.
 Errno  Description
 EINVALIDTAG

 
resourcepool-list-info-iter-next [top]
Get next records in the iteration started by resourcepool-list-info-iter-start.
Input Name Range Type Description
maximum integer
The maximum number of records to retrieve.
Range: [1..2^31-1]
tag string
Tag from a previous resourcepool-list-info-iter-start.
 
Output Name Range Type Description
records integer
The number of records actually returned. Value of 0 records indicates that end of records.
Range: [1..2^31-1]
resourcepools resourcepool-info[]
List of resource pools.
 Errno  Description
 EINVALIDTAG

 
resourcepool-list-info-iter-start [top]
Starts iteration to list resource pools.
Error Conditions:
  • EACCESSDENIED - When the user does not have DFM.Database.Read capability on the specified resource pools.
  • ERESOURCEPOOLDOESNOTEXIST - When the specified resource pool is not found in the database.
  • EDATABASEERROR - On database error.
Input Name Range Type Description
check-licenses license[]
optional
Filter for licensed services running on Data ONTAP. If this input is present, only resourepools containing atleast one aggregate hosted on a filer having these licenses will have resourcepool-is-provisionable flag set to TRUE.
dp-node-name string
optional
Applicable only if object-name-or-id specified is of type 'dataset'.
include-free-space boolean
optional
If this value is true, then free space information will be included with each resource pool. If this value is false or not specified, then no free space information is included.
object-name-or-id obj-name-or-id
optional
Name or identifier of a resource pool or group or dataset. If unspecified, all resource pools are listed.
resource-tag resource-tag
optional
If this input is present, only the resource pools having this tag or containing atleast one member having this tag will have resourcepool-is-provisionable flag set to TRUE.
storage-reliability storage-reliability
optional
If this input is present, only the resourcepools containing atleast one member having the required reliability will have resourcepool-is-provisionable flag set to TRUE.
 
Output Name Range Type Description
records integer
Number of items that have been saved for future retrieval with resourcepool-list-info-iter-next.
Range: [1..2^31-1]
tag string
Tag to be used in subsequent calls to resourcepool-list-info-iter-next.
 Errno  Description
 EACCESSDENIED
 EOBJECTNOTFOUND
 EDATABASEERROR

 
resourcepool-member-list-info-iter-end [top]
Ends iteration of resource pools.
Input Name Range Type Description
tag string
Tag from a previous resourcepool-member-list-info-iter-start.
 Errno  Description
 EINVALIDTAG

 
resourcepool-member-list-info-iter-next [top]
Get next records in the iteration started by resourcepool-member-list-info-iter-start.
Input Name Range Type Description
maximum integer
The maximum number of records to retrieve.
Range: [1..2^31-1]
tag string
Tag from a previous resourcepool-member-list-info-iter-start.
 
Output Name Range Type Description
records integer
The number of records actually returned. Value of 0 records indicates that end of records.
Range: [1..2^31-1]
resourcepool-members resourcepool-member-info[]
List of the members of the resource pool.
 Errno  Description
 EINVALIDTAG

 
resourcepool-member-list-info-iter-start [top]
Starts iteration to list members of specified resource pool.
Error Conditions:
  • EACCESSDENIED - When the user does not have DFM.Database.Read capability on the specified resource pools.
  • ERESOURCEPOOLDOESNOTEXIST - When the specified resource pool does not exist.
  • EDATABASEERROR - On database error.
Input Name Range Type Description
include-dataset-space-info boolean
optional
If true, space utilized by datasets on each aggregate is returned. Default value: false. This is input is ignored when run-provisioning-checks element is true.
include-indirect boolean
optional
If true, indirect members are included. By default they are not included.
member-type string
optional
Type of object to be returned. Possible values are 'filer' or 'aggregate'.
provision-member-request-info provision-member-request-info
optional
Information of a provisioning request.
provisioning-policy-name-or-id string
optional
Name or id of provisioning policy, this input ignored if run-provisioning-checks is false.
resourcepool-member-name-or-id string
optional
Name or id of resource pool member.
resourcepool-name-or-id string
Name or identifier of the resource pool to query. It should be a valid DFM object name or object id. A valid DFM object name should contain at least one non-numeric character. A valid DFM object id should be in the range of [1..2^31-1].
run-provisioning-checks boolean
optional
If true, provisioning related checks are run on all the members of the resource pool using the provisioning policy and provisioning request info specied as part of provisioning-policy-name-or-id and provisioning-member-request-info inputs elements.
 
Output Name Range Type Description
records integer
Number of items that have been saved for future retrieval with resourcepool-member-list-info-iter-next.
Range: [1..2^31-1]
tag string
Tag to be used in subsequent calls to resourcepool-member-list-info-iter-next.
 Errno  Description
 EACCESSDENIED
 ERESOURCEPOOLDOESNOTEXIST
 EDATABASEERROR

 
resourcepool-modify [top]
Modify a resource pool's information. If modifying of one property fails, nothing will be changed.
Error Conditions:
  • EACCESSDENIED - When the user does not have DFM.Database.Write capability on the specified resource pool.
  • EINVALIDINPUT - When invalid input specified. A resourcepool-name should be non empty and constitutes at least one non-numeric character.
    The resourcepool-contact value should be email address which does not have any white space.
  • ERESOURCEPOOLDOESNOTEXIST - When the specified resource pool does not exist.
  • ERESOURCEPOOLEXISTS - Already a resource pool exists with the new name.
  • EDATABASEERROR - On database error.
Input Name Range Type Description
resourcepool resourcepool-info
New information about a resource pool to modify. If any field is not specified, that field will not be changed. If none of the optional parameters are specified, then this API does nothing.
resourcepool-name-or-id string
Name or identifier of the resource pool to modify. It should be a valid DFM object name or object id. A valid DFM object name should contain at least one non-numeric character. A valid DFM object id should be in the range of [1..2^31-1].
 Errno  Description
 EACCESSDENIED
 EINVALIDINPUT
 ERESOURCEPOOLDOESNOTEXIST
 ERESOURCEPOOLEXISTS
 EDATABASEERROR
 EINVALIDTIMEZONE

 
resourcepool-modify-member [top]
Modify the properties of members of resource pool.
Error Conditions:
  • EACCESSDENIED - When the user does not have DFM.Database.Write capability on the specified resource pool or DFM.Database.Write privilege on the object being modified.
  • ERESOURCEPOOLDOESNOTEXIST - When the specified resource pool does not exist.
  • EOBJECTNOTFOUND - When the specified object of valid type to add is not found or object does not exist at all.
  • EINVALIDMEMBERTYPE - When an object is not a mamber of resourcepool.
  • EOBJECTAMBIGUOUS - When the specified object name is ambiguous to denote whether its filer or aggregate. Try again with fully qualified name or object id.
  • EDATABASEERROR - On database error.
Input Name Range Type Description
member-name-or-id obj-name-or-id
Name or identifier of the member to modify in the resource pool.
resource-tag resource-tag
optional
Label for the resource pool member.
resourcepool-name-or-id obj-name-or-id
Name or identifier of the resource pool.
 Errno  Description
 EACCESSDENIED
 ERESOURCEPOOLDOESNOTEXIST
 EOBJECTNOTFOUND
 EOBJECTAMBIGUOUS
 EOBJECTNOTINRESOURCEPOOL
 EDATABASEERROR

 
resourcepool-remove-member [top]
Remove member -- storage system or aggregate -- from a resource pool.
Error Conditions:
  • EACCESSDENIED - When the user does not have DFM.Database.Delete capability on the specified resource pool or DFM.Database.Read privilege on the object being removed.
  • ERESOURCEPOOLDOESNOTEXIST - When the specified resource pool does not exist.
  • EOBJECTNOTFOUND - When the specified object to remove not found.
  • EOBJECTAMBIGUOUS - When the specified object name is ambiguous to denote whether its storage system or aggregate. Try again with fully qualified name or object id.
  • EOBJECTNOTINRESOURCEPOOL - When the specified object does not exist in the resource pool.
  • EDATABASEERROR - On database error.
Input Name Range Type Description
member-name-or-id string
Name or identifier of member to remove from the resource pool. Possible values are name/id of storage system or aggregate. It should be a valid DFM object name or object id. A valid DFM object name should contain at least one non-numeric character. A valid DFM object id should be in the range of [1..2^31-1].
resourcepool-name-or-id string
Name or identifier of the resource pool to modify. It should be a valid DFM object name or object id. A valid DFM object name should contain at least one non-numeric character. A valid DFM object id should be in the range of [1..2^31-1].
 Errno  Description
 EACCESSDENIED
 ERESOURCEPOOLDOESNOTEXIST
 EOBJECTNOTFOUND
 EOBJECTAMBIGUOUS
 EOBJECTNOTINRESOURCEPOOL
 EDATABASEERROR

 
resourcepool-update-free-space-status [top]
Check the free space in the resource pool against the nearly-full and full thresholds and generate appropriate events for the resource pool.
Input Name Range Type Description
resourcepool-name-or-id obj-name-or-id
Name or identifier of resource pool
 Errno  Description
 EACCESSDENIED
 ERESOURCEPOOLDOESNOTEXIST
 EDATABASEERROR

 
Element definition: license [top]
Name of the licensed Data ONTAP service.
Possible values: "nfs", "cifs", "iscsi", "fcp", "multistore", "a_sis", "snapmirror_sync".
[none]

 
Element definition: obj-name-or-id [top]
Name or internal ID of a DFM object. This typedef is an alias for the builtin ZAPI type string. An obj-name-or-id must contain between 1 and 64 characters, and must conform to one of the following formats:
  • It must have the format of an obj-name, or
  • It must be the decimal numeric string form of a positive integer whose value is in the range [1..2^31 - 1].
Elements of type obj-name-or-id are used only as inputs to ZAPIs. The value must match either the name or internal ID of an existing DFM object. The ZAPI must specify the object's DFM object type (e.g. dataset, host, DP policy, etc.). Some ZAPIs allow the object to be one of several different types.

If the format of an obj-name-or-id input element does not conform, or the value does not match the name or ID of an existing object, then generally the ZAPI documents that it fails with error code EOBJECTNOTFOUND. A ZAPI may return more specific error codes. In such cases, the ZAPI specification must document its behavior.

If a ZAPI can accept a null value (e.g. reference to no object at all) for such an element, then the element is declared optional, and the absence of the input element represents a null value.

[none]

 
Element definition: provision-member-request-info [top]
Details specific to the 'provision_member' request.
Name Range Type Description
comments provision-member-comment[]
optional
create-new-vfiler boolean
optional
True, if new vFiler Unit needs to be created during provisioning. The provisioned storage container is then moved to the vFiler Unit. This input is applicable only in the context of resourcepool-member-list-info-iter-start zapi and run-provisioning-checks is specified as 'true'. This input is ignored in dataset-provision-member zapi. The default value is 'false'.
dataset-export-info dataset-export-info
optional
Specifies the NAS or SAN export settings for the the provisioning member. Member level export settings cannot be specified, if export settings have been configured at node level.
description string
optional
Description of the provisioning request. The length of this string cannot be more than 255 characters.
initial-snapshot-space integer
optional
Applicable when provisioning members in SAN data sets (i.e. datasets associated with provisioning policy of type 'san'). Specify the initial disk space in bytes that needs to be allocated upfront for Snapshot copies of the member. Range: [1..2^44-1]
maximum-data-size integer
validate
Maximum storage space space for the dataset member. Applicable when provisioning members in NFS data sets (i.e. datasets associated with provisioning policy of type 'nas' and export over 'NFS' protocol). Storage clients can write data upto this limit if the containing aggregate has space. The value is specified in bytes. Range: [1..2^44-1]
maximum-snapshot-space integer
optional
Applicable when provisioning members in SAN data sets (i.e. datasets associated with provisioning policy of type 'san'). Specify the maximum disk space in bytes for the Snapshot copies of the member. Once the space consumed by Snapshot copies reaches this value, further Snapshot copies will fail. Range: [1..2^44-1]
name string
Name of the storage container. If this is a NAS dataset, i.e the provisioning policy associated with the primary node of the dataset is of type 'nas', then this name corresponds to the qtree created. If this is a SAN dataset, i.e the provisioning policy associated with the primary node of the dataset is of type 'san', then this name corresponds to the LUN or volume that will be provisioned as part of this request. The length of this string cannot be more than 255 characters.
provisioning-policy-id obj-id
optional
Name or identifier of the provisioning policy used with this request. Ignored for dataset-provision-member and is used only when listing provisioning requests and jobs.
provisioning-policy-name obj-full-name
optional
Name of the provisioning policy used with this request. Present only if the request type is 'provision_member'. Ignored for dataset-provision-member and is used only when listing provisioning requests and jobs.
resource-name-or-id obj-name-or-id
optional
Name or identifier of the resource object from which storage space will be provisioned. valid types of objects are:-
  • Filer
  • Aggregate
The filer or aggregate specified should belong to the resource pool(s) associated with primary node of the dataset.
size integer
validate
Amount of storage space for data. Whether this space has to allocated on demand or reserved upfront from an aggregate in resource pool is decided based on the provisioning policy settings. The value is specified in bytes. Range: [1..2^44-1]
vfiler-name-or-id obj-name-or-id
optional
Name or id of the vFiler Unit, if specified the newly provisioned dataset member will be moved to the specified vFiler Unit and accessed via the vFiler Unit's IP addresses.

 
Element definition: resource-tag [top]
Label for the resource. Can be of maximum 255 characters.
[none]

 
Element definition: resourcepool-defaults [top]
The default values of the attributes defined by this ZAPI.
Name Range Type Description
resourcepool-full-threshold integer
optional
The value (as an integer percentage) of the fullness threshold used to generate a "resource pool full" event for this resource pool. Setting threshold percentages higher than 100% allows an administrator to set it in such a way so that it never trigger these events. Range: [0..1000]
resourcepool-nearly-full-threshold integer
optional
The value (as an integer percentage) of the fullness threshold used to generate a "resource pool nearly full" event for this resource pool. Setting threshold percentages higher than 100% allows an administrator to set it in such a way so that it never trigger these events. Range: [0..1000]

 
Element definition: resourcepool-info [top]
Information about a resource pool.
Name Range Type Description
aggregate-nearly-overcommitted-threshold integer
optional
The value (as an integer percentage) of the fullness threshold used to generate an "resourcepool nearly overcommitted" event for all the resource pools. If the value specified is empty, then the setting is cleared and the value specified in global options for aggrNearlyOvercommittedThreshold will be used. Range: [0..65535]
aggregate-overcommitted-threshold integer
optional
The value (as an integer percentage) of the fullness threshold used to generate an "resourcepool overcommitted" event for all the resource pools. If the value specified is empty, then the setting is cleared and the value specified in global options for aggrOvercommittedThreshold will be used. Range: [0..65535]
resource-tag resource-tag
optional
A label that can be associated with a resource pool.
resourcepool-contact email-address-list
optional
Contact information for the resource pool, such as the owner's e-mail address. This is modifiable.
resourcepool-description string
optional
Description of the resource pool, up to 255 characters long. This is modifiable.
resourcepool-free-vfilers integer
optional
The number of vFiler units that can be created in this resource pool based on the current limit and number of vFiler units present in the storage systems that are members of the resource pool. Ignored for resourcepool-create and resourcepool-modify. Range: [0..2^64-1].
resourcepool-full-threshold integer
optional
The value (as an integer percentage) of the fullness threshold used to generate a "resource pool full" event for this resource pool. If the value specified is empty, then the resource pool setting is cleared and the value specified in resourcepool-get-defaults is used. Range: [0..1000]
resourcepool-id integer
optional
Identifier of the resource pool. Its a valid DFM object id. A valid DFM object id would be in the range of [1..2^31-1]. Ignored for resourcepool-create and resourcepool-modify.
resourcepool-is-provisionable boolean
optional
This is returned in resourcepool-list-info-iter-next if license-filter, resource-tag or reliability information is passed in the input, this is set to true or false depending on whether the resource pool meets all the three filters, Default value is set to TRUE.
resourcepool-kbytes-available integer
optional
Amount of Kbytes of storage available in this resource pool. This value only present if include-free-space was true. Ignored for resourcepool-create and resourcepool-modify. Range: [0..2^64-1].
resourcepool-kbytes-total integer
optional
Total amount of Kbytes of storage in this resource pool. This value only present if include-free-space was true. Ignored for resourcepool-create and resourcepool-modify. Range: [0..2^64-1].
resourcepool-kbytes-used integer
optional
Amount of Kbytes of storage used in this resource pool. This value only present if include-free-space was true. Ignored for resourcepool-create and resourcepool-modify. Range: [0..2^64-1].
resourcepool-member-count integer
optional
The count of direct members added to the resource pool. This includes number of storage systems and aggregates added to the resource pool. Ignored for resourcepool-create and resourcepool-modify. Range: [0..2^31-1]
resourcepool-name string
optional
Name of the resource pool. This is modifiable. This must be specified in resourcepool-create. Its a valid DFM object name. A valid DFM object name would contain at least one non-numeric character.
resourcepool-nearly-full-threshold integer
optional
The value (as an integer percentage) of the fullness threshold used to generate a "resource pool nearly full" event for this resource pool. If the value specified is empty, then the resource pool setting is cleared and the value specified in resourcepool-get-defaults is used. Range: [0..1000]
resourcepool-owner string
optional
Name of the owner of the resource pool, up to 255 characters long. This is modifiable.
resourcepool-perf-status obj-status
optional
Current performance status of the resource pool. Ignored for resourcepool-create and resourcepool-modify.
resourcepool-status obj-status
optional
Current status of the resource pool. Ignored for resourcepool-create and resourcepool-modify.
resourcepool-timezone string
optional
Time zone in which this pool's storage is located. This is modifiable. An empty value means to use the system default (usually GMT). Currently valid time zones can be listed by timezone-list-info-iter.

 
Element definition: resourcepool-member-info [top]
Information about one member of a resource pool.
Name Range Type Description
datasets-space-info dataset-space-info[]
optional
space used by each dataset in the aggregate. Returned only when member-type is 'aggregate' and if include-dataset-space-info is set to true in resourcepool-member-list-info-iter-start.
member-committed-space integer
Committed space of the member.
member-id integer
Identifier of the member. Its a valid DFM object id. A valid DFM object id would be in the range of [1..2^31-1].
member-name string
Display name of the member. Its a valid DFM object name. A valid DFM object name would contain at least one non-numeric character.
member-size integer
Total size of the member.
member-status string
Current status of the member. Possible values are 'normal', 'information', 'unknown', 'warning', 'error', 'critical', 'emergency'.
member-type string
Type of the member. Possible values are 'filer' or 'aggregate'.
member-used-space integer
Used space of the member.
provisioning-checks-passed boolean
optional
Set to true, if all the member passes all the provisioning related checks for given provisioning policy and provisioning request. Applicable only when run-provisioning-checks is set to true at the start of iteration.
resource-tag resource-tag
optional
A label for a resource pool member.

 
Element definition: storage-reliability [top]
NetApp Storage Systems offer a wide range of storage availability features which provide protection against various failure like disk drive failures, shelf failures, controller failures or site failures. The required level of reliability of the dataset can be specified in the provisioning policy.
Name Range Type Description
controller-failure boolean
optional
Resiliency against single controller failure, i.e the dataset can be accessed even after a controller fails. Maps to active/active pair. Default value is "false".
disk-failure string
optional
Resiliency against disk failures, possible values are "single" (Maps to RAID-4 aggregates), "double" (Maps to RAID-DP aggregates) or "any"(either RAID-4 or RAID-DP). Default value is "double".
sub-system-failure boolean
optional
Resiliency against storage sub system failures (or back end failures) like disk shelf, disk shelf adapters, failure of FCAL loops. Maps to "SyncMirror" aggregates. Default value is "false".

 
Element definition: dataset-export-info [top]
Specifies the NAS or SAN export settings for a dataset node.
Name Range Type Description
dataset-cifs-export-setting dataset-cifs-export-setting
optional
The CIFS export settings for storage exported over CIFS. This field may be present only if the dataset-export-protocol is 'cifs' or 'mixed'.
dataset-export-protocol dataset-export-protocol
optional
Specifies the protocol over which members of the dataset node will be exported. This value is always returned. If omitted during a modify operation, the existing value is not changed. If specified as 'none' in a modify operation, the existing settings will be cleared. Default value is 'none'. Depending on the export protocol, dataset-lun-mapping, or a combination of dataset-nfs-export-setting and dataset-cifs-share-permissions, should be specified in a modify operation, and will be returned in the iterator output.
dataset-lun-mapping-info dataset-lun-mapping-info
optional
Specifies the hosts and/or initiators to which LUNs in this dataset node will be mapped, and the igroup OS type. This field may be present only if the dataset-export-protocol is 'fcp' or 'iscsi'.
dataset-nfs-export-setting dataset-nfs-export-setting
optional
The NFS export settings for storage exported over NFS. This field may be present only if the dataset-export-protocol is 'nfs' or 'mixed'.

 
Element definition: dataset-space-info [top]
This element contains the space utilization of a dataset.
Name Range Type Description
dataset-id obj-id
database identifier of the dataset.
dataset-name obj-name
Name of the dataset.
used-space integer
Space used by the dataset on the aggregate in bytes. Range: [0..2^64-1].

 
Element definition: email-address-list [top]
A list of email addresses. If more than one email address is specified, the addresses must be seperated by a ','. Spaces (and other white space) are not allowed, either between addresses or in them. Unprintable characters are also invalid. The list may contain up to 255 characters.
[none]

 
Element definition: obj-full-name [top]
Full name of a DFM object. This typedef is an alias for the builtin ZAPI type string. An object full name conforms to all the rules of an obj-name, except that the full name may be up to 255 characters long.

DFM creates full names by concatenating an object name with any parent object names, so as to create a unique name for an object. The format of full names is as follows:

  • Host full names are the either the fully-qualified domain name or the IP address of the host.
  • Aggregate full names are the host name and the aggregate name, separated by a colon, e.g. hostname:aggr0.
  • Volume full names are the host name and the volume name, separated by ":/", e.g. hostname:/volume. Note this does not include "/vol". Volume and aggregate full names are distinguished by the presence of a forward slash after the colon.
  • Qtree full names are the containing volume full name and the qtree name, separated by a slash, e.g. hostname:/volume/qtree. The data not contained by any qtree may be represented by "-", e.g. hostname:/volume/-.
  • Lun Path full names are either a volume or qtree full name and the LUN path, separated by a slash, e.g. hostname:/volume/LUN or hostname:/volume/qtree/LUN.
  • Network full names are a network address block in CIDR format, e.g. 1.2.3.0/8.
  • OSSV Directory full names are the OSSV host name and the OSSV path, separated by a colon, e.g. host-lnx:/usr/local or host-w2k:c:/temp
  • Include any others here...
  • Initiator Group full names are host name and the initiator group name, separated by a colon, e.g. hostname:igroup.

For any DFM object not listed above, the obj-name and obj-full-name are identical.

[none]

 
Element definition: obj-id [top]
Identification number (ID) for a DFM object. This typedef is an alias for the builtin ZAPI type integer. Object IDs are unsigned integers in the range [1..2^31 - 1]. In some contexts, an object ID is also allowed to be 0, which is interpreted as a null value, e.g., a reference to no object at all.

The ID for a DFM object is always assigned by the system; the user is never allowed to assign an ID to an object. Therefore, an input element of type obj-id is always used to refer to an existing object by its ID. The ZAPI must specify the object's DFM object type (e.g. dataset, host, DP policy, etc.). Some ZAPIs allow the object to be one of several different types.

If the value of an obj-id input element does not match the ID of any existing DFM object of the specified type or types, then typically the ZAPI fails with error code EOBJECTNOTFOUND. A ZAPI may deviate from this general rule, for example, it may return a more specific error code. In either case, the ZAPI specification must document its behavior.

[none]

 
Element definition: obj-name-or-id [top]
Name or internal ID of a DFM object. This typedef is an alias for the builtin ZAPI type string. An obj-name-or-id must contain between 1 and 64 characters, and must conform to one of the following formats:
  • It must have the format of an obj-name, or
  • It must be the decimal numeric string form of a positive integer whose value is in the range [1..2^31 - 1].
Elements of type obj-name-or-id are used only as inputs to ZAPIs. The value must match either the name or internal ID of an existing DFM object. The ZAPI must specify the object's DFM object type (e.g. dataset, host, DP policy, etc.). Some ZAPIs allow the object to be one of several different types.

If the format of an obj-name-or-id input element does not conform, or the value does not match the name or ID of an existing object, then generally the ZAPI documents that it fails with error code EOBJECTNOTFOUND. A ZAPI may return more specific error codes. In such cases, the ZAPI specification must document its behavior.

If a ZAPI can accept a null value (e.g. reference to no object at all) for such an element, then the element is declared optional, and the absence of the input element represents a null value.

[none]

 
Element definition: obj-status [top]
A status value which can be associated with a DFM object. This typedef is an alias for the builtin ZAPI type string. The severity associated with an event has this type.

Possible values are: 'unknown', 'normal', 'information', 'unmanaged' 'warning', 'error', 'critical', 'emergency'.

  • unknown: An object has an unknown status when it transitions from one state to another. Ideally, an object will have this status briefly. For example, when an object has been added, but not yet discovered.
  • normal: An object has normal status when it is working within the thresholds specified in DFM.
  • information: The information events are normal occurrences on an object for which you can define alarms.
  • unmanaged: An object is considered to be unmanaged when the login and password are not set for the appliance or agent.
  • warning: An object has the warning status when an event related to the object occurred that an administrator should know about. The event will not cause service disruption.
  • error: An object has error status when it does not cause any service disruption, but it may affect performance.
  • critical: An object has critical status when it is still performing, but service disruption may occur if corrective action is not taken immediately.
  • emergency: An object is in emergency status when it stops performing unexpectedly and could lose data.
In some contexts, it is important that severities are ordered (as above). For example, an alarm might be triggered if an event with a given severity "or worse" occurs. In this example, worse means "after" in the list above.
[none]

 
Element definition: provision-member-comment [top]
One comment field to fill in as part of the request
Name Range Type Description
comment-field-name-or-id comment-field-name-or-id
Name or identifier of the comment field.
comment-value comment-value
Value of the comment field. An empty string can be used to unset the value of the comment field for this object.

 
Element definition: resource-tag [top]
Label for the resource. Can be of maximum 255 characters.
[none]

 
Element definition: comment-field-name-or-id [top]
Name or identifier of the comment field. It must conform to one of the following formats:
  • It must be of the format of comment-field-name
  • It must be of the format of comment-field-id
[none]

 
Element definition: comment-value [top]
Value of the specified comment field to be set on the object. This can be of maximum 255 characters.
[none]

 
Element definition: dataset-cifs-export-setting [top]
If storage inside this dataset node is exported over CIFS, this specifies some of the common properties that will be applied to all such provisioned storage.
Name Range Type Description
cifs-domain string
optional
Name of the CIFS domain. If present, then only filers or vFilers belonging to this CIFS domain is considered for provisioning. If not present, then any filer is picked. Up to 255 characters.
dataset-cifs-share-permissions dataset-cifs-share-permission[]
optional
Specifies the permissions granted to users on storage provisioned in this dataset node. This field may be present only if the dataset-export-protocol is 'cifs' or 'mixed'.

 
Element definition: dataset-export-protocol [top]
Specifies the export protocols that members in this dataset node will be exported over. Possible values are 'nfs', 'cifs', 'mixed', 'fcp', 'iscsi' and 'none'. Specifying 'mixed' implies that the storage in the dataset should be exported over both NFS and CIFS.
[none]

 
Element definition: dataset-lun-mapping-info [top]
Specifies the hosts and/or initiators to which LUNs in this dataset node will be mapped, and the igroup OS type.
Name Range Type Description
igroup-os-type string
Specifies the OS type for initiators to map LUNs in the dataset node to. Possible values are: 'windows', 'windows_gpt', 'windows_2008', 'hpux', 'aix, 'linux, 'solaris', 'vmware' and 'netware'. Here "windows_gpt" refers to Windows using GPT (GUID Partition Type) partitioning style and "windows_2008" refers to Windows Longhorn systems.
lun-mapping-initiators lun-mapping-initiator[]
Specifies the initiators to map LUNs in the dataset node to, and, optionally, the host to which they belong.

 
Element definition: dataset-nfs-export-setting [top]
If storage inside this dataset node is exported over NFS, this specifies some of the common properties that will be applied to all such provisioned storage.
Name Range Type Description
anonymous-access-user string
optional
If the client accessing the export is not present in the root access list for the export, the effective user for root is the value specified for this field. Default value is 65534 which maps to user nobody. It could be an integer Range: [0..65534] or a user name not more than 255 characters.
disable-setuid boolean
optional
If true, causes the server file system to ignore attempts to enable the setuid or setgid mode bits. Default value is true.
is-readonly-for-all-hosts boolean
optional
Specifies that all hosts receive read-only permissions on nfs exports in this dataset node. Equivalent to specifying "ro" on the filer. Default value is false. If true, is-readwrite-for-all-hosts must be false.
is-readwrite-for-all-hosts boolean
optional
Specifies that all hosts receive read-write permissions on nfs exports in this dataset node. Equivalent to specifying "rw" on the filer. Default value is false. If true, is-readonly-for-all-hosts must be false.
nfs-export-ro-hosts nfs-export-host[]
optional
A list of hosts with read-only permissions on exports in this dataset node. If a non empty list of nfs-export-ro-hosts is present along with is-readonly-for-all-hosts as true, then ZAPI will throw an error.
nfs-export-root-hosts nfs-export-host[]
optional
A list of hosts with the root user having read-only or read-write permissions on exports in this dataset node.
nfs-export-rw-hosts nfs-export-host[]
optional
A list of hosts with read-write permissions on exports in this dataset node. If a non empty list of nfs-export-rw-hosts is present along with is-readwrite-for-all-hosts as true, then ZAPI will throw an error.
nfs-protocol-version string
optional
NFS protocol version, valid values are "v2", "v3" and "v4". Default value is "v3". If set, the storage systems that have the given version enabled will be selected to provision storage for the dataset.
nfs-security-flavors nfs-security-flavor[]
optional
List of strings specifying the security flavors supported on exports in this dataset node. If this field is not specified, the default value of 'sys' is assumed.

 
Element definition: obj-name [top]
Name of a DFM object. This typedef is an alias for the built in ZAPI type string. An object name must conform to the following format:
  • It must contain between 1 and 64 characters.
  • It may start with any character and may contain any combination of characters, except that it may not consist solely of decimal digits ('0' through '9').
  • In some contexts, a name may be the empty string (""), which is interpreted as a null value, e.g., a reference to no object at all.
The behavior of a ZAPI when it encounters an error involving an obj-name input element depends on how the ZAPI uses the input element. Here are the general rules:
  • If the input name element is used to create a new object with the given name, or rename an existing object to that name, and the name does not conform to the above format, then the ZAPI fails with error code EINVALIDINPUTERROR. Note that because EINVALIDINPUTERROR is such a common error code, ZAPI specifications are not required to document cases when they may return it.
  • If the input name element is used to refer to an existing object with that name, and there is no object with that name, then the ZAPI fails with error code EOBJECTNOTFOUND. Generally the ZAPI specification documents cases when it may return this error code.
A ZAPI may deviate from these general rules, for example, it may return more specific error codes. In such cases, the ZAPI specification must document its behavior.

If an input name element is used to refer to an existing object, then the ZAPI specification must specify which DFM object type (e.g. data set, host, DP policy, etc.) is allowed. Some ZAPIs allow the object to be one of several different types. See the description of obj-full-name for examples of valid input formats.

Note that there is no requirement that all object names must be unique. However, the names for some specific types of objects are constrained such that no two objects of that type may have the same name. For example, this constraint applies to datasets, DP schedules, and DP policies. This means that no two datasets may have the same name, but a dataset may have the same name as a DP schedule or DP policy.

In general, object names are compared in a case-insensitive manner. This means that, for example, "MyObject" and "MYOBJECT" are considered to be the same name for purposes of: creating new objects, renaming existing objects, or looking up an object by name. On the other hand, ZAPIs that return an obj-name generally do not change the capitalization at all. For example, if an object's name has been set to "MyObject", then list iteration ZAPIs that return the object's name return it as "MyObject" rather than "MYOBJECT" or "myobject".

ZAPIs that operate on obj-name values and do not follow these general rules about case sensitivity must document the rules that they do follow.

One important exception to these general rules is that volumes, qtrees, OSSV directories, SRM paths, interfaces, FCP targets and FC switch ports all have case-sensitive names. When looking up objects of these types by name, the case must match the object name.

[none]

 
Element definition: dataset-cifs-share-permission [top]
A single permission granted to a user on CIFS shares within a dataset node.
Name Range Type Description
cifs-username string
Name of a user in the specified domain. The username may be the name of an actual domain user or one of the built-in names - 'administrator' or 'everyone'.
permission cifs-permission
Specifies the permissions granted to a user.

 
Element definition: lun-mapping-initiator [top]
Specifies an initiator to map LUNs in the dataset node to, and, optionally, the host to which it belongs.
Name Range Type Description
hostname string
optional
Specifies the name of the host which owns the initiator.
initiator-id initiator-id
Specifies an initiator id on a host to which a LUN should be mapped.

 
Element definition: nfs-export-host [top]
Specifies a single host or all-hosts. A host can be a host name (DNS name), an IP address, a subnet or a domain name. If an 'all-hosts' entry is present, all other host name entries must be negated.
Name Range Type Description
hostname string
optional
Specifies a single host name entry. A host name may be a DNS name, an IP address, a subnet (specified as <subnet address>/<prefix length> i.e. CIDR notation or '[network] <subnet-address> [netmask] <netmask>'), a domain, or a workgroup.
is-an-exception boolean
optional
Specifies that the rule does not apply to this host. Should be used when it is required to grant permissions to hosts in a subnet or a domain or all hosts excluding some. Default value is false.

 
Element definition: nfs-security-flavor [top]
A security flavor to be applied on nfs exports. Possible values are 'none', 'sys' (Unix Style), 'krb5' (Kerberos v5) , krb5i' (Kerberos v5 integrity) and 'krb5p' (Kerberos v5 privacy). Default value is 'sys'.
[none]

 
Element definition: cifs-permission [top]
Permission granted to a CIFS user on a share. Possible values are 'no_access', 'read', 'change' and 'full_control'
[none]

 
Element definition: initiator-id [top]
For FCP initiators, this is a string composed of 16 hexadecimal digits. For iSCSI initiators, this is an initiator name in the dotted-domain notation.
[none]