Table Of Contents

Feedback

User Guide

First time using the AWS CLI? See the User Guide for help getting started.

[ aws . ec2 ]

create-fleet

Description

Launches an EC2 Fleet.

You can create a single EC2 Fleet that includes multiple launch specifications that vary by instance type, AMI, Availability Zone, or subnet.

For more information, see Launching an EC2 Fleet in the Amazon Elastic Compute Cloud User Guide .

See also: AWS API Documentation

See 'aws help' for descriptions of global parameters.

Synopsis

  create-fleet
[--dry-run | --no-dry-run]
[--client-token <value>]
[--spot-options <value>]
[--on-demand-options <value>]
[--excess-capacity-termination-policy <value>]
--launch-template-configs <value>
--target-capacity-specification <value>
[--terminate-instances-with-expiration | --no-terminate-instances-with-expiration]
[--type <value>]
[--valid-from <value>]
[--valid-until <value>]
[--replace-unhealthy-instances | --no-replace-unhealthy-instances]
[--tag-specifications <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]

Options

--dry-run | --no-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 .

--client-token (string)

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency .

--spot-options (structure)

Describes the configuration of Spot Instances in an EC2 Fleet.

Shorthand Syntax:

AllocationStrategy=string,InstanceInterruptionBehavior=string,InstancePoolsToUseCount=integer,SingleInstanceType=boolean,SingleAvailabilityZone=boolean,MinTargetCapacity=integer

JSON Syntax:

{
  "AllocationStrategy": "lowest-price"|"diversified",
  "InstanceInterruptionBehavior": "hibernate"|"stop"|"terminate",
  "InstancePoolsToUseCount": integer,
  "SingleInstanceType": true|false,
  "SingleAvailabilityZone": true|false,
  "MinTargetCapacity": integer
}

--on-demand-options (structure)

The allocation strategy of On-Demand Instances in an EC2 Fleet.

Shorthand Syntax:

AllocationStrategy=string,SingleInstanceType=boolean,SingleAvailabilityZone=boolean,MinTargetCapacity=integer

JSON Syntax:

{
  "AllocationStrategy": "lowest-price"|"prioritized",
  "SingleInstanceType": true|false,
  "SingleAvailabilityZone": true|false,
  "MinTargetCapacity": integer
}

--excess-capacity-termination-policy (string)

Indicates whether running instances should be terminated if the total target capacity of the EC2 Fleet is decreased below the current size of the EC2 Fleet.

Possible values:

  • no-termination
  • termination

--launch-template-configs (list)

The configuration for the EC2 Fleet.

JSON Syntax:

[
  {
    "LaunchTemplateSpecification": {
      "LaunchTemplateId": "string",
      "LaunchTemplateName": "string",
      "Version": "string"
    },
    "Overrides": [
      {
        "InstanceType": "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"|"r5ad.large"|"r5ad.xlarge"|"r5ad.2xlarge"|"r5ad.4xlarge"|"r5ad.8xlarge"|"r5ad.12xlarge"|"r5ad.16xlarge"|"r5ad.24xlarge"|"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"|"m5ad.large"|"m5ad.xlarge"|"m5ad.2xlarge"|"m5ad.4xlarge"|"m5ad.8xlarge"|"m5ad.12xlarge"|"m5ad.16xlarge"|"m5ad.24xlarge"|"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",
        "MaxPrice": "string",
        "SubnetId": "string",
        "AvailabilityZone": "string",
        "WeightedCapacity": double,
        "Priority": double,
        "Placement": {
          "AvailabilityZone": "string",
          "Affinity": "string",
          "GroupName": "string",
          "PartitionNumber": integer,
          "HostId": "string",
          "Tenancy": "default"|"dedicated"|"host",
          "SpreadDomain": "string"
        }
      }
      ...
    ]
  }
  ...
]

--target-capacity-specification (structure)

The TotalTargetCapacity , OnDemandTargetCapacity , SpotTargetCapacity , and DefaultCapacityType structure.

Shorthand Syntax:

TotalTargetCapacity=integer,OnDemandTargetCapacity=integer,SpotTargetCapacity=integer,DefaultTargetCapacityType=string

JSON Syntax:

{
  "TotalTargetCapacity": integer,
  "OnDemandTargetCapacity": integer,
  "SpotTargetCapacity": integer,
  "DefaultTargetCapacityType": "spot"|"on-demand"
}

--terminate-instances-with-expiration | --no-terminate-instances-with-expiration (boolean)

Indicates whether running instances should be terminated when the EC2 Fleet expires.

--type (string)

The type of the request. By default, the EC2 Fleet places an asynchronous request for your desired capacity, and maintains it by replenishing interrupted Spot Instances (maintain ). A value of instant places a synchronous one-time request, and returns errors for any instances that could not be launched. A value of request places an asynchronous one-time request without maintaining capacity or submitting requests in alternative capacity pools if capacity is unavailable. For more information, see EC2 Fleet Request Types in the Amazon Elastic Compute Cloud User Guide .

