Class: Aws::EC2::Types::CreateLaunchTemplateRequest
- Inherits:
-
Struct
- Object
- Struct
- Aws::EC2::Types::CreateLaunchTemplateRequest
- Includes:
- Structure
- Defined in:
- lib/aws-sdk-ec2/types.rb
Overview
When making an API call, you may pass CreateLaunchTemplateRequest data as a hash:
{
dry_run: false,
client_token: "String",
launch_template_name: "LaunchTemplateName", # required
version_description: "VersionDescription",
launch_template_data: { # required
kernel_id: "String",
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: "String",
snapshot_id: "String",
volume_size: 1,
volume_type: "standard", # accepts standard, io1, gp2, sc1, st1
},
no_device: "String",
},
],
network_interfaces: [
{
associate_public_ip_address: false,
delete_on_termination: false,
description: "String",
device_index: 1,
groups: ["String"],
ipv_6_address_count: 1,
ipv_6_addresses: [
{
ipv_6_address: "String",
},
],
network_interface_id: "String",
private_ip_address: "String",
private_ip_addresses: [
{
primary: false,
private_ip_address: "String",
},
],
secondary_private_ip_address_count: 1,
subnet_id: "String",
},
],
image_id: "String",
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, 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.12xlarge, r5a.24xlarge, r5d.large, r5d.xlarge, r5d.2xlarge, r5d.4xlarge, r5d.8xlarge, r5d.12xlarge, r5d.16xlarge, r5d.24xlarge, r5d.metal, 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, 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.18xlarge, c5d.large, c5d.xlarge, c5d.2xlarge, c5d.4xlarge, c5d.9xlarge, c5d.18xlarge, c5n.large, c5n.xlarge, c5n.2xlarge, c5n.4xlarge, c5n.9xlarge, c5n.18xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, g3.4xlarge, g3.8xlarge, g3.16xlarge, g3s.xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, p3.2xlarge, p3.8xlarge, p3.16xlarge, p3dn.24xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.4xlarge, f1.16xlarge, m5.large, m5.xlarge, m5.2xlarge, m5.4xlarge, m5.12xlarge, m5.24xlarge, m5a.large, m5a.xlarge, m5a.2xlarge, m5a.4xlarge, m5a.12xlarge, m5a.24xlarge, m5d.large, m5d.xlarge, m5d.2xlarge, m5d.4xlarge, m5d.12xlarge, m5d.24xlarge, h1.2xlarge, h1.4xlarge, h1.8xlarge, h1.16xlarge, z1d.large, z1d.xlarge, z1d.2xlarge, z1d.3xlarge, z1d.6xlarge, z1d.12xlarge, u-6tb1.metal, u-9tb1.metal, u-12tb1.metal, a1.medium, a1.large, a1.xlarge, a1.2xlarge, a1.4xlarge
key_name: "String",
monitoring: {
enabled: false,
},
placement: {
availability_zone: "String",
affinity: "String",
group_name: "String",
host_id: "String",
tenancy: "default", # accepts default, dedicated, host
spread_domain: "String",
},
ram_disk_id: "String",
disable_api_termination: false,
instance_initiated_shutdown_behavior: "stop", # accepts stop, terminate
user_data: "String",
tag_specifications: [
{
resource_type: "customer-gateway", # accepts customer-gateway, dedicated-host, dhcp-options, elastic-ip, fleet, fpga-image, image, instance, internet-gateway, launch-template, natgateway, network-acl, network-interface, reserved-instances, route-table, security-group, snapshot, spot-instances-request, subnet, transit-gateway, transit-gateway-attachment, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway
tags: [
{
key: "String",
value: "String",
},
],
},
],
elastic_gpu_specifications: [
{
type: "String", # required
},
],
elastic_inference_accelerators: [
{
type: "String", # required
},
],
security_group_ids: ["String"],
security_groups: ["String"],
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: "String",
},
},
hibernation_options: {
configured: false,
},
license_specifications: [
{
license_configuration_arn: "String",
},
],
},
}
Instance Attribute Summary collapse
-
#client_token ⇒ String
Unique, case-sensitive identifier you provide to ensure the idempotency of the request.
-
#dry_run ⇒ Boolean
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response.
-
#launch_template_data ⇒ Types::RequestLaunchTemplateData
The information for the launch template.
-
#launch_template_name ⇒ String
A name for the launch template.
-
#version_description ⇒ String
A description for the first version of the launch template.
Instance Attribute Details
#client_token ⇒ String
Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see [Ensuring Idempotency].
[1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
5342 5343 5344 5345 5346 5347 5348 5349 |
# File 'lib/aws-sdk-ec2/types.rb', line 5342 class CreateLaunchTemplateRequest < Struct.new( :dry_run, :client_token, :launch_template_name, :version_description, :launch_template_data) include Aws::Structure end |
#dry_run ⇒ Boolean
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is ‘DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
5342 5343 5344 5345 5346 5347 5348 5349 |
# File 'lib/aws-sdk-ec2/types.rb', line 5342 class CreateLaunchTemplateRequest < Struct.new( :dry_run, :client_token, :launch_template_name, :version_description, :launch_template_data) include Aws::Structure end |
#launch_template_data ⇒ Types::RequestLaunchTemplateData
The information for the launch template.
5342 5343 5344 5345 5346 5347 5348 5349 |
# File 'lib/aws-sdk-ec2/types.rb', line 5342 class CreateLaunchTemplateRequest < Struct.new( :dry_run, :client_token, :launch_template_name, :version_description, :launch_template_data) include Aws::Structure end |
#launch_template_name ⇒ String
A name for the launch template.
5342 5343 5344 5345 5346 5347 5348 5349 |
# File 'lib/aws-sdk-ec2/types.rb', line 5342 class CreateLaunchTemplateRequest < Struct.new( :dry_run, :client_token, :launch_template_name, :version_description, :launch_template_data) include Aws::Structure end |
#version_description ⇒ String
A description for the first version of the launch template.
5342 5343 5344 5345 5346 5347 5348 5349 |
# File 'lib/aws-sdk-ec2/types.rb', line 5342 class CreateLaunchTemplateRequest < Struct.new( :dry_run, :client_token, :launch_template_name, :version_description, :launch_template_data) include Aws::Structure end |