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

Class: Aws::EC2::Types::RequestSpotFleetRequest

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

{
  dry_run: false,
  spot_fleet_request_config: { # required
    allocation_strategy: "lowestPrice", # accepts lowestPrice, diversified
    client_token: "String",
    excess_capacity_termination_policy: "noTermination", # accepts noTermination, default
    fulfilled_capacity: 1.0,
    iam_fleet_role: "String", # required
    launch_specifications: [
      {
        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,
              kms_key_id: "String",
              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, 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, 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, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, g3.4xlarge, g3.8xlarge, g3.16xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, p3.2xlarge, p3.8xlarge, p3.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge, m5.large, m5.xlarge, m5.2xlarge, m5.4xlarge, m5.12xlarge, m5.24xlarge, h1.2xlarge, h1.4xlarge, h1.8xlarge, h1.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",
              },
            ],
          },
        ],
      },
    ],
    launch_template_configs: [
      {
        launch_template_specification: {
          launch_template_id: "String",
          launch_template_name: "LaunchTemplateName",
          version: "String",
        },
        overrides: [
          {
            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, 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, 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, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, g3.4xlarge, g3.8xlarge, g3.16xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, p3.2xlarge, p3.8xlarge, p3.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge, m5.large, m5.xlarge, m5.2xlarge, m5.4xlarge, m5.12xlarge, m5.24xlarge, h1.2xlarge, h1.4xlarge, h1.8xlarge, h1.16xlarge
            spot_price: "String",
            subnet_id: "String",
            availability_zone: "String",
            weighted_capacity: 1.0,
          },
        ],
      },
    ],
    spot_price: "String",
    target_capacity: 1, # required
    terminate_instances_with_expiration: false,
    type: "request", # accepts request, maintain
    valid_from: Time.now,
    valid_until: Time.now,
    replace_unhealthy_instances: false,
    instance_interruption_behavior: "hibernate", # accepts hibernate, stop, terminate
    load_balancers_config: {
      classic_load_balancers_config: {
        classic_load_balancers: [ # required
          {
            name: "String", # required
          },
        ],
      },
      target_groups_config: {
        target_groups: [ # required
          {
            arn: "String", # required
          },
        ],
      },
    },
  },
}

Contains the parameters for RequestSpotFleet.

Instance Attribute Summary collapse

Instance Attribute Details

#dry_runBoolean

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.

Returns:

  • (Boolean)


23459
23460
23461
23462
23463
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 23459

class RequestSpotFleetRequest < Struct.new(
  :dry_run,
  :spot_fleet_request_config)
  include Aws::Structure
end

#spot_fleet_request_configTypes::SpotFleetRequestConfigData

The configuration for the Spot Fleet request.



23459
23460
23461
23462
23463
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 23459

class RequestSpotFleetRequest < Struct.new(
  :dry_run,
  :spot_fleet_request_config)
  include Aws::Structure
end