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:

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.

Caution

Before you resize a boot or block volume, you should create a backup of the volume.
Note

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, you must be given the required type of access in a policy  written by an administrator, whether you're using the Console or the REST API with an SDK, CLI, or other tool. If you try to perform an action and get a message that you don’t have permission or are unauthorized, confirm with your administrator the type of access you've been granted and which compartment  you should work 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.

If you're new to policies, see Getting Started with Policies and Common Policies. For reference material about writing policies for instances, cloud networks, or other Core Services API resources, see Details for the Core Services.

Online Resizing of Block Volumes Using the Console

With online resizing, you can expand the volume size without detaching the volume from an instance.

To resize a block volume attached to a Linux-based instance
  1. Open the navigation menu. Under Core Infrastructure, go to Block Storage and click Block Volumes.
  2. In the Block Volumes list, click the block volume you want to resize.
  3. Click Edit Size or Performance.
  4. Specify the new size in VOLUME SIZE (IN GB). You must specify a larger value than the block volume's current size.

  5. Click Save Changes. This opens a dialog that lists the commands to rescan the disk that you need to run after the volume is provisioned. You need to run these commands so that the operating system identifies the expanded volume size. Click the Copy link to copy the commands, and then click Close to close the dialog.

  6. Log on to your instance's OS and then paste and run the rescan commands you copied in the previous step into your instance session window. The rescan commands are also provided in Rescanning the Disk for Volumes Attached to Linux-Based Instances.
  7. Extend the partition, see Extending the Partition for a Block Volume.

To resize a block volume attached to a Windows instance

This procedure describes the process for online resizing for block volumes attached to Windows instances, or other instance types that are not Linux-based.

  1. Open the navigation menu. Under Core Infrastructure, go to Block Storage and click Block Volumes.
  2. In the Block Volumes list, click the block volume you want to resize.
  3. Click Edit Size or Performance.
  4. Specify the new size in VOLUME SIZE (IN GB). You must specify a larger value than the block volume's current size.

  5. Click Save Changes.

  6. Rescan the disk, see Rescanning the Disk for Volumes Attached to Windows Instances.
  7. Extend the partition, see Extending the Partition for a Block Volume.

To resize a boot volume for a Linux-based Instance
  1. Open the navigation menu. Under Core Infrastructure, go to Compute and click Boot Volumes.
  2. In the Boot Volumes list, click the boot volume you want to resize.
  3. Click Edit Size or Performance.
  4. Specify the new size in VOLUME SIZE (IN GB). You must specify a larger value than the boot volume's current size.

  5. Click Save Changes. This opens a dialog that lists the commands to rescan the disk that you need to run after the volume is provisioned. You need to run these commands so that the operating system identifies the expanded volume size. Click the Copy link to copy the commands, and then click Close to close the dialog.

  6. Log on to your instance's OS and then paste and run the rescan commands you copied in the previous step into your instance session window. The rescan commands are also provided in Rescanning the Disk for Volumes Attached to Linux-Based Instances.
  7. Extend the partition and grow the file system, see Extending the Root Partition on a Linux-Based Image.

Resizing a Boot Volume for a Windows Instance

Offline Resizing of Block Volumes Using the Console

With offline resizing, you detach the volume from an instance before you expand the volume size. Once the volume is resized and reattached, you need to 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.

To resize a block volume attached to a Linux-based instance
  1. Detach the block volume, see Detaching a Volume.

  2. Open the navigation menu. Under Core Infrastructure, go to Block Storage and click Block Volumes.
  3. In the Block Volumes list, click the block volume you want to resize.
  4. Click Edit Size or Performance.
  5. Specify the new size in VOLUME SIZE (IN GB). You must specify a larger value than the block volume's current size.

  6. Click Save Changes. This opens a dialog that lists the required steps to complete the volume resize. For offline resizing, you need to extend the partition after you reattach the volume. Click Close to close the dialog.

  7. Reattach the volume, see Attaching a Volume.

  8. Extend the partition, see Extending the Partition for a Block Volume.

Resizing a Boot Volume for a Windows Instance
  1. Stop the instance, see Stopping and Starting an Instance.

  2. Detach the boot volume, see Detaching a Boot Volume.

  3. Open the navigation menu. Under Core Infrastructure, go to Compute and click Boot Volumes.
  4. In the Boot Volumes list, click the boot volume you want to resize.
  5. Click Edit Size or Performance.
  6. Specify the new size in VOLUME SIZE (IN GB). You must specify a larger value than the block volume's current size.

  7. Reattach the boot volume, see Attaching a Boot Volume.

  8. Restart the instance, see Stopping and Starting an Instance.

  9. Extend the partition, see Extending the System Partition on a Windows-Based Image.

Resizing a Boot Volume for a Linux Instance
  1. Stop the instance, see Stopping and Starting an Instance.

  2. Detach the boot volume, see Detaching a Boot Volume.

  3. Open the navigation menu. Under Core Infrastructure, go to Compute and click Boot Volumes.
  4. In the Boot Volumes list, click the boot volume you want to resize.
  5. Click Edit Size or Performance.
  6. Specify the new size in VOLUME SIZE (IN GB). You must specify a larger value than the block volume's current size.

  7. Attach the boot volume to a second instance as a data volume. See Attaching a Volume and Connecting to a Volume.

  8. Extend the partition and grow the file system, see Extending the Root Partition on a Linux-Based Image.

  9. Reattach the boot volume, see Attaching a Boot Volume.

  10. Restart the instance, see Stopping and Starting an Instance.