This section describes commands that manage the set of volumes accessible to the grid.
Initiate background check for volumes that need repair
volume check
None.
Initiate background check for volumes that need repair
Note: Execute volume repair --status to see the current state of the volume repair status for all volumes in the grid
Destroy or display list of unused volume(s), unused volume streams, or volumes that have broken symbolic links.
volume clean [ --unused | --link ] [--fail ] [--force] volume clean --status [ --unused | --link ] [ --batch ]
Destroy or display unused volumes that don't belong to any known entity (application, class, and so on) and unused volume streams.
Destroy or display broken symbolic link volumes (symbolic link volumes that point to a non-existing volume.)
Abort clean operation if there is any failure.
Disable prompting and user verification.
Display list of unused volumes
Display output in UDL format
volume clean
clean all unused volumes, unused volume streams, and broken symbolic link volumes
volume clean --unused
clean unused volumes and unused volume streams
volume clean --link
clean broken symbolic link volumes
volume clean --status
list all unused volumes, unused volume streams, and broken symbolic link volumes
volume clean --status --unused
list unused volumes and volume streams
volume clean --status --link
list broken symbolic link volumes
Notes:
This topic contains command output specification.
The output of the clean command is the following when invoked with --status option:
-- Unused Volumes --- Table with the following columns: Name, Scope, Type, State, Size(MB), Mirrored, Linked (type can be: unused, broken) ---Unused Volume Streams --- Table with the following headings: Name, State, Size(MB)
The output of the clean command is the following when invoked with --batch option:
volume name : scope_name=scope, state=state, type=type, size=size, mirrored=(yes|no|?), [link,] sysvol=logical-vol-name
...
Copy a volume.
volume copy <src>[%<spar>]<dst>[%<dpar>][comment=<val> | --stripcomment]
[mirrored=<val>][size=<val>] [store=<store>]
[fs_options=<val>] [--use-filer]
[--fscpy [--prefill]] [ -n ] [--overwrite [--force]]
Name of the existing volume to copy. Can specify any volume
Specifies the partition/logical volume to copy from (for example, '%parN[.parN]'). By default, a block level copy is done, leaving any additional space on the destination partition unused. If --fscpy is used, a filesystem level copy is done. In this case, the filesystem will be created with the full size of the destination partition/volume and the fs_options property will be honored when creating the fs. If the source volume has no partition table, this property should not be specified to copy of the whole volume.
Name of the newly copied volume. Must specify an application user, singleton class volume, or global volume
Specifies the partition/logical volume to copy to (for example, '%parN[.parN]'). To copy the source to the whole destination volume, instead of a partition, this property should remain blank.
Comment that is to be set for the destination volume
Set the comment for the destination volume to empty.
Set to 1 for mirrored volume.
Specify size for new volume. If not specified, the destination volume is created with the same size as the source volume. Units may be specified, such as 128M[B] or 2G[B]. If units are not specified, it is assumed that the size is in MB.
Specifies the volume store where the volume is created. Can set to one of the following values:
local - store volume on local server storage
san - store volume on a SAN
File system-specific options. Only valid if --fscpy argument is specified.
If the copy operation can be done as a block level copy and this option is specified, do the block level copy in the filer instead of on the controller. This can be used for partitioned or unpartitioned volumes.
Perform filesystem level copy when copying the volume. If this option is not specified, block-level copy is performed.
Allocate ALL blocks for new volume. This option is only valid if --fscpy is specified; otherwise it is ignored.
Overwrite destination volume if it exists
Do not prompt for confirmation of overwrite
Skip verification the volume reference that is in the class descriptor, if destination volume is an application singleton class volume.
Notes:
<any option> - Any option understood by mkfs.<filesystem>. The options will be passed directly to the mkfs tool for the chosen filesystem.
vol_group_name - String specifying the name of the LVM volume group to create on the volume. If not specified, a volume group name is randomly generated.
data_percentage - Percentage of the volume that is used to store data, remaining portion of the volume is for snapshots. If not specified, 80% of the volume is used for data.
<any option> - Any option understood by mkfs.ext3. The options will be passed directly to the mkfs tool and will be used for the data volume.
volume_label - The volume label for the dst volume. If empty, the vol_name property value is used instead.
active - Create the new partition as active (bootable). Valid values are yes and no. If omitted, the default value of no is used during format while the value defaults to the src volume type during fscopy
volume copy my-app:data my-app:data2
Copy application user volume. The volume may be partitioned or unpartitioned.
volume copy my-app:data my-app:data2 --fscpy
Copy application user volume using filesystem level copy. The operation will fail if any of the partitions are not supported by the Filer.
volume copy /system:MYSQL5.boot my-app:DBASE.boot -n
Copy global catalog class volume.
volume copy my-app:DBASE.boot my-app2:DBASE.boot
Copy application singleton class volume.
volume copy my-app:data1%par3.par1 my-app:data2%par3.par1
Copy logical partition 1 of extended partition 3 of a volume to logical partition 1 of extended partition 3 of another volume. Volume data2 must exist and have a partitioning table that has extended partition 3 with logical partition 1 in it that is large enough to fit the source partition.
volume copy my-app:data1%par3.par1.home my-app:data2
Copy lvm logical volume "home" (on the first logical partition of extended partition 3) to a separate unpartitioned volume. If the destination volume exists, --overwrite can be used to replace it.
volume copy my-app:data1 my-app:data2%par2 --fscpy
Copy an unpartitioned volume as partition 2 on the destination volume, doing filesystem copy and using all of the space on the destination partition.
Create a new application or global volume.
vol create <name>(mkfs=<fs>|fs=<fs>)[ <prop>=<val> ]* [ -n ][--prefill][ --batch ]
Name of the volume to create. The format of <name> is the following: <application>:[<class>.]<volume>, _GLOBAL:<volume>
or _GLOBAL_RO:<volume>.
File system type (for example, ext3)
Volume parameters. The following parameters may be set:
Specifies the volume store where the volume is created. May be set to one of the following values:
local - store volume on local server storage
san- store volume on a SAN
Volume size, units may be specified (for example, 128M[B], 2G[B]). If units are not specified, it is assumed that the value is in MB. Default is 1G
Volume comment. This parameter is not supported if the 'link' parameter is specified.
Additional file system options used to format the volume (See notes below for specifics)
Volume is mirrored
Name of application user or global volume to which the volume is to be linked. The format of the link is the following:
<application>:<volume>
or _GLOBAL:<volume>.
Partitioning parameters. (See notes below for specifics)
Skip verification that volume reference is in the class descriptor if adding an application singleton class volume.
Allocate ALL blocks of volume.
Display output in UDL format.
Notes:
Although ntfs and ntfs03 are supported filesystem names on the command line, the resulting volume is formatted as ntfs08.
The following describes the format of the partitioning parameters:
Specifies the size for partition N. Default: (disk_size - total_size_of_partitions_with_size_specified) / number_of_partitions_with_no_size_specified.
Specifies the filesystem type for partition N. Supports the same values as the fs property and also adds lvm and Extended. If the value is Extended, the partition will be of type extended and can hold logical volumes, no fs, fs_options, vg or lv properties can be user for this partition. To define logical partitions for an extended partition, use the parN second level property. fs=ext3-snapshot is now deprecated, the preferred way is to use fs=lvm. Default: raw
Options to pass to mkfs when creating the filesystem on the partition. Default: none
If a partition is specified as fs=Extended, this second level property can be used to create logical partitions on that extended partition.Any 2nd level property can be used as a 3rd level property for a logical partition. Example par3.fs=Extended par3.par1.fs=ext3.
The partition is created with fs=lvm, this can be used to specify the volume group for that lvm partition. If no vg is specified, a random string will be used
Size in [G,M,T] Bytes, default is (partition_size - total_size_of_logical_volumes_with_size_specified) / number_of_logical_volumes_with_no_size_specified
Specifies the filesystem type for this logical volume. Allowed values are any fs handled by the linux Filer.
Options to pass to mkfs when reating the filesystem on the logical volume. The value specified for the fs_options parameter is a space separated list, is file system specific, and is valid only with the mkfs parameter. The following are the options available for each supported filesystem:
<any option> - any option understood by mkfs.<filesystem>. The options will be passed directly to the mkfs tool for the chosen filesystem.
vol_group_name- string specifying the name of the LVM volume group to create on the volume. If not specified, a volume group name is randomly generated.
data_percentage - percentage of the volume that is used to store data, remaining portion of the volume is for snapshots. If not specified, 80% of the volume is used for data.
<any option> - any option understood by mkfs.ext3. The options will be passed directly to the mkfs tool and will be used for the data volume.
volume_label - the volume label for the dst volume. If empty, the vol_name property value is used instead.
active - create the new partition as active (bootable). Valid values are yes and no. If omitted, the default value of no is used during format while the value defaults to the src volume type during fscopy
vol create my-app:data fs=ext3
create 1G application user volume
vol create my-app:data fs=ext3 fs_options="-b 4096 -j -J size=180 -m 0"
create 1G application user volume specifying block size, journal size and reserved blocks.
vol create my-app:DBASE.boot fs=ext3 size=256M -n
create 256M application singleton class boot volume and don't check that volume reference exists in the class descriptor of DBASE.
vol create my-app:data fs=ext3-snapshot size=1G fs_options="vol_group_name=VGVOL data_percentage=75 -b 2048"
create 1G application user volume of type ext3-snapshot, with block size set to 2048 for the fs on the data volume.
vol create my-app:data size=5G par1.fs=ext2 par1.size=100M par2.fs=lvm par2.vg=VOLGR00 par2.root_lv.size=2GB par2.root_lv.fs=ext3 par2.home_lv.fs=ext3
Create 5GB disk with 2 primary partitions, first one is of size 100MB and ext2 formated, second one uses the rest of the disk space and has lvm on it with two volumes - one for / (using 2GB) and one for /home (using the rest of the partition space) - this is a typical setup that distro installers do by default
vol create my-app:data size=10G par1.fs=ext2 par2.fs=ext3 par3.fs=ext3 par4.fs=ext3
Create 10GB disk with 4 partitions
vol create my-app:data size=10G par1.fs=ext2 par2.fs=ext3 par3.fs=ext3 par4.fs=Extended par4.par1.fs=ext3
Same thing as above, but the last partition is logical (it will actually create 5 partitions, 3 primary, 1 extended and 1logical which resides on the extended)
This topic contains command output specification.
The output of this command is the following: volume name created [ with filesystem fstype ].
a. Symbolic link: Volume ‘<name>’ created as a symbolic link to <volume>. b. Regular volume: Volume ‘<name>’ created with filesystem ‘<fstype>’.
If the --batch option is specified, the output of this command is the following:
1. Batch output
a. Symbolic link:
volume <name>
{
link = <val>
comment = <val>
}
b. Regular volume
volume <name>
{
size = <val>
comment = <val>
fs_type = <val>
}
2. Non-batch output
a. Symbolic link:
Volume ‘<name>’ created as a symbolic link to <volume>.
b. Regular volume:
Volume ‘<name>’ created with filesystem ‘<fstype>’.
Remove an existing volume from an application.
volume destroy <name> [ --force ]
Name of the volume to remove. format of name is the following:
application:[class.]volume
_GLOBAL:volume - global volume
_GLOBAL_RO:volume - global read-only volume
Skip verification of volume destroy
volume destroy lamp:data
Destroy application user volume
volume destroy lamp:NAS1.boot
Destroy application singleton class volume
Notes:
Export a volume (application or singleton class volume or global volume).
volume export <name> <image file> [ --nocompress ] [ --force ]
vol export <name> local_ip=<local> remote_ip=<remote>
[migrating_class=<class>] encr_key=<volume> [--force]
Name of volume to export. The format of <name> is the following: <application>:[<class>.]<volume>, _GLOBAL:<volume>, or _GLOBAL_RO:<volume>
Name of the exported volume image residing within the root of the /vol/_impex directory. If the --nocompress option is not specified, a '.gz' extension is added to the image file name if not already specified. If executed by a grid maintainer, the volume image may reside within a subdirectory relative to the /vol/_impex folder.
Network information to configure on the migrator application running on the local grid. It has the following format:
[_vlan.][<vlan id>.]<ip address> | _net.<network name>.<ip_address>
Network information to configure on the migrator application running on the remote grid. It has the following format:
[_vlan.][<vlan id>.]<ip address> | _net.<network name>.<ip_address>
Specifies the assembly to use in building the local migrator application.
Default is /filer:Filer_Linux_ADMI
specifies the volume containing the fixed encryption keys to be supplied to the migrator application. This argument is required only when migration is between two grids.
Do not compress the exported volume image.
Overwrite the volume image already residing within the root of the /vol/_impex directory.
vol export myapp:myvol myvol.img
export application user volume creating compressed image file with name of myvol.img.gz.
vol export myapp:myclass.boot myclass.boot.img --nocompress
export application singleton class boot volume without compression with the name of 'myclass.boot.img'.
vol export _GLOBAL:myiso myiso.img
export a global volume with the name of 'myiso.img.gz'
vol export myapp:myvol local_ip=1.2.3.4 remote_ip=2.3.4.5 encr_key=_GLOBAL:mig_key
Start an export migrator application to be used to export a volume to a remote grid running an import migrator application.
Note: When a migrating class is specified, CA AppLogic assembles an application migrator application - consisting of the specified migrating class and a VPN appliance.
Format an existing volume.
vol format <name> [ <prop>=<val> ]* [ --force ]
Name of the volume to format. The format of <name> is the following: <application>:<volume>, _GLOBAL:<volume>
or
_GLOBAL_RO:<volume>
Volume parameters. The following parameters may be set:
file system type (for example, ext3)
additional file system options used to format the volume (See notes below for specifics)
Partitioning parameters. (See notes below for specifics)
Do not ask for verification of format operation
Notes:
The following describes the format of the partitioning parameters:
Specifies the size for partition N. Default: (disk_size - total_size_of_partitions_with_size_specified) / number_of_partitions_with_no_size_specified.
Specifies the filesystem type for partition N. Supports the same values as the fs property and also adds lvm and Extended. If the value is Extended, the partition will be of type extended and can hold logical volumes, no fs, fs_options, vg or lv properties can be used for this partition. To define logical partitions for an extended partition, use the parN second level property. fs=ext3-snapshot is now deprecated, the preferred way is to use fs=lvm. Default: raw
Options to pass to mkfs when creating the filesystem on the partition. Default: none
If a partition is specified as fs=Extended, this second level property can be used to create logical partitions on that extended partition.Any 2nd level property can be used as a 3rd level property for a logical partition. Example par3.fs=Extended par3.par1.fs=ext3.
The partition is created with fs=lvm, this can be used to specify the volume group for that lvm partition. If no vg is specified, a random string will be used.
Size in [G,M,T] Bytes, default is (partition_size - total_size_of_logical_volumes_with_size_specified) / number_of_logical_volumes_with_no_size_specified
Specifies the filesystem type for this logical volume. Allowed values are any fs handled by the Linux Filer.
Options to pass to mkfs when creating the filesystem on the logical volume. The value specified for the fs_options parameter is a space separated list, is file system specific, and is valid only with the mkfs parameter. The following are the options available for each supported filesystem:
<any option> - any option understood by mkfs.<filesystem>. The options will be passed directly to the mkfs tool for the chosen filesystem.
vol_group_name - string specifying the name of the LVM volume group to create on the volume. If not specified, a volume group name is randomly generated.
data_percentage - percentage of the volume that is used to store data, remaining portion of the volume is for snapshots. If not specified, 80% of the volume is used for data.
<any option> - any option understood by mkfs.ext3. The options will be passed directly to the mkfs tool and will be used for the data volume.
volume_label - the volume label for the dst volume. If empty, the vol_name property value is used instead.
active - create the new partition as active (bootable). Valid values are yes and no. If omitted, the default value of no is used during format while the value defaults to the src volume type during fscopy
vol format my-app:data fs=ext3
format application user volume
Check the health of the filesystem on a volume.
vol fscheck <name> [par=<par>]
Name of the volume to be checked
Specifies the partition to run the operation on. The syntax is the same as the one used by vol create/copy. If not specified, the operation is run on all of the supported partitions and logical volumes (if present)
vol fscheck my-app:data
check application user volume
vol fscheck /system:MYSQL5.boot
check application catalog volume
vol fscheck my_app:data par=par2
check second partition
Note: This operation is similar to executing 'fsck' over the volume.
Check and repair the filesystem on a volume.
vol fsrepair <name> [par=<par>]
Name of the volume to be repaired
Specifies the partition to run the operation on. The syntax is the same as the one used by vol create/copy. If not specified, the operation is run on all of the supported partitions and logical volumes (if present).
vol fsrepair my-app:data
repair application user volume
vol fsrepair /system:MYSQL5.boot
repair application catalog volume
vol fsrepair my_app:data par=par2.par1.root_lv
repair logical volume root_lv on the first logical partition of extended partition 2
Note: This operation is similar to executing 'fsck' with repair option over the volume.
Import a volume to an application (application or singleton class volume) or import a global volume.
vol import <name> <image file> [<prop>=<val>]*
[--overwrite[--force]][ -n]
vol import <name> local_ip=<local> remote_ip=<remote>
migrating_class=<class> encr_key=<key>
[ <prop>=<val> ]* [ --overwrite [ --force]] [ -n ]
vol import <name> --abort
Name of the volume to import. The format of name is the following:
application:[class.]volume - application user volume or application singleton class volume
_GLOBAL:volume - global volume
_GLOBAL_RO:volume - global read-only volume
Name of the volume image residing within the root directory of the /vol/_impex folder or a URL in the following format: http://path.
Compressed image files should have a .gz extension. If the image file does not have a .gz extension, then it is assumed that the image is not compressed. If executed by a grid maintainer, the volume image may reside within a subdirectory relative to the /vol/_impex folder.
IP information to be used for the migrator application on the local grid. The value has the following format:
[_vlan.][<vlan id>.]<ip address> |
_net.<network name>.<ip_address>
IP information to be used for communicating with the the migrator application on the remote grid. The value has the following format:
[_vlan.][<vlan id>.]<ip address> | _net.<network name>.<ip_address>
Specifies the assembly to use in building the local migrator application. This class may be from a catalog or application. If class is "default" or migrating_class not specified then "Filer_Linux_ADMI" will be used to do a file system level copy.
Specifies the volume containing fixed encryption keys to be supplied the migrating application. This argument is required only when migration is between two grids.
Volume parameters. The following parameters may be set:
volume size (recommended when importing compressed volume from a URL). Units may be specified (e.g., 128M[B], 2G[B]). If units are not specified, it is assumed that the value is in MB. This parameter must be specified when importing a volume using a migrating class.
Filesystem type. This parameter must be specified when importing a volume using a migrating class.
Additional filesystem options used to format the volume (See notes below for specifics).
Specifies the volume store where the volume is created. May be set to one of the following values:
local - store volume on local server storage
san - store volume on a SAN
(optional) volume comment
(optional) volume is mirrored
(optional) user name to use for authentication when importing the volume from a URL. If not specified, then it is assumed that there is no authentication.
(Optional) Prompt for password to use for authentication purposes when importing the volume from a URL. If the standard input is not a terminal device, it will not print a prompt and expect only one copy of the password on 'stdin' (this can be used for batch operations, to set the password from a file).
Abort a volume import operation. This option is only valid when importing a volume using a migrating class.
Overwrite existing volume.
Do not prompt for confirmation of volume overwrite.
Skip verification that volume reference is in the class descriptor if adding an application singleton class volume.
Notes:
Specifies the size for partition N. Default: (disk_size - total_size_of_partitions_with_size_specified)/ number_of_partitions_with_no_size_specified.
Specifies the filesystem type for partition N. Supports the same values as the fs property and also adds lvm and Extended. If the value is Extended, the partition will be of type extended and can hold logical volumes; no fs, fs_options, vg or lv properties can be used for this partition. To define logical partitions for an extended partition, use the parN second level property.fs=ext3-snapshot is now deprecated, the preferred way is to use fs=lvm.
Default: raw
Options to pass to mkfs when creating the filesystem on the partition. Default: none
If a partition is specified as fs=Extended, this second level property can be used to create logical partitions on that extended partition. Any 2nd level property can be used as a 3rd level property for a logical partition.
Example: par3.fs=Extended par3.par1.fs=ext3.
The partition is created with fs=lvm, this can be used to specify the volume group for that lvm partition. If no vg is specified, a random string will be used.
Size in [G,M,T] Bytes. Default: (partition_size- total_size_of_logical_volumes_with_size_specified)/ number_of_logical_volumes_with_no_size_specified
Specifies the filesystem type for this logical volume. Allowed values are any fs handled by the linux Filer.
Options to pass to mkfs when creating the filesystem on the logical volume.
Any option understood by mkfs.<filesystem>. The options will be passed directly to the mkfs tool for the chosen filesystem.
String specifying the name of the LVM volume group to create on the volume. If not specified, a volume group name is randomly generated.
Percentage of the volume that is used to store data. The remaining portion of the volume is for snapshots. If not specified, 80% of the volume is used for data.
Any option understood by mkfs.ext3. The options will be passed directly to the mkfs tool and will be used for the data volume.
The volume label for the volume. If empty, the vol_name property value is used instead.
Create the new partition as active (bootable). Valid values are yes and no. If omitted, the default value of no is used during format while the value defaults to the src volume type during fscopy.
vol import myapp:myvol myvol.img.gz size=1G
Import an application user volume.
vol import myapp:myclass.cdrom os.iso size=2G
Import an operating system ISO image to an application singleton class volume from the impex volume.
vol import _GLOBAL:my-iso http://mysrv.com/os.iso size=2G
Import an ISO image into a global volume from an HTTP server that does not require authentication.
vol import myapp:myvol local_ip=1.2.3.4 remote_ip=2.3.4.5 migrating_class=default
Start an import migrator application to be used to import a volume from a remote grid running an export migrator application.
vol import myapp:myvol --abort
Abort volume import operation that is using a migrator application
Retrieve detailed information for an existing volume.
volume info <name> [--batch]
Name of the volume for which to retrieve information The format of name is the following:
application:volume - application volume
application:class.volume - singleton class volume
application/catalog:class.volume - application catalog class volume
/catalog:class.volume - global catalog class volume
application/volcache:subordinate.volume - application instance volume
_GLOBAL:volume - global volume
_GLOBAL_RO:volume - global read-only volume
Display output in UDL format
Retrieve information for application user volume
Retrieve information for application singleton class volume
Retrieve information for application local catalog class volume
Retrieve information for global catalog class volume
Note: A specification of the output of this command can be found here.
Name : sugarcrm:data
Link : no
Comment :
Size : 50 MB
State : ok
Filesystem : ext3
Mount State : in_use
Mounted Device : none
Current Users : 1
Attributes : rw
Time Created : Sat May 27 08:16:24 2006
Time Written : Sat May 27 08:16:24 2006
Time Accessed : Sat May 27 10:58:53 2006
Number Mirrors : 2
Mirrors :
Server State
srv3 ok
srv1 ok
This topic contains command output specification.
The output of this command is the following:
Name : val Link To : val Comment : val UUID : val Size : val State : val Progress : val Filesystem : val Partitions : val Partition Filesystem Size val val val Unused Space : val Mount State : val Mounted Device : val Current Users : val Mount Attributes : val Time Created : val Time Written : val Time Accessed : val Number Mirrors : val
volume <name>
{
link = val
comment = val
uuid = val
size = val
state = val
progress = val
filesystem = val
partitions
{
partition <name> : size = <val> fs = <val>
...
}
unused_space = val
mount_state = val
mount_path = val
n_users = val
mount_attr = val
time_created = val
time_written = val
time_accessed = val
n_mirrors = val
mirror <name>, server = val, state = val
...
}
List volumes in the specified scope.
vol list --all [--verbose][--batch] [--mounted] vol list --global | _GLOBAL | _GLOBAL_RO [--verbose][--batch] [--mounted] vol list server=<name> [ --verbose ][ --batch ] [--mounted] vol list <name> [ --verbose ] [ --batch ] [ --all ] [--mounted]
application, catalog, class, cache, or server name.
For global catalogs, the format of name is /catalog.
For application volumes, the format of name is application.
For application class volumes, the format of name is application:class.
For local catalogs, the format of name is application/catalog.
For local catalog class volumes, the format of name is application/catalog:class.
For cached volumes, the format of name is application/volcache.
If server is specified, name is the name of a server.
Include volume comment in the list
Display output in UDL format
Display only those volumes that are mounted on the controller.
List all volumes. When specified in addition to an application name, all volumes for that application are listed.
List all global volumes.
List global volumes.
List only global read-only volumes.
List all volumes that have at least one mirror on the specified server.
List all volumes
List all volumes with a mirror on 'srv2'
List volumes for 'my-app'
List ALL volumes for 'my-app'
List instance volumes for 'my-app'
List volumes for application singleton class 'DBASE'
List volumes for global catalog class 'MYSQL5'
List all global read-write volumes
List all global read-only volumes
Notes: If no name is specified and the --all option is specified, all volumes in the grid are listed.
If an application name is specified and the --all option is specified, ALL volumes for the application are listed.
A specification of the output of this command can be found here.
Scope Name Size(MB) Server State Filesystem Mirrored Mount State --------------------------------------------------------------------------------------------------------------------- perf perf 2500 srv2,srv3 ok ext3 Y available perf perf1 2500 srv2 ok ext3 N available perf PERF1.boot 1650 srv2,srv3 ok ext3 Y available sugarcrm code 50 srv2,srv3 ok ext3 Y in_use sugarcrm config 50 srv1,srv2 ok ext3 Y in_use sugarcrm data 50 srv3,srv1 ok ext3 Y in_use sugarcrm logs 50 srv2,srv3 ok ext3 Y in_use test uservol 10 srv2,srv3 ok ext3 Y available applfc/local in1.boot 80 srv1,srv2 ok ext3 Y available applfc/local in1.usr 200 srv2,srv3 ok ext3 Y available jsperf/catalog PERF.boot 1650 srv2,srv3 ok ext3 Y available newcat/catalog HLB.boot 80 srv3,srv1 ok ext3 Y available newcat/catalog HLB.usr 200 srv2,srv3 ok ext3 Y available newcat/catalog IN.boot 80 srv2,srv3 ok ext3 Y available newcat/catalog IN.usr 200 srv2,srv3 ok ext3 Y available applfc/volcache main.T_DRN.boot 901 srv1,srv3 ok ext3 Y available applfc/volcache main.T_SRC.boot 1101 srv1,srv3 ok ext3 Y available bh/volcache main.LUX.boot 80 srv3,srv1 ok ext3 Y available jsperf/volcache main.PERF.boot 1650 srv2 degraded ext3 Y available jsperf/volcache main.PERF1.boot 1650 srv3 degraded ext3 Y available jsperf/volcache main.T_DRN.boot 901 srv1,srv2 ok ext3 Y available perf/volcache main.PERF.boot 1650 srv3,srv2 ok ext3 Y available qa_app1/volcache main.comp1.boot 901 srv1,srv2 degraded ext3 Y available qa_app1/volcache main.comp2.boot 901 srv2,srv3 degraded ext3 Y available qa_app1/volcache main.comp3.boot 901 srv3,srv1 ok ext3 Y available qa_app1/volcache main.comp4.boot 901 srv1,srv2 degraded ext3 Y available qa_app1/volcache main.comp5.boot 901 srv3,srv1 ok ext3 Y available qa_app1/volcache main.comp6.boot 901 srv2,srv3 degraded ext3 Y available qa_app1/volcache main.comp7.boot 901 srv1,srv2 degraded ext3 Y available qa_app1/volcache main.comp8.boot 901 srv2,srv3 degraded ext3 Y available qa_gway/volcache main.in1.boot 80 srv3,srv1 ok ext3 Y available qa_gway/volcache main.in2.boot 80 srv1,srv2 ok ext3 Y available qa_gway/volcache main.out1.boot 80 srv1,srv2 ok ext3 Y available qa_gway/volcache main.out2.boot 80 srv3,srv1 ok ext3 Y available qa_gway/volcache main.prc1.boot 901 srv2,srv3 ok ext3 Y available qa_gway/volcache main.prc2.boot 901 srv2,srv3 ok ext3 Y available sugarcrm/volcache main.admin.boot 80 srv2,srv3 ok ext3 Y in_use sugarcrm/volcache main.config.boot 80 srv1,srv2 ok ext3 Y in_use sugarcrm/volcache main.dbase.boot 80 srv3,srv1 ok ext3 Y in_use sugarcrm/volcache main.logs.boot 80 srv3,srv1 ok ext3 Y in_use sugarcrm/volcache main.mail.boot 80 srv1,srv2 ok ext3 Y in_use sugarcrm/volcache main.srv1.boot 110 srv3,srv1 ok ext3 Y in_use sugarcrm/volcache main.srv2.boot 110 srv1,srv2 ok ext3 Y in_use sugarcrm/volcache main.usr.boot 80 srv2,srv3 ok ext3 Y in_use sugarcrm/volcache main.webs.boot 80 srv2,srv3 ok ext3 Y in_use /proto LINUX.boot 2048 srv2,srv3 ok ext3 Y available /system HLB.boot 80 srv1,srv2 ok ext3 Y available /system HLB.usr 200 srv3,srv1 ok ext3 Y in_use /system IN.boot 80 srv2,srv3 ok ext3 Y available /system IN.usr 200 srv1,srv2 ok ext3 Y in_use /system LUX.boot 80 srv3,srv1 ok ext3 Y available /system LUX.usr 200 srv2,srv3 ok ext3 Y available /system MYSQL.boot 80 srv1,srv2 ok ext3 Y available /system MYSQL.usr 200 srv3,srv1 ok ext3 Y in_use /system NAS.boot 80 srv2,srv3 ok ext3 Y available /system NAS.usr 200 srv1,srv2 ok ext3 Y in_use /system NET.boot 80 srv2,srv3 ok ext3 Y available /system NET.usr 200 srv1,srv2 ok ext3 Y available /system OUT.boot 80 srv3,srv1 ok ext3 Y available /system OUT.usr 200 srv2,srv3 ok ext3 Y in_use /system WEB.boot 110 srv1,srv2 ok ext3 Y available /system WEB.usr 400 srv3,srv1 ok ext3 Y in_use /test LINUX.boot 2048 srv1,srv2 ok ext3 Y available /test PERF.boot 1650 srv1,srv2 ok ext3 Y available
This topic contains command output specification.
The output of this command is a table which contains the following columns:
For application, catalog, and cache scopes, the Scope Name column is not included in the output.
If the --verbose option is specified, Link and Comment columns are included in the output.
The states for a volume are:
The mount states for a volume are:
If the --batch option is specified, the output of this command is the following:
volume name : scope_type=val, scope_name=val, size=val, \
state=val, filesystem=val, n_mirrors=val, \
mount_state=val,[link=volume,] comment=val
The output specifies a single volume per line.
volume info
The output of this command is the following:
Name : val Link : val (display only if volume is a symbolic link) Comment : val Size : val State : val Progress : val% (displayed only if in transitional state) Filesystem : val Mount State : val Mounted Device : val Current Users : val Attributes : val Time Created : val Time Written : val Time Accessed : val Number Mirrors : val Mirrors : (Table containing the following columns: Server, State)
If the --batch option is specified, the output of this command is the following:
volume name
{
link = val
comment = "val"
size = val
state = val
progress = val (displayed only if in transitional state)
filesystem = val
mount_state = val
mount_path = val
n_users = val
attributes = val
time_created = val
time_written = val
time_accessed = val
n_mirrors = val
mirror <name> : server = val, state = val
...
}
Manage a volume
vol manage <name> [<name2>] [ --abort | ( [ --ro | --rw ] [ <prop>=<val> ]* [ --nossh ] [ --nomount ] [filer=<filer> ] ) ]
Name of the volume to be managed.
Name of secondary volume to be managed. If this argument is specified, the volume represented by name is managed read-only and the volume represented by name2 is managed read/write.
Terminates previous volume manage session.
Manage volume as read-only.
Manage volume as read/write.
Specifies settings to configure external network access to the volume to allow for files being uploaded or downloaded to or from the volume.
The following values are supported:
ip
Specifies a comma separated list of one or more network resources to which the interface is to be connected. A network resource has the following format:
[[_net.]<networkname>.]<ipaddr> - text representation of an IP address optionally prefixed by a network name. If the IP address does not appear in multiple networks, just <ipaddr> is allowed.
host.<hostname> - Refers to the IP address that corresponds to <hostname> (via gethostbyname()).
The IP address must be present in the list of network resources and be unique, in other words it cannot appear on multiple networks, such as VLANS.
dns1
Specifies the IP address of the primary DNS server used to resolve domain names. This allows the user to specify hostnames when uploading/downloading files to/from a volume.
dns2
Specifies the IP address of the secondary DNS server, which will be used if the primary DNS server does not respond.
Do not provide SSH access to the managed volume.
Do not mount file system within the filer.
Specifies the Filer used for the operation. Values are 'windows' or 'linux'. If this option is not specified, the filer is selected based on the first partition that is not raw. The option must be specified when managing raw volumes.
volume manage my-aoo:data
manage application user volume
volume manage /system:MYSQL5.boot --ro
manage application catalog class volume as read-only
volume manage /myapp:data ip=192.168.1.100 dns1=192.168.1.254
manage application user volume and configure external network interface.
volume manage my-app:data my-app:data1
manage two application user volumes
vol manage my-app:data --abort
abort management of application user volume
vol manage my-app:data1 --abort
abort management of the previous volume management session
Notes:
Migrate a volume between grids
Syntax
vol migrate <remote_grid> <name> [local_ip=<local_ip> remote_ip=<remote_ip>]
[migrating_class=<migrating_class>]
[encr_key=<encr_key>]
[new_name=<new_name>]
[<option>]* [<prop>=<val>]*
Parameters
Name or IP address of the remote grid.
Name of the volume to migrate. The format of <name> is:
<application>:<volume>, _GLOBAL:<volume>, or _GLOBAL_RO:<volume>
IP address information assigned to the migrating application on this grid used to perform the volume migration. The format of the IP information is:
[_vlan.] [<vlan id>.]<ip address> | _net.<networkName>.<ip_address>
This argument is only valid if the grids have different architectures.
IP address information assigned to the migrating application on the remote grid used to perform the volume migration. The format of the IP information is:
[_vlan.][<vlan id>.]<ip address> | _net.<networkName>.<ip_address>
This argument is only valid if the grids have different architectures.
Specifies the class to use in building the local migrator application. This class must reside in a global catalog. The default is /filer:Filer_Linux_ADMI
This argument is only valid if the grids have different architectures.
New name for the volume. The format of <name> is:
<application>:<volume>, _GLOBAL:<volume>, or _GLOBAL_RO:<volume>
Specifies the name of a volume containing fixed encryption keys to be supplied to the applications performing the volume migration.
This argument is only valid if the grids have different architectures.
Migrate the volume to the remote grid. This requires bi-directional trust between the two grids.
Migrate the volume from the remote grid.
Do not compress volume while migrating.
Skip cleanup upon failure or completion (troubleshooting).
Volume parameters. Volume attributes are retrieved from the volume being migrated. The following parameters may be used to override the current values from the volumes being migrated. Use extreme caution when reducing sizes of volumes or partitions.
File system type (e.g., ext3)
Volume size. Units may be specified (e.g., 128M[B], 2G[B]). If units are not in MB. Default is 1G.
Volume comment
Additional filesystem options used to format the volume
Volume is mirrored.
(Optional) Partitioning parameters. For details, refer to Notes.
Examples
vol migrate mynewgrid.ca.net myapp:myvol local_ip=1.2.3.4 remote_ip=2.3.4.5
Migrate volume between grids with different architectures
vol migrate mynewgrid.ca.net myapp:myvol local_ip=1.2.3.4 remote_ip=2.3.4.5 encr_key=GLOBAL:mig_key
Migrate volume between grids with different architectures and specify an encryption key volume to use.
vol migrate mynewgrid.ca.net myapp:myvol local_ip=1.2.3.4 remote_ip=2.3.4.5 migrating_clss=/filer:Filer_Linux_ADMI
Migrate volume between grids with different architectures and specify a migrating class.
Notes
Specifies the size for partition N. Default: (disk_size - total_size_of_partitions_with_size_specified) / number_of_partitions_with_no_size_specified.
Specifies the filesystem type for partition N.
Supports the same values as the fs property and also adds lvm and extended. If the value is extended, the partition will be of type extended and can hold logical volumes; no fs, fs_options, vg or lv properties can be used for this partition. To define logical partitions for an extended partition, use the parN second level property.
fs=ext3-snapshot is now deprecated, the preferred way is to use fs=lvm. Default: raw
Options to pass to mkfs when creating the filesystem on the partition. Default: none
If a partition is specified as fs=Extended, this second level property can be used to create logical partitions on that extended partition. Any 2nd level property can be used as a 3rd level property for a logical partition. Example par3.fs=Extended par3.par1.fs=ext3.
The partition is created with fs=lvm. This can be used to specify the volume group for that lvm partition. If no vg is specified, a random string will be used.
Size in [G,M,T] Bytes. Default: (partition_size- total_size_of_logical_volumes_with_size_specified)/ number_of_logical_volumes_with_no_size_specified
Specifies the filesystem type for this logical volume. Allowed values are any fs handled by the Linux Filer.
Options to pass to mkfs when creating the filesystem on the logical volume.
* <any option> - Any option understood by mkfs.<filesystem>. The options will be passed directly to the mkfs tool for the specified filesystem.
* vol_group_name - String specifying the name of the LVM volume group to create on the volume. If not specified, a volume group name is randomly generated.
* data_percentage - Percentage of the volume that is used to store data. The remaining portion of the volume is for snapshots. If not specified, 80% of the volume is used for data.
* <any option> - Any option understood by mkfs.ext3. The options will be passed directly to the mkfs tool and will be used for the data volume.
* volume_label - The volume label for the volume. If empty, the vol_name property value is used instead.
* active - Create the new partition as active (bootable). Valid values are yes and no. If omitted, the default value of no is used during format, while the value defaults to the src volume type during fscopy.
Move a volume to another application.
volume move src dest
Name of the existing volume to move. Must specify an application user volume.
Name of the destination volume. Must specify an application user volume.
volume move sugarcrm:data newapp:data
Move volume from application 'sugarcrm' to application 'newapp'
Notes: A specification of the naming convention for CA AppLogic entities can be found here.
This command is not supported in single server mode.
If the volume is currently in use, this command will fail.
Relocate volume(s) or display list of volumes that need relocation.
Syntax
vol relocate (<name> | --all) [ n=<n-vols> ] [ --nowait ]
[ --force ] [ --suspend ]
vol relocate (<name> | --all) [ store=<store> ]
[ --force ] [ --suspend ]
vol relocate --status [--batch]
Parameters
Name of the volume(s) to relocate.
Relocate all volumes that need relocation.
Specify the number of volumes to simultaneously relocate; if not specified, relocate one volume at a time.
Specify the volume store to which the volume is to be relocated. The value may be 'san' or 'local'. This operation is essentially a volume copy.
Start operation in the background - do not wait for operation to complete.
Ignore failures and continue with relocation.
Stop relocation of volumes currently relocating.
Display list of volumes that need to be relocated or display status for a specific volume.
Display output in UDL format
Examples:
vol relocate --all
Relocate all volumes
vol relocate --all --nowait
Relocate all volumes in background
vol relocate /system
Relocate any global catalog volumes
vol relocate /system:MYSQL5.boot
Relocate global catalog class volume
vol relocate my-app
Relocate any app volumes
vol relocate my-app:data
Relocate app user volume
vol relocate my-app:DBASE.boot
Relocate app singleton class volume
vol relocate my-app/local:DBASE.boot
Relocate app catalog class volume
vol relocate --all --suspend
Stop relocation of all volumes currently being relocated.
vol relocate --status
Display list of volumes that currently need relocation.
Rename an application, singleton class, or global volume.
volume rename name new-name
Name of application, singleton class, or global volume to rename. The format of <name> is the following:
<application>:<volume>, <application>:<class>.<volume>,
_GLOBAL:<volume>, or _GLOBAL_RO:<volume>
New name for application or global volume. The format of <new-name> is the following:
<volume> or <application>:<volume>, <application>:<class>.<volume>,
_GLOBAL:<volume>, or _GLOBAL_RO:<volume>
volume rename my-app:data data2
rename 'data' user volume to 'data2'
volume rename my-app:data my-app:data2
rename 'data' user volume to 'data2'
volume rename my-app:myclass.vol1 my-app:vol1
rename singleton class volume to user volume
volume rename my-app:vol1 my-app:myclass.vol1
rename user volume to singleton class volume
volume rename _GLOBAL:vol1 vol2
rename global volume to global volume _GLOBAL:vol2
volume rename _GLOBAL:vol1 _GLOBAL:vol2
rename global volume to global volume
Notes:
Repair volume(s).
volume repair (--suspend [time=time ]) | --resume volume repair <name> --resume volume repair <name> [--force | (--suspend [time=time])] volume repair [name] --status [--batch] vol repair --all [--force]
Name of the volume to repair or retrieve status for.
Suspend volume repair operation(s); for a maximum of 1 week
Resume volume repair operation(s)
(optional) Number of minutes to suspend the volume repair operation(s). If not specified, volume repair operation(s) are suspended for 60 minutes.
Start repairing the volume right away.
Display volume repair operation status.
Display volume repair operation status in UDL format
Initiate backgound volume repair (alias for 'vol check')
volume repair /system:MYSQL5.boot
repair global catalog class volume
volume repair my-app:data --force
start repair of app user volume right away
volume repair my-app:DBASE.boot
repair app singleton class volume
volume repair my-app/local:DBASE.boot
repair app catalog class volume
volume repair --suspend time=30
Suspend automatic volume repair for 30 minutes
volume repair --resume
Resume automatic volume repair
volume repair my-app:data --suspend time=30
Suspend repair of an app user volume for 30 minutes
volume repair my-app:data --resume
Resume repair of an app user volume
volume repair --status
Retrieve the current repair status for all volumes
volume repair my-app:data --status
Retrieve the current repair status of an app user volume
vol repair --all --force
Resume any suspended volume repairs and initiate check for volumes that need repair.
Note: Adhere to the naming conventions for CA AppLogic entities.
All volume repair operations are performed in the background (one per server). To retrieve the current status of a volume repair operation, execute one of the following:
vol repair --status - retrieve repair status for all volumes
vol repair name --status - retrieve repair status for a single volume.
The automated volume repair in CA AppLogic retrieves the list of degraded volumes that need to be repaired once every 6 hours. The user can force CA AppLogic to retrieve the list of degraded volumes by executing vol check; this can be used to verify that the current list of degraded volumes are scheduled for repair.
When initiating the repair of a volume - vol repair name - the repair of the volume will start immediately if there are enough available servers to execute the repair. If there are not available servers, the repair will start when the servers become available.
When initiating a repair of a volume with --force, the repair operation is started immediately and may result in the suspension of the repair of a different volume currently being repaired. Use this command if the repair of a particular volume needs to be initiated right away.
When initiating the repair of all volumes with --force, all volumes will be repaired including suspended volumes, whether they were suspended by the user or CA AppLogic itself.
When the repair of a volume is suspended, the repair operation on the volume is stopped and restarted as soon as servers are available following the specified time period.
When resuming the repair of a volume with --resume, the volume will be repaired as soon as enough servers become available.
When the repair of a volume fails, the volume will be rescheduled for repair. If the volume fails to be repaired three times within a 24 hour period, the volume repair will not be attempted again until 24 hours later. If there is a volume on the grid that continuously fails repair, contact your service provider immediately.
The following is a description of the various volume statuses that are reported when vol repair is executed with the --status option:
- error: The volume is in 'error' state meaning that the volume does not have any good streams (that is, mirrors)
- failed: One or more repair operations over the volume failed
- repairing: The volume is currently being repaired
- queued: The volume is queued for repair. Once servers become available, the repair for the volume will be initiated.
- suspended: The repair of the volume has been suspended or the volume has failed to be repaired and will be re-scheduled for repair.
- complete : The repair operation of the volume was successfully completed.
A specification of the repair status output can be found here.
This topic contains command output specification.
The output of this command is the following:
Last Volume Repair Check: val Hrs ago Next Volume Repair Check: <date/time> | in progress ---Error Volumes--- (table with the following columns: Scope, Name) ---Failed Volumes--- (table with the following columns: Scope, Name, Start Time, End Time, End State, Failure #) ---Repairing Volumes--- (table with the following columns: Scope, Name, Size(MB), Progress, Start Time, Elapsed Time) ---Queued Volumes--- (table with the following columns: Scope, Name, Priority) ---Suspended Volumes--- (table with the following columns: Scope, Name, Queue Time) ---Complete Volumes--- (table with the following columns: Scope, Name, Start Time, End Time)
If the --batch option is specified, the output of this command is the following:
volume_status
{
last_check = val
t_next_check = val
check_in_progress = yes|no
error
{
volume <name> : scope_type=val, scope_name=val
...
}
failed
{
volume <name> : scope_type=val, scope_name=val, t_start=val, t_end=val, end_state=val, failure_num=val
...
}
repairing
{
volume <name> : scope_type=val, scope_name=val, size=val, progress=val, t_start=val, t_elapsed=val, server=val
...
}
queued
{
volume <name> : scope_type=val, scope_name=val, priority=val
...
}
suspended
{
volume <name> : scope_type=val, scope_name=val, t_queue=val
...
}
complete
{
volume <name> : scope_type=val, scope_name=val, t_start=val, t_end=val
...
}
}
Resize a volume.
volume resize <name> size=<size> [parN.size=<val>][store=<store>][--prefill]
Name of the existing volume to resize. The format of <name> is the following:
application volume
singleton class volume
global volume
global read-only volume
New volume size, units may be specified (for example, 128M[B], 2G[B]). If units are not specified, it is assumed that the size is in MB.
Specifies the size for partition N. The value can be absolute (that is, 20G) or relative (that is +10G). parN refers to a primary, extended or logical partition or an lvm logical volume.
For primary partitions, this can be specified as parN.size, for logical partitions, the syntax is parN.parM.size (N is the number of the extended partition, M is the number of the logical partition on it starting from 1).
For lvm logical volumes the syntax is parN.lv_name.size.
Specifies the volume store where the volume is created. May be set to one of the following values:
local - store volume on local server storage
san - store volume on a SAN
Allocate ALL blocks for the resized volume.
volume resize my-app:data size=500M
resize an unpartitioned volume
volume resize my-app:MYSQL.boot size=1G
resize application singleton class volume
volume resize my-app:data par2.size=+2G
resize a partitioned volume, adding 2GB to the second partition
volume resize my-app:data size=10G
Resize a partitioned volume with one existing partition, to 10GB - the partition will be expanded/shrunk to the full size of the volume
volume resize my-app:data par3.par2.size=-3G
Resize a partitioned volume, shrinking second logical partition by 3GB, total size of volume will be adjusted accordingly
volume resize my-app:data size=10G par3.size=-1G
Resize a partitioned volume, changing partition 3 size but keeping the overall volume size (10GB) and leaving the freed space unallocated
volume resize my-app:data par2.size=+1G par3.size=-1G
Modify a partitioned volume by moving space (1GB) from partition 3 to partition 2
volume resize my-app:data par2.size=+1G
Resize a partitioned volume by adding additional space to an lvm partition without changing the size of logical volumes - this will leave unallocated space on the volume group which can be used for new logical volumes or/and snapshots
Notes:
Set volume information.
volume set <name> comment=<comment>
Name of volume The format of name is the following:
application:volume - application volume
application:class.volume - singleton class volume
application/catalog:class.volume - application catalog class volume
/catalog:class.volume - global catalog class volume
_GLOBAL:volume - global volume
_GLOBAL_RO:volume - global read-only volume
volume comment
Set information for application user volume
Set information for application singleton class volume
Set information for application local catalog class volume
Set information for global catalog class volume
Note: Only maintainers may set information for global read-only volumes.
This operation will fail if the volume is a symbolic link volume.
|
Copyright © 2013 CA Technologies.
All rights reserved.
|
|