Skip to content
v2.274.0

BlockDeviceVolume Class ​

Describes a block device mapping for an EC2 instance or Auto Scaling group.

Example ​

ts
declare const vpc: ec2.Vpc;
declare const instanceType: ec2.InstanceType;
declare const machineImage: ec2.IMachineImage;

const autoScalingGroup = new autoscaling.AutoScalingGroup(this, 'ASG', {
  vpc,
  instanceType,
  machineImage,
  blockDevices: [
    {
        deviceName: 'gp3-volume',
        volume: autoscaling.BlockDeviceVolume.ebs(15, {
          volumeType: autoscaling.EbsDeviceVolumeType.GP3,
          throughput: 125,
        }),
      },
  ],
  // ...
});

Properties ​

ebsDevicemay be undefinedEbsDevicePropsebs_devicemay be undefinedEbsDevicePropsebsDevicemay be undefinedEbsDevicePropsEbsDevicemay be undefinedEbsDevicePropsEbsDevicemay be undefinedEbsDeviceProps#
EBS device info.
virtualNamemay be undefinedstringvirtual_namemay be undefinedstrvirtualNamemay be undefinedStringVirtualNamemay be undefinedstringVirtualNamemay be undefined*string#
Virtual device name.

Methods ​

ebs(volumeSize: number, options?: EbsDeviceOptions): BlockDeviceVolume // chainable@staticmethod def ebs(volume_size: int | float, options: typing.Optional[EbsDeviceOptions] = None) -> BlockDeviceVolumepublic static BlockDeviceVolume ebs(Number volumeSize, EbsDeviceOptions options)public static BlockDeviceVolume Ebs(double volumeSize, EbsDeviceOptions? options = null)func Ebs(VolumeSize *float64, Options EbsDeviceOptions) BlockDeviceVolumestatic#
Creates a new Elastic Block Storage device.
2 parameters

Parameters

  • volumeSizevolume_sizevolumeSizevolumeSizeVolumeSize — The volume size, in Gibibytes (GiB).
  • optionsoptionsoptionsoptionsOptions — additional device options.
ebsFromSnapshot(snapshotId: string, options?: EbsDeviceSnapshotOptions): BlockDeviceVolume // chainable@staticmethod def ebs_from_snapshot(snapshot_id: str, options: typing.Optional[EbsDeviceSnapshotOptions] = None) -> BlockDeviceVolumepublic static BlockDeviceVolume ebsFromSnapshot(String snapshotId, EbsDeviceSnapshotOptions options)public static BlockDeviceVolume EbsFromSnapshot(string snapshotId, EbsDeviceSnapshotOptions? options = null)func EbsFromSnapshot(SnapshotId *string, Options EbsDeviceSnapshotOptions) BlockDeviceVolumestatic#
Creates a new Elastic Block Storage device from an existing snapshot.
2 parameters

Parameters

  • snapshotIdsnapshot_idsnapshotIdsnapshotIdSnapshotId — The snapshot ID of the volume to use.
  • optionsoptionsoptionsoptionsOptions — additional device options.
ephemeral(volumeIndex: number): BlockDeviceVolume // chainable@staticmethod def ephemeral(volume_index: int | float) -> BlockDeviceVolumepublic static BlockDeviceVolume ephemeral(Number volumeIndex)public static BlockDeviceVolume Ephemeral(double volumeIndex)func Ephemeral(VolumeIndex *float64) BlockDeviceVolumestatic#
Creates a virtual, ephemeral device.

The name will be in the form ephemeral{volumeIndex}.

1 parameter

Parameters

  • volumeIndexvolume_indexvolumeIndexvolumeIndexVolumeIndex — the volume index.
noDevice(): BlockDeviceVolume // chainable@staticmethod def no_device() -> BlockDeviceVolumepublic static BlockDeviceVolume noDevice()public static BlockDeviceVolume NoDevice()func NoDevice() BlockDeviceVolumestatic#
Suppresses a volume mapping.