You are viewing documentation for version 3 of the AWS SDK for Ruby. Version 2 documentation can be found here.

Class: Aws::EC2::Types::SpotFleetLaunchSpecification

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 SpotFleetLaunchSpecification data as a hash:

{
  security_groups: [
    {
      group_name: "String",
      group_id: "String",
    },
  ],
  addressing_type: "String",
  block_device_mappings: [
    {
      device_name: "String",
      virtual_name: "String",
      ebs: {
        encrypted: false,
        delete_on_termination: false,
        iops: 1,
        snapshot_id: "String",
        volume_size: 1,
        volume_type: "standard", # accepts standard, io1, gp2, sc1, st1
      },
      no_device: "String",
    },
  ],
  ebs_optimized: false,
  iam_instance_profile: {
    arn: "String",
    name: "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, 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, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, i3.large, i3.xlarge, i3.2xlarge, i3.4xlarge, i3.8xlarge, i3.16xlarge, 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, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, g3.4xlarge, g3.8xlarge, g3.16xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge
  kernel_id: "String",
  key_name: "String",
  monitoring: {
    enabled: false,
  },
  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", # required
        },
      ],
      secondary_private_ip_address_count: 1,
      subnet_id: "String",
    },
  ],
  placement: {
    availability_zone: "String",
    group_name: "String",
    tenancy: "default", # accepts default, dedicated, host
  },
  ramdisk_id: "String",
  spot_price: "String",
  subnet_id: "String",
  user_data: "String",
  weighted_capacity: 1.0,
  tag_specifications: [
    {
      resource_type: "customer-gateway", # accepts customer-gateway, dhcp-options, image, instance, internet-gateway, network-acl, network-interface, reserved-instances, route-table, snapshot, spot-instances-request, subnet, security-group, volume, vpc, vpn-connection, vpn-gateway
      tags: [
        {
          key: "String",
          value: "String",
        },
      ],
    },
  ],
}

Describes the launch specification for one or more Spot instances.

Instance Attribute Summary collapse

Instance Attribute Details

#addressing_typeString

Deprecated.

Returns:

  • (String)


22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#block_device_mappingsArray<Types::BlockDeviceMapping>

One or more block device mapping entries.

Returns:



22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#ebs_optimizedBoolean

Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

Default: false

Returns:

  • (Boolean)


22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#iam_instance_profileTypes::IamInstanceProfileSpecification

The IAM instance profile.



22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#image_idString

The ID of the AMI.

Returns:

  • (String)


22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#instance_typeString

The instance type. Note that T2 and HS1 instance types are not supported.

Returns:

  • (String)


22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#kernel_idString

The ID of the kernel.

Returns:

  • (String)


22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#key_nameString

The name of the key pair.

Returns:

  • (String)


22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#monitoringTypes::SpotFleetMonitoring

Enable or disable monitoring for the instances.



22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#network_interfacesArray<Types::InstanceNetworkInterfaceSpecification>

One or more network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.



22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#placementTypes::SpotPlacement

The placement information.



22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#ramdisk_idString

The ID of the RAM disk.

Returns:

  • (String)


22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#security_groupsArray<Types::GroupIdentifier>

One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

Returns:



22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#spot_priceString

The bid price per unit hour for the specified instance type. If this value is not specified, the default is the Spot bid price specified for the fleet. To determine the bid price per unit hour, divide the Spot bid price by the value of WeightedCapacity.

Returns:

  • (String)


22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#subnet_idString

The ID of the subnet in which to launch the instances. To specify multiple subnets, separate them using commas; for example, "subnet-a61dafcf, subnet-65ea5f08".

Returns:

  • (String)


22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#tag_specificationsArray<Types::SpotFleetTagSpecification>

The tags to apply during creation.



22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#user_dataString

The user data to make available to the instances. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

Returns:

  • (String)


22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end

#weighted_capacityFloat

The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms (instances or a performance characteristic such as vCPUs, memory, or I/O).

If the target capacity divided by this value is not a whole number, we round the number of instances to the next whole number. If this value is not specified, the default is 1.

Returns:

  • (Float)


22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 22814

class SpotFleetLaunchSpecification < Struct.new(
  :security_groups,
  :addressing_type,
  :block_device_mappings,
  :ebs_optimized,
  :iam_instance_profile,
  :image_id,
  :instance_type,
  :kernel_id,
  :key_name,
  :monitoring,
  :network_interfaces,
  :placement,
  :ramdisk_id,
  :spot_price,
  :subnet_id,
  :user_data,
  :weighted_capacity,
  :tag_specifications)
  include Aws::Structure
end