Class: Aws::EC2::Types::RequestLaunchTemplateData

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb

Overview

Note:

When making an API call, you may pass RequestLaunchTemplateData data as a hash:

{
  kernel_id: "KernelId",
  ebs_optimized: false,
  iam_instance_profile: {
    arn: "String",
    name: "String",
  },
  block_device_mappings: [
    {
      device_name: "String",
      virtual_name: "String",
      ebs: {
        encrypted: false,
        delete_on_termination: false,
        iops: 1,
        kms_key_id: "KmsKeyId",
        snapshot_id: "SnapshotId",
        volume_size: 1,
        volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1, gp3
        throughput: 1,
      },
      no_device: "String",
    },
  ],
  network_interfaces: [
    {
      associate_carrier_ip_address: false,
      associate_public_ip_address: false,
      delete_on_termination: false,
      description: "String",
      device_index: 1,
      groups: ["SecurityGroupId"],
      interface_type: "String",
      ipv_6_address_count: 1,
      ipv_6_addresses: [
        {
          ipv_6_address: "String",
        },
      ],
      network_interface_id: "NetworkInterfaceId",
      private_ip_address: "String",
      private_ip_addresses: [
        {
          primary: false,
          private_ip_address: "String",
        },
      ],
      secondary_private_ip_address_count: 1,
      subnet_id: "SubnetId",
      network_card_index: 1,
      ipv_4_prefixes: [
        {
          ipv_4_prefix: "String",
        },
      ],
      ipv_4_prefix_count: 1,
      ipv_6_prefixes: [
        {
          ipv_6_prefix: "String",
        },
      ],
      ipv_6_prefix_count: 1,
    },
  ],
  image_id: "ImageId",
  instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, t3.nano, t3.micro, t3.small, t3.medium, t3.large, t3.xlarge, t3.2xlarge, t3a.nano, t3a.micro, t3a.small, t3a.medium, t3a.large, t3a.xlarge, t3a.2xlarge, t4g.nano, t4g.micro, t4g.small, t4g.medium, t4g.large, t4g.xlarge, t4g.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, r5.large, r5.xlarge, r5.2xlarge, r5.4xlarge, r5.8xlarge, r5.12xlarge, r5.16xlarge, r5.24xlarge, r5.metal, r5a.large, r5a.xlarge, r5a.2xlarge, r5a.4xlarge, r5a.8xlarge, r5a.12xlarge, r5a.16xlarge, r5a.24xlarge, r5b.large, r5b.xlarge, r5b.2xlarge, r5b.4xlarge, r5b.8xlarge, r5b.12xlarge, r5b.16xlarge, r5b.24xlarge, r5b.metal, r5d.large, r5d.xlarge, r5d.2xlarge, r5d.4xlarge, r5d.8xlarge, r5d.12xlarge, r5d.16xlarge, r5d.24xlarge, r5d.metal, r5ad.large, r5ad.xlarge, r5ad.2xlarge, r5ad.4xlarge, r5ad.8xlarge, r5ad.12xlarge, r5ad.16xlarge, r5ad.24xlarge, r6g.metal, r6g.medium, r6g.large, r6g.xlarge, r6g.2xlarge, r6g.4xlarge, r6g.8xlarge, r6g.12xlarge, r6g.16xlarge, r6gd.metal, r6gd.medium, r6gd.large, r6gd.xlarge, r6gd.2xlarge, r6gd.4xlarge, r6gd.8xlarge, r6gd.12xlarge, r6gd.16xlarge, x1.16xlarge, x1.32xlarge, x1e.xlarge, x1e.2xlarge, x1e.4xlarge, x1e.8xlarge, x1e.16xlarge, x1e.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, i3.large, i3.xlarge, i3.2xlarge, i3.4xlarge, i3.8xlarge, i3.16xlarge, i3.metal, i3en.large, i3en.xlarge, i3en.2xlarge, i3en.3xlarge, i3en.6xlarge, i3en.12xlarge, i3en.24xlarge, i3en.metal, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, c5.large, c5.xlarge, c5.2xlarge, c5.4xlarge, c5.9xlarge, c5.12xlarge, c5.18xlarge, c5.24xlarge, c5.metal, c5a.large, c5a.xlarge, c5a.2xlarge, c5a.4xlarge, c5a.8xlarge, c5a.12xlarge, c5a.16xlarge, c5a.24xlarge, c5ad.large, c5ad.xlarge, c5ad.2xlarge, c5ad.4xlarge, c5ad.8xlarge, c5ad.12xlarge, c5ad.16xlarge, c5ad.24xlarge, c5d.large, c5d.xlarge, c5d.2xlarge, c5d.4xlarge, c5d.9xlarge, c5d.12xlarge, c5d.18xlarge, c5d.24xlarge, c5d.metal, c5n.large, c5n.xlarge, c5n.2xlarge, c5n.4xlarge, c5n.9xlarge, c5n.18xlarge, c5n.metal, c6g.metal, c6g.medium, c6g.large, c6g.xlarge, c6g.2xlarge, c6g.4xlarge, c6g.8xlarge, c6g.12xlarge, c6g.16xlarge, c6gd.metal, c6gd.medium, c6gd.large, c6gd.xlarge, c6gd.2xlarge, c6gd.4xlarge, c6gd.8xlarge, c6gd.12xlarge, c6gd.16xlarge, c6gn.medium, c6gn.large, c6gn.xlarge, c6gn.2xlarge, c6gn.4xlarge, c6gn.8xlarge, c6gn.12xlarge, c6gn.16xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, g3.4xlarge, g3.8xlarge, g3.16xlarge, g3s.xlarge, g4ad.xlarge, g4ad.2xlarge, g4ad.4xlarge, g4ad.8xlarge, g4ad.16xlarge, g4dn.xlarge, g4dn.2xlarge, g4dn.4xlarge, g4dn.8xlarge, g4dn.12xlarge, g4dn.16xlarge, g4dn.metal, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, p3.2xlarge, p3.8xlarge, p3.16xlarge, p3dn.24xlarge, p4d.24xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, d3.xlarge, d3.2xlarge, d3.4xlarge, d3.8xlarge, d3en.xlarge, d3en.2xlarge, d3en.4xlarge, d3en.6xlarge, d3en.8xlarge, d3en.12xlarge, f1.2xlarge, f1.4xlarge, f1.16xlarge, m5.large, m5.xlarge, m5.2xlarge, m5.4xlarge, m5.8xlarge, m5.12xlarge, m5.16xlarge, m5.24xlarge, m5.metal, m5a.large, m5a.xlarge, m5a.2xlarge, m5a.4xlarge, m5a.8xlarge, m5a.12xlarge, m5a.16xlarge, m5a.24xlarge, m5d.large, m5d.xlarge, m5d.2xlarge, m5d.4xlarge, m5d.8xlarge, m5d.12xlarge, m5d.16xlarge, m5d.24xlarge, m5d.metal, m5ad.large, m5ad.xlarge, m5ad.2xlarge, m5ad.4xlarge, m5ad.8xlarge, m5ad.12xlarge, m5ad.16xlarge, m5ad.24xlarge, m5zn.large, m5zn.xlarge, m5zn.2xlarge, m5zn.3xlarge, m5zn.6xlarge, m5zn.12xlarge, m5zn.metal, h1.2xlarge, h1.4xlarge, h1.8xlarge, h1.16xlarge, z1d.large, z1d.xlarge, z1d.2xlarge, z1d.3xlarge, z1d.6xlarge, z1d.12xlarge, z1d.metal, u-6tb1.56xlarge, u-6tb1.112xlarge, u-9tb1.112xlarge, u-12tb1.112xlarge, u-6tb1.metal, u-9tb1.metal, u-12tb1.metal, u-18tb1.metal, u-24tb1.metal, a1.medium, a1.large, a1.xlarge, a1.2xlarge, a1.4xlarge, a1.metal, m5dn.large, m5dn.xlarge, m5dn.2xlarge, m5dn.4xlarge, m5dn.8xlarge, m5dn.12xlarge, m5dn.16xlarge, m5dn.24xlarge, m5dn.metal, m5n.large, m5n.xlarge, m5n.2xlarge, m5n.4xlarge, m5n.8xlarge, m5n.12xlarge, m5n.16xlarge, m5n.24xlarge, m5n.metal, r5dn.large, r5dn.xlarge, r5dn.2xlarge, r5dn.4xlarge, r5dn.8xlarge, r5dn.12xlarge, r5dn.16xlarge, r5dn.24xlarge, r5dn.metal, r5n.large, r5n.xlarge, r5n.2xlarge, r5n.4xlarge, r5n.8xlarge, r5n.12xlarge, r5n.16xlarge, r5n.24xlarge, r5n.metal, inf1.xlarge, inf1.2xlarge, inf1.6xlarge, inf1.24xlarge, m6g.metal, m6g.medium, m6g.large, m6g.xlarge, m6g.2xlarge, m6g.4xlarge, m6g.8xlarge, m6g.12xlarge, m6g.16xlarge, m6gd.metal, m6gd.medium, m6gd.large, m6gd.xlarge, m6gd.2xlarge, m6gd.4xlarge, m6gd.8xlarge, m6gd.12xlarge, m6gd.16xlarge, m6i.large, m6i.xlarge, m6i.2xlarge, m6i.4xlarge, m6i.8xlarge, m6i.12xlarge, m6i.16xlarge, m6i.24xlarge, m6i.32xlarge, mac1.metal, x2gd.medium, x2gd.large, x2gd.xlarge, x2gd.2xlarge, x2gd.4xlarge, x2gd.8xlarge, x2gd.12xlarge, x2gd.16xlarge, x2gd.metal, vt1.3xlarge, vt1.6xlarge, vt1.24xlarge
  key_name: "KeyPairName",
  monitoring: {
    enabled: false,
  },
  placement: {
    availability_zone: "String",
    affinity: "String",
    group_name: "PlacementGroupName",
    host_id: "DedicatedHostId",
    tenancy: "default", # accepts default, dedicated, host
    spread_domain: "String",
    host_resource_group_arn: "String",
    partition_number: 1,
  },
  ram_disk_id: "RamdiskId",
  disable_api_termination: false,
  instance_initiated_shutdown_behavior: "stop", # accepts stop, terminate
  user_data: "String",
  tag_specifications: [
    {
      resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, dedicated-host, dhcp-options, egress-only-internet-gateway, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, instance-event-window, internet-gateway, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-endpoint, vpc-endpoint-service, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
      tags: [
        {
          key: "String",
          value: "String",
        },
      ],
    },
  ],
  elastic_gpu_specifications: [
    {
      type: "String", # required
    },
  ],
  elastic_inference_accelerators: [
    {
      type: "String", # required
      count: 1,
    },
  ],
  security_group_ids: ["SecurityGroupId"],
  security_groups: ["SecurityGroupName"],
  instance_market_options: {
    market_type: "spot", # accepts spot
    spot_options: {
      max_price: "String",
      spot_instance_type: "one-time", # accepts one-time, persistent
      block_duration_minutes: 1,
      valid_until: Time.now,
      instance_interruption_behavior: "hibernate", # accepts hibernate, stop, terminate
    },
  },
  credit_specification: {
    cpu_credits: "String", # required
  },
  cpu_options: {
    core_count: 1,
    threads_per_core: 1,
  },
  capacity_reservation_specification: {
    capacity_reservation_preference: "open", # accepts open, none
    capacity_reservation_target: {
      capacity_reservation_id: "CapacityReservationId",
      capacity_reservation_resource_group_arn: "String",
    },
  },
  license_specifications: [
    {
      license_configuration_arn: "String",
    },
  ],
  hibernation_options: {
    configured: false,
  },
  metadata_options: {
    http_tokens: "optional", # accepts optional, required
    http_put_response_hop_limit: 1,
    http_endpoint: "disabled", # accepts disabled, enabled
    http_protocol_ipv_6: "disabled", # accepts disabled, enabled
  },
  enclave_options: {
    enabled: false,
  },
}

