Changing the Performance of a Volume

The Block Volume service enables you to dynamically configure the performance level for block volumes and boot volumes, for more information, see Block Volume Performance.

If you configure performance level for a block volume to the ultra high performance level the volume attachment should be multipath-enabled. You may need to take additional steps to optmize the volume's performance, for more information, see Attaching Ultra High Performance Volumes. This does not apply to boot volumes configured for the ultra high performance level.

Note

When you change a block volume's performance to ultra high performance from any other performance level you need to detach and then reattach the volume. See Detaching a Volume and Attaching a Block Volume to an Instance.

Required IAM Service Policy

To use Oracle Cloud Infrastructure, you must be granted security access in a policy  by an 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 your administrator what type of access you have and which compartment  to work in.

For administrators: 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.

Limitations

  • When you adjust the VPUs/GB setting for a volume, the volume's lifecycle state transitions to Provisioning while service updates the settings. During this process, you can't attach the volume to an instance or perform other volume operations. After this process is complete, the volume lifecycle state transitions back to Available. At this point, you can attach the volume to an instance.

  • You can only change the performance level on three volumes concurrently per tenancy.

Using the Console

The default volume performance setting for existing block volumes or when you create a new block volume is Balanced. You can change the default setting when you create a new block volume, see Creating a Block Volume. You can also change the volume performance setting for an existing block volume using the steps in the following procedure.

To change the volume performance for an existing block volume
  1. Open the navigation menu and click Storage. Under Block Storage, click Block Volumes.
  2. Click the block volume that you want to change the performance for.

  3. Click Edit.
  4. Using the VPUs/GB slider, specify the performance setting you want to change to. You can also specify the VPUs/GB value for the performance setting in Default VPUs/GB.
  5. Click Save Changes.

To change the volume performance for an existing boot volume
  1. Open the navigation menu and click Storage. Under Block Storage, click Block Volumes. In the Block Storage menu on the sidebar, click Boot Volumes.
  2. Click the boot volume that you want to change the performance for.

  3. Click Edit Size or Performance.
  4. Click the volume performance option you want to change to.
  5. Click Save Changes.

If you are changing the boot volume's performance to the Ultra High Performance level, see Boot Volumes and Ultra High Performance for additional details.

Using the CLI

For information about using the CLI, see Command Line Interface (CLI).

Use the volume update operation or the boot-volume update operation with vpus-per-gb parameter to update a block volume's elastic performance setting. The vpus-per-gb parameter is where you specify the volume performance units (VPUs). VPUs represent the volume performance settings, with the following allowed values:

  • 0: Represents the Lower Cost setting, applies to block volumes only.
  • 10: Represents the Balanced setting, applies to both block volumes and boot volumes.
  • 20: Represents the Higher Performance setting, applies to both block volumes and boot volumes.
  • 30 to 120: Represents the Ultra High Performance setting, applies to both block volumes and boot volumes.

For example:

oci bv volume update --volume-id <volume_ID> --vpus-per-gb 20

If you are changing a boot volume's performance to the Ultra High Performance level, see Boot Volumes and Ultra High Performance for additional details.

Using the API

For information about using the API and signing requests, see REST API documentation and Security Credentials. For information about SDKs, see SDKs and the CLI.

Block Volumes

To update a block volume's performance setting, use the following operation:

The volume performance setting is specified in volume performance units (VPUs) in the vpusPerGB attribute of UpdateVolumeDetails.

Following are the allowed values for vpusPerGB:

  • 0: Represents the Lower Cost setting, applies to block volumes only.
  • 10: Represents the Balanced setting, applies to both block volumes and boot volumes.
  • 20: Represents the Higher Performance setting, applies to both block volumes and boot volumes.
  • 30 to 120: Represents the Ultra High Performance setting, applies to both block volumes and boot volumes.

Boot Volumes

To update a boot volume's performance setting, use the following operation:

The volume performance setting is specified in the vpusPerGB attribute of UpdateBootVolumeDetails.

Following are the allowed values for vpusPerGB:

  • 0: Represents the Lower Cost setting, applies to block volumes only.
  • 10: Represents the Balanced setting, applies to both block volumes and boot volumes.
  • 20: Represents the Higher Performance setting, applies to both block volumes and boot volumes.
  • 30 to 120: Represents the Ultra High Performance setting, applies to both block volumes and boot volumes.

If you are changing the boot volume's performance to the Ultra High Performance level, see Boot Volumes and Ultra High Performance for additional details.