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.12xlarge, 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.12xlarge, 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, m5.metal, m5a.large, m5a.xlarge, m5a.2xlarge, m5a.4xlarge, m5a.12xlarge, m5a.24xlarge, m5d.large, m5d.xlarge, m5d.2xlarge, m5d.4xlarge, m5d.12xlarge, m5d.24xlarge, m5d.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.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: "client-vpn-endpoint", # accepts client-vpn-endpoint, 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].
Constraint: Maximum 128 ASCII characters.
[1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
5389 5390 5391 5392 5393 5394 5395 5396 |
# File 'lib/aws-sdk-ec2/types.rb', line 5389 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`.
5389 5390 5391 5392 5393 5394 5395 5396 |
# File 'lib/aws-sdk-ec2/types.rb', line 5389 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.
5389 5390 5391 5392 5393 5394 5395 5396 |
# File 'lib/aws-sdk-ec2/types.rb', line 5389 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.
5389 5390 5391 5392 5393 5394 5395 5396 |
# File 'lib/aws-sdk-ec2/types.rb', line 5389 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.
5389 5390 5391 5392 5393 5394 5395 5396 |
# File 'lib/aws-sdk-ec2/types.rb', line 5389 class CreateLaunchTemplateRequest < Struct.new( :dry_run, :client_token, :launch_template_name, :version_description, :launch_template_data) include Aws::Structure end |