Class CfnLaunchTemplatePropsMixin.EbsProperty.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<CfnLaunchTemplatePropsMixin.EbsProperty>
- Enclosing interface:
CfnLaunchTemplatePropsMixin.EbsProperty
CfnLaunchTemplatePropsMixin.EbsProperty-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()Builds the configured instance.deleteOnTermination(Boolean deleteOnTermination) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getDeleteOnTermination()deleteOnTermination(IResolvable deleteOnTermination) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getDeleteOnTermination()ebsCardIndex(Number ebsCardIndex) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getEbsCardIndex()Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getEncrypted()encrypted(IResolvable encrypted) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getEncrypted()Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getIops()Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getKmsKeyId()Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getKmsKeyId()snapshotId(String snapshotId) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getSnapshotId()throughput(Number throughput) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getThroughput()volumeInitializationRate(Number volumeInitializationRate) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getVolumeInitializationRate()volumeSize(Number volumeSize) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getVolumeSize()volumeType(String volumeType) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getVolumeType()
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
deleteOnTermination
@Stability(Stable) public CfnLaunchTemplatePropsMixin.EbsProperty.Builder deleteOnTermination(Boolean deleteOnTermination) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getDeleteOnTermination()- Parameters:
deleteOnTermination- Indicates whether the EBS volume is deleted on instance termination.- Returns:
this
-
deleteOnTermination
@Stability(Stable) public CfnLaunchTemplatePropsMixin.EbsProperty.Builder deleteOnTermination(IResolvable deleteOnTermination) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getDeleteOnTermination()- Parameters:
deleteOnTermination- Indicates whether the EBS volume is deleted on instance termination.- Returns:
this
-
ebsCardIndex
@Stability(Stable) public CfnLaunchTemplatePropsMixin.EbsProperty.Builder ebsCardIndex(Number ebsCardIndex) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getEbsCardIndex()- Parameters:
ebsCardIndex- the value to be set.- Returns:
this
-
encrypted
@Stability(Stable) public CfnLaunchTemplatePropsMixin.EbsProperty.Builder encrypted(Boolean encrypted) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getEncrypted()- Parameters:
encrypted- 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 can't specify an encryption value.- Returns:
this
-
encrypted
@Stability(Stable) public CfnLaunchTemplatePropsMixin.EbsProperty.Builder encrypted(IResolvable encrypted) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getEncrypted()- Parameters:
encrypted- 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 can't specify an encryption value.- Returns:
this
-
iops
Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getIops()- Parameters:
iops- The number of I/O operations per second (IOPS). Forgp3,io1, andio2volumes, this represents the number of IOPS that are provisioned for the volume. Forgp2volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.The following are the supported values for each volume type:
gp3: 3,000 - 80,000 IOPSio1: 100 - 64,000 IOPSio2: 100 - 256,000 IOPS
For
io2volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System . On other instances, you can achieve performance up to 32,000 IOPS.This parameter is supported for
io1,io2, andgp3volumes only.- Returns:
this
-
kmsKeyId
Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getKmsKeyId()- Parameters:
kmsKeyId- Identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed KMS key to use for EBS encryption.- Returns:
this
-
kmsKeyId
@Stability(Stable) public CfnLaunchTemplatePropsMixin.EbsProperty.Builder kmsKeyId(IKeyRef kmsKeyId) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getKmsKeyId()- Parameters:
kmsKeyId- Identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed KMS key to use for EBS encryption.- Returns:
this
-
snapshotId
@Stability(Stable) public CfnLaunchTemplatePropsMixin.EbsProperty.Builder snapshotId(String snapshotId) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getSnapshotId()- Parameters:
snapshotId- The ID of the snapshot.- Returns:
this
-
throughput
@Stability(Stable) public CfnLaunchTemplatePropsMixin.EbsProperty.Builder throughput(Number throughput) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getThroughput()- Parameters:
throughput- The throughput to provision for agp3volume, with a maximum of 2,000 MiB/s. Valid Range: Minimum value of 125. Maximum value of 2,000.- Returns:
this
-
volumeInitializationRate
@Stability(Stable) public CfnLaunchTemplatePropsMixin.EbsProperty.Builder volumeInitializationRate(Number volumeInitializationRate) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getVolumeInitializationRate()- Parameters:
volumeInitializationRate- 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
- Returns:
this
-
volumeSize
@Stability(Stable) public CfnLaunchTemplatePropsMixin.EbsProperty.Builder volumeSize(Number volumeSize) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getVolumeSize()- Parameters:
volumeSize- The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. The following are the supported volumes sizes for each volume type:gp2: 1 - 16,384 GiBgp3: 1 - 65,536 GiBio1: 4 - 16,384 GiBio2: 4 - 65,536 GiBst1andsc1: 125 - 16,384 GiBstandard: 1 - 1024 GiB
- Returns:
this
-
volumeType
@Stability(Stable) public CfnLaunchTemplatePropsMixin.EbsProperty.Builder volumeType(String volumeType) Sets the value ofCfnLaunchTemplatePropsMixin.EbsProperty.getVolumeType()- Parameters:
volumeType- The volume type. For more information, see Amazon EBS volume types in the Amazon EBS User Guide .- Returns:
this
-
build
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<CfnLaunchTemplatePropsMixin.EbsProperty>- Returns:
- a new instance of
CfnLaunchTemplatePropsMixin.EbsProperty - Throws:
NullPointerException- if any required attribute was not provided
-