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-64,000 IOPS
For
io1
andio2
volumes, we guarantee 64,000 IOPS only for Instances built on the Nitro System . Other instance families guarantee performance up to 32,000 IOPS.This parameter is supported for
io1
,io2
, andgp3
volumes only. This parameter is not supported forgp2
,st1
,sc1
, orstandard
volumes.- Returns:
this
-
kmsKeyId
Sets the value ofCfnLaunchTemplate.EbsProperty.getKmsKeyId()
- Parameters:
kmsKeyId
- The ARN of the symmetric AWS Key Management Service ( AWS KMS ) CMK used for 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,384io1
andio2
: 4-16,384st1
andsc1
: 125-16,384standard
: 1-1,024
- 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 Elastic Compute Cloud 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
-