expandvdisksize

Use the expandvdisksize command to expand the size of a volume by a specified capacity.

Syntax

expandvdisksize { -sizedisk_size | -rsizedisk_size [ -copyid ] } [ -mdisk { mdisk_id_list | mdisk_name_list } ] [ { -fmtdisk | -nofmtdisk } ] [ -unit { b | kb | mb | gb | tb | pb } ] { vdisk_name | vdisk_id }

Parameters

-sizedisk_size
(Required) Specifies the capacity by which the volume is expanded. Disk size is used with the value of the unit. All capacities, including changes must be in multiples of 512 bytes. An error occurs if you specify a capacity that is not a multiple of 512, which can only occur when byte units (-unit b) are used. However, an entire extent is reserved even if it is only partially used. The default disk_size unit is megabytes (MB). You cannot specify the -size parameter with the -rsize parameter. You must specify either -size or -rsize. If the volume is thin-provisioned, MDisks cannot be specified.
-rsizedisk_size
(Optional) Specifies the capacity by which to increase the real size of a thin-provisioned volume. Specify the disk_size value by using an integer. Specify the unit for a disk_size integer by using the -unit parameter; the default unit is megabytes (MB). The -rsize value can be greater than, equal to, or less than the size of the volume. You cannot specify the -rsize parameter with the -size parameter. You must specify either -size or -rsize.
-copyid
(Optional) Specifies the copy to change the real capacity for. You must also specify the -rsize parameter; you can only modify the real capacity of a volume copy. The -copy parameter is required if the specified volume is mirrored and only one copy is thin-provisioned. If the volume is mirrored, both copies are thin-provisioned and -copy is not specified, both copies are modified by the same amount.
-mdiskmdisk_id_list | mdisk_name_list
(Optional) Specifies the list of one or more MDisks to be used as the stripe set. The extents that expand the volume come from the specified list of MDisks. All MDisks in the list must be part of the same storage pool. The -mdisk parameter cannot be used if the specified volume is mirrored.
-fmtdisk
(Optional) Specifies that the volume be formatted before use. This flag formats the new extents that have been added to the volume as a result of the expandvdisksize command. The expandvdisksize command completes asynchronously if you use this parameter. Fast formatting is on by default for fully allocated volumes.
-nofmtdisk
(Optional) Disables fast format for the newly expanded region of the fully allocated volume.
-unitb | kb | mb | gb | tb | pb
(Optional) Specifies the disk_size unit for the -size or -rsize parameter. The default value is megabytes (MB).
vdisk_name | vdisk_id
(Required) Specifies the volume to modify, either by ID or by name.

Description

Use the expandvdisksize command to expand the physical capacity that is allocated to a particular volume by the specified amount.

The command can also be used to expand the virtual capacity of a thin-provisioned volume without altering the physical capacity that is assigned to the volume. To change the capacity of a non-thin-provisioned volume, or the virtual capacity of a thin-provisioned volume, use the -size parameter. To change the real capacity of a thin-provisioned volume, use the -rsize parameter.
Note: You can expand the capacity of any volume in a Global Mirror or Metro Mirror relationship that is in consistent_synchronized state. You cannot expand the capacity for these types of volumes:
  • Volumes in HyperSwap relationships or in Global Mirror relationships that are operating in cycling mode.
  • Volumes in relationships where a change volume is configured.
  • Mirrored volumes that have at least one fully allocated copy.
Note: You cannot expand the capacity of any volume in a Global Mirror with change volumes relationship or in a HyperSwap relationship. To expand the capacity of a volume in a Global Mirror or Metro Mirror relationship:
  1. Delete the relationship.
  2. Increase the size of all the volumes. All volumes in a relationship must have the exact same size (virtual capacity).
  3. Re-create the relationship with the larger volumes.
When the mirror is restarted, it does a complete initial synchronization, replicating the entire primary volume to the secondary volume.
You cannot expand the capacity of any volume in a FlashCopy mapping, regardless of whether it is a source or target, or what state the mapping is in. You can expand the capacity of a volume in a FlashCopy mapping:
  1. Delete all the mappings in that FlashCopy tree. (If there is a root source volume and some targets are either directly or cascaded off of other targets, the entire tree must be deleted.)
  2. Increase the size of all volumes in the original FlashCopy tree. All volumes in a tree must be the same size (virtual capacity).
  3. Re-create all the FlashCopy mappings with the new larger volumes.
When a FlashCopy is restarted after being deleted (including if it is an incremental FlashCopy) the entire volume becomes part of any background copy because it is the start of a new mapping.
Note: The default capacity units are MB.

When a volume is expanded, the virtualization policy can change. Its mode becomes striped even if it was previously sequential. See the mkvdisk command for details of the virtualization policies.

To run the expandvdisksize command on a mirrored volume, all copies of the volume must be synchronized. The command formats all copies of a mirrored volume automatically.

Remember:
  1. You cannot resize (expand) an image mode volume.
  2. You cannot resize (expand) a volume that is part of a file system.
  3. You cannot resize (expand) volume if that volume is being fast formatted. (Additionally, you cannot specify shrinkvdisksize to resize (shrink) for a volume that is fast formatting.)
  4. You cannot resize (expand) a volume if cloud snapshot is enabled on that volume.
  5. You cannot specify expandvdisksize -rsize to expand (resize) a thin or compressed volume copy that is in a data reduction pool.
  6. You cannot specify expandvdisksize -mdisk to resize (expand) a volume when a volume is being migrated.
You must expand both volumes in a relationship to maintain full operation of the system. To perform this task:
  1. Expand the secondary volume by the required extra capacity.
  2. Expand the primary volume by the required extra capacity.

An invocation example to increase the capacity of vdisk1 by 2048 bytes using extents from two MDisks (and to format the new part of the volume)

expandvdisksize -size 2048 -unit b -mdisk mdisk0:mdisk1 -fmtdisk vdisk1

The resulting output:

No feedback

An invocation example to increase the capacity of vdisk1 by 100 MB using extents from two MDisks (and to format the new part of the volume)

expandvdisksize -size 100 -unit mb -mdisk mdisk0:mdisk1 -fmtdisk vdisk1

The resulting output:

No feedback

An invocation example to increase the real capacity of thin-provisioned vdisk2 by 100 MB without changing the virtual capacity (and to spread the extents across all MDisks in the storage pool)

expandvdisksize -rsize 100 -unit mb vdisk2

The resulting output:

No feedback

An invocation example to increase the real capacity of thin-provisioned volume copy id 1 of mirrored volume vdisk3 by 100 MB

expandvdisksize -rsize 100 -unit mb -copy 1 vdisk3

The resulting output:

No feedback