Class: Aws::EC2::Types::EbsBlockDevice

Inherits:
Struct
  • Object
show all
Includes:
Structure
Defined in:
lib/aws-sdk-ec2/types.rb

Overview

Note:

When making an API call, you may pass EbsBlockDevice data as a hash:

{
  delete_on_termination: false,
  iops: 1,
  snapshot_id: "String",
  volume_size: 1,
  volume_type: "standard", # accepts standard, io1, gp2, sc1, st1
  encrypted: false,
  kms_key_id: "String",
}

Describes a block device for an EBS volume.

Instance Attribute Summary collapse

Instance Attribute Details

#delete_on_terminationBoolean

Indicates whether the EBS volume is deleted on instance termination.

Returns:

  • (Boolean)


18404
18405
18406
18407
18408
18409
18410
18411
18412
18413
# File 'lib/aws-sdk-ec2/types.rb', line 18404

class EbsBlockDevice < Struct.new(
  :delete_on_termination,
  :iops,
  :snapshot_id,
  :volume_size,
  :volume_type,
  :encrypted,
  :kms_key_id)
  include Aws::Structure
end

#encryptedBoolean

Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached to instances that support Amazon EBS encryption.

If you are creating a volume from a snapshot, you cannot specify an encryption value. This is because only blank volumes can be encrypted on creation. If you are creating a snapshot from an existing EBS volume, you cannot specify an encryption value that differs from that of the EBS volume. We recommend that you omit the encryption value from the block device mappings when creating an image from an instance.

Returns:

  • (Boolean)


18404
18405
18406
18407
18408
18409
18410
18411
18412
18413
# File 'lib/aws-sdk-ec2/types.rb', line 18404

class EbsBlockDevice < Struct.new(
  :delete_on_termination,
  :iops,
  :snapshot_id,
  :volume_size,
  :volume_type,
  :encrypted,
  :kms_key_id)
  include Aws::Structure
end

#iopsInteger

The number of I/O operations per second (IOPS) that the volume supports. For ‘io1` volumes, this represents the number of IOPS that are provisioned for the volume. For `gp2` volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information, see [Amazon EBS Volume Types] in the *Amazon Elastic Compute Cloud User Guide*.

Constraints: Range is 100-16,000 IOPS for ‘gp2` volumes and 100 to 64,000IOPS for `io1` volumes, in most Regions. The maximum IOPS for `io1` of 64,000 is guaranteed only on [Nitro-based instances]. Other instance families guarantee performance up to 32,000 IOPS.

Condition: This parameter is required for requests to create ‘io1` volumes; it is not used in requests to create `gp2`, `st1`, `sc1`, or `standard` volumes.

[1]: docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html [2]: docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances

Returns:

  • (Integer)


18404
18405
18406
18407
18408
18409
18410
18411
18412
18413
# File 'lib/aws-sdk-ec2/types.rb', line 18404

class EbsBlockDevice < Struct.new(
  :delete_on_termination,
  :iops,
  :snapshot_id,
  :volume_size,
  :volume_type,
  :encrypted,
  :kms_key_id)
  include Aws::Structure
end

#kms_key_idString

Identifier (key ID, key alias, ID ARN, or alias ARN) for a user-managed CMK under which the EBS volume is encrypted.

This parameter is only supported on ‘BlockDeviceMapping` objects called by [RunInstances], [RequestSpotFleet], and [RequestSpotInstances].

[1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html [2]: docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotFleet.html [3]: docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html

Returns:

  • (String)


18404
18405
18406
18407
18408
18409
18410
18411
18412
18413
# File 'lib/aws-sdk-ec2/types.rb', line 18404

class EbsBlockDevice < Struct.new(
  :delete_on_termination,
  :iops,
  :snapshot_id,
  :volume_size,
  :volume_type,
  :encrypted,
  :kms_key_id)
  include Aws::Structure
end

#snapshot_idString

The ID of the snapshot.

Returns:

  • (String)


18404
18405
18406
18407
18408
18409
18410
18411
18412
18413
# File 'lib/aws-sdk-ec2/types.rb', line 18404

class EbsBlockDevice < Struct.new(
  :delete_on_termination,
  :iops,
  :snapshot_id,
  :volume_size,
  :volume_type,
  :encrypted,
  :kms_key_id)
  include Aws::Structure
end

#volume_sizeInteger

The size of the volume, in GiB.

Constraints: 1-16384 for General Purpose SSD (‘gp2`), 4-16384 for Provisioned IOPS SSD (`io1`), 500-16384 for Throughput Optimized HDD (`st1`), 500-16384 for Cold HDD (`sc1`), and 1-1024 for Magnetic (`standard`) volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

Default: If you’re creating the volume from a snapshot and don’t specify a volume size, the default is the snapshot size.

Returns:

  • (Integer)


18404
18405
18406
18407
18408
18409
18410
18411
18412
18413
# File 'lib/aws-sdk-ec2/types.rb', line 18404

class EbsBlockDevice < Struct.new(
  :delete_on_termination,
  :iops,
  :snapshot_id,
  :volume_size,
  :volume_type,
  :encrypted,
  :kms_key_id)
  include Aws::Structure
end

#volume_typeString

The volume type: ‘gp2`, `io1`, `st1`, `sc1`, or `standard`.

Default: ‘standard`

Returns:

  • (String)


18404
18405
18406
18407
18408
18409
18410
18411
18412
18413
# File 'lib/aws-sdk-ec2/types.rb', line 18404

class EbsBlockDevice < Struct.new(
  :delete_on_termination,
  :iops,
  :snapshot_id,
  :volume_size,
  :volume_type,
  :encrypted,
  :kms_key_id)
  include Aws::Structure
end