@Stability(value=Stable)
public static interface CfnLaunchTemplate.LaunchTemplateDataProperty
extends software.amazon.jsii.JsiiSerializable
You must specify at least one parameter for the launch template data.
Example:
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.ec2.*;
LaunchTemplateDataProperty launchTemplateDataProperty = LaunchTemplateDataProperty.builder()
.blockDeviceMappings(List.of(BlockDeviceMappingProperty.builder()
.deviceName("deviceName")
.ebs(EbsProperty.builder()
.deleteOnTermination(false)
.encrypted(false)
.iops(123)
.kmsKeyId("kmsKeyId")
.snapshotId("snapshotId")
.throughput(123)
.volumeSize(123)
.volumeType("volumeType")
.build())
.noDevice("noDevice")
.virtualName("virtualName")
.build()))
.capacityReservationSpecification(CapacityReservationSpecificationProperty.builder()
.capacityReservationPreference("capacityReservationPreference")
.capacityReservationTarget(CapacityReservationTargetProperty.builder()
.capacityReservationId("capacityReservationId")
.capacityReservationResourceGroupArn("capacityReservationResourceGroupArn")
.build())
.build())
.cpuOptions(CpuOptionsProperty.builder()
.coreCount(123)
.threadsPerCore(123)
.build())
.creditSpecification(CreditSpecificationProperty.builder()
.cpuCredits("cpuCredits")
.build())
.disableApiStop(false)
.disableApiTermination(false)
.ebsOptimized(false)
.elasticGpuSpecifications(List.of(ElasticGpuSpecificationProperty.builder()
.type("type")
.build()))
.elasticInferenceAccelerators(List.of(LaunchTemplateElasticInferenceAcceleratorProperty.builder()
.count(123)
.type("type")
.build()))
.enclaveOptions(EnclaveOptionsProperty.builder()
.enabled(false)
.build())
.hibernationOptions(HibernationOptionsProperty.builder()
.configured(false)
.build())
.iamInstanceProfile(IamInstanceProfileProperty.builder()
.arn("arn")
.name("name")
.build())
.imageId("imageId")
.instanceInitiatedShutdownBehavior("instanceInitiatedShutdownBehavior")
.instanceMarketOptions(InstanceMarketOptionsProperty.builder()
.marketType("marketType")
.spotOptions(SpotOptionsProperty.builder()
.blockDurationMinutes(123)
.instanceInterruptionBehavior("instanceInterruptionBehavior")
.maxPrice("maxPrice")
.spotInstanceType("spotInstanceType")
.validUntil("validUntil")
.build())
.build())
.instanceRequirements(InstanceRequirementsProperty.builder()
.acceleratorCount(AcceleratorCountProperty.builder()
.max(123)
.min(123)
.build())
.acceleratorManufacturers(List.of("acceleratorManufacturers"))
.acceleratorNames(List.of("acceleratorNames"))
.acceleratorTotalMemoryMiB(AcceleratorTotalMemoryMiBProperty.builder()
.max(123)
.min(123)
.build())
.acceleratorTypes(List.of("acceleratorTypes"))
.bareMetal("bareMetal")
.baselineEbsBandwidthMbps(BaselineEbsBandwidthMbpsProperty.builder()
.max(123)
.min(123)
.build())
.burstablePerformance("burstablePerformance")
.cpuManufacturers(List.of("cpuManufacturers"))
.excludedInstanceTypes(List.of("excludedInstanceTypes"))
.instanceGenerations(List.of("instanceGenerations"))
.localStorage("localStorage")
.localStorageTypes(List.of("localStorageTypes"))
.memoryGiBPerVCpu(MemoryGiBPerVCpuProperty.builder()
.max(123)
.min(123)
.build())
.memoryMiB(MemoryMiBProperty.builder()
.max(123)
.min(123)
.build())
.networkInterfaceCount(NetworkInterfaceCountProperty.builder()
.max(123)
.min(123)
.build())
.onDemandMaxPricePercentageOverLowestPrice(123)
.requireHibernateSupport(false)
.spotMaxPricePercentageOverLowestPrice(123)
.totalLocalStorageGb(TotalLocalStorageGBProperty.builder()
.max(123)
.min(123)
.build())
.vCpuCount(VCpuCountProperty.builder()
.max(123)
.min(123)
.build())
.build())
.instanceType("instanceType")
.kernelId("kernelId")
.keyName("keyName")
.licenseSpecifications(List.of(LicenseSpecificationProperty.builder()
.licenseConfigurationArn("licenseConfigurationArn")
.build()))
.maintenanceOptions(MaintenanceOptionsProperty.builder()
.autoRecovery("autoRecovery")
.build())
.metadataOptions(MetadataOptionsProperty.builder()
.httpEndpoint("httpEndpoint")
.httpProtocolIpv6("httpProtocolIpv6")
.httpPutResponseHopLimit(123)
.httpTokens("httpTokens")
.instanceMetadataTags("instanceMetadataTags")
.build())
.monitoring(MonitoringProperty.builder()
.enabled(false)
.build())
.networkInterfaces(List.of(NetworkInterfaceProperty.builder()
.associateCarrierIpAddress(false)
.associatePublicIpAddress(false)
.deleteOnTermination(false)
.description("description")
.deviceIndex(123)
.groups(List.of("groups"))
.interfaceType("interfaceType")
.ipv4PrefixCount(123)
.ipv4Prefixes(List.of(Ipv4PrefixSpecificationProperty.builder()
.ipv4Prefix("ipv4Prefix")
.build()))
.ipv6AddressCount(123)
.ipv6Addresses(List.of(Ipv6AddProperty.builder()
.ipv6Address("ipv6Address")
.build()))
.ipv6PrefixCount(123)
.ipv6Prefixes(List.of(Ipv6PrefixSpecificationProperty.builder()
.ipv6Prefix("ipv6Prefix")
.build()))
.networkCardIndex(123)
.networkInterfaceId("networkInterfaceId")
.privateIpAddress("privateIpAddress")
.privateIpAddresses(List.of(PrivateIpAddProperty.builder()
.primary(false)
.privateIpAddress("privateIpAddress")
.build()))
.secondaryPrivateIpAddressCount(123)
.subnetId("subnetId")
.build()))
.placement(PlacementProperty.builder()
.affinity("affinity")
.availabilityZone("availabilityZone")
.groupName("groupName")
.hostId("hostId")
.hostResourceGroupArn("hostResourceGroupArn")
.partitionNumber(123)
.spreadDomain("spreadDomain")
.tenancy("tenancy")
.build())
.privateDnsNameOptions(PrivateDnsNameOptionsProperty.builder()
.enableResourceNameDnsAaaaRecord(false)
.enableResourceNameDnsARecord(false)
.hostnameType("hostnameType")
.build())
.ramDiskId("ramDiskId")
.securityGroupIds(List.of("securityGroupIds"))
.securityGroups(List.of("securityGroups"))
.tagSpecifications(List.of(TagSpecificationProperty.builder()
.resourceType("resourceType")
.tags(List.of(CfnTag.builder()
.key("key")
.value("value")
.build()))
.build()))
.userData("userData")
.build();
| Modifier and Type | Interface and Description |
|---|---|
static class |
CfnLaunchTemplate.LaunchTemplateDataProperty.Builder
A builder for
CfnLaunchTemplate.LaunchTemplateDataProperty |
static class |
CfnLaunchTemplate.LaunchTemplateDataProperty.Jsii$Proxy
An implementation for
CfnLaunchTemplate.LaunchTemplateDataProperty |
| Modifier and Type | Method and Description |
|---|---|
static CfnLaunchTemplate.LaunchTemplateDataProperty.Builder |
builder() |
default Object |
getBlockDeviceMappings()
The block device mapping.
|
default Object |
getCapacityReservationSpecification()
The Capacity Reservation targeting option.
|
default Object |
getCpuOptions()
The CPU options for the instance.
|
default Object |
getCreditSpecification()
The credit option for CPU usage of the instance.
|
default Object |
getDisableApiStop()
`CfnLaunchTemplate.LaunchTemplateDataProperty.DisableApiStop`.
|
default Object |
getDisableApiTermination()
If you set this parameter to `true` , you can't terminate the instance using the Amazon EC2 console, CLI, or API;
|
default Object |
getEbsOptimized()
Indicates whether the instance is optimized for Amazon EBS I/O.
|
default Object |
getElasticGpuSpecifications()
An elastic GPU to associate with the instance.
|
default Object |
getElasticInferenceAccelerators()
The elastic inference accelerator for the instance.
|
default Object |
getEnclaveOptions()
Indicates whether the instance is enabled for AWS Nitro Enclaves.
|
default Object |
getHibernationOptions()
Indicates whether an instance is enabled for hibernation.
|
default Object |
getIamInstanceProfile()
The name or Amazon Resource Name (ARN) of an IAM instance profile.
|
default String |
getImageId()
The ID of the AMI.
|
default String |
getInstanceInitiatedShutdownBehavior()
Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).
|
default Object |
getInstanceMarketOptions()
The market (purchasing) option for the instances.
|
default Object |
getInstanceRequirements()
The attributes for the instance types.
|
default String |
getInstanceType()
The instance type.
|
default String |
getKernelId()
The ID of the kernel.
|
default String |
getKeyName()
The name of the key pair.
|
default Object |
getLicenseSpecifications()
The license configurations.
|
default Object |
getMaintenanceOptions()
`CfnLaunchTemplate.LaunchTemplateDataProperty.MaintenanceOptions`.
|
default Object |
getMetadataOptions()
The metadata options for the instance.
|
default Object |
getMonitoring()
The monitoring for the instance.
|
default Object |
getNetworkInterfaces()
One or more network interfaces.
|
default Object |
getPlacement()
The placement for the instance.
|
default Object |
getPrivateDnsNameOptions()
The options for the instance hostname.
|
default String |
getRamDiskId()
The ID of the RAM disk.
|
default List<String> |
getSecurityGroupIds()
One or more security group IDs.
|
default List<String> |
getSecurityGroups()
[EC2-Classic, default VPC] One or more security group names.
|
default Object |
getTagSpecifications()
The tags to apply to the resources during launch.
|
default String |
getUserData()
The user data to make available to the instance.
|
@Stability(value=Stable) @Nullable default Object getBlockDeviceMappings()
@Stability(value=Stable) @Nullable default Object getCapacityReservationSpecification()
If you do not specify this parameter, the instance's Capacity Reservation preference defaults to open , which enables it to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
@Stability(value=Stable) @Nullable default Object getCpuOptions()
For more information, see Optimizing CPU Options in the Amazon Elastic Compute Cloud User Guide .
@Stability(value=Stable) @Nullable default Object getCreditSpecification()
Valid for T2, T3, or T3a instances only.
@Stability(value=Stable) @Nullable default Object getDisableApiStop()
@Stability(value=Stable) @Nullable default Object getDisableApiTermination()
otherwise, you can. To change this attribute after launch, use ModifyInstanceAttribute . Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate , you can terminate the instance by running the shutdown command from the instance.
@Stability(value=Stable) @Nullable default Object getEbsOptimized()
This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.
@Stability(value=Stable) @Nullable default Object getElasticGpuSpecifications()
@Stability(value=Stable) @Nullable default Object getElasticInferenceAccelerators()
@Stability(value=Stable) @Nullable default Object getEnclaveOptions()
For more information, see What is AWS Nitro Enclaves? in the AWS Nitro Enclaves User Guide .
You can't enable AWS Nitro Enclaves and hibernation on the same instance.
@Stability(value=Stable) @Nullable default Object getHibernationOptions()
This parameter is valid only if the instance meets the hibernation prerequisites . For more information, see Hibernate your instance in the Amazon Elastic Compute Cloud User Guide .
@Stability(value=Stable) @Nullable default Object getIamInstanceProfile()
@Stability(value=Stable) @Nullable default String getImageId()
@Stability(value=Stable) @Nullable default String getInstanceInitiatedShutdownBehavior()
Default: stop
@Stability(value=Stable) @Nullable default Object getInstanceMarketOptions()
@Stability(value=Stable) @Nullable default Object getInstanceRequirements()
When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.
If you specify InstanceRequirements , you can't specify InstanceTypes .
@Stability(value=Stable) @Nullable default String getInstanceType()
If you specify InstanceTypes , you can't specify InstanceRequirements .
@Stability(value=Stable) @Nullable default String getKernelId()
We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User Provided Kernels in the Amazon EC2 User Guide .
@Stability(value=Stable) @Nullable default String getKeyName()
If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.
@Stability(value=Stable) @Nullable default Object getLicenseSpecifications()
@Stability(value=Stable) @Nullable default Object getMaintenanceOptions()
@Stability(value=Stable) @Nullable default Object getMetadataOptions()
For more information, see Instance Metadata and User Data in the Amazon Elastic Compute Cloud User Guide .
@Stability(value=Stable) @Nullable default Object getMonitoring()
@Stability(value=Stable) @Nullable default Object getNetworkInterfaces()
If you specify a network interface, you must specify any security groups and subnets as part of the network interface.
@Stability(value=Stable) @Nullable default Object getPlacement()
@Stability(value=Stable) @Nullable default Object getPrivateDnsNameOptions()
The default values are inherited from the subnet.
@Stability(value=Stable) @Nullable default String getRamDiskId()
We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User provided kernels in the Amazon Elastic Compute Cloud User Guide .
@Stability(value=Stable) @Nullable default List<String> getSecurityGroupIds()
You can create a security group using CreateSecurityGroup . You cannot specify both a security group ID and security name in the same request.
@Stability(value=Stable) @Nullable default List<String> getSecurityGroups()
For a nondefault VPC, you must use security group IDs instead. You cannot specify both a security group ID and security name in the same request.
@Stability(value=Stable) @Nullable default Object getTagSpecifications()
You can only tag instances and volumes on launch. The specified tags are applied to all instances or volumes that are created during launch.
@Stability(value=Stable) @Nullable default String getUserData()
You must provide base64-encoded text. User data is limited to 16 KB. For more information, see Run commands on your Linux instance at launch (Linux) or Work with instance user data (Windows) in the Amazon Elastic Compute Cloud User Guide .
If you are creating the launch template for use with AWS Batch , the user data must be provided in the MIME multi-part archive format . For more information, see Amazon EC2 user data in launch templates in the AWS Batch User Guide .
@Stability(value=Stable) static CfnLaunchTemplate.LaunchTemplateDataProperty.Builder builder()
Copyright © 2022. All rights reserved.