CfnVolumeProps

class aws_cdk.aws_ec2.CfnVolumeProps(*, availability_zone, auto_enable_io=None, encrypted=None, iops=None, kms_key_id=None, multi_attach_enabled=None, outpost_arn=None, size=None, snapshot_id=None, tags=None, throughput=None, volume_initialization_rate=None, volume_type=None)

Bases: object

Properties for defining a CfnVolume.

Parameters:
  • availability_zone (str) – The ID of the Availability Zone in which to create the volume. For example, us-east-1a . Either AvailabilityZone or AvailabilityZoneId must be specified, but not both.

  • auto_enable_io (Union[bool, IResolvable, None]) – Indicates whether the volume is auto-enabled for I/O operations. By default, Amazon EBS disables I/O to the volume from attached EC2 instances when it determines that a volume’s data is potentially inconsistent. If the consistency of the volume is not a concern, and you prefer that the volume be made available immediately if it’s impaired, you can configure the volume to automatically enable I/O.

  • encrypted (Union[bool, IResolvable, None]) – Indicates whether the volume should be encrypted. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Encryption by default in the Amazon EBS User Guide . Encrypted Amazon EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see Supported instance types .

  • iops (Union[int, float, None]) – The number of I/O operations per second (IOPS) to provision for the volume. Required for io1 and io2 volumes. Optional for gp3 volumes. Omit for all other volume types. Valid ranges: - gp3: 3,000 ( default ) - 80,000 IOPS - io1: 100 - 64,000 IOPS - io2: 100 - 256,000 IOPS .. epigraph:: Instances built on the Nitro System can support up to 256,000 IOPS. Other instances can support up to 32,000 IOPS.

  • kms_key_id (Optional[str]) – The identifier of the AWS KMS key to use for Amazon EBS encryption. If KmsKeyId is specified, the encrypted state must be true . If you omit this property and your account is enabled for encryption by default, or Encrypted is set to true , then the volume is encrypted using the default key specified for your account. If your account does not have a default key, then the volume is encrypted using the AWS managed key . Alternatively, if you want to specify a different key, you can specify one of the following: - Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab. - Key alias. Specify the alias for the key, prefixed with alias/ . For example, for a key with the alias my_cmk , use alias/my_cmk . Or to specify the AWS managed key , use alias/aws/ebs . - Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab. - Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.

  • multi_attach_enabled (Union[bool, IResolvable, None]) – Indicates whether Amazon EBS Multi-Attach is enabled. AWS CloudFormation does not currently support updating a single-attach volume to be multi-attach enabled, updating a multi-attach enabled volume to be single-attach, or updating the size or number of I/O operations per second (IOPS) of a multi-attach enabled volume.

  • outpost_arn (Optional[str]) – The Amazon Resource Name (ARN) of the Outpost.

  • size (Union[int, float, None]) – The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size, and you can specify a volume size that is equal to or larger than the snapshot size. Valid sizes: - gp2: 1 - 16,384 GiB - gp3: 1 - 65,536 GiB - io1: 4 - 16,384 GiB - io2: 4 - 65,536 GiB - st1 and sc1: 125 - 16,384 GiB - standard: 1 - 1024 GiB

  • snapshot_id (Optional[str]) – The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.

  • tags (Optional[Sequence[Union[CfnTag, Dict[str, Any]]]]) – The tags to apply to the volume during creation.

  • throughput (Union[int, float, None]) – The throughput to provision for a volume, with a maximum of 1,000 MiB/s. This parameter is valid only for gp3 volumes. The default value is 125. Valid Range: Minimum value of 125. Maximum value of 1000.

  • volume_initialization_rate (Union[int, float, None]) – Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume. This is also known as volume initialization . Specifying a volume initialization rate ensures that the volume is initialized at a predictable and consistent rate after creation. This parameter is supported only for volumes created from snapshots. Omit this parameter if: - You want to create the volume using fast snapshot restore. You must specify a snapshot that is enabled for fast snapshot restore. In this case, the volume is fully initialized at creation. .. epigraph:: If you specify a snapshot that is enabled for fast snapshot restore and a volume initialization rate, the volume will be initialized at the specified rate instead of fast snapshot restore. - You want to create a volume that is initialized at the default rate. For more information, see Initialize Amazon EBS volumes in the Amazon EC2 User Guide . Valid range: 100 - 300 MiB/s

  • volume_type (Optional[str]) – The volume type. This parameter can be one of the following values:. - General Purpose SSD: gp2 | gp3 - Provisioned IOPS SSD: io1 | io2 - Throughput Optimized HDD: st1 - Cold HDD: sc1 - Magnetic: standard For more information, see Amazon EBS volume types . Default: gp2

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_ec2 as ec2

