Requirements when modifying volumes - Amazon Elastic Compute Cloud

Requirements when modifying volumes

The following requirements and limitations apply when you modify an Amazon EBS volume. To learn more about the general requirements for EBS volumes, see Constraints on the size and configuration of an EBS volume.

Supported instance types

Elastic Volumes are supported on the following instances:

If your instance type does not support Elastic Volumes, see Modify an EBS volume if Elastic Volumes is not supported.

Requirements for Linux volumes

Linux AMIs require a GUID partition table (GPT) and GRUB 2 for boot volumes that are 2 TiB (2,048 GiB) or larger. Many Linux AMIs today still use the MBR partitioning scheme, which only supports boot volume sizes up to 2 TiB. If your instance does not boot with a boot volume larger than 2 TiB, the AMI you are using may be limited to a boot volume size of less than 2 TiB. Non-boot volumes do not have this limitation on Linux instances. For requirements affecting Windows volumes, see Requirements for Windows volumes in the Amazon EC2 User Guide for Windows Instances.

Before attempting to resize a boot volume beyond 2 TiB, you can determine whether the volume is using MBR or GPT partitioning by running the following command on your instance:

[ec2-user ~]$ sudo gdisk -l /dev/xvda

An Amazon Linux instance with GPT partitioning returns the following information:

GPT fdisk (gdisk) version 0.8.10
  
  Partition table scan:
    MBR: protective
    BSD: not present
    APM: not present
    GPT: present
  
  Found valid GPT with protective MBR; using GPT.

A SUSE instance with MBR partitioning returns the following information:

GPT fdisk (gdisk) version 0.8.8
  
  Partition table scan:
    MBR: MBR only
    BSD: not present
    APM: not present
    GPT: not present

Limitations

  • There are limits to the maximum aggregated storage that can be requested across volume modifications. For more information, see Amazon EBS service quotas in the Amazon Web Services General Reference.

  • After modifying a volume, you must wait at least six hours and ensure that the volume is in the in-use or available state before you can modify the same volume.

  • Modifying an EBS volume can take from a few minutes to a few hours, depending on the configuration changes being applied. An EBS volume that is 1 TiB in size can typically take up to six hours to be modified. However, the same volume could take 24 hours or longer in other situations. The time it takes for volumes to be modified doesn't always scale linearly. Therefore, a larger volume might take less time, and a smaller volume might take more time.

  • If the volume was attached before November 3, 2016 23:40 UTC, you must initialize Elastic Volumes support. For more information, see Initializing Elastic Volumes Support.

  • If you encounter an error message while attempting to modify an EBS volume, or if you are modifying an EBS volume attached to a previous-generation instance type, take one of the following steps:

    • For a non-root volume, detach the volume from the instance, apply the modifications, and then re-attach the volume.

    • For a root volume, stop the instance, apply the modifications, and then restart the instance.

  • Modification time is increased for volumes that are not fully initialized. For more information see Initialize Amazon EBS volumes.

  • The new volume size can't exceed the supported capacity of its file system and partitioning scheme. For more information, see Constraints on the size and configuration of an EBS volume.

  • If you modify the volume type of a volume, the size and performance must be within the limits of the target volume type. For more information, see Amazon EBS volume types

  • You can't decrease the size of an EBS volume. However, you can create a smaller volume and then migrate your data to it using an application-level tool such as rsync.

  • After provisioning over 32,000 IOPS on an existing io1 or io2 volume, you might need to detach and re-attach the volume, or restart the instance to see the full performance improvements.

  • io2 volumes attached to instances built on the Nitro System support sizes up to 64 TiB and IOPS up to 256,000 IOPS. io2 volumes attached to other instances support sizes up to 16 TiB and IOPS up to 64,000, but can achieve performance up to 32,000 IOPS only.

  • You can't modify the volume type of Multi-Attach enabled io2 volumes.

  • You can't modify the volume type, size, or Provisioned IOPS of Multi-Attach enabled io1 volumes.

  • A root volume of type io1, io2, gp2, gp3, or standard can't be modified to an st1 or sc1 volume, even if it is detached from the instance.

  • While m3.medium instances fully support volume modification, m3.large, m3.xlarge, and m3.2xlarge instances might not support all volume modification features.