 |
» |
|
|
 |
NAMEvxassist — create, relayout, convert, mirror, backup, grow, shrink, delete, and move volumes SYNOPSISvxassist [ options ] [ -b ] addlog volume
[ attribute...] vxassist [ options ] [ -b ] convert volume
[ attribute...] vxassist [ options ] [ -b ] growby volume
lengthchange [ attribute...] vxassist [ options ] [ -b ] growto volume
newlength [ attribute...] vxassist help
[alloc |
attrs |
layout |
mirror |
options |
showattrs |
space |
usage] vxassist [ options ] [ -b ] make volume
length [ attribute...] vxassist [ options ] [ -b ] maxgrow
volume [ attribute...] vxassist [ options ] [ -b ] maxsize
[ attribute...] vxassist [ options ] [ -b ] mirror volume
[ attribute...] vxassist [ options ] [ -b ] move volume
storage-spec... [ attribute...] vxassist [ options ] [ -b ] relayout
{ volume| plex} [ attribute...] vxassist [ options ] remove { volume | mirror | log }
volume [storage-spec...] [ attribute...] vxassist [ options ] shrinkby volume
lengthchange [ attribute...] vxassist [ options ] shrinkto volume
newlength [ attribute...] vxassist [ options ] snapabort volume vxassist [ options ] snapback snapvolume vxassist [ options ] snapclear snapvolume vxassist [ options ] snapshot volume
snapvolume [ attribute...] vxassist [ options ] [ -b ] snapstart
volume [ attribute...] vxassist [ options ] snapwait volume vxassist [ options ] snapprint [volume] DESCRIPTIONThe
vxassist
utility is an interface to the VERITAS Volume
Manager that:
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
You specify the appropriate keyword to
vxassist
to select the action to perform. Each operation can be applied to only one disk group at a time.
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).
For other operations,
the
volume
operand is used.
A specific disk group can be specified with
-g diskgroup.
When no disk attributes are specified,
the
make
operation defaults to using the
rootdg
disk group.
You can specify an alternate default disk group in a defaults file
(/etc/default/vxassist). Many
vxassist
operations can take a set of attributes that
specify how volumes should be laid out or which sets of disks to build
them on, among other things. There are two basic types
of attributes:
storage specifications, and attribute settings.
Storage specification attributes are either simple disk names
(for example, disk01),
or selected groups of disks
(for example, ctlr:c1 specifies all disks on controller 1).
You can exclude (negate) storage specification by specifying
the exclamation character (!) prefix.
For example,
you can combine the arguments
ctlr:c1 and !target:c1t5
to indicate that storage be allocated from controller 1,
but not from SCSI target 5 on that controller. 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),
constraint parameters (constrain allocations to a single controller),
and more.
See
ATTRIBUTES
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:c2 requests that vxassist create a new mirrored volume on any disks
that are not on controller 2. The selection of disks is constrained
by the mirror=ctlr attribute such that no disks within a mirror
can be on the same controller as any disks on the other mirror. Note: Some Volume Manager usage messages,
manual pages, and command output contain terms and descriptions
related to the VERITAS Storage Replicator for Volume Manager (SRVM).
SRVM is not supported in this release, so you should ignore
options and fields that refer to RLINK, RVG, and DCM. KEYWORDS- addlog
Add a log to a volume. There are three types of volumes - mirrored,
RAID-5, and replicated. Each volume type has a specific log type - DRL,
RAID-5, and DCM respectively. The DRL is a dirty region log, used for
fast mirror resynchronization. The DCM is a data change map, used for
fast resynchronization of a secondary RVG with its primary. A volume
can only have one type of log associated with it at any given time.
An attempt to associate a second type of log will fail. When adding a log, vxassist will make its best attempt at determining
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 will create a DCM log. When adding a 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 will be ignored and the existing log length will be
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 will pick 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 log to a DRL mirrored volume involves creating a single log
subdisk and a new plex to contain that subdisk. The new plex will
then be attached to the volume. Adding a log to a RAID-5 volume
involves creating a new plex that will be attached to the volume as a
log plex. Adding a DCM log to a replicated volume will by default add two
logs, each consisting of a log plex and associated subdisk. - convert
Converts a volume layout to a mirror-stripe from a stripe-mirror,
or from a mirror-stripe to a stripe-mirror.
Also converts to mirror-concat from a concat-mirror,
or from a mirror-concat to a concat-mirror. - growby | growto
Increases the length of the named volume to the length specified by
newlength (growto),
or by the length specified by
lengthchange (growby).
You specify the new length,
or change in length,
in Volume Manager standard lengths
(see
vxintro(1M)).
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: When you grow a volume,
it's a good idea to grow the file systems that are
mounted on the volume
(see
vxresize(1M)).
vxassist
does not resize file systems
(or other users of the volume, such as databases)
that reside on the volume.
Applications using the volume must adjust the data on the volume
after the shrink operation is initiated. When a volume is grown,
the volume may be converted from one layout to another as a side effect.
For example,
a volume that has the mirror-stripe layout may be converted
to stripe-mirror when it is grown.
This kind of conversion is done if
vxassist
determines that the new volume is too small or large for the original layout.
If the new volume layout is inappropriate,
you can convert the volume back using the
vxassist convert
command.
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. 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. - help
Displays information on
vxassist
usage and VxVM attributes.
For example,
to display information about using
vxassist
attributes,
enter:
- make
Creates a volume with the specified name and the specified length.
The length is specified as a standard Volume Manager length
(see
vxintro(1M)).
You can specify attributes to indicate various
properties and storage locations for the created volume.
See
Layout Specifications
for a description of the methods used to determine disk layouts. - maxgrow
Reports the maximum size a volume can grow given its attributes
and given the free storage available. - maxsize
Reports the maximum size a volume could be created with given the
attributes specified and given the free storage available. - mirror
Creates a new mirror (or plex) and attaches it to the volume.
This operation is allowed only if the volume is enabled.
Attributes can be specified to indicate various desired
properties and storage locations for the created volume.
Attributes that constrain mirroring
(such as requiring that mirrors be on separate groups of disks)
apply between the existing mirrors of the volume and the new mirror. - move
Moves subdisks within the named volume off the excluded storage
specified on the command line.
Excluded storage is specified with a prefix of
!.
The move operation requires that at least one
excluded storage specification be given. 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. - relayout
Changes a volume layout or properties.
This operation changes the number of columns in a stripe or
the stripe width of a volume. It also converts a volume
to or from RAID-5, mirrored, concat-mirrored, striped,
or any similar layout. During the relayout process, a volume may also be converted into an
intermediate layout. For example, to convert from a 4-column
mirror-stripe to a 5-column mirror-stripe, the volume is first changed
to a stripe-mirror before the new column is added. To change volume vol1 from a 4-column mirror-stripe to a 5-column
mirror-stripe, enter:
vxassist relayout vol1 ncol=5
vxassist convert vol1 layout=mirror-stripe To change volume vol1 from a 4-column stripe-mirror to a 5-column
stripe-mirror, enter:
vxassist relayout vol1 ncol=5 If you view the volume with vxprint during this
layout conversion, 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 remains in the
stripe-mirror layout. You must use vxassist convert
to convert back to a mirror-stripe layout. Note: If the system crashes during a relayout operation, the process
continues. However, if the relayout was a two-stage operation, you must
run a vxassist convert command to convert back to the original
layout. - remove
Depending on the next keyword (volume, mirror, or log),
vxassist deletes the entire volume,
one or more mirrors, or one or more logs.
When deleting a mirror or a log,
you can specify the storage to be removed using the attribute form
!diskname
(see Storage Specifications below).
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= 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 mirror or 1 log. - shrinkby | shrinkto
Decrease the length of the named volume to the length specified by
newlength (shrinkto),
or by the length specified by
lengthchange (shrinkby).
You specify the new length,
or change in length,
in Volume Manager standard lengths
(see
vxintro(1M)).
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 volume is shrunk,
the volume may be converted from one layout to another as a side effect.
For example,
a volume that has the mirror-stripe layout
may be converted to stripe-mirror when it is shrunk.
This kind of conversion is done if
vxassist
determines that the new volume is too small or large for the original layout.
If the new volume layout is inappropriate,
you can convert the volume back using the
vxassist convert
command.
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 residing on the
volume are not shrunk before shrinking the volume.
Use the
vxresize
command to shrink file systems on the volume (see
vxresize(1M)).
vxassist
does not resize file systems
(or other users of the volume, such as databases)
that reside on the volume.
Applications using the volume must adjust the data on the volume
before the shrink operation is initiated. - snapabort
When a snapstart mirror has been started (and eventually completed),
the snapabort can be used to remove the mirror snapshot. - snapstart
Create a temporary mirror and attach it to the named volume. When the
attach completes, the mirror will be considered a candidate for
selection by the snapshot operation.
Attributes can be specified to indicate desired properties
of the snapshot mirror. - snapshot
The snapshot operation takes one of these attached
temporary mirrors and creates a new volume with the temporary
mirror as its one plex. Some usage types will 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 VxFS file system, then cooperating procedures ensure that
all file system data is consistently flushed to the volume.
For hfs and other file system types,
the synchronization operation consists of a
call to sync, which will make the snapshot a better image,
but which 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. The use of the useopt allvols
without giving any volume names will attempt to create a sufficiently
long vxplex command to snapshot all the volumes in the disk
group. Additionally, a new useopt, -o name=pattern,
allows you to specify a name for the new volume. Otherwise, the
default is SNAP<unique_number>-<volname>. - snapwait
If a snapstart mirror attach is done as a background task (such
as using the -b option), it may be convenient to wait for an
attached mirror to become available. The snapwait operation
waits for such an attach to complete on the named volume. When a
snapshot attach has completed, the operation exits. - snapback
Finds a plex in the volume with the snap_rid set
and attaches it to the original volume. If the plex
is the last plex in a volume, the volume is removed from the
disk group. The direction of the resync can be determined by
using the useopt -o resyncfromoriginal or -o
resyncfromreplica. To choose the 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. - snapclear
Clears the
snap_rid
field of the volume and clears the FMR (fast mirror resynch) map.
snapback
cannot be invoked after
snapclear
is used. - snapprint
Displays the associations between the original volumes and
their respective replicas. If a volume is given, it displays output
for that volume or it displays an error message. The error message
is displayed if FMR maps are not enabled for that volume.
In the following example,
stressdg
is a disk group.
stressvol5
is the volume name.
V and v indicate the volume,
RP and rp indicate replica plex,
and
RR
indicates the replica record ID.
vxassist -g stressdg snapprint stressvol5
NAME USETYPE LENGTH
RP NAME VOLUME LENGTH
RR PLEXRID
v stressvol5 fsgen 20971520
rp stressvol5-01 snapvol5 20971520
OPTIONS- -b
Performs extended operations in the background.
This option applies to plex consistency recovery operations for
vxassist make,
growto,
growby,
to plex attach operations started by
vxassist mirror,
vxassist snapstart,
to relayout operations started by vxassist relayout,
and to the
addlog,
convert,
maxgrow,
maxsize,
move,
and
remove
operations. - -d defaults
Specifies a file containing defaults for various attributes related to
volume creation and space allocation.
If not specified,
this defaults to
/etc/default/vxassist. - -f
Forces operations not usually allowed
by vxassist. - -g diskgroup
Specify the disk group for the operation, either by disk group ID or
by disk group name. By default, the disk group is chosen based on the
medianame operands (if any) for the vxassist make operation,
or based on the volume operands for all other operations. - -n
Do not read the system defaults file. - -o useopt
Pass in usage-type-specific options to the operation. A certain set
of operations are expected to be implemented by all usage types:
- slow[=iodelay]
Reduce the system performance impact of copy operations. Copy and
plex consistency recovery operations are usually a set of short
operations on small regions of the volume (normally from 16 kilobytes
to 128 kilobytes). 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). - iosize=size
Perform copy and recovery operations in regions with the length
specified by size, which is a standard 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 typically
between 4 and 128 kilobytes. - name=pattern
Allows you to specify a pattern that the utilities use to make
the name of the new volume. The pattern consists of characters
and attributes.
If you do not specify a name for the
new volume, the default, SNAP%d-%v, is used.
- %v
Volume name. - %m
Mirror's original name. - %g
Diskgroup name. - %d,%x,%X
Serialization integers expressed
as a decimal integer, a lower-case hex integer, or an upper case hex
integer. - %s,%S
Serialization strings expressed as a lower or
upper case letters or a sequence of letters. - %%
Percent character.
- allvols
Takes a snapshot of all the volumes in the disk group.
An error results if one or more volumes do not have a
usable snapplex.
- -p
For use with maxsize and maxgrow. Prints only the
maximum size with no text wrappers. - -r
Tells vxassist to include the spare disks (the disks reserved
for relocation) in the calculation. - -t tasktag
If any tasks are registered to track the progress of an operation,
mark them with the tag tasktag. This option is passed to
utilities called by vxassist, so any child tasks are also
tagged with tasktag.
The tag specified by tasktag is a sequence of
up to 16 alphanumeric characters. - -U usetype
Limit the operation to apply to this usage type. Attempts to affect
volumes with a different usage type will fail. For a vxassist
make operation, this indicates the usage type to use for the
created volume. Otherwise, the default is used and is determined by
the existence of an entry in the /etc/default/vxassist file
or else is set to the fsgen usage type. - -v
Traces calls to other utilities to determine which VxVM commands
vxassist is executing.
Hardware-specific OptionsSome environments provide guidelines to optimize the Volume Manager's
interaction with intelligent storage systems. If these guidelines are
present, the Volume Manager follows the guidelines when creating
volumes or allocating space for volumes. By default, vxassist
only creates volumes that conform with these guidelines. The following
options change the behavior of vxassist make:
- -o override
Creates the specified volume and ignores any storage-specific
guidelines. Overriding the guidelines is not recommended
as it can result in incompatible objects,
or objects that cannot be administered by some utilities. - -o verify
Verifies that the specified volume can be created without violating
any storage-specific guidelines,
but does not create the volume.
If any guidelines are violated,
vxassist exits with an error message.
Refer to the vendor-specific documentation for more information
on how intelligent storage systems can interact with VERITAS Volume
Manager. ATTRIBUTESAttribute values for various purposes can be specified with arguments
of the form attribute=value. Attributes can also be
passed in through a defaults file. Default attribute values can be
stored in the file /etc/default/vxassist. 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).
Attributes from all sources have the same form. However, in some
cases, command-line attributes change default behaviors in ways that
defaults-file supplied attributes 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 will cause
mirroring or logging to happen by default. If such attributes are
specified in a defaults file, then they just 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. Storage SpecificationsStorage specification attributes have one of the following forms:
- [!]diskname
Specify (or exclude) the given disk. diskname refers to a disk
media record name in a Volume Manager disk group. - [!]diskclass:instance
Specify (or exclude) a set of disks. diskclass names a
particular type of disk grouping (for example, ctlr to indicate
groups of disks on a single controller), and instance specifies
which grouping of that type (for example c1). Each type of disk
class has a particular format for specifying instances of the class. - diskclass:same
Specify that the allocation must be constrained to include disks from
the same instance of the given class. For example, a storage
specification of diskparam:same indicates that all disks
selected must have the same basic parameters (tracksize, cylinder
size, size, and revolutions-per-minute), but does not specify which
specific parameters to use.
The defined disk classes (and alternate names, or aliases, for those
classes) are as follows:
- ctlr (alias c, ctrl, cntrl, controller)
Specify disks from a particular controller. The controller is
identified in the form c#, where # is a
decimal controller number starting at 0. - da
Specify a specific Volume Manager disk by disk access record name. An
example of a disk access record name is c2t1d0, which indicates
a special Volume Manager disk defined on system disk c2t1d0. - device (alias d)
Specify all Volume Manager disks on a specific physical disk. The
physical disk is specified in the form
c#t#d#, which indicates the controller,
target, and disk numbers.
Typically, only one
Volume Manager disk device is created for each physical disk. - diskrpm (alias rpm)
Specify disks with a particular number of revolutions per minute. The
revolutions per minute is given as a simple decimal number. - dm (alias disk)
Specify a Volume Manager disk by disk media record name, in the disk
group of the volume. Specifying a disk class type of dm or
disk is equivalent to giving a storage specification with no
disk class name. - target (alias t)
Specify disks on the same SCSI target address in the same controller.
The target is specified in the form c#t#.
For example, t:c2t4 selects disks on target 4 of controller 2.
Other AttributesOther attributes are of the form attribute=value.
The attribute name in an attribute
value pair will never contain a colon, so it is possible to specify a
disk that has an equal sign in its name using the storage
specification dm:disk01=a. Without the dm: prefix,
disk01=a would yield an error indicating an unrecognized
attribute. Defined attributes (and common aliases) are:
- alloc=storage-spec[,storage-spec,...]
This is provided as an alternate syntax for specifying storage as
single attributes. It is useful in a defaults file, so
that all attributes (including storage specifications) will be 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. - comment=comment
Specify a comment to give to a volume when it is created. This
comment can be displayed with vxprint -l, and can be changed, at
a later time, with vxedit set. This attribute is used only
with the make operation. - diskgroup=disk-group (alias: dg)
Specify 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). - excl=yes|y|on|true|no|n|off|false
Sets or clears the EXCLUSIVE flag on the volume.
A volume in exclusive open state
can be opened by only one node in the cluster at a time. Multiple
opens of an exclusive volume from the same node are permitted.
Non-exclusive volumes can be simultaneously opened by more than one node.
After a node opens an exclusive volume, every other node's open attempt
fails until the last close of the volume by the first opener. Such an open
failure returns a
EBUSY
error code.
Available only if the Volume Manager cluster feature is enabled. - fstype=file-system-type
Specify the file system type for a new volume (this is used only with
the make operation).
The file system type for a volume is
usually determined when needed by running the fstyp utility (see
fstyp(1M)),
but can be specified explicitly.
The file system
type parameter is used with the Volume Manager vxresize utility,
as well as with volume snapshots, copies, and dissociates (to
select features that are used with the VERITAS VxFS file system). The file system type can be changed at any later time with the
vxedit set operation. - group=owning-group
Set the group ID for a new volume. The group ID can be specified
numerically or with a system group name. This attribute is used only
with the make operation. By default, volumes are created with
group 0. - init=initialization-type
Specify the means for initializing a new volume. The default method
(which can be selected explicitly with init=default) is to call
vxvol start to do a usage-type-specific default initialization
operation. A new volume can be left uninitialized with
init=none. The most useful non-default initialization that can
be specified is init=zero, to clear the volume before enabling
it for general use. - layout=layout-spec[,layout-spec,...]
Specify a plex layout type (RAID-5, mirrored, unmirrored,
striped, cylinder alignment), and turn some features on and off
(such as logging). The list of layout specifications is given in the next
section. By default, unmirrored, non-striped volumes are created without a
log. - loglen=length
Specify a log length to use for dirty-region log subdisks for mirrored
volumes, for RAID-5 log plexes, or for DCM log plexes for replicated
volumes.
By default, specifying a log length on the command line creates a log.
Associating a log with a mirrored
or RAID-5 volume is sufficient to enable its use. The DCM log must be enabled using the vxrlink command.
This is because it is used for failure recovery and synchronization
of replicated volumes. - logtype=type
Specify the type of logging for a mirrored or replicated volume:
- dcm
Select DCM logging. - drl
Select dirty region logging (default behavior). - 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. - none
Disable logging. - region
Select dirty region logging; identical to
drl.
RAID-5 logging is automatically selected when a log is added
to a RAID-5 volume; there is no specific logtype for
this type of logging. If logtype is not specified for a volume, vxassist
attempts to create the optimal type of log. - max_nraid5column=number
(alias: maxraid5columns, max_nraidcolumn, max_nraid5stripe, max_nraidstripe, maxraidcolumns, maxraid5stripes, maxraidstripes) Specify the default maximum number of stripe columns for a RAID-5
volume (default value is 8). The rules for selecting the default number
of RAID-5 stripe columns are described in the nstripe attribute. - max_ncolumn=number (alias: maxcolumns, max_nstripe, maxstripes)
Specify the default maximum number of stripe columns, either for a
RAID-5 volume (if max_nraid5stripe is not also specified) or for
a striped plex (default value is 8). The rules for selecting the
default number of stripe columns is described in the nstripe attribute. - max_regionloglen=length (alias: maxregionloglen)
Specify the maximum default dirty region logging log subdisk length.
If the user does not specify the dirty region log length for a volume,
when creating the first log for a mirrored volume, vxassist uses
a simple formula based on the log length. The default length will not
be bounded by max_regionloglen (default value is 32K). - min_ncolumn=number (alias: mincolumns, min_nstripe, minstripes)
Specify the default minimum number of stripe columns for either a
RAID-5 volume (if min_nraid5stripe is not also specified) or for
a striped plex (default value is 2). The policy for selecting a default
number of stripe columns will not be allowed to select fewer than this
number of columns. - min_nraid5column=number
(alias: minraid5columns min_nraidcolumn, min_nraid5stripe, min_nraidstripe, minraidcolumns, minraid5stripes, minraidstripes) Specify the default minimum number of stripe columns for a RAID-5
volume (default value is 3). The policy for selecting a default number
of RAID-5 stripe columns will not be allowed to create a RAID-5 volume
with fewer than min_nraid5stripe stripe columns. - mirror= +/- number|yes|no|diskclass[,...]
Specify various mirroring parameters. Multiple mirroring parameters
can be given, each separated by a comma. A decimal number indicates a
specific number of mirrors to create, when creating a mirrored volume
(equivalent to nmirror=number). yes indicates that
volumes should be mirrored by default (equivalent to
layout=mirror). no indicates that volumes should be
unmirrored by default (equivalent to layout=nomirror). Any other mirroring parameters specify that volumes should be mirrored
across instances of a particular disk class.
For example,
mirror=target specifies that volumes should be mirrored between
SCSI target addresses.
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. - mirrorconfine=diskclass[,diskclass,...]
Specify a required list of disk classes for mirror confinement
constraints. If this attribute is specified,
a single mirror is confined to (that is, allocated from) a
group of disks belonging to a specific disk class.
Multiple mirrors can be allocated from a single disk class.
Multiple disk classes cannot be used to allocate a mirror.
The following example specifies that each mirror
is allocated from devices belonging to
a single SCSI target;
and multiple mirrors can be allocated from devices
belonging to a single SCSI target:
mirrorconfine=scsi_target
- mode=permissions
Specify the permissions for the block and character device nodes
created for a new volume. The mode can be specified either as an
octal number or symbolically. A symbolic mode is specified using the
syntax given in
chmod(1).
This attribute is used only with the
make operation. The default mode for a volume gives read and
write access only to the owner. - nlog= +/- number, (nlogs, logs)
Specify the number of logs to create, by default, for a RAID-5, mirrored,
or replicated volume (presuming that logs will be created). The number of
logs to create can be specified independently for RAID-5 or mirrored
volumes using the nraid5log and nregionlog attributes. - nmirror= +/- number, (nmirrors, mirrors)
Specify the number of mirrors to create when mirroring a volume
(default value is 2). - nraid5log=number
(alias: nraid5logs, raid5logs, nraidlog, nraidlogs, raidlogs) Specify 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. - nraid5stripe= +/- number
(alias: raid5stripes, nraid5column, nraidstripe, raidstripes, raidcolumns, nraidcolumn, raid5columns) Specify 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 the relayout, this value
can be preceded by a + or a - to add or subtract column(s). - nregionlog=number (alias: nregionlogs, regionlogs, ndrl)
Specify the number of log subdisks to create for a new mirrored volume
(default value 1). This attribute is used only with the make
operation, and only if logging is requested for the volume. - nstripe= +/- number
(alias: stripes, ncolumn, ncolumns, ncol, ncols, columns, cols) Specify 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 default is to adjust to the number of available
disks. For the relayout operation, the default is the same number
of stripe columns the volume has. For the relayout, this value
can be preceded by a + or a - to add or subtract column(s). - probe_granularity=size
The granularity is a result of the maxsize request. The default
size value is 1M. - raid5_stripeunit=width
(alias: raid5_stwid, raid5_st_width, raid5_stwidth, raid_st_width, raid_stripeunitsize, raid5_stripeunitsize, raid5_stripeunitwidth, raid_stwid, raid_stwidth, raid_stripeunit, raid_stripeunitwidth) Specify the stripe unit size to use when creating a new
RAID-5 volume (default value is 16K). This attribute is
used only with the make
operation. - raid5loglen=length, (alias: raidloglen)
Specify the log length to use when
adding the first log to a RAID-5 volume. The default is four times the
full stripe width (the stripe unit size times the number of stripe
columns). - regionloglen=length, (alias: drlloglen, drllen)
Specify the log subdisk length to use
when adding the first log subdisk to a mirrored volume. The default is
chosen based on a formula involving the volume length. - stripe=diskclass[,...]
Specify that volumes should be
striped across instances of a particular disk class.
For example,
stripe=target specifies that volumes should be striped between
SCSI target addresses.
Each column can contain disks from any number
of instances of the disk class, but different columns cannot use disks
from the same instance of the disk class. - stripe-mirror-col-trigger-pt=size
This size specification
triggers the creation of a stripe-mirror volume. If the size of the
volume is greater than the size specified in this attribute, then a
stripe-mirror volume is created. - stripe-mirror-col-split-trigger-pt=size
This size
specification triggers the creation of a stripe-mirror-sd volume. If
the size of each column is greater than the size specified in this
attribute, then a stripe-mirror-sd volume is created. - stripe_stripeunit=width
(alias: stripe_stwid, stripe_stwidth, stripe_st_width, stripe_stripeunitsize, stripe_stripeunitwidth) Specify 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 yet contain striped plexes, the default value is
64K. - stripeunit=width
(alias: stwid, stripewidth, stwidth, st_width, stripe_width, stripeunitsize, stripeunitwidth) Specify 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. - tmpsize=size
Specify the space to be used as temporary
storage in order to perform a relayout operation. - tmpalloc=storage-spec[,storage-spec,...]
Specify a set of storage specifications for the temporary storage
required during a relayout operation. The format is the same as for
the alloc attribute (a comma-separated list of storage
specifications). - user=owning-user
Specify the user ID for a new volume
(default value is root).
The user ID can be specified numerically or
it can be a system login name.
This attribute is used only with the
make operation. - usetype=volume-usage-type
Specify the usage type to use
when creating a new volume (default value is raid5 for RAID-5
volumes; fsgen, otherwise). This attribute is used only with the
make operation. The usage type can also be specified in the
option list with -U. - wantalloc=storage-spec[,storage-spec,...]
Specify a set of desired storage specifications.
This is useful in a defaults
file to indicate desired storage specifications that should be
discarded if they fail to yield a reasonable set of allocations.
The format is the same as for the
alloc attribute (a comma-separated
list of storage specifications). For example, a defaults file can name a specific controller type to
use for allocations, if possible. As soon as all disks on that type
of controller are full, other controllers will be used. - wantmirror=diskclass[,diskclass,...]
Specify a desired list of disk class mirroring specifications. This
is useful in a defaults file to indicate a set of desired mirroring
constraints that can be dropped if they fail to yield a reasonable set
of allocations. For example, a defaults file can specify that volumes should be
mirrored between disks on different controllers in the system.
Then, if the set of volumes builds up in such a way that a new
volume cannot be mirrored across controllers, this constraint will be dropped. - wantmirrorconfine=diskclass[,diskclass,...]
Specify a list of disk classes for mirror confinement constraints.
A single mirror is confined to (that is,
allocated entirely from) a group
of disks belonging to a single disk class. 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:
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. - wantstripe=diskclass[,diskclass,...]
Specify a desired list of disk class stripping specifications. This
is useful in a defaults file to indicate a set of desired stripping
constraints that can be dropped if they fail to yield a reasonable set
of allocations. For example, a defaults file can specify that volumes should be striped between disks on
different controllers in the system. Then, if the set of volumes builds up in such a
way that a new volume cannot be striped across controllers,
this constraint will be dropped.
Layout SpecificationsThe layout attribute specifies a comma-separated list of simple
parameters (with no arguments) that apply to vxassist
operations. Two new layouts were added in the 3.0 release of Volume Manager:
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=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 diskgroup must be created on a 3.0 or later release
to use the new layouts, but older diskgroups can be updated.
See the vxdg upgrade command for more information on upgrading
diskgroups. Defined layout specifications are:
- concat-mirror
New volumes should be concatenated and mirrored. The mirroring is handled at
each a subdisk level. The attribute stripe-mirror-col-split-trigger-pt
is applied. - contig, nocontig
Disallow or allow (default) plexes, regular stripe columns, or RAID-5
stripe columns from using multiple regions of disk. If contig
is specified, then plexes and columns must be allocated from a single
contiguous region of disk. If this is not possible, the allocation
fails. By default, vxassist tries to allocate space
contiguously, but will use multiple regions or multiple disks if
needed. - diskalign, nodiskalign
Align
(default)
or do not align
subdisks on cylinder boundaries. When
alignment is not disabled, subdisks are created beginning on
cylinder boundaries and are extended to match the end of a cylinder.
Dirty region log subdisks, however, are not cylinder aligned (they are
usually only 2 or 3 blocks long). Instead, when creating log
subdisks, spaces are located from the available disks that could not
be turned into regular subdisks because the spaces aren't cylinder
aligned. For example, once one cylinder is used for a log subdisk,
that cylinder cannot be used to create an aligned data (or RAID-5
log) subdisk, so other log subdisks will be created there until that
cylinder fills up. - grow, nogrow
Allows a volume to grow during a relayout operation. - log, nolog
Create (or do not create) dirty region logs (for mirrored volumes) or
log plexes (for RAID-5 volumes) when creating a new volume. This
attribute can be specified independently for mirrored and RAID-5
volumes with the raid5log and regionlog layout
specifications. The current implementation does not support the
creation of DCM logs in the layout specification. - mirror, nomirror, raid5
New volumes should be mirrored, unmirrored (default), or RAID-5,
respectively.
For mirror, the attributes stripe-mirror-col-trigger-pt
and stripe-mirror-col-split-trigger-pt are applied. - mirror-concat
New volumes should be mirrored. The mirroring is done at the volume level.
The attributes stripe-mirror-col-trigger-pt and
stripe-mirror-col-split-trigger-pt are ignored with this layout. - mirror-stripe
New volumes should be mirrored and striped. The mirroring is done at
the volume level. The attributes stripe-mirror-col-trigger-pt and
stripe-mirror-col-split-trigger-pt are ignored with this layout. - raid5log, noraid5log
Create (default) or do not create log plexes for RAID-5 volumes. - regionlog, noregionlog
Create or do not create (default) dirty-region log subdisks for
mirrored volumes. - shrink, noshrink
Allows a volume to shrink during a relayout operation. - span, nospan
Allow (default) or disallow plexes, regular stripe columns, or RAID-5
stripe columns from spanning multiple disks. If nospan is
indicated, then plexes or columns can be formed from multiple regions
of the same disk, but cannot be formed from more than one disk. - stripe, nostripe
New plexes should be striped or unstriped, respectively. When
creating a new volume, the default is nostripe. When adding a
new plex to an existing volume, the default is stripe if the
volume already has one or more striped plexes, and nostripe
in other cases. For stripe (when combined with mirror,
the attributes stripe-mirror-col-trigger-pt and
stripe-mirror-col-split-trigger-pt are applied. - stripe-mirror
New volumes should be striped and mirrored. The mirroring is handled at
each column level or subdisk level depending on the attribute
stripe-mirror-col-split-trigger-pt. - stripe-mirror-col
New volumes should be striped and mirrored. The mirroring is handled at
each column level. The attributes stripe-mirror-col-trigger-pt and
stripe-mirror-col-split-trigger-pt are ignored with this layout. - stripe-mirror-sd
New volumes should be striped and mirrored. The mirroring is handled at
each a subdisk level.
FILES- /etc/default/vxassist
System default settings file for vxassist attributes.
EXIT CODESThe vxassist utility exits with a non-zero status if the
attempted operation fails. A non-zero exit code is not a complete
indicator of the problems encountered, but rather denotes the first
condition that prevented further execution of the utility. See
vxintro(1M)
for a list of standard exit codes. SEE ALSOchmod(1),
fstyp(1M),
sync(1M),
vxedit(1M),
vxintro(1M),
vxmake(1M),
vxmend(1M),
vxplex(1M),
vxrelayout(1M),
vxresize(1M),
vxsd(1M),
vxtask(1M),
vxvol(1M).
|