|
APIs in Category: aggr |
API version 1.9 |
aggr-add |
These APIs allow for full manipulation of ONTAP aggregates, including those embedded in traditional volumes, and their structural components (plexes and RAID groups). |
| aggr-add | [top] |
Add disks to the specified aggregate, whether it is free-standing or embedded in a traditional volume. The disks to add are specified in the same way as for "aggr-create". Disks cannot be added to a mirrored aggregate if one or more of the plexes is offline. By the time the API returns, the disk(s) may not yet be completely added. Use 'aggr-list-info' to query the aggregate status to determine when it has finished growing due to the added disk(s).
Input Name Range Type Description aggregate string
Name of the aggregate to which the disks will be added. disk-count integer
optional
Number of disks to add, including the parity disks. The disks will come from the pool of spare disks. The smallest disks in this pool join the aggregate first, unless the "disk-size" argument is specified. Either the "disk-count" or "disks" argument must be specified. Range : [0..2^31-1]. disk-size integer
optional
The individual disk size in 4KB blocks. For example, a disk-size of 131072000 represents a 500GB drive (131072000 * 4 * 1024 = 500 * 1024 * 1024 * 1024). Disks that are within approximately 20% of the specified size will be selected. If neither the "disk-size" nor the "disk-size-with-unit" argument is specified, existing groups are appended with disks that are the best match for the largest disk in the group. When starting new groups, the smallest disks are selected first. This option is ignored if a specific list of disks to use is specified through the "disks" parameter. Range : [0..2^31-1]. You must only use one of either "disk-size" or "disk-size-with-unit" parameters. If both appear, an error message will be returned. disk-size-with-unit string
optional
This parameter accepts a disk size in the specified unit. It is a positive integer number followed by unit of "T", "G", "M" or "K". For example, these are accepted: 72G, 36G, 1T and 32M. But "72" will not be accepted. This "disk-size-with-unit" option is ignored if a specific list of disks is specified through the "disks" parameter. You must only use one of either "disk-size" or "disk-size-with-unit" parameters. If both appear, an error message will be returned. disks disk-info[]
optional
Specific list of disks to add to the aggregate. If the aggregate is mirrored and a specific list of disks is supplied, another list ("mirror-disks") must also be supplied with the same number of disks. Either the "disks" or "disk-count" argument must be specified. force-spare-pool boolean
optional
Disks in a plex are not normally permitted to span spare pools. This behavior is overridden with this option when it is set to "true". group-selection-mode string
optional
Specifies how DATA ONTAP adds the specified disks to raidgroups. Legitimate values are "last", "one", "new" or "all". group-selection-mode is an optional argument, and the behavior when it is not used is selected by value of raid-group. If raid-group is used, the behavior is the same as for group-selection-mode "one". If raid-group is not used, the behavior is the same as for group-selection-mode "last". The raid-group option must be used with group-selection-mode value "one", and it cannnot be used with others. If the string value is "last", Data ONTAP adds the specified disks to the existing last RAID group first. After the last RAID group is full, it creates one or more new RAID groups and adds the remaining disks to the new groups. If the string value is "one", Data ONTAP adds the specified disks to the existing RAID group specified by raid-group option until this specified RAID group is full. If the string value is "new", Data ONTAP creates one or more new RAID groups and adds the specified disks to the new groups, even if they would fit into an existing RAID group. The name of new RAID groups are selected automatically. It is not possible to specify the name for the new RAID groups. If the string value is "all", Data ONTAP adds the specified disks to existing RAID groups first. Only after all existing RAID groups are full, it creates one or more new RAID groups and adds the remaining disks to the new groups. mirror-disks disk-info[]
optional
Specific list of mirror disks needed to accompany the list in the "disks" parameter. This list must contain the same number of disks as specified in "disks". raid-group string
optional
Specifies the RAID group (for example rg0) to which the indicated disks are to be added. When a RAID group other than the last RAID group is specified, the aggregate can no longer be reverted to a version of ONTAP prior to 6.2. In such a case, the "force-spare-pool" option must be specified as well. By default, the filer fills up one RAID group with disks before starting another RAID group. Suppose an aggregate currently has one RAID group of 12 disks and its RAID group size is 14. If you add 5 disks to this aggregate, it will have one RAID group with 14 disks and another RAID group with 3 disks. The filer does not evenly distribute disks among RAID groups. Output Name Range Type Description bad-disks disk-info[]
optional
List of disks that were not added. This is only returned if there are bad disks.
Errno Description EINTERNALERROR EINVALIDINPUTERROR EAPIMISSINGARGUMENT EVOLUMEDOESNOTEXIST EVOLUMEDISKSIZEINVALID EVOLUMEDISKDUP EVOLUMEGSMINVALID
| aggr-check-spare-low | [top] |
Return true if there is no suitable spare disk available for any filesystem (parity or data) disk.
Output Name Range Type Description is-spare-low boolean
"true", if system has insufficient spare disk, "false" otherwise.
| aggr-create | [top] |
Create a new aggregate with the given name. Up to 200 aggregates can be created on each filer (including the aggregates that are "embedded" in traditional volumes, which must be created as a side effect of a traditional volume creation). The aggregate may not yet be operational immediately after the API returns. Use 'aggr-list-info' to query the status of the newly-created aggregate to determine when it is fully operational. NOTE: If ECANT_USE_ALL_DISKS is returned, then the requested aggregate was indeed created, just not with all the disks that were specified.
Input Name Range Type Description aggregate string
Name of the aggregate to create. The aggregate name can contain letters, numbers, and the underscore character(_), but the first character must be a letter or underscore. disk-count integer
optional
Number of disks to place into the aggregate, including parity disks. The disks in this newly- created aggregate come from the spare disk pool. The smallest disks in this pool join the aggregate first, unless the "disk-size" argument is provided. Either "disk-count" or "disks" must be supplied. Range [0..2^31-1]. disk-size integer
optional
Disk size in 4KB blocks. Disks that are within 20% of the specified size will be selected for use in the aggregate. If neither "disk-size" nor "disk-size-with-unit" is specified, existing groups are appended with disks that are the best match for the largest disk in the group. When starting new groups, the smallest disks are selected first. This option is ignored if a specific list of disks to use is specified through the "disks" parameter. Range [0..2^31-1]. You must only use one of either "disk-size" or "disk-size-with-unit" parameters. If both appear, an error message will be returned. disk-size-with-unit string
optional
Disk size in the specified unit. It is a positive integer number followed by unit of "T", "G", "M" or "K". This "disk-size-with-unit" option is ignored if a specific list of disks is specified through the "disks" parameter. You must only use one of either "disk-size" or "disk-size-with-unit" parameters. If both appear, an error message will be returned. disk-type string
optional
Type of disks to use: ATA, EATA, FCAL, LUN, SAS, SATA, SCSI, XATA, or XSAS. This option is needed only when disks of different types are connected to the filer. It is not allowed if a list of disks to use is specified through the "disks" parameter. An aggregate can never be created using a mix of disks of different types. disks disk-info[]
optional
Specific list of disks to use for the new aggregate. If "mirrored" is set to true and a specific list of disks is supplied, the "mirror-disks" list with the same number of disks must also be supplied. Either "disk-count" or "disks" must be supplied. force-spare-pool boolean
optional
Disks in a plex are not normally permitted to span spare pools. This behavior is overridden with this option when it is set to "true". is-mirrored boolean
optional
Specifies that the new aggregate be mirrored (have two plexes). If set to "true", then the indicated disks will be split across the two plexes. By default, the new aggregate will not be mirrored. is-snaplock boolean
optional
Specifies the creation of a SnapLock aggregate. By default, is-snaplock is not specified. When is-snaplock is "true" the type of snaplock aggregate is determined in the following way - 1> If snaplock-type is set, create the type specified in snaplock-type (see snaplock-type for more details) 2> Otherwise, create a Snaplock enterprise aggregate if a Snaplock enterprise license has been installed. 3> Otherwise, create a Snaplock compliance aggregate. ESERVICENOTLICENSED is returned if the required Snaplock Compliance or Enterprise license is not installed. EONTAPI_EWORMNOCLOCK is returned if SnapLock Compliance Clock is not running. If you need to create a snaplock aggregate, the suggested method is to specify snaplock-type as "compliance" or "enterprise" and not specify is-snaplock at all. If you want to create a non-snaplock aggregate, the suggested method is to specify neither snaplock-type nor is-snaplock. language-code string
optional
Specifies the language to use for the new traditional volume via a language code. The default language is the one used by the filer's root volume. This option may be used only when creating a traditional volume, i.e. when "type" is "trad." Available language codes are: C (POSIX) da (Danish) de (German) en (English) en_US (English (US)) es (Spanish) fi (Finnish) fr (French) he (Hebrew) it (Italian) ja (Japanese euc-j) ja_JP.PCK (Japanese PCK (sjis)) ko (Korean) no (Norwegian) nl (Dutch) pt (Portuguese) sv (Swedish) zh (Simplified Chinese) zh.GBK (Simplified Chinese (GBK)) zh_TW (Traditional Chinese euc-tw) zh_TW.BIG5 (Traditional Chinese Big 5) To use UTF-8 as the NFS character set, append '.UTF-8'. mirror-disks disk-info[]
optional
List of mirror disks to use. It must contain the same number of disks specified in "disks". raid-size integer
optional
Specifies the maximum number of disks in each RAID group in the aggregate. The maximum value for this parameter is 28. The default value is platform- dependent. The valid range of values is also platform-dependent, but never wider than [2..28]. raid-type string
optional
Specifies the type of RAID groups to use in the new aggregate. Possible values: raid4, raid_dp. The default value is raid4 on most platforms. rpm integer
optional
Rotational speed of disks in revolutions per minute. Possible values are: 5400, 7200, 10000, and 15000. This option is needed only when disks with different rotational speeds are connected to the filer. It is not allowed if a list of disks to use is specified through the "disks" parameter. snaplock-type string
optional
Specifies the type of Snaplock aggregate to be created. Possible values - "compliance" or "enterprise" ESERVICENOTLICENSED is returned if the necessary Snaplock compliance or enterprise license has not been installed. EINVALIDINPUT is returned if snaplock-type has an illegal value or if is-snaplock has been set to "false". EONTAPI_EWORMNOCLOCK is returned if SnapLock Compliance Clock is not running. type string
optional
The type of the aggregate. Possible values: aggr, trad. - "aggr" (aggregate contains flexible volumes) - "trad" (aggregate contains exactly one traditional volume) If not specified, the default is "aggr." Output Name Range Type Description bad-disks disk-info[]
optional
List of disks that were not added. This is only returned if there are bad disks.
Errno Description EAPIMISSINGARGUMENT ECANT_USE_ALL_DISKS EINTERNALERROR EINVALIDINPUTERROR ESERVICENOTLICENSED
| aggr-destroy | [top] |
Destroys the specified aggregate or plex. If an aggregate is specified, all plexes in the aggregate are destroyed. If the aggregate is embedded in a traditional volume, then the entire traditional volume is destroyed. Otherwise, the operation will be rejected if there are one or more flexible volumes in the aggregate - they must be destroyed beforehand. If a plex is specified, only that plex is destroyed, leaving an unmirrored aggregate containing the remaining plex. The disks in the destroyed object become spare disks. Only offline aggregates and plexes can be destroyed.
Input Name Range Type Description aggregate string
Name of the existing aggregate or plex to be destroyed, using the following format: [/vol/] [ ] force boolean
optional
When using "aggr-destroy" on a traditional volume, force the destruction of the volume even if a non-default vfiler has storage on it. Normally, the system will not destroy such a volume and will instead return EVOLUME_HAS_VFILER_STORAGE.
Errno Description EINTERNALERROR EVOLUMENAMEINVALID EVOLUMEOFFLINE EVOLUME_HAS_VFILER_STORAGE
| aggr-get-filer-info | [top] |
Get information on what possibilities and parameters exist for aggregates on a given filer.
Output Name Range Type Description allowed-raidtypes raidtype-info[]
List of RAID types allowed for aggregates on this filer. checksum-types string
Checksum types supported by this filer. Possible values: zoned, block, mixed. "zoned" if all aggregates are Fixed VBN, "block" if all aggregates are Block Appended, "mixed" if aggregates are mixed (Fixed VBN and Block Appended), "none" if no aggregates have zoned or block checksums. default-raidtype string
Default type of RAID used to protect against disk failure in aggregates on this filer. Possible values: raid0, raid4, raid_dp. disk-types string
Type of disks supported by this filer. Possible values: 512, 520, mixed, none. "512" if all disks are 512 BPS, "520" if all disks 520 BPS, "mixed" if disks are mixed 512 and 520 BPS, "none" if no disks have 512 or 520 BPS. max-named-disks-per-request integer
The maximum number of named disks which can be specified to 'aggr add', 'aggr create', or 'agg mirror' operation. Disk addition process may fail if the specified number of named disk is more than this limit. This value is the maximum number of disk entries which can be specified in 'disks' or 'mirror-disks' argument of 'aggr-create' and 'aggr-add' api. raidgroup-size raidgroup-size-info[]
List of the RAID group sizing parameters for each RAID type supported on this filer. root-volume string
Current root volume on the filer. snapshots-max integer
Maximum number of snapshots available per aggregate on the filer. Range : [0..2^31-1].
Errno Description EINTERNALERROR
| aggr-get-root-name | [top] |
Return the name of the "root" volume on the filer.
Output Name Range Type Description root-volume string
Name of the root volume for the filer.
Vfiler-enabled Yes
| aggr-list-info | [top] |
Get aggregate status.
Input Name Range Type Description aggregate string
optional
The aggregate to get status for. If not supplied, get status of all aggregates. verbose boolean
optional
If set to "true", detailed volume and plex information (including all the RAID group and disk information) is returned. If not supplied or set to "false", this extra information is not returned. Output Name Range Type Description aggregates aggr-info[]
List of aggregates and their status.
Errno Description EINTERNALERROR EVOLUMEDOESNOTEXIST ELOWMEMORY
Vfiler-enabled Yes
| aggr-mediascrub-list-info | [top] |
Get the status of media scrubbing on the named aggregate, plex, or RAID group. Status includes percentage complete and the media scrub's status.
Input Name Range Type Description aggregate string
optional
Name of an existing aggregate, plex, or RAID group, using the following format: [/vol/] [ ][ ] If no name is given, then status is generated for all RAID groups currently being media-scrubbed. Output Name Range Type Description mediascrub-details mediascrub-detail-info[]
List of RAID groups and their media scrub status.
Errno Description EINTERNALERROR
| aggr-mirror | [top] |
Turns an unmirrored aggregate into a mirrored aggregate by adding a plex to it. The plex is either newly formed from disks chosen from a spare pool or, if the "victim-aggregate" option is specified, taken from another existing unmirrored aggregate. The named aggregate must currently be unmirrored. Disks may be specified explicitly using the "mirror-disks" list option in the same way as with the "aggr-create" and "aggr-add" commands. The number of disks indicated must match the number present in the existing aggregate. If disks are not specified explicitly, then disks are automatically selected to match those in the aggregate's existing plex.
Input Name Range Type Description aggregate string
Name of the existing aggregate to be mirrored. force boolean
optional
Force the mirroring operation through, past the normal roadblocks that would otherwise cause it to be aborted. For example, disks in a plex are not normally permitted to span spare pools. Also, the victim cannot normally be accepted when it is owned by one or more vfilers. All these safety-driven behaviors are overridden when this option is set to "true". mirror-disks disk-info[]
optional
Specific list of mirror disks to add. This list must match the number of disks present on the existing aggregate. The specified disks are not permitted to span disk pools unless overridden with the "force-spare-pool" option. victim-aggregate string
optional
The "victim" aggregate to cannibalize in order to mirror the named aggregate. The "victim-aggregate" must have been previously joined with the aggregate to be mirrored and then split from it. The resulting mirrored aggregate is otherwise identical to the original aggregate before the operation. The "victim-aggregate" (and all its volumes) is effec- tively destroyed. "victim-aggregate" (and all its volumes) must be offline. Output Name Range Type Description bad-disks disk-info[]
optional
List of disks that were not added. This is only returned if there are bad disks.
Errno Description EINTERNALERROR EINVALIDINPUTERROR EVOLUMENAMEINVALID EVOLUMEDISKSIZEINVALID
| aggr-offline | [top] |
Take the specified aggregate or plex offline. The operation takes effect before the API returns. Except in maintenance mode, the current root aggregate may not be taken offline. An aggregate marked to become the root aggregate cannot be taken offline. An aggregate containing one or more flexible volumes cannot be taken offline; its contained volumes must first be destroyed. A number of operations being performed on the given aggregate can prevent this operation from succeeding, either at all or for various lengths of time. If such operations are found, the system waits up to one second for them to finish. If they don't, the command is aborted. A check is also made for files in the aggregate opened by internal ONTAP processes. The command is aborted if any are found.
Input Name Range Type Description aggregate string
Name of the existing aggregate or plex to offline, using the following format: [[/vol]/] [ ] If the aggregate hosts any online volumes, then the offline request will fail unless the optional "unmount-volumes" argument (see below) appears and is set to TRUE. If we've been cleared to unmount any such online volumes hosted by the aggregate, the caller may also specify the number of seconds to wait should any of those volumes have active CIFS shares through the optional "cifs-delay-seconds" argument (see below). If a plex name is specified, the plex must be part of a mirrored aggregate, and both plexes must be online. Prior to offlining a plex, the system will flush all internally-buffered data associated with the plex and create a snapshot that is written out to both plexes. The snapshot allows for efficient resynchronization when the plex is subsequently brought back online. cifs-delay-seconds integer
optional
The number of seconds to wait before offlining any volumes that are hosted in the given aggregate that have active CIFS shares (if any). A value of 0 means that all such volumes are to be offlined immediately with no warning. CIFS users can lose data if they aren't given a chance to terminate applications gracefully. By default, "cifs-delay-seconds" is 0. NOTE: This argument may ONLY appear if the "unmount-volumes" argument (see above) also appears and is set to "TRUE". unmount-volumes boolean
optional
If set to "TRUE", this option specifies that all of the volumes hosted by the given aggregate are to be unmounted before the offline operation is executed. By default, the system will reject any attempt to offline an aggregate that hosts one or more online volumes.
Errno Description EINTERNALERROR EVOLUMEDOESNOTEXIST EVOLUMEBUSY
| aggr-online | [top] |
Bring the specified aggregate or plex online. This command takes effect immediately. All volumes on the aggregate are brought to whatever state they were in before the aggregate was restricted or taken offline. If there are CIFS shares associated with the any of the aggregate's volumes that were also onlined, they are enabled.
Input Name Range Type Description aggregate string
Name of the existing aggregate or plex to online, using the following format: [/vol/] [ ] If an aggregate is specified, it must currently be offline, restricted, or foreign (consisting of disks moved from another filer, and never having been brought online on the current filer). If the aggregate is foreign, it will be made native before being brought online on the current filer. Aggregates that aren't foreign are termed "native". If the aggregate is inconsistent but has not lost data, it is advisable to run WAFL_check or wafliron (or do a "snapmirror initialize" in case of a replica aggregate) prior to bringing it online. Bringing an inconsistent aggregate online increases the risk of further file system corruption. If the aggregate is inconsistent and has experienced possible loss of data, it can't be brought online unless WAFL_check or wafliron (or snapmirror initialize) is run on it. If a plex is specified, it must be part of an online mirrored aggregate. The system initiates resynchro- nization of the plex as part of online processing. keep-same-uuid boolean
optional
Keep existing foreign raidtree id (aggregate uuid). Normally when a foreign raidtree is onlined, the raidtree rtid (aggregate uuid) is changed to guarantee uniqueness. The behavior is overridden when this option is set "true." By default, "keep-same-uuid" is "false."
Errno Description EINTERNALERROR EVOLUMEDOESNOTEXIST
| aggr-options-list-info | [top] |
Get the options that have been set for the specified aggregate.
Input Name Range Type Description aggregate string
Name of the aggregate whose options we want. Output Name Range Type Description options aggr-option-info[]
List of options set for this aggregate.
Errno Description EINTERNALERROR EVOLUMEDOESNOTEXIST
| aggr-rename | [top] |
Rename the specified aggregate.
Input Name Range Type Description aggregate string
Name of the aggregate to rename. new-aggregate-name string
The new name desired for the aggregate.
Errno Description EINTERNALERROR EVOLUMENAMEINVALID
| aggr-restrict | [top] |
Restrict the specified aggregate. If the aggregate is embedded in a traditional volume, the entire traditional volume will be restricted. An aggregate with one or more flexible volumes cannot be restricted; all of its contained volumes must first be destroyed.
Input Name Range Type Description aggregate string
Name of the aggregate to restrict. cifs-delay-seconds integer
optional
The number of seconds to wait before restricting any volumes that are hosted in the given aggregate that have active CIFS shares (if any). A value of 0 means that all such volumes are to be offlined immediately with no warning. CIFS users can lose data if they aren't given a chance to terminate applications gracefully. By default, "cifs-delay-seconds" is 0. NOTE: This argument may ONLY appear if the "unmount-volumes" argument (see above) also appears and is set to "TRUE". unmount-volumes boolean
optional
If set to "TRUE", this option specifies that all of the volumes hosted by the given aggregate are to be unmounted before the restrict operation is executed. By default, the system will reject any attempt to restrict an aggregate that hosts one or more online volumes.
Errno Description EINTERNALERROR EVOLUMEBUSY EVOLUMEDOESNOTEXIST
| aggr-scrub-list-info | [top] |
Get the status of parity scrubbing on the named aggregate, plex, or RAID group. Status includes percentage complete and the scrub's suspended status (if appropriate).
Input Name Range Type Description aggregate string
optional
Name of an existing aggregate, plex, or RAID group using the following format: [/vol/] [ ][ ] If no name is given, then status is generated for all RAID groups currently being scrubbed. verbose boolean
optional
If set to "true", this operation will be verbose. If not supplied or set to false, normal output levels will be used. Output Name Range Type Description scrub-details scrub-detail-info[]
List of RAID groups and their scrub status.
Errno Description EINTERNALERROR
| aggr-scrub-resume | [top] |
Resume parity scrubbing on the named aggregate, plex, or RAID group. If no name is given, then resume parity scrubbing on all RAID groups for which it has been suspended.
Input Name Range Type Description aggregate string
optional
Name of the existing aggregate, plex, or RAID group for which scrubbing is to resume, using the following format: [/vol/] [ ][ ]
Errno Description EINTERNALERROR
| aggr-scrub-start | [top] |
Start parity scrubbing on the named aggregate, plex, or RAID group. Parity scrubbing compares the data disks to the parity disk in a RAID group, correcting the parity disk's contents as necessary. If no name is given, then parity scrubbing is started on all online aggregates. If an aggregate name is given, scrubbing is started on all RAID groups in the aggregate. If a plex name is given, scrubbing is started on all RAID groups contained in the plex. If a RAID group name is given, scrubbing is started only on that group. Use "aggr-scrub-list-info" to check scrubbing status.
Input Name Range Type Description aggregate string
optional
Name of the aggregate, plex, or RAID group to scrub, using the following format: [/vol/] [ ][ ]
Errno Description EINTERNALERROR EVOLAGGRISIRONING
| aggr-scrub-stop | [top] |
Stop parity scrubbing on the named aggregate, plex, or RAID group. If no name is given, stop scrubbing on all RAID groups currently being scrubbed.
Input Name Range Type Description aggregate string
optional
Name of the aggregate, plex, or RAID group for which we are to stop parity scrubbing, using the following format: [/vol/] [ ][ ]
Errno Description EINTERNALERROR
| aggr-scrub-suspend | [top] |
Suspend parity scrubbing on the named aggregate, plex, or RAID group. If no name is given, suspend scrubbing on all RAID groups currently being scrubbed.
Input Name Range Type Description aggregate string
optional
Name of the aggregate, plex, or RAID group for which we are to suspend parity scrubbing using the following format: [/vol/] [ ][ ]
Errno Description EINTERNALERROR
| aggr-set-option | [top] |
Set the specified option for the given aggregate to "option-value". The change remains effective even if the filer is rebooted. Some options have values that are numbers, and some have values that are "on" (also expressible as "yes", "true", or "1" ) or "off" (also expressible as "no", "false", or "0"). A mixture of uppercase and lowercase characters may be used when typing an option's value. Note that the "root" option is special in that it doesn't have a corresponding value.
Input Name Range Type Description aggregate string
Name of the aggregate for which we want to set an option. option-name string
Option name. Possible values:
- "fs_size_fixed" (value: "on" | "off")
- Setting this option to "on" causes the file system to remain the same size (and not grow) when the mirror is broken on a SnapMirrored aggregate (which MUST be embedded in a traditional volume), or when an "aggr add" is performed on it. This option is automatically set to be "on" when an aggregate becomes SnapMirrored. It remains "on" after the "snapmirror break" command is issued for an aggregate embedded in a traditional volume. This option allows an embedded aggregate to be SnapMirrored back to the source without needing to add disks to the source aggregate. If the aggregate size is larger than the file system size, turning off this option forces the file system to grow to the size of the aggregate.
- "ignore_inconsistent" (value: "on" | "off")
- This command can only be used in maintenance mode. If this option is set to "on", then the root aggregate may be brought online when booting even if it is marked as inconsistent. The user is cautioned that bringing it online prior to running WAFL_check or wafliron may result in further file system inconsistency.
- "nosnap" (value: "on" | "off")
- Setting this option to "on" disables automatic snapshots on the aggregate.
- "raid_cv" (value: "on" | "off")
- Setting the option to "off" disables block checksum protection on the aggregate. The default is "on". The user is cautioned that turning off the option exposes the filesystems contained in the aggregate to inconsistency that could be caused by a misbehaving hardware component in the system.
- "raid_zoned" (value: "on" | "off")
- Setting the option to "off" disables zoned checksum protection on the aggregate. The default is "on". The user is cautioned that turning off the option exposes the filesystems contained in the aggregate to inconsistency that could be caused by a misbehaving hardware component in the system.
- "raidsize" (value: < number >>)
- The maximum size of a RAID group within the aggregate. Changing this option doesn't cause existing RAID groups to grow or shrink. Rather, it only affects whether more disks will be added to the last existing RAID group in the future, and how large new RAID groups will be.
- "raidtype" (value: "raid4" | "raid_dp" | "raid0")
- The type of RAID group used for this aggregate. The "raid4" setting provides one parity disk per RAID group, while "raid_dp" provides two. Changing this option immediately changes the RAID group type for all RAID groups in the aggregate. When upgrading RAID groups from "raid4" to "raid_dp", each RAID group begins a reconstruction onto a spare disk allocated for the second "dparity" parity disk.
- "resyncsnaptime" (value: < number >)
- Sets the mirror resynchronization snapshot frequency to be the given number of minutes. The default value is 60 (minutes).
- "root" (value: < none >)
- The specified aggregate is to become the root aggregate for the filer on the next reboot. This option can be used on only one aggregate at any given time. The existing root aggregate will become a non-root aggregate after the reboot. Until the system is rebooted, the original aggregate will continue to show root as an option, and the new root aggregate will show diskroot as an option. In general, the aggregate that has the diskroot option is the one that becomes the root aggregate following the next reboot. The only way to remove the root status of an aggregate is to set it on another aggregate.
- "snapmirrored" (value : "off")
- If SnapMirror is enabled, the filer auto- matically sets this option to "on". Set this option to "off" with the "snapmirror" command if SnapMirror should no longer be used to update the mirror. After setting this option to "off", the mirror becomes a regular writable aggregate, and all its volumes are restored to whatever state they were last in. Note that it is not possible to set this option directly through this interface. Rather, it is automatically changed as a side effect of running the appropriate "snapmirror" commands.
- "snapshot_autodelete" (value: "on" | "off")
- Setting this option to "off" disables automatic snapshot deletion on the aggregate.
- "thorough_scrub" (value: "on" | "off")
- Setting the option to "on" enables thorough scrub on a block checksum aggregate. That means that a scrub will initialize any zeroed checksum entries that it finds. If there are any checksum entries to be initialized, scrub will run slower than normal.
option-value string
The value to set the named option. It may be the NULL/empty value only in the case of the "root" option.
Errno Description EINTERNALERROR EINVALIDINPUTERROR
| aggr-space-list-info | [top] |
Show the space usage of the aggregate on a per flexible volume basis.
Input Name Range Type Description aggregate string
optional
The aggregate to get the space information for. If not specified the space information for all aggregates is obtained. Output Name Range Type Description aggregates aggr-space-info[]
Various counts describing space usage in the aggregate.
Errno Description EINTERNALERROR
| aggr-split | [top] |
Remove the specified plex from a mirrored aggregate and create a new unmirrored aggregate with the specified name that contains the plex. The original mirrored aggregate thus becomes unmirrored. The plex to be split from the original aggregate must be functional (not partial), but it can otherwise be inactive, resyncing, or out-of-date. "Aggr split" can therefore be used to gain access to a plex that isn't up to date with respect to its partner plex if its partner plex is currently failed. If the plex is offline at the time of the split, the resulting aggregate will be offline. Otherwise, the resulting aggregate will be in the same online/offline/restricted state as the original aggregate. A split mirror can be joined back together via the "victim-aggregate" option to "aggr-mirror".
Input Name Range Type Description aggregate string
Name of the plex to split out of its aggregate, using the following format: [/vol/] [ ][ ] new-aggr-name string
Name of the new aggregate to create from the split plex.
Errno Description EINTERNALERROR EVOLUMENAMEINVALID EVOLUMEDOESNOTEXIST
| aggr-verify-list-info | [top] |
Get the status of RAID mirror verification on the named aggregate. Status includes percentage complete and whether it's currently suspended.
Input Name Range Type Description aggregate string
optional
Name of an existing aggregate. If no name is given, then mirror verification status is generated for all aggregates currently being verified. Output Name Range Type Description verify-details verify-detail-info[]
List of aggregates and their mirror verification status.
Errno Description EINTERNALERROR
| aggr-verify-resume | [top] |
Resume RAID mirror verification on the named aggregate. If no name is given, then resume mirror verification on all aggregates that have been suspended.
Input Name Range Type Description aggregate string
optional
Name of the existing aggregate for which mirror verification is to resume.
Errno Description EINTERNALERROR
| aggr-verify-start | [top] |
Start RAID mirror verification on the named aggregate. Verification compares the data in both plexes of a mirrored aggregate. In the default case, any blocks that differ are logged and no changes are made. The fix-plex option is used to fix any mismatches. It specifies which plex to fix. If no name is given, then mirror verification is started on all online aggregates. Use the "aggr-verify-list-info" API to check mirror verification status. If the fix-plex option is used, then a name must be specified.
Input Name Range Type Description aggregate string
optional
Name of the mirrored aggregate to verify. fix-plex integer
optional
If provided, this specifies the plex to fix in case the two plexes do not match. The default is to log any discrepancies instead of fixing them. log-only boolean
optional
If provided, and if the value is "true", then simply log any discrepancies instead of fixing them. The default value is "true". If log-only is "false", then the fix-plex option must also be specified. If log-only is "true" and fix-plex is also specified, then the log-only option will be ignored.
Errno Description EINTERNALERROR
| aggr-verify-stop | [top] |
Stop RAID mirror verification on the named aggregate. If no name is given, stop mirror verification on all aggregates currently being verified.
Input Name Range Type Description aggregate string
optional
Name of the aggregate for which we are to stop mirror verification.
Errno Description EINTERNALERROR
| aggr-verify-suspend | [top] |
Suspend RAID mirror verification on the named aggregate. If no name is given, suspend mirror verification on all aggregates currently being verified.
Input Name Range Type Description aggregate string
optional
Name of the aggregate for which we are to suspend mirror verification.
Errno Description EINTERNALERROR
| Element definition: aggr-info | [top] |
Aggregate status information.
Name Range Type Description checksum-status string
Checksum status. Possible values: "active", "off", "reverting", "none", "unknown", "initializing", "reinitializing", "reinitialized", "upgrading_phase1", "upgrading_phase2" checksum-style string
Checksum style. The possible values: none, zoned, block, wafl, unknown. disk-count integer
Number of disks in the aggregate. Range: [0..2^31-1]. files-total integer
Total file count. Range: [0..2^64-1]. files-used integer
Files used. Range: [0..2^64-1]. has-local-root boolean
Whether the aggregate (or tradvol) contains the local root volume. has-partner-root boolean
Whether the aggregate (or tradvol) contains the partner's root volume. is-checksum-enabled boolean
Is checksumming enabled for the aggregate? is-inconsistent boolean
Whether or not the aggregate is inconsistent. is-snaplock boolean
Whether or not it's a SnapLock aggregate. mirror-status string
Aggregate's mirror status. Possible values: invalid, uninitialized, needs CP count check, CP count check in progress, unmirrored, mirrored, mirror degraded, mirror resynchronizing, failed, limbo, and . name string
Aggregate name. plex-count integer
Number of plexes in the aggregate. This value tells us the size of the returned "plex" array. Range: [0..2^31-1]. plexes plex-info[]
List of plexes in the aggregate. raid-size integer
Current RAID group size. Range : [0..2^31-1]. raid-status string
RAID status. Possible values: normal, verifying, SnapMirrored, copying, ironing, mirrored, resyncing, mirror degraded, invalid, needs check, initializing, growing, partial, noparity, degraded, reconstruct, out-of-date, foreign, raid4, raid0, raid_dp. These values may appear by themselves or in combination separated by commas (e.g., "reconstruct,growing"). size-available integer
Available bytes in the aggregate. Range: [0..2^64-1]. size-percentage-used integer
optional
Percentage of aggregate used. This value is not returned if the aggregate is unusable (i.e., it's offline). Range : [0..100]. size-total integer
Aggregate total usable size in bytes, not including WAFL reserve and aggregate snapshot reserve. If the aggregate is restricted or offline, a value of 0 is returned. Range : [0..2^64-1]. size-used integer
Aggregate bytes used. This value is not returned if the aggregate is unusable (i.e., it's offline). Range: [0..2^64-1]. snaplock-type string
optional
The type of the snaplock aggregate. It is present for snaplock aggrs only, i.e. aggrs for which is-snaplock is "true". Possible values - "compliance" or "enterprise" state string
Aggregate state. The possible values: creating, failed, offline, online, partial, restricted, iron_restricted, unknown. type string
The type of aggregate. Possible values: aggr, trad "aggr" (for aggregates that can contain flexible volumes) "trad" (for aggregates embedded in traditional volumes) uuid string
Aggregate's Universal Unique IDentifier. UUIDs are 16-byte quantities that are typically displayed as having five hexadecimal fields separated by hyphens. For example: d2da3566-da53-11d7-a841-000100000529 volume-count integer
Number of volumes in the aggregate. Range: [0..200]. volume-count-striped-dv integer
optional
Number of striped volumes in the aggregate, of type data-stripe. These volumes are also reported in the full volume-count value. This field is for internal use only. Range: [0..200]. volume-count-striped-mdv integer
optional
Number of striped volumes in the aggregate, of type metadata-stripe. These volumes are also reported in the full volume-count value. This field is for internal use only. Range: [0..200]. volumes contained-volume-info[]
List of volumes contained the aggregate.
| Element definition: aggr-option-info | [top] |
Option key and value. The possible values are described in the "aggr-set-option" API below.
Name Range Type Description name string
Option key. value string
Option value.
| Element definition: aggr-space-info | [top] |
List of aggregates and their space usage information.
Name Range Type Description aggregate-name string
Name of the aggregate. size-asis-used integer
Space used by A-SIS metafiles. Range : [0..2^64-1] size-bssm-nvlog-used integer
optional
Space used by bi-directional Synchronous SnapMirror for NVLOG files. This element will be returned only if the value is not zero. Range : [0..2^64-1] size-free integer
Total free space in the aggregate Range : [0..2^64-1] size-metadata integer
Total space used by aggregates metadata. Range : [0..2^64-1] size-nominal integer
Total space contained in the aggreate minus the wafl reserve space. Range : [0..2^64-1] size-snap-used integer
Space used by aggregate snapshots. Range : [0..2^64-1] size-used integer
The total used space in the aggregate except the space used by snapshots. Range : [0..2^64-1] size-volume-allocated integer
Total space allocated to volumes in the aggregate. Range : [0..2^64-1] size-volume-used integer
Total space used by volumes in the aggregate. Range : [0..2^64-1] volume-count integer
Count of online virtual volumes in the aggregate. Range : [0..2^64-1] volumes volume-space-info[]
List of flexible volumes and their allocated space information.
| Element definition: disk-info | [top] |
Information for each disk in the plex.
Name Range Type Description name string
Name of a member disk.
| Element definition: mediascrub-detail-info | [top] |
Information about media scrubbing.
Name Range Type Description percentage-complete integer
optional
Media scrubbing percentage complete. raid-group string
Name of the RAID group.
| Element definition: raidgroup-size-info | [top] |
Default, minimum and maximum raidgroup size for each RAID type supported on this filer.
Name Range Type Description default-size integer
Default size of a RAID group of this type in aggregates. Range : [6..16]. maximum-size integer
Maximum size of a RAID group of this type in aggregates. Range : [6..28]. minimum-size integer
Minimum size of a RAID group of this type in aggregates. Possible values: 2, 3. raidtype string
Name of the RAID type allowed on this filer. Possible values: raid0, raid4, raid_dp.
| Element definition: raidtype-info | [top] |
RAID types allowed on this filer.
Name Range Type Description raidtype string
Name of an allowed RAID type. Possible values: raid0, raid4, raid_dp.
| Element definition: scrub-detail-info | [top] |
Scrubbing information.
Name Range Type Description is-suspended boolean
Suspended state of the scrub on that RAID group. last-scrub-timestamp integer
optional
Time at which the last full scrub completed. If a scrub has never been performed, this value will not be returned. The time value is in seconds since January 1, 1970. Range : [0..2^31-1]. percentage-complete integer
optional
Scrubbing percentage complete. I scrubbing is not active, this value will not be returned. Range : [0..100]. raid-group string
Name of the RAID group involved in the scrub.
| Element definition: verify-detail-info | [top] |
Information about mirror verification.
Name Range Type Description is-suspended boolean
Is mirror verification suspended for this aggregate? name string
Name of the aggregate. percentage-complete integer
optional
Mirror verification percentage complete. If verification isn't active, this value won't be returned. Range: [0..100].
| Element definition: contained-volume-info | [top] |
Information about a volume contained in the aggregate.
Name Range Type Description name string
Volume name.
| Element definition: plex-info | [top] |
Information for a plex.
Name Range Type Description is-online boolean
"true" if the plex is online, "false" otherwise. is-resyncing boolean
"true" if the plex is currently resyncing, "false" otherwise. name string
Plex name, e.g. /myvol/plex0 raid-groups raid-group-info[]
optional
List of all RAID groups in the plex. This appears only if the "verbose" parameter above is set to "true". resyncing-percentage integer
optional
If the plex is currently being resynced, then the completion percentage. Range : [0..100].
| Element definition: volume-space-info | [top] |
List of flexible volumes in the aggregate and their space usage.
Name Range Type Description guarantee string
Type of guarantee option set on this volume. Possible values: none, file, volume volume-allocated integer
Total space allocated for this volume in the aggregate. Range : [0..2^64-1] volume-name string
Name of the volume volume-used integer
Total space used by this volume. Range : [0..2^64-1]
| Element definition: raid-group-info | [top] |
Information for a particular RAID group.
Name Range Type Description disks disk-info[]
List of disks in this plex. is-reconstructing boolean
"true" if the RAID group is currently reconstructing. name string
RAID group name. reconstruction-percentage integer
optional
If reconstruction is going on, the the completion percentage. Range : [0-100]
| Element definition: disk-info | [top] |
Information for each disk in the plex.
Name Range Type Description name string
Name of a member disk.