Possible values:

  • request
  • maintain
  • instant

--valid-from (timestamp)

The start date and time of the request, in UTC format (for example, YYYY -MM -DD T*HH* :MM :SS Z). The default is to start fulfilling the request immediately.

--valid-until (timestamp)

The end date and time of the request, in UTC format (for example, YYYY -MM -DD T*HH* :MM :SS Z). At this point, no new EC2 Fleet requests are placed or able to fulfill the request. If no value is specified, the request remains until you cancel it.

--replace-unhealthy-instances | --no-replace-unhealthy-instances (boolean)

Indicates whether EC2 Fleet should replace unhealthy instances.

--tag-specifications (list)

The key-value pair for tagging the EC2 Fleet request on creation. The value for ResourceType must be fleet , otherwise the fleet request fails. To tag instances at launch, specify the tags in the launch template . For information about tagging after launch, see Tagging Your Resources .

Shorthand Syntax:

ResourceType=string,Tags=[{Key=string,Value=string},{Key=string,Value=string}] ...

JSON Syntax:

[
  {
    "ResourceType": "client-vpn-endpoint"|"customer-gateway"|"dedicated-host"|"dhcp-options"|"elastic-ip"|"fleet"|"fpga-image"|"host-reservation"|"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"
      }
      ...
    ]
  }
  ...
]

--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See 'aws help' for descriptions of global parameters.

Output

FleetId -> (string)

The ID of the EC2 Fleet.

Errors -> (list)

Information about the instances that could not be launched by the fleet. Valid only when Type is set to instant .

(structure)

Describes the instances that could not be launched by the fleet.

LaunchTemplateAndOverrides -> (structure)

The launch templates and overrides that were used for launching the instances. Any parameters that you specify in the Overrides override the same parameters in the launch template.

LaunchTemplateSpecification -> (structure)

The launch template.

LaunchTemplateId -> (string)

The ID of the launch template. You must specify either a template ID or a template name.

LaunchTemplateName -> (string)

The name of the launch template. You must specify either a template name or a template ID.

Version -> (string)

The version number of the launch template. You must specify a version number.

Overrides -> (structure)

Any parameters that you specify override the same parameters in the launch template.

InstanceType -> (string)

The instance type.

MaxPrice -> (string)

The maximum price per unit hour that you are willing to pay for a Spot Instance.

SubnetId -> (string)

The ID of the subnet in which to launch the instances.

AvailabilityZone -> (string)

The Availability Zone in which to launch the instances.

WeightedCapacity -> (double)

The number of units provided by the specified instance type.

Priority -> (double)

The priority for the launch template override. If AllocationStrategy is set to prioritized , EC2 Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity. The highest priority is launched first. Valid values are whole numbers starting at 0 . The lower the number, the higher the priority. If no number is set, the override has the lowest priority.

Placement -> (structure)

The location where the instance launched, if applicable.

GroupName -> (string)

The name of the placement group the instance is in.

Lifecycle -> (string)

Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.

ErrorCode -> (string)

The error code that indicates why the instance could not be launched. For more information about error codes, see Error Codes .

ErrorMessage -> (string)

The error message that describes why the instance could not be launched. For more information about error messages, see ee Error Codes .

Instances -> (list)

Information about the instances that were launched by the fleet. Valid only when Type is set to instant .

(structure)

Describes the instances that were launched by the fleet.

LaunchTemplateAndOverrides -> (structure)

The launch templates and overrides that were used for launching the instances. Any parameters that you specify in the Overrides override the same parameters in the launch template.

LaunchTemplateSpecification -> (structure)

The launch template.

LaunchTemplateId -> (string)

The ID of the launch template. You must specify either a template ID or a template name.

LaunchTemplateName -> (string)

The name of the launch template. You must specify either a template name or a template ID.

Version -> (string)

The version number of the launch template. You must specify a version number.

Overrides -> (structure)

Any parameters that you specify override the same parameters in the launch template.

InstanceType -> (string)

The instance type.

MaxPrice -> (string)

The maximum price per unit hour that you are willing to pay for a Spot Instance.

SubnetId -> (string)

The ID of the subnet in which to launch the instances.

AvailabilityZone -> (string)

The Availability Zone in which to launch the instances.

WeightedCapacity -> (double)

The number of units provided by the specified instance type.

Priority -> (double)

The priority for the launch template override. If AllocationStrategy is set to prioritized , EC2 Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity. The highest priority is launched first. Valid values are whole numbers starting at 0 . The lower the number, the higher the priority. If no number is set, the override has the lowest priority.

Placement -> (structure)

The location where the instance launched, if applicable.

GroupName -> (string)

The name of the placement group the instance is in.

Lifecycle -> (string)

Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.

InstanceIds -> (list)

The IDs of the instances.

(string)

InstanceType -> (string)

The instance type.

Platform -> (string)

The value is Windows for Windows instances; otherwise blank.