cfn_volume_props = ec2.CfnVolumeProps(
    availability_zone="availabilityZone",

    # the properties below are optional
    auto_enable_io=False,
    encrypted=False,
    iops=123,
    kms_key_id="kmsKeyId",
    multi_attach_enabled=False,
    outpost_arn="outpostArn",
    size=123,
    snapshot_id="snapshotId",
    tags=[CfnTag(
        key="key",
        value="value"
    )],
    throughput=123,
    volume_initialization_rate=123,
    volume_type="volumeType"
)

Attributes

auto_enable_io

Indicates whether the volume is auto-enabled for I/O operations.

By default, Amazon EBS disables I/O to the volume from attached EC2 instances when it determines that a volume’s data is potentially inconsistent. If the consistency of the volume is not a concern, and you prefer that the volume be made available immediately if it’s impaired, you can configure the volume to automatically enable I/O.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-autoenableio

availability_zone

The ID of the Availability Zone in which to create the volume. For example, us-east-1a .

Either AvailabilityZone or AvailabilityZoneId must be specified, but not both.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-availabilityzone

encrypted

Indicates whether the volume should be encrypted.

The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Encryption by default in the Amazon EBS User Guide .

Encrypted Amazon EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see Supported instance types .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-encrypted

iops

The number of I/O operations per second (IOPS) to provision for the volume.

Required for io1 and io2 volumes. Optional for gp3 volumes. Omit for all other volume types.

Valid ranges:

  • gp3: 3,000 ( default ) - 80,000 IOPS

  • io1: 100 - 64,000 IOPS

  • io2: 100 - 256,000 IOPS

Instances built on the Nitro System can support up to 256,000 IOPS. Other instances can support up to 32,000 IOPS.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-iops

kms_key_id

The identifier of the AWS KMS key to use for Amazon EBS encryption.

If KmsKeyId is specified, the encrypted state must be true .

If you omit this property and your account is enabled for encryption by default, or Encrypted is set to true , then the volume is encrypted using the default key specified for your account. If your account does not have a default key, then the volume is encrypted using the AWS managed key .

Alternatively, if you want to specify a different key, you can specify one of the following:

  • Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  • Key alias. Specify the alias for the key, prefixed with alias/ . For example, for a key with the alias my_cmk , use alias/my_cmk . Or to specify the AWS managed key , use alias/aws/ebs .

  • Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  • Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-kmskeyid

multi_attach_enabled

Indicates whether Amazon EBS Multi-Attach is enabled.

AWS CloudFormation does not currently support updating a single-attach volume to be multi-attach enabled, updating a multi-attach enabled volume to be single-attach, or updating the size or number of I/O operations per second (IOPS) of a multi-attach enabled volume.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-multiattachenabled

outpost_arn

The Amazon Resource Name (ARN) of the Outpost.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-outpostarn

size

The size of the volume, in GiBs.

You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size, and you can specify a volume size that is equal to or larger than the snapshot size.

Valid sizes:

  • gp2: 1 - 16,384 GiB

  • gp3: 1 - 65,536 GiB

  • io1: 4 - 16,384 GiB

  • io2: 4 - 65,536 GiB

  • st1 and sc1: 125 - 16,384 GiB

  • standard: 1 - 1024 GiB

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-size

snapshot_id

The snapshot from which to create the volume.

You must specify either a snapshot ID or a volume size.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-snapshotid

tags

The tags to apply to the volume during creation.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-tags

throughput

The throughput to provision for a volume, with a maximum of 1,000 MiB/s.

This parameter is valid only for gp3 volumes. The default value is 125.

Valid Range: Minimum value of 125. Maximum value of 1000.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-throughput

volume_initialization_rate

Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume.

This is also known as volume initialization . Specifying a volume initialization rate ensures that the volume is initialized at a predictable and consistent rate after creation.

This parameter is supported only for volumes created from snapshots. Omit this parameter if:

  • You want to create the volume using fast snapshot restore. You must specify a snapshot that is enabled for fast snapshot restore. In this case, the volume is fully initialized at creation.

If you specify a snapshot that is enabled for fast snapshot restore and a volume initialization rate, the volume will be initialized at the specified rate instead of fast snapshot restore.

  • You want to create a volume that is initialized at the default rate.

For more information, see Initialize Amazon EBS volumes in the Amazon EC2 User Guide .

Valid range: 100 - 300 MiB/s

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-volumeinitializationrate

volume_type

.

  • General Purpose SSD: gp2 | gp3

  • Provisioned IOPS SSD: io1 | io2

  • Throughput Optimized HDD: st1

  • Cold HDD: sc1

  • Magnetic: standard

For more information, see Amazon EBS volume types .

Default: gp2

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-volumetype

Type:

The volume type. This parameter can be one of the following values