Class CfnLaunchTemplate.EbsProperty.Builder
java.lang.Object
software.amazon.awscdk.services.ec2.CfnLaunchTemplate.EbsProperty.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<CfnLaunchTemplate.EbsProperty>
- Enclosing interface:
CfnLaunchTemplate.EbsProperty
@Stability(Stable)
public static final class CfnLaunchTemplate.EbsProperty.Builder
extends Object
implements software.amazon.jsii.Builder<CfnLaunchTemplate.EbsProperty>
A builder for
CfnLaunchTemplate.EbsProperty
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionbuild()
Builds the configured instance.deleteOnTermination
(Boolean deleteOnTermination) Sets the value ofCfnLaunchTemplate.EbsProperty.getDeleteOnTermination()
deleteOnTermination
(IResolvable deleteOnTermination) Sets the value ofCfnLaunchTemplate.EbsProperty.getDeleteOnTermination()
Sets the value ofCfnLaunchTemplate.EbsProperty.getEncrypted()
encrypted
(IResolvable encrypted) Sets the value ofCfnLaunchTemplate.EbsProperty.getEncrypted()
Sets the value ofCfnLaunchTemplate.EbsProperty.getIops()
Sets the value ofCfnLaunchTemplate.EbsProperty.getKmsKeyId()
snapshotId
(String snapshotId) Sets the value ofCfnLaunchTemplate.EbsProperty.getSnapshotId()
throughput
(Number throughput) Sets the value ofCfnLaunchTemplate.EbsProperty.getThroughput()
volumeSize
(Number volumeSize) Sets the value ofCfnLaunchTemplate.EbsProperty.getVolumeSize()
volumeType
(String volumeType) Sets the value ofCfnLaunchTemplate.EbsProperty.getVolumeType()
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
deleteOnTermination
@Stability(Stable) public CfnLaunchTemplate.EbsProperty.Builder deleteOnTermination(Boolean deleteOnTermination) Sets the value ofCfnLaunchTemplate.EbsProperty.getDeleteOnTermination()
- Parameters:
deleteOnTermination
- Indicates whether the EBS volume is deleted on instance termination.- Returns:
this
-
deleteOnTermination
@Stability(Stable) public CfnLaunchTemplate.EbsProperty.Builder deleteOnTermination(IResolvable deleteOnTermination) Sets the value ofCfnLaunchTemplate.EbsProperty.getDeleteOnTermination()
- Parameters:
deleteOnTermination
- Indicates whether the EBS volume is deleted on instance termination.- Returns:
this
-
encrypted
Sets the value ofCfnLaunchTemplate.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
Sets the value ofCfnLaunchTemplate.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 ofCfnLaunchTemplate.EbsProperty.getIops()
- Parameters:
iops
- The number of I/O operations per second (IOPS). Forgp3
,io1
, andio2
volumes, this represents the number of IOPS that are provisioned for the volume. Forgp2
volumes, 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 - 16,000 IOPSio1
: 100 - 64,000 IOPSio2
: 100 - 256,000 IOPS
For
io2
volumes, 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
, andgp3
volumes only.- Returns:
this
-
kmsKeyId
Sets the value ofCfnLaunchTemplate.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
Sets the value ofCfnLaunchTemplate.EbsProperty.getSnapshotId()
- Parameters:
snapshotId
- The ID of the snapshot.- Returns:
this
-
throughput
Sets the value ofCfnLaunchTemplate.EbsProperty.getThroughput()
- Parameters:
throughput
- The throughput to provision for agp3
volume, with a maximum of 1,000 MiB/s. Valid Range: Minimum value of 125. Maximum value of 1000.- Returns:
this
-
volumeSize
Sets the value ofCfnLaunchTemplate.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
andgp3
: 1 - 16,384 GiBio1
: 4 - 16,384 GiBio2
: 4 - 65,536 GiBst1
andsc1
: 125 - 16,384 GiBstandard
: 1 - 1024 GiB
- Returns:
this
-
volumeType
Sets the value ofCfnLaunchTemplate.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:
build
in interfacesoftware.amazon.jsii.Builder<CfnLaunchTemplate.EbsProperty>
- Returns:
- a new instance of
CfnLaunchTemplate.EbsProperty
- Throws:
NullPointerException
- if any required attribute was not provided
-