The information to include in the launch template.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#block_device_mappingsArray<Types::LaunchTemplateBlockDeviceMappingRequest>

The block device mapping.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#capacity_reservation_specificationTypes::LaunchTemplateCapacityReservationSpecificationRequest

The Capacity Reservation targeting option. 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).



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#cpu_optionsTypes::LaunchTemplateCpuOptionsRequest

The CPU options for the instance. For more information, see Optimizing CPU Options in the Amazon Elastic Compute Cloud User Guide.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#credit_specificationTypes::CreditSpecificationRequest

The credit option for CPU usage of the instance. Valid for T2, T3, or T3a instances only.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#disable_api_terminationBoolean

If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; 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.

Returns:

  • (Boolean)


47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#ebs_optimizedBoolean

Indicates whether the instance is optimized for Amazon EBS I/O. 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.

Returns:

  • (Boolean)


47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#elastic_gpu_specificationsArray<Types::ElasticGpuSpecification>

An elastic GPU to associate with the instance.

Returns:



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#elastic_inference_acceleratorsArray<Types::LaunchTemplateElasticInferenceAccelerator>

The elastic inference accelerator for the instance.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#enclave_optionsTypes::LaunchTemplateEnclaveOptionsRequest

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more information, see What is Amazon Web Services Nitro Enclaves? in the Amazon Web Services Nitro Enclaves User Guide.

You can't enable Amazon Web Services Nitro Enclaves and hibernation on the same instance.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#hibernation_optionsTypes::LaunchTemplateHibernationOptionsRequest

Indicates whether an instance is enabled for hibernation. 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.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#iam_instance_profileTypes::LaunchTemplateIamInstanceProfileSpecificationRequest

The name or Amazon Resource Name (ARN) of an IAM instance profile.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#image_idString

The ID of the AMI.

Returns:

  • (String)


47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#instance_initiated_shutdown_behaviorString

Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

Default: stop

Returns:

  • (String)


47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#instance_market_optionsTypes::LaunchTemplateInstanceMarketOptionsRequest

The market (purchasing) option for the instances.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#instance_typeString

The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.

Returns:

  • (String)


47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#kernel_idString

The ID of the kernel.

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.

Returns:

  • (String)


47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#key_nameString

The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair.

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.

Returns:

  • (String)


47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#license_specificationsArray<Types::LaunchTemplateLicenseConfigurationRequest>

The license configurations.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#metadata_optionsTypes::LaunchTemplateInstanceMetadataOptionsRequest

The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon Elastic Compute Cloud User Guide.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#monitoringTypes::LaunchTemplatesMonitoringRequest

The monitoring for the instance.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#network_interfacesArray<Types::LaunchTemplateInstanceNetworkInterfaceSpecificationRequest>

One or more network interfaces. If you specify a network interface, you must specify any security groups and subnets as part of the network interface.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#placementTypes::LaunchTemplatePlacementRequest

The placement for the instance.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#ram_disk_idString

The ID of the RAM disk.

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.

Returns:

  • (String)


47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#security_group_idsArray<String>

One or more security group IDs. You can create a security group using CreateSecurityGroup. You cannot specify both a security group ID and security name in the same request.

Returns:

  • (Array<String>)


47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#security_groupsArray<String>

[EC2-Classic, default VPC] One or more security group names. 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.

Returns:

  • (Array<String>)


47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#tag_specificationsArray<Types::LaunchTemplateTagSpecificationRequest>

The tags to apply to the resources during launch. You can only tag instances and volumes on launch. The specified tags are applied to all instances or volumes that are created during launch. To tag a resource after it has been created, see CreateTags.



47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end

#user_dataString

The user data to make available to the instance. You must provide base64-encoded text. User data is limited to 16 KB. For more information, see Running Commands on Your Linux Instance at Launch (Linux) or Adding User Data (Windows).

If you are creating the launch template for use with 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 Batch User Guide.

Returns:

  • (String)


47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 47786

class RequestLaunchTemplateData < Struct.new(
  :kernel_id,
  :ebs_optimized,
  :iam_instance_profile,
  :block_device_mappings,
  :network_interfaces,
  :image_id,
  :instance_type,
  :key_name,
  :monitoring,
  :placement,
  :ram_disk_id,
  :disable_api_termination,
  :instance_initiated_shutdown_behavior,
  :user_data,
  :tag_specifications,
  :elastic_gpu_specifications,
  :elastic_inference_accelerators,
  :security_group_ids,
  :security_groups,
  :instance_market_options,
  :credit_specification,
  :cpu_options,
  :capacity_reservation_specification,
  :license_specifications,
  :hibernation_options,
  :metadata_options,
  :enclave_options)
  SENSITIVE = []
  include Aws::Structure
end