Home > Veritas Storage Foundation™ Volume Manager Manual Pages
VXASSIST (1M) |
Maintenance Commands |
vxassist [options] [-b] addlog volume [attribute ...]
vxassist [options] [-b] add log volume [attribute ...]
vxassist [options] [-b] add mirror volume [attribute ...]
vxassist [options] [-b] [--noattach] -M add mirror volume ... [storage-spec ...] [attribute ...]
vxassist [-g diskgroup] [-b] [-O operation-tag] commit volume
vxassist [options] [-b] convert volume [attribute ...]
vxassist [options] [-b] evacuate
{column|disk|log|mirror|subdisk|volume}
volume [storage_spec ...] [attribute ...]
vxassist [options] [-b] growby volume lengthchange [attribute ...]
vxassist [options] -M growby
vxassist [options] [-b] growlogby volume
lengthchange [storage_spec ...] [attribute ..
.]
vxassist [options] [-b] growlogto volume
lengthchange [storage_spec ...] [attribute ..
.]
vxassist [options] [-b] growto volume newlength [attribute ...]
vxassist [options] -M growto
vxassist help { alloc | attrs | layout | mirror | options | showattrs | space | usage }
vxassist [options] list tag= tagname ...
vxassist [options] listattrs [lun_name1 [lun_name2 ...]]
vxassist [options] listtag {volume|vset}
vxassist [options] [-b] make volume length [attribute ...]
vxassist [options] -M make
vxassist [options] [-b] maxgrow volume [ attribute ...]
vxassist [options] [-b] maxsize [attribute ...]
vxassist [options] [-b] [-g diskgroup] [-P storage_pool] [-I rules] migrate volume ...
vxassist [options] -M migrate
vxassist [options] [-b] mirror volume [attribute ...]
vxassist [options] [-b] [--noattach] -M mirror volume ... [storage-spec ...] [attribute ...]
vxassist [options] [-b] [-k [-O operation-tag]] move volume \.br storage-spec ... [attribute ...]
vxassist [options] printintent [object_names ...]
vxassist [options] printrules volume ...
vxassist [options] [-b] relayout {volume|plex} [attribute ...]
vxassist [options] [-b] remove
{column|log|mirror|volume}
volume [storage-spec ...] [attribute ...]
vxassist [options] [-b] -M
remove mirror volume ...
[storage-spec ...] [attribute ...]
vxassist [options] removeall log volume
vxassist [options] removetag {volume|vset} tagname[=[tagvalue]] ...
vxassist [options] replacetag {volume|vset} old_tagname new_tagname
vxassist [-b] [-g diskgroup] reversemigrate volume ...
vxassist [-b] [-g diskgroup] reversemigrateall
vxassist [-g diskgroup] [-b] [-O operation-tag] rollback volume
vxassist [options] [-b] setstwidth volume [attribute ...]
vxassist [options] settag {volume|vset} tagname[= tagvalue] ...
vxassist [options] shrinkby volume lengthchange [attribute ...]
vxassist [options] -M shrinkby
vxassist [options] shrinkto volume newlength [attribute ...]
vxassist [options] -M shrinkto
vxassist [options] snapabort volume
vxassist [options] snapback snapvolume
vxassist [options] snapclear volume [snap_object]
vxassist [options] snapprint [volume]
vxassist [options] snapshot volume [snapvolume] [attribute ...]
vxassist [options] { -o allvols | -o site= sitename } [-o name= pattern] snapshot [attribute ...]
vxassist [options] [-b] snapstart [nmirror= number] volume [attribute ...]
vxassist [options] snapwait volume
vxassist [options] [-b] transform volume
[storage_spec ...] [attribute ...]
vxassist [options] transformreverse volume
vxassist [options] verify
- Finds space for and creates volumes
- Performs volume conversion
- Adds mirrors and logs to existing volumes
- Extends and shrinks existing volumes
- Migrates data from a specified set of disks
- Provides facilities for the online backup of existing volumes
Specify the appropriate keyword to vxassist to select an action to perform.
The vxassist utility also provides a command line interface to the Veritas Intelligent Storage Provisioning (ISP) feature of Veritas Volume Manager (VxVM) that provides rule-based allocation of storage for the creation and administration of application volumes. If a storage pool has been configured in a disk group, ISP volumes are created in it by default unless the -o nointent option is specified. If a disk group does not contain a storage pool, non-ISP volumes are created in it by default unless the -o intent option is specified, which has the side effect of also creating a storage pool. For operations on a disk group with a storage pool and one or more clone pools, the -P option can be used to specify the pool on which to operate.
Note: Not all keywords, options and attributes are applicable to both ISP and non-ISP volumes. This is noted where applicable on this manual page. The vxassist command returns an error if you try to perform an invalid operation on an ISP or non-ISP volume.
Each operation can be applied to only one disk group at a time. For most keywords, the volume operand specifies the volume on which to operate. For the make operation, attributes that name specific disks can be used to determine a default disk group, according to the standard disk group selection rules described in vxintro(1M). A specific disk group can be specified with -g diskgroup. If this option is not specified, and an alternate default disk group is not defined by specifying the diskgroup attribute on the command line or in a defaults file (usually /etc/default/vxassist), the default disk group is determined using the rules given in the vxdg(1M) manual page.
Many vxassist operations can take a set of attributes that specify such things as how to lay out volumes, or on which sets of disks to build them. There are two basic types of attributes:
- storage specifications
- attribute settings
Storage specification attributes are either simple disk names (for example, disk01), or groups of disks selected by a shared attribute such as controller or target. For example, ctlr:c1 specifies all disks on the second SCSI controller.
You can exclude (negate) storage specification by specifying the exclamation character (!) prefix. (Note: You may also need to escape the ! character to prevent it being interpreted by the shell.)
Other attributes are of the form attrname= value; these additional attributes can specify the type of a volume (mirrored, RAID-5, striped, logged), layout policies (contiguous, spanning), mirroring requirements (mirror across controllers and SCSI targets), and constraint parameters (constrain allocations to a single controller). See the ATTRIBUTES section below for a complete list of attribute specifications.
If no non-excluded storage specification attributes are given, any non-reserved, non-volatile, non-spare, non-excluded disk can be used to allocate storage. Attributes may constrain the selection, particularly with respect to the selection of multiple disks. For example, the command:
vxassist make mirvol 500m layout=mirror,log mirror=ctlr \!ctlr:c1
requests that vxassist create a new mirrored volume on any disks that are not on the second SCSI controller. The mirror=ctlr attribute constrains the selection of disks so that the mirrors are created on different controllers.
The addition of columns supports the specification of the following attributes: layout=grow, ncols, stripe_stripeunit, tmplen and use_storage.
DCO is a data change object, used for Persistent FastResync. Note: This operation is only supported for version 0 DCOs.
DRL is a dirty region log, used for speedy recovery of mirrors after a system crash.
Sequential DRL is a form of DRL that is optimized for volumes that are written to sequentially, such as database log volumes.
Note: For volumes with version 20 DCOs, DRL and sequential DRL are supported within the DCO volume itself. You can specify the dcoversion=20 attribute to the vxassist make command to create a volume with a version 20 DCO, or you can use the vxsnap prepare command to add a version 20 DCO to a volume. You cannot use the vxassist addlog command to add a version 20 DCO to a volume.
DCM is a data change map, used for fast resynchronization of a secondary RVG with its primary.
Mirrored volumes are associated with DRL or sequential DRL logs.
RAID-5 volumes are associated with RAID-5 logs.
Replicated volumes are associated with DCM logs.
By default, when adding a log, vxassist attempts to determine the correct type of log to add, even if no logtype attribute is specified. For example, if the volume is part of an RVG, vxassist attempts to create a DCM log.
When adding a DRL, RAID-5 or DCM log to a volume for the first time, the loglen attribute can be used to specify the length of the log; on adding additional logs, the loglen attribute is ignored and the existing log length is used. If a loglen which is too large or small to be practical is specified, vxassist may adjust the length to a reasonable size. If no loglen attribute is supplied, vxassist picks an appropriate log size. Other attributes can be specified to indicate desired properties for the new allocations. Mirroring constraints do not apply to logs, though storage constraints can be specified that limit the logs to disk sets already used by the volume.
Adding a version 0 DCO to a volume creates a DCO object that is associated with the volume, and a DCO volume that is associated with the DCO object. When created for a non-layered volume with at least 2 data plexes or for any layered volume, the default DCO volume has 2 DCO plexes (mirrors for redundancy), each of length 132 blocks. When created for a non-layered volume with a single data plex, the default DCO volume has a single unmirrored DCO plex of length 132 blocks.
Note: The actual length may be rounded up to the disk group alignment value (see vxdg(1M)).
Note: To allow operation of the dynamic disk group split/join feature (see vxdg(1M) for more information), vxassist attempts to place version 0 DCO plexes on the same disks as the plexes of the corresponding data volume. This allocation policy may not succeed if there is insufficient disk space. vxassist then uses available space in the remaining disks of the disk group. This may prevent certain disk group split or move operations if the DCO plexes cannot accompany their parent data volume. To overcome this, you can use storage specifications to specify explicitly the disks on which the DCO plexes are to be configured.
Note: Adding a DCO does not enable Persistent FastResync on the parent volume unless fastresync=yes is also specified.
Adding a DRL log to a mirrored volume creates a single log subdisk and a new plex to contain that subdisk. The new plex is then attached to the volume. Note: For volumes with version 20 DCOs, DRL is supported within the DCO volume itself. Dedicated DRL log plexes should not be created for such volumes.
Adding a RAID-5 log to a RAID-5 volume involves creating a new plex that is attached to the volume as a log plex.
Adding a DCM log to a replicated volume adds two logs (by default), each consisting of a log plex and associated subdisk. DCM logging can co-exist with DCO.
Note: This operation is not supported for ISP volumes.
For disks, excluded storage may specified using the ! prefix.
The names of column, log, mirror and subdisk names may be specified by the attributes columnnames, lognames, plexnames and sd respectively.
This operation also supports the use of the attributes evac_storage and use_storage to specify storage that is to be evacuated and populated respectively.
The growto operation fails if the new length is not greater than the current volume length. The length of the volume is increased by extending existing subdisks in the volume, or by adding and associating new subdisks. Plexes that are not already fully populated (that is, sparse) are left unchanged. Log-only plexes are also left unchanged.
Note: Following a relayout, specify the attribute layout=nodiskalign to the growby and growto commands if you want the subdisks to be grown using contiguous disk space.
Note: When you grow a volume, it is recommended that you also grow any file system that is configured on that volume (see vxresize(1M)). vxassist does not resize file systems (or other uses of the volume, such as databases) that reside on the volume.
When a non-ISP volume is grown, its layout may be converted as a side effect if vxassist determines that the new volume is too large for the original layout. The values of the stripe-mirror-col-trigger-pt and stripe-mirror-col-split-trigger-pt attributes (by default, 1 gigabyte) control whether a new layout will be applied. A mirror-stripe volume that is larger than the value of stripe-mirror-col-trigger-pt is converted to a stripe-mirror volume. If each column of a stripe-mirror-col volume is larger than the value of stripe-mirror-col-split-trigger-pt, the volume is converted to a stripe-mirror-sd volume where the individual subdisks, rather than the columns, are mirrored. A mirror-concat volume that is larger than the value of stripe-mirror-col-split-trigger-pt is converted to a concat-mirror volume where the individual subdisks, rather than the plexes, are mirrored.
If the new volume layout is inappropriate, use the vxassist convert operation to change the layout after the grow operation has finished.
See Layout Specifications for a description of the methods used to determine disk layouts.
Note: The relayout operation requires all mirrors in a volume to have the same layout. If a mirrored volume is composed of mixed plex layouts, relayout the mirror plexes to the same layout before attempting to relayout the volume.
You can specify attributes to indicate properties for the new allocations. Any mirroring constraints still apply between all extensions to the existing mirrors and the other mirrors. Growing of a volume requires that the volume be enabled.
When the size of a replicated volume changes, you can ensure that the size of the DCM is appropriate by removing all the DCM logs and adding them back without specifying the loglen attribute.
These operations can be applied to single volumes, or to multiple ISP volumes if the -M option is specified.
These operations support the specification of the following attributes: layout=contig, layout=span, spare, use_storage.
The growlogto operation fails if the new length is smaller than the current DCO volume length.
The logtype=dco attribute must be specified.
vxassist help attributes
Dotted tag hierarchies are understood. For example, the listing for tag=a.b includes all volumes that have tag names that start with a.b.
If LUN names are specified, only the attributes of those LUNs are displayed.
If the -a option is specified, the attributes of all LUNs that are attached to the host are displayed.
Otherwise, an error is returned if a disk group is not specified and no default disk group is defined (see the vxdg(1M) manual page).
This operation can be used to create multiple ISP volumes if the -M option is specified. This allows the allocation of storage to be balanced among the volumes that are created in the same operation. See the section Operations on Multiple Volumes for details.
ISP assigns the default intent, "allocate plexes, logs and columns on separate disks" to the volumes that are being migrated. You can specify additional rules using the -I option on the command line, or by entries in the definitions file. However, you cannot include mirror, stripe or log rules. Rules specified on the command line are applied to all the specified volumes. The use of a definitions file allows different rules to be applied to each volume.
Volumes specified on the command line are also associated with the same storage pool. If a storage pool is not specified using the -P option, the volumes are placed in the data storage pool of the disk group. The use of a definitions file allows the migrated volumes to be placed in different storage pools.
Note: Volumes to be migrated must be compatible with the Cross-platform Data Sharing (CDS) feature and have an alignment value of 8k. All volumes in a VVR replicated volume group (RVG) must be migrated together. All volumes that share a set of disks must be migrated in a single operation. Disks cannot be shared with any volumes that are not listed on the command line or in a definitions file. Volumes cannot share disks unless these disks are to be located in the same storage pool. Volumes with a usage type of root, such as those on a root disk that is under VxVM control, cannot be migrated. The disk group containing the volumes to be migrated must have a version number of 120 or greater (see vxdg(1M)).
Caution: Do not use vxassist to mirror an encapsulated root disk. Instead use menu item 6 (Mirror Volumes on a Disk) in the vxdiskadm command.
If the -M option is specified, mirrors may be added to several ISP volumes in a single operation. See the section Operations on Multiple Volumes for details.
If the volume is enabled, subdisks within detached or disabled plexes (or detached log or RAID-5 subdisks) are moved without recovery of data. If the volume is not enabled, stale log or RAID-5 subdisks, or subdisks within STALE or OFFLINE plexes, are moved without recovery; if there are other subdisks within a non-enabled volume that require moving, the move operation fails.
For enabled subdisks in enabled plexes within an enabled volume, the data within subdisks are moved to the new location, without loss of availability (or redundancy) of the volume.
If the -k option is specified, a subdisk move is initiated but the source subdisks are preserved on the original plexes, and the source and target subdisks are marked. Such an operation is termed a "tentative move" operation, and can be committed or rolled back at a later time. If the -O option is used to specify a tag, this tag can be used with the vxtask command to monitor, pause or abort such operations.
Note: This operation is only supported for ISP volumes.
Note: This operation is only supported for ISP volumes.
Note: This operation is not supported for ISP volumes.
Note: The relayout operation internally generates unique data object names (for example, v2-Dp02) when it converts a volume to a specified destination layout.
Note: Following a relayout, specify the attribute layout=nodiskalign to the growby and growto commands if you want the subdisks to be grown using contiguous disk space.
After relayout to a layered form, a volume may be converted to a non-layered form. For example, to convert from a 4-column mirror-stripe to a 5-column mirror-stripe, first relayout the volume as a stripe-mirror:
vxassist relayout vol1 nstripe=5
If you view the volume with vxprint during relayout, the volume shows several subvolumes that are used during the change, and a more complex configuration than usual.
After the new column is added, the volume is in stripe-mirror layout. Use vxassist convert to convert back to a mirror-stripe layout:
vxassist convert vol1 layout=mirror-stripe
Note: If the system crashes during relayout or conversion, the process continues when the system is rebooted. However, if the crash occurred during the first stage of a two-stage relayout and convert operation, only the first stage is subsequently completed after rebooting. You must run vxassist convert manually to complete the second stage.
The removal of columns supports the specification of the following attributes: layout=shrink, ncols, stripeunit and tmplen.
The removal of logs supports the specification of the following attributes: logtype (mandatory), lognames, nlogs, remaininglog and remove_storage.
Note: Specifying logtype=dco completely removes a version 0 DCO object, DCO volume and any snap objects that are associated with the specified volume, and also disables FastResync on the volume. To remove a version 20 DCO and DCO volume, use the vxsnap unprepare command.
The removal of mirrors supports the specification of the following attributes: nmirror, plexnames, remainingmirror and remove_storage.
Note: When deleting a mirror or a log, storage that is not to be removed is specified using the ! prefix. Storage that is to be removed is specified without this prefix.
For example, to remove a mirror on disk01, enter:
vxassist remove mirror vol01 !disk01
See vxplex(1M) for an example of an alternative method of removing a mirror from a volume.
The alloc=, nmirror=, and nlog= attributes also determine the number of mirrors or logs remaining after the remove operation completes. When the number of mirrors drops to 1, logs are also removed.
By default, vxassist removes 1 column, mirror or log as appropriate.
If the -M option is specified, mirrors may be removed from several ISP volumes in a single operation. See the section Operations on Multiple Volumes for details.
Note: This operation is only supported for ISP volumes.
The volumes that are specified on the command line must not share any disks with any volumes that are not listed on the command line.
Tag names and tag values are case-sensitive character strings of up to 256 characters. Tag names can consist of letters (A-Z and a-z), numbers (0-9), dashes (-), underscores (_) or periods (.) from the ASCII character set. A tag name must start with either a letter or an underscore. Tag values can consist of any character from the ASCII character set with a numeric value from 32 to 127.
The tag names "site", "udid" and "vdid" are reserved and should not be used. To avoid possible clashes with future product features, it is recommended that tag names do not start with any of the following strings: "asl", "be", "isp", "nbu", "sf", "symc" or "vx".
The shrinkto operation fails if the new length is not less than the current volume length.
The length of a volume is decreased by removing and shortening subdisks to leave each plex with the requested volume length. The freed space can then be allocated for use by other volumes. Log-only plexes are left unchanged.
When a non-ISP volume is shrunk, its layout may be converted as a side effect if vxassist determines that the new volume is too small for the original layout. The values of the stripe-mirror-col-trigger-pt and stripe-mirror-col-split-trigger-pt attributes (by default, 1 gigabyte) control whether a new layout will be applied. A stripe-mirror volume that is smaller than the value of stripe-mirror-col-trigger-pt is converted to a mirror-stripe volume. A concat-mirror volume that is smaller than the value of stripe-mirror-col-split-trigger-pt is converted to a mirror-concat volume.
If the new volume layout is inappropriate, use the vxassist convert operation to change the layout after the grow operation has finished.
See Layout Specifications for a description of the methods used to determine disk layouts.
Note: You cannot resize volumes comprised of different plex layouts. If you try to do so, an error message displays stating that the volume contains differing layouts.
Caution: Data can be lost or corrupted if file systems or other organized data residing on a volume are not shrunk before shrinking the volume. vxassist does not resize file systems (or other uses of the volume, such as databases) that reside on the volume. You can use the vxresize command to shrink file systems on the volume (see vxresize(1M)). Otherwise, use the appropriate application command to adjust the layout of data in the volume before initiating the shrink operation. You must specify the -f option to forcibly shrink volumes of usage type fsgen or raid5.
These operations can be applied to single volumes, or to multiple ISP volumes if the -M option is specified.
These operations support the specification of the following attributes: layout=contig, layout=nocontig, layout=span, spare, use_storage.
Note: This operation is not supported for ISP volumes.
Note: This operation is not supported for ISP volumes.
Note: The snapshot volume and the original volume must be in the same disk group.
If the -o allplexes option is specified, all snapshot plexes in the same disk group are reattached. Alternatively, if the nmirror= number attribute is specified, only number plexes are reattached.
The direction of the resynchronization can be determined by specifying either resyncfromoriginal or resyncfromreplica as the useopt argument to the -o option. To choose the original volume as the preferred copy of the data, use -o resyncfromoriginal. To choose the replica as the preferred copy of the data, use -o resyncfromreplica.
Note: Always unmount the snapshot volume (if mounted) before using snapback. You must also unmount the original volume (if mounted) before using the -o resyncfromreplica option.
Note: This operation is not supported for ISP volumes.
Note: snapback cannot be invoked after snapclear is used.
If Persistent FastResync is enabled and the original volume and the snapshot volume are in different disk groups, snapclear removes the snap object and clears the FastResync map for the snapshot volume that corresponds to the snapshot object. To stop tracking on the original volume for the snapshot volume, specify the snap object, snap_object, in the original volume that refers to the snapshot volume. You must also run vxassist snapclear separately on the snapshot volume. For example, if myvol1 and SNAP-myvol1 are in separate disk groups mydg1 and mydg2 respectively, the following command stops tracking on myvol1 with respect to SNAP-myvol1:
vxassist -g mydg1 snapclear myvol1 SNAP-myvol1_snp
However, tracking is still enabled on SNAP-myvol1 with respect to myvol1. The following command turns this tracking off by specifying the snap object, myvol1_snp, in SNAP-myvol1 that points to myvol1:
vxassist -g mydg2 snapclear SNAP-myvol1 myvol1_snp
If Persistent FastResync is enabled and the original volume and the snapshot volume are in the same disk group, snapclear removes the snap records for both the original volume and the snapshot volume in addition to clearing their FastResync maps.
Note: Either of the two previous examples stops Persistent FastResync tracking for both the snapshot volume (SNAP-myvol1) and the original volume (myvol1) if they are in the same disk group.
To support Non-Persistent FastResync and to be compatible with previous versions of VxVM, a single snapshot volume can be specified as the argument to snapclear, for example:
vxassist -g myolddg snapclear SNAP-myoldvol
Note: This operation is not supported for ISP volumes.
The following information is displayed:
- Name of the original volume.
- Names of all snapshot volumes.
- Length in blocks of the volume, detached plex, or snapshot plex.
- Percentage of the snapshot plex or detached plex that is considered to have been changed (dirty). For Non-Persistent FastResync, which keeps information about changed regions in a single map for the original volume and its snapshot volumes, the %DIRTY value is the same for the original volume as for a snapshot volume even if writes are only made to the snapshot volume. For Persistent FastResync, which maintains separate tracking maps for the original volume and each of its snapshot volumes, the %DIRTY value is based only on what has been written to an individual volume.
In the following example, Persistent FastResync is enabled on volume v1, and Non-Persistent FastResync on volume v2. V and v indicate the volume, DP and dp indicate detached plexes, and SS and ss indicate snapshot plexes.
# vxassist -g mydg snapprint v1 V NAME USETYPE LENGTH SS SNAPOBJ NAME LENGTH %DIRTY DP NAME VOLUME LENGTH %DIRTY v v1 fsgen 20480 ss SNAP-v1_snp SNAP-v1 20480 4 dp v1-01 v1 20480 0 dp v1-02 v1 20480 0 v SNAP-v1 fsgen 20480 ss v1_snp v1 20480 0 # vxassist -g mydg snapprint v2 V NAME USETYPE LENGTH SS SNAPOBJ NAME LENGTH %DIRTY DP NAME VOLUME LENGTH %DIRTY v v2 fsgen 20480 ss -- SNAP-v2 20480 0 dp v2-01 v2 20480 0 v SNAP-v2 fsgen 20480 ss -- v2 20480 0
Note: This operation is not supported for ISP volumes.
The comment attribute may also be used to set the comment field for the snapshot volume.
The following are examples of the use of the nmirror and comment attributes:
vxassist snapshot nmirror=2 \comment="mirrored snapvol for myvol" myvol snapvol
Some usage types attempt to synchronize any in-memory data associated with the volume (such as unwritten file system modifications) when the snapshot operation is done. In particular, if the fsgen usage type is used with a volume containing a Veritas File System (VxFS), then cooperating procedures ensure that all file system data is consistently flushed to the volume. For ext2 and other file system types, the synchronization operation calls sync. This makes the snapshot a better image, but it may leave some inconsistencies between in-memory file system data and the data residing on the backup image.
The snapshot command accepts more than one volume. All the given volumes are split atomically (in a single transaction). That is, all the given volumes are relatively consistent as a result of taking the snapshot. If you specify the -o allvols, it is not necessary to specify any volume names. vxassist attempts to create a sufficiently long vxplex command to take a snapshot of all the volumes in the disk group. You can use the -o name= pattern option to generate names for the snapshot volumes. Otherwise, the default name assigned to each snapshot volume takes the form SNAP%d-%v.
Note: This operation is not supported for ISP volumes.
The nmirror= number attribute can be used to specify the number of snapshot plexes to be attached to a volume. By default, number is 1.
Note: For this command, the nmirror= number attribute is specified before the volume name.
Note: To allow operation of the dynamic disk group split/join feature (see vxdg(1M) for more information), vxassist attempts to avoid placing snapshot plexes on the same disks as the plexes of the original volume or the plexes of its associated DCO volume. This allocation policy may not succeed if there is insufficient disk space. vxassist then uses any other available space in the disk group. This may prevent certain disk group split or move operations if the snapshot plexes and their associated DCO plexes cannot be physically separated from the plexes of the original volume or the plexes of its DCO volume. To overcome this, you can use storage specifications to specify explicitly the disks on which the snapshot plexes are to be configured.
Note: This operation is not supported for ISP volumes.
Note: The online transformation of an ISP volume is not necessarily complete if the vxtask command shows that synchronization of the volume has finished. A small additional time is required to perform cleanup operations.
Note: This operation is supported for ISP volumes only.
Note: If volume is undergoing a transformation, the vxtask list command shows that a synchronization task is being performed on the top-level volume.
Note: This operation is supported for ISP volumes only.
If the -a option is specified, the intent of all ISP application volumes in all disk groups is verified. Otherwise, the -g diskgroup option can be used to verify the intent of all application volumes in the specified disk group.
Note: This operation is supported for ISP volumes only.
When used with the verify keyword, verifies the intent of volumes in all disk groups.
Note: This option is supported for operations on ISP volumes only.
Note: This option is supported for ISP volumes only.
- allplexes
- Specifies that all available snapshot plexes in a disk group are to be reattached to their original volume during a snapback operation.
- allvols
- Takes a snapshot of all the volumes in the disk group. An error results if one or more volumes do not have a plex that is usable for the snapshot.
- intent
- Allows the creation of ISP volumes in a disk group that does not contain a storage pool. A storage pool is set up in the disk group with an autogrow policy of diskgroup and a selfsufficient policy of host. By default, a non-ISP volume would be created in such a disk group.
Note: Once a storage pool has been created, all volumes that are subsequently created in the disk group are ISP volumes unless the -o nointent option is specified.
- iosize= size
- Performs copy and recovery operations in regions with the length specified by size, which is a standard Veritas Volume Manager length number (see vxintro(1M)). Specifying a larger number typically causes the operation to complete sooner, but with greater impact on other processes using the volume. The default I/O size is 1 megabyte.
- name= pattern
- Specifies the template for naming new snapshot volumes. The pattern consists of characters and one or more of the following specifiers:
The default template name for a new snapshot volume is SNAP%d-%v.
- %%
- Single percent character.
- %d
- Unique serialization number expressed as a decimal integer.
- %g
- Disk group name.
- %m
- Mirror's original name.
- %s
- Serialization string expressed as a sequence of one or more lower case letters.
- %S
- Serialization string expressed as a sequence of one or more upper case letters.
- %v
- Volume name.
- %x
- Unique serialization number expressed as a lower-case hexadecimal integer.
- %X
- Unique serialization number expressed as an upper case hexadecimal integer.
- nointent
- Allows the creation of non-ISP volumes in a disk group that contains a storage pool. By default, an ISP volume would be created in such a disk group.
- numchild= number
- Specifies the number of child processes that are used to perform resynchronization during a snapback operation. The default value of number is 1 (no child processes), which is the same as specifying a number of 0. Specifying a larger value for number potentially speeds up resynchronization, although the effectiveness of this depends to some extent on the underlying characteristics of the disk array. No further benefit in performance may be noticeable for a value for number greater than 3.
By default, the child processes divide the volume into equally sized chunks, which they then resynchronize independently with the volume. This behavior may be modified using the useopt sequential.
Note: A large iosize of 1m or 2m is recommended for use with this option.
- ordered
- Specifies that ordered allocation should be used to create a new volume. For more information, see the Ordered Allocation section below.
- readonly
- Specifies that a read-only replica volume is created during a snapshot.
- renamesnapplex
- Specifies that a snapshot plex is renamed when the snapshot operation is used to create a snapshot volume. If this option is not specified, the plex retains the same name that it had in the original volume.
- resyncfromoriginal
- Performs a resync using the data in the original volume during a snapback.
- resyncfromreplica
- Performs a resync using the data in the snap plex during a snapback.
- sequential
- When specified with the useopt numchild for values of number greater than 1, the child processes co-operate in resynchronizing regions of the volume that are close together, starting at the beginning of the volume and moving to the end. This creates more overhead for the resynchronization, but it potentially makes better use of the sequential read-ahead buffer of the physical disks.
- site= sitename
- When specified with the snapshot operation, a snapshot is created from all volumes in the disk group that have a prepared snapshot plex in the SNAPDONE state at the specified site. The site: sitename2 storage allocation attribute can be used to specify storage at a different site. You can use the -o name= pattern option to generate names for the snapshot volumes. Otherwise, the default name assigned to each snapshot volume takes the form SNAP%d-%v.
- slow[= iodelay]
- Reduces the impact on system performance of copy operations. Copy and plex consistency recovery operations are usually a set of short operations on small regions of the volume (typically 1 megabyte). This option inserts a delay between the recovery of each such region. A specific delay can be specified with iodelay as a number of milliseconds, or a default is chosen (normally 250 milliseconds).
Note: This option is supported for operations on ISP volumes only.
For a make operation, this option specifies the usage type of the volume to be created. Otherwise, the default usage type set in the /etc/default/vxassist file is used, or if such an entry does not exist, the usage type is set to fsgen.
Note: These options need a separate license. Without the license, vxassist ignores the specified option.
Default attribute values for operations on non-ISP volumes can be stored in the file /etc/default/vxassist. Default attribute values for operations on ISP volumes can be stored in the file /etc/default/allocator. (The /etc/default/allocator_readme file contains a pristine copy of the /etc/default/allocator file as it is shipped and installed.)
Attributes are selected according to the order in which they are scanned. In general they are taken in decreasing priority of being specified on:
- 1.
- The command line.
- 2.
- The specified defaults file (as supplied with the -d command line argument).
- 3.
- The system defaults file (as specified in /etc/default/vxassist or /etc/default/allocator as appropriate).
Attributes from all sources have the same form. However, in some cases, command-line attributes change default behaviors in ways that attributes in the defaults file do not. In particular, references to mirroring (such as specifying a mirror count) or logging (such as specifying a log count or length) on the command line cause mirroring or logging to happen by default. If such attributes are specified in a defaults file, they indicate the attributes that would be used if mirroring or logging were enabled.
Attributes are either storage specifications (possibly negated), or are in the form attribute= value. In a defaults file, attributes are separated by a space or are on separate lines. Blank lines in a defaults file are ignored, and comments can be included with the standard # convention.
Note: The diskgeom attribute is not supported for EFI disks.
Note: The diskparam attribute is not supported for EFI disks.
vxdmpadm listenclosure all
For example, the following command excludes disks in the enclosure enc1 from the operation.
vxassist make vol1 1024 layout=mirror nmirror=2 \ !enclr:enc1
vxassist make vol2 2048 layout=mirror site:building1
The site name is propagated to all subdisk, plex and log plex records in a volume.
For operations on ISP volumes, storage can additionally be specified using the following expressions in conjunction with rules that may be combined by using the allof, eachof and noneof operators (see the OPERATORS section):
The following example evacuates data from subdisks belongs to the volume vol1 that are currently on controller c1 to available storage on any other controller:
vxassist -g mydg evacuate sd vol1 \ evac_storage='eachof("Controller"="c1")' \ use_storage='noneof("Controller"="c1")'
The next example creates a 10-gigabyte volume using disks from enclosure encl1 that are not available exclusively on controller c1:
vxassist -g mydg make vol2 10g \ use_storage='allof("Enclosure"="encl1",noneof("Controller"="c1"))'
Note: The storage specification does not contribute to the intent of a volume.
Defined attributes (and common aliases) are:
Specifies storage as single attributes. This is useful in a defaults file, so that all attributes (including storage specifications) are in the attribute= value format. Any number of storage specifications can be specified, separated by commas. More than one alloc attribute can be specified, in which case they are logically concatenated to form one longer list.
- 1
- S < T < A < D
- 2
- S < T < D < A
- 3
- S < A < T < D
- 4
- S < D < T < A
- 5
- S < A < D < T
- 6
- S < D < A < T
- 7
- A < S < T < D (default behavior)
- 8
- D < S < T < A
- 9
- A < S < D < T
- 10
- D < S < A < T
- 11
- A < D < S < T
- 12
- D < A < S < T
Here A stands for "autogrow," D for "desired rules," S for "self-sufficient," and T for "template combinations." The < operator indicates the precedence, so that "X < Y" means that Y is chosen in preference to X, and the rightmost items in the list are chosen before those to the left. For example, the default behavior of ISP (equivalent to allocation_policy_order=7), "A < S < T < D," means:
- T < D
- First, drop desired rules in preference to using a different template combination.
- S < T
- Next, use a different template combination in preference to adding more templates to the storage pool.
- A < S
- Finally, add more templates to the storage pool in preference to growing the storage pool.
Note: This attribute is supported for operations on ISP volumes only.
If allsites=off is specified, separate plexes need not be configured at all the sites.
Note: The allsites attribute must be set to off for RAID-5 volumes in a site-consistent disk group.
Note: This attribute is supported for operations on ISP volumes only.
Note: This attribute is supported for operations on ISP volumes only.
See the Veritas Storage Foundation Intelligent Storage Provisioning Administrator's Guide for a list of the set of capabilities that are provided by Veritas Volume Manager.
Note: This attribute is supported for operations on ISP volumes only.
For more information, see the Ordered Allocation section below.
Note: The actual length may be rounded up to the value of the disk group alignment (see vxdg(1M)).
Creating a version 20 DCO associates a DCO object with a volume, and associates a DCO volume with the DCO object. When created for a non-layered volume with at least 2 data plexes or for any layered volume, the default DCO volume has 2 DCO plexes (mirrors for redundancy) with a default region size of 64KB. A different region size can be specified by using the regionsz attribute.
Specifies the disk group for an operation. If a disk group is specified in a defaults file, then it just specifies the default disk group to use for the make operation, if no other means of determining the disk group can be used. If specified as a command line attribute, it has the same effect as specifying a disk group with the -g option (the operation is forced to apply to the given disk group).
Note: Only available if the Veritas Volume Manager cluster feature is enabled.
Note: A license is necessary to use the FastResync feature.
The file system type can be changed at any later time with the vxedit set operation.
Note: This attribute is supported for operations on ISP volumes only.
Note: This attribute is supported for operations on ISP volumes only.
For ISP volumes, the arguments to the layout attribute are automatically converted into rules.
For more information, see the Ordered Allocation section below.
A DCM log must be enabled using the vxrlink command. This is because it is used for failure recovery and synchronization of replicated volumes.
- dcm
- Select DCM (data change map). This is the default log type for replicated volumes.
- dco
- Select DCO (data change object). (This is used to implement Persistent FastResync, which is enabled by additionally specifying fastresync=on.) This creates a DCO object and a DCO volume with a plex size specified by the dcologlen attribute, and number of plexes specified using the ndcomirror attribute. The default names for the DCO object and DCO volume are vol_dco and vol_dcl respectively for a volume, vol.
If additional logging is required, it can be added to a volume by using the vxassist addlog command. DCO can co-exist with DCM logging for replicated volumes, or with DRL logging for mirrored volumes.
Note: Additional version 20 DCO maps can be added by using the vxsnap addmap command.
- drl
- Select DRL (dirty region logging). This is the default log type for mirrored volumes.
Note: For volumes with version 20 DCOs, DRL is supported within the DCO volume itself.
- drlseq
- Select sequential dirty region logging. This is identical to drl except that the number of dirty bits that can be set in the DRL is limited to the value of the tunable voldrl_max_seq_dirty (default value is 3). This is useful on volumes that are usually written to sequentially, such as database log volumes. Limiting the number of dirty regions allows for faster recovery if a crash occurs. However, if applied to volumes that are written to randomly, this type of logging can be a performance bottleneck as it limits the number of parallel writes that can be carried out.
Note: For volumes with version 20 DCOs, sequential DRL is supported within the DCO volume itself.
- none
- Do not create a log.
- region
- Select dirty region logging; identical to drl.
RAID-5 logging is automatically selected when a log plex is added to a RAID-5 volume; it has no specific logtype.
If logtype is not specified for a volume, vxassist attempts to create the optimal type of log.
If a mirrored volume is created using the thin provision lun, then the DCO version 20 type log is created by default. The default can be overridden by specifying the logype in the command line while creating the mirrored volume on thin disks.
Specifies the default maximum number of stripe columns for a RAID-5 volume (default value is 8 for non-ISP volumes, and 15 for ISP volumes). The rules for selecting the default number of RAID-5 stripe columns are described in the nstripe attribute.
Note: This attribute is supported for operations on ISP volumes only.
Specifies the default minimum number of stripe columns for a RAID-5 volume (default value is 3 for non-ISP volumes, and 2 for ISP volumes). The policy for selecting a default number of RAID-5 stripe columns is not allowed to create a RAID-5 volume with fewer than min_nraid5stripe stripe columns.
Note: It is notionally possible to create a RAID-5 volume with 2 columns in VxVM. This is effectively a 2-way mirror with reads directed to alternate stripe units on the two columns. This can improve read performance over that of a unstriped 2-way mirror. However, such a layout is usually much more inefficient in CPU usage when writing to the volume and is not generally recommended.
Any other mirroring parameters specify that volumes should be mirrored across instances of a particular disk class (such as ctlr, enclr, site or target). For example, mirror=ctlr specifies that disks in a mirror should not be on the same controller as disks in other mirrors within the same volume. Similarly, mirror=enclr specifies that disks in a mirror should not be from the same enclosure as disks in other mirrors within the same volume. Similarly, mirror=site specifies that the disks in a mirror should not be at the same site as other mirrors in the same volume.
Each mirror can contain disks from any number of instances of the disk class, but different mirrors cannot use disks from the same instance of the disk class.
For a relayout, this value can be preceded by a + or a - to add or subtract mirrors. The value can also be specified as src_nmirror to preserve the number of mirrors.
This attribute is also used to specify the number of snapshot plexes to be attached to a volume by a snapstart operation, and the number of plexes in a snapshot volume for snapshot and snapback operations. For a snapshot, there must be number SNAPDONE plexes available in the original volume. For a snapback, there must be number snapshot plexes available in the snapshot volume (which must also be in the same disk group as the original volume).
Specifies the number of log plexes to create for a new RAID-5 volume (default value is 1). This attribute is used only with the make operation.
Specifies the number of stripe columns to use when creating a new RAID-5 volume (the default is to adjust the number to available disks). This attribute is used only with make and relayout operations. For the relayout operation, the default is the same number of stripe columns the volume has. For a relayout, this value can be preceded by a + or a - to add or subtract columns.
Specifies the number of stripe columns to use when creating a new RAID-5 volume (with the make operation) or when creating a striped plex (with the make, relayout, mirror, and snapstart operations). The usual default behavior is to adjust to the number of available disks, but there are exceptions to this rule.
When creating an unmirrored striped volume, the default behavior is to adjust to half the number of available disks. This allows for the subsequent addition of a mirror to the volume. (A volume that does not have data redundancy cannot recover from disk failure.)
For relayout operations, the default behavior is to conserve the number of stripe columns in the volume. In such operations, the value of number can be preceded by + or - to specify a number of columns that are to be added or subtracted.
Note: This attribute is supported for operations on ISP volumes only.
Specifies the stripe unit size to use when creating a new RAID-5 volume (default value is 16k (16 kilobytes)). This attribute is used only with the make operation.
Note: The region size can only be specified for version 20 DCOs. It cannot be specified for version 0 DCOs.
If set to on, a volume that is being created must have a number of mirrors equal to or a multiple of the number of sites. If off is specified, this requirement is removed.
By default, creating a site-consistent volume also creates an associated DCO volume, and enables Persistent FastResync on the volume. This allows faster recovery of the volume during site reattachment.
Note: Site consistency is not supported for RAID-5 volumes.
If set to yes, spare disks are used. If necessary, free space is also used on disks that have been marked nohotuse=off. This is the default behavior.
If set to only, relocation storage is allocated using only spare disks.
If set to no, spare disks are not used. Alternatively, do not mark any of your disks as spares and do not mark them as available for use by hot relocation.
Specifies the stripe unit size to use when creating striped plexes to attach to a volume. When attaching a new plex, the default is to use the same stripe unit size as any other striped plexes in the volume. If the volume does not already contain striped plexes, the default value is 64k (64 kilobytes).
Specifies the stripe unit size to use for either a RAID-5 volume or for striped plexes. stripeunit can be used to set the values for both raid5_stripeunit and stripe_stripeunit.
The tag names "site", "udid" and "vdid" are reserved and should not be used. To avoid possible clashes with future product features, it is recommended that tag names do not start with any of the following strings: "asl", "be", "isp", "nbu", "sf", "symc" or "vx".
If not specified, a tag value is set to null.
More than one tag may be associated with a volume provided that each tag is uniquely named.
Note: The temporary volume is a 2-way mirror that requires at least two disks, and twice as much disk space as the size of the temporary volume.
If no type is specified, data is assumed.
For the cachevolume type, a cache object is also created above the cache volume.
For the snapshot type, a DCO and DCO volume are also created for the volume.
Note: This attribute is supported for operations on ISP volumes only.
Note: This attribute is supported for operations on ISP volumes only.
See the Veritas Storage Foundation Intelligent Storage Provisioning Administrator's Guide for a list of the set of volume templates that are provided by Veritas Volume Manager.
Note: This attribute is supported for operations on ISP volumes only.
For example, a defaults file can name a specific controller type to use for allocations, if possible. When all disks on that type of controller are full, other controllers are used.
For example, a defaults file can specify that volumes should be mirrored between disks on different controllers in the system. The constraint is dropped if the set of volumes builds up in such a way that a new volume cannot be mirrored across controllers.
This is useful in a defaults file to indicate a set of mirror confinement constraints that can be dropped if they fail to yield a reasonable set of allocations. For example, a defaults file can specify that a single mirror be confined to disks of the same vendor:
wantmirrorconfine=vendor
If vxassist cannot allocate a mirror from disk devices of one vendor, this constraint is dropped and the mirror is allocated from disk devices of other vendors.
For example, a defaults file can specify that volumes should be striped between disks on different controllers in the system. The constraint is dropped if the set of volumes builds up in such a way that a new volume cannot be striped across controllers.
Two new layouts were added in the 3.0 release of VxVM: stripe-mirror and concat-mirror. In previous releases, whenever mirroring was used, the mirroring had to happen above striping or concatenation. Now there can be mirroring both above and below striping and concatenation.
Putting mirroring below striping mirrors each column of the stripe. If the stripe is large enough to have multiple subdisks per column, each subdisk can be individually mirrored. A similar concatenated volume would also mirror each subdisk individually. These new layouts enhance redundancy and reduce recovery time in case of an error. In a mirror-stripe layout, if a disk fails, the entire plex is detached, thereby losing redundancy on the entire volume. When the disk is replaced, the entire plex must be brought up to date. Recovering the entire plex can take a substantial amount of time. If a disk fails in a stripe-mirror layout, only the failing subdisk must be detached, and only that portion of the volume loses redundancy. When the disk is replaced, only a portion of the volume needs to be recovered.
The new volume layouts are more complex than the older volume layouts. Because the advantages of recovery time and improved redundancy are more important for larger volumes, it is best to continue using mirror-stripe and mirror-concat for most volumes and only use stripe-mirror and concat-mirror for very large volumes.
You can specify layout=mirror-stripe or layout=stripe-mirror to implement the desired layout. If you specify layout=stripe,mirror or layout=mirror,stripe, vxassist automatically determines the best layout for the volume. Unless there is a reason to implement a particular layout, it is best to let vxassist create the layout for each volume. Because the advantages of the new layouts are related to the size of the volume, vxassist creates the simplest configuration for smaller volumes and the more complex stripe-mirror for larger volumes.
The attributes stripe-mirror-col-trigger-pt and stripe-mirror-col-split-trigger-pt control the selection. They can be set in /etc/default/vxassist. Volumes that are smaller than stripe-mirror-col-trigger-pt are created as mirror-stripe, and volumes that are larger are created as stripe-mirror. If vxassist creates the stripe-mirror and the columns are larger than stripe-mirror-col-split-trigger-pt, the individual subdisks are mirrored instead of mirroring the columns of the stripe. By default, both of these attributes are set to one gigabyte.
The disk group must be created on a 3.0 or later release to use the new layouts, but older disk groups can be updated. See the vxdg upgrade command for more information on upgrading disk groups.
Defined layout specifications are:
Note: vxassist always uses the disk group alignment value for EFI disks. If the value of the disk group alignment is greater than 1, specifying diskalign for EFI disks results in an error. The disk and cylinder alignment values for EFI disks are always set to 1. See vxdg(1M) for more information.
The diskalign attribute is not supported for layered volumes (concat-mirror and stripe-mirror).
- 1.
- Concatenate disks.
- 2.
- Form columns.
- 3.
- Form mirrors.
For example, the following command creates a mirrored-stripe volume with 3 columns and 2 mirrors on 6 disks:
vxassist -o ordered make mirstrvol 10g layout=mirror-stripe \ nstripe=3 disk01 disk02 disk03 disk04 disk05 disk06
This command places columns 1, 2 and 3 of the first mirror on disk01, disk02 and disk03 respectively, and columns 1, 2 and 3 of the second mirror on disk04, disk05 and disk06 respectively.
For layered volumes, the same rules are used to allocate storage as for non-layered volumes. For example, the following command creates a striped-mirror volume with 2 mirrored columns:
vxassist -o ordered make strmirvol 10g layout=stripe-mirror \ nstripe=2 disk01 disk02 disk03 disk04
This command mirrors column 1 across disk01 and disk03, and column 2 across disk02 and disk04.
The col_switch attribute can additionally be used to specify how space on the disks is to be concatenated into columns. For example, the following command creates a mirrored-stripe volume with 2 columns:
vxassist -o ordered make strmir2vol 10g layout=mirror-stripe \ nstripe=2 col_switch=3g,2g disk01 disk02 disk03 disk04 \ disk05 disk06 disk07 disk08
This command allocates 3 gigabytes from disk01 and 2 gigabytes from disk02 to column 1, and 3 gigabytes from disk03 and 2 gigabytes from disk04 to column 2. The mirrors of these columns are then similarly formed from disks disk05 through disk08.
confineto expressions may be used with the allof, anyof, eachof, noneof and oneof operators.
The default operator for merging confineto expressions is eachof.
exclude expressions may be used with the allof, eachof and noneof operators.
The noneof operator can be used to forcibly include sets of LUNs in the allocation.
The default operator for merging exclude expressions is eachof.
Note: Expressions involving multipath do not use operators to combine multiple arguments.
select expressions may be used with the allof, anyof, eachof, noneof and oneof operators.
The default operator for merging select expressions is anyof.
as shown in the following examples:rulename= attribute_name[= value][, ...]
confineto=VendorName=EMC,Room=Room1,Building select=Room=Room1,Room=Room2,Building exclude=VendorName=EMC,VendorName=Hitachi affinity=Enclosure separateby=Controller strong separateby=Spindles
which are equivalent to these rule expressions:
confineto eachof("VendorName"="EMC","Room"="Room1","Building") select anyof("Room"="Room1","Room"="Room2","Building") exclude allof("VendorName"="EMC","VendorName"="Hitachi") affinity "Enclosure" separateby "Controller" strong separateby "Spindles"
See the Veritas Storage Foundation Intelligent Storage Provisioning Administrator's Guide for details of the syntax of rule expressions.
See the Veritas Storage Foundation Intelligent Storage Provisioning Administrator's Guide for more information about these operators.
The make, grow and shrink operations can usually only be performed on a single volume that is specified on the command line. The migrate operation can be performed on multiple volumes that are specified on the command line, but the same rules are applied to each volume, and only a single destination storage pool may be used. This limitation may be overcome by specifying the -M option with these operations. The command then reads multiple volume definitions from the standard input until the end of file is encountered. Input can be redirected from a definitions file or from a here document.
The -M option can also be used to add mirrors to (mirror), or to remove mirrors from (remove mirror) multiple volumes in a single operation.
The syntax of the definitions for creating multiple volumes with make is shown here:
dgname"] [rules { volume-group-rules } ] volume "name" length { [cachevolume "cachevol"] [capability 'capability[(name=value[, ...])],capability ...]'] [comment "comment"] [dcologlen length] [dm dm1,[dm2, ...]] [drl on|off|true|false|yes|no|sequential] [excl on|off|true|false|yes|no] [fmr on|off|true|false|yes|no] [fstype file-system-type] [group "group"] [init active|none|zero] [iodelay delay] [iosize size] [layout "type"] [max_ncolumn number] [max_nraid5column number] [min_ncolumn number] [min_nraid5column number] [mode mode] [nvol number] [pool "poolname"] [raid5_stripeunit width] [raid5loglen length] [regionsize size] [rules { volume-rules } ] [spare yes|no|only] [stripe_stripeunit width] [tag "volume_tag"] [tasktag "tag"] [type cachevolume|data|snapshot] [user "user"] [user_template "ut1[,ut2 ...]"] [usetype volume-usage-type] [volume_template "vt1[,vt2 ...]"] [vxvmtaskid taskid] } [volume "name2" length2 { ... }] }; [volumegroup { ... };]volumegroup {[diskgroup "
Each volume group (volumegroup) definition contains the rules and volume definitions for the volumes that are to be created for a disk group.
For the migrate operation, the specification syntax is:
dgname" volume "volumename1" { pool "pool_name1" rules { volume1_rules } }; volume "volumename2" { pool "pool_name2" rules { volume2_rules } }; ...diskgroup "
For operations to grow or shrink multiple volumes, the syntax of each line in the input is:
dgname volume volname lengthdiskgroup
The following example adds two mirrors to three volumes at the site s1 in a single operation:
vxassist -g mydg -M mirror v1 v2 v3 site:s1 nmir=2
The following example removes one mirror from three volumes at the site s2 in a single operation:
vxassist -g mydg -M remove mirror v1 v2 v3 site:s2
vxassist -g mydg -P mypool maxsize capability='DataMirroring'
vxassist make -o intent vol1 100m rules='mirror 2' init=active
Create a 20-gigabyte striped volume with 4 stripes and its contents initialized to all zeros:
vxassist -g mydg make vol2 20g rules='stripe 4' init=zero
Create a 500-megabyte mirrored-stripe volume which is not initialized:
vxassist -g mydg make vol3 500m init=none \ rules='mirror 2{stripe 3}'
Using the DataStripeMirror capability, create a 30-gigabyte striped-mirror volume which is immediately active:
vxassist -g mydg make vol4 30g \ capability='DataStripeMirror(ncols=3,nmirs=2)' \ init=active
Create a 500-megabyte mirrored volume, relvol, using the volume template DataMirroring.
vxassist -g mydg make relvol 500m volume_template=DataMirroring
Create a 10-gigabyte 4-mirror volume, perfvol, on hardware-striped EMC storage that is in the same location:
vxassist -g mydg make perfvol 10g \ capability='DataMirroring(nmirs=4),PrefabricatedStriping' \ rules='confineto allof("Room","Vendor"="EMC")'
vxassist -M make <<!! volumegroup { diskgroup "tvdg" volume "tvol1" 1g { layout "contig" } volume "testvol2" 10g { init active capability 'DataMirroring(nmirs=3)' } }; !!
vxassist -g mydg mirror myrelvol nmirror=2
Add a mirror to the volume myvol2 using disk mydg10 for storage:
vxassist -g mydg mirror myvol2 dm:mydg10
Remove the two mirrors from volume myvol3 with plexes named plex01 and plex02:
vxassist -g mydg remove mirror testvol3 nmirror=2 \ plexnames=plex01,plex02
vxassist -g mydg maxgrow relvol
vxassist -g mydg growby pervol 25%
Shrink the volume myvol by 100MB:
vxassist -g mydg shrinkby myvol 100m
Growing and Shrinking Multiple Volumes Grow several volumes in varying disk groups by different amounts:
vxassist -M growby <<!! diskgroup ttdg volume vol1 100m diskgroup ttdg volume vol2 200m diskgroup mydg volume myvol3 50% !!
Shrink several volumes in different disk groups by varying amounts:
vxassist -M shrinkto <<!! diskgroup ttdg volume vol1 1g diskgroup mydg volume myvol4 90% !!
vxassist -g ttdg addlog tvol1 logtype=dco
Remove the DCO log from the volume tvol1:
vxassist -g ttdg remove log tvol1 logtype=dco
vxassist -g mydg growlogby myvol2 100% logtype=dco
vxassist -g mydg remove volume vol2
See vxintro(1M) for a list of standard exit codes.
Last updated: 17 Jul 2008
Copyright ©2009 Symantec Corporation
All rights reserved.