Resizing a Volume
The Oracle Cloud Infrastructure Block Volume service lets you expand the size of block volumes and boot volumes. You have several options to increase the size of your volumes:
-
Expand an existing volume in place with online resizing. See Online Resizing a Block or Boot Volume.
-
Restore from a volume backup to a larger volume. See Restoring a Backup to a New Volume and Restoring a Boot Volume.
-
Clone an existing volume to a new, larger volume. See Cloning a Block Volume and Cloning a Boot Volume.
-
Expand an existing volume in place with offline resizing. See Offline Resizing a Block or Boot Volume for the steps to do this.
For more information about the Block Volume service, see the Block Volume FAQ.
You can only increase the size of the volume. You cannot decrease the size.
If cross-region replication is enabled for the volume you want to resize, before you resize the volume, you must disable cross-region replication. Once the volume is resized, you can renable cross-region replication for the volume. For more information about this feature, see Replicating a Volume.
Resizing IDE type boot volumes is not supported. This applies to both offline and online resizing. To workaround this limitation, you can do one of the following:
Terminate the VM instance, ensuring that you keep the boot volume when you terminate the instance. Resize the boot volume that you have kept, and then launch a new VM instance, using the resized boot volume as the image source.
Create a clone of the boot volume, resize the boot volume clone, and then launch a new VM instance using the resized boot volume clone as the image source.
Before you resize a boot or block volume, you should create a backup of the volume.
After a volume has been resized, the first backup on the resized volume will be a full backup. See Volume Backup Types for more information about full versus incremental volume backups.
Required IAM Policy
To use Oracle Cloud Infrastructure, an administrator must be a member of a group granted security access in a policy by a tenancy administrator. This access is required whether you're using the Console or the REST API with an SDK, CLI, or other tool. If you get a message that you don't have permission or are unauthorized, verify with the tenancy administrator what type of access you have and which compartment your access works in.
For administrators: The policy in Let users launch compute instances includes the ability to attach/detach existing block volumes. The policy in Let volume admins manage block volumes, backups, and volume groups lets the specified group do everything with block volumes and backups, but not launch instances.
Online Resizing a Block or Boot Volume
With online resizing, you can expand the volume size without detaching the volume from an instance.
Block Volumes
Use the
oci bv volume update
command and specify the--volume-id
and--size-in-gbs
parameters to resize a block volume:oci bv volume update --volume-id <volume_OCID> --size-in-gbs <new_size>... [OPTIONS]
Boot Volumes
Use the
oci bv boot-volume update
command and specify the--volume-id
and--size-in-gbs
parameters to resize a block volume:oci bv boot-volume update --volume-id <volume_OCID> --size-in-gbs <new_size>... [OPTIONS]
For a complete list of parameters and values for CLI commands, see the CLI Command Reference.
Block Volumes
Run the
UpdateVolume
operation and specify thevolumeId
attribute in the request body and thesizeInGBs
attribute in theUpdateVolumeDetails
resource to resize a block volume.Boot Volumes
Run the
UpdateBootVolume
operation and specify thevolumeId
attribute in the request body and thesizeInGBs
attribute in theUpdateBootVolumeDetails
resource to resize a boot volume.
Next Steps
- Rescan the disk. See Rescanning the Disk for Volumes Attached to Linux-Based Instances and Rescanning the Disk for Volumes Attached to Windows Instances.
- Extend the partition. See Extending the Partition for a Block Volume on a Linux-Based Image and Extending the Partition for a Block Volume on a Windows-Based Image.
Offline Resizing a Block or Boot Volume
You can use offline resizing to detach the volume from an instance before you expand the volume size. Once the volume is resized and reattached, you must extend the partition, but you do not need to rescan the disk.
Considerations When Resizing an Offline Volume
Whenever you detach and reattach volumes, there are complexities and risks for both Linux-based and Windows-based instances. This applies to both paravirtualized and iSCSI attachment types. You should keep the following in mind when resizing volumes:
-
When you reattach a volume to an instance after resizing, if you are not using consistent device paths, or the instance does not support consistent device paths, device order and path may change. If you are using a tool such as Logical Volume Manager (LVM), you may need to fix the device mappings. For more information about consistent device paths, see Connecting to Volumes With Consistent Device Paths.
-
When you detach and then reattach an iSCSI-attached volume to an instance, the volume's IP address will increment.
-
Before you resize a volume, you should create a full backup of the volume.
Block Volumes
- Detach the volume.
-
Use the
oci bv volume update
command and specify the--volume-id
and--size-in-gbs
parameters to resize a block volume:oci bv volume update --volume-id <volume_OCID> --size-in-gbs <new_size>... [OPTIONS]
Boot Volumes
- Detach the volume.
-
Use the
oci bv boot-volume update
command and specify the--volume-id
and--size-in-gbs
parameters to resize a block volume:oci bv boot-volume update --volume-id <volume_OCID> --size-in-gbs <new_size>... [OPTIONS]
For a complete list of parameters and values for CLI commands, see the CLI Command Reference.
Block Volumes
-
Run the
DetachVolume
operation and specify thevolumeAttachmentId
attribute to detach a block volume from an instance. -
Run the
UpdateVolume
operation and specify thevolumeId
attribute in the request body and thesizeInGBs
attribute in theUpdateVolumeDetails
resource to resize the block volume.
Boot Volumes
-
Run the
DetachVolume
operation and specify thevolumeAttachmentId
attribute to detach a block volume from an instance. -
Run the
UpdateBootVolume
operation and specify thevolumeId
attribute in the request body and thesizeInGBs
attribute in theUpdateBootVolumeDetails
resource to resize the boot volume.
-
Next Steps
- Rescan the disk. See Rescanning the Disk for Volumes Attached to Linux-Based Instances and Rescanning the Disk for Volumes Attached to Windows Instances.
- Extend the partition. See Extending the Partition for a Block Volume on a Linux-Based Image and Extending the Partition for a Block Volume on a Windows-Based Image.