AWS Tools for Windows PowerShell
Command Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Synopsis

Invokes the RequestSpotFleet operation against Amazon Elastic Compute Cloud.

Syntax

Request-EC2SpotFleet
-SpotFleetRequestConfig_AllocationStrategy <AllocationStrategy>
-SpotFleetRequestConfig_ClientToken <String>
-SpotFleetRequestConfig_ExcessCapacityTerminationPolicy <ExcessCapacityTerminationPolicy>
-SpotFleetRequestConfig_FulfilledCapacity <Double>
-SpotFleetRequestConfig_IamFleetRole <String>
-SpotFleetRequestConfig_InstanceInterruptionBehavior <InstanceInterruptionBehavior>
-SpotFleetRequestConfig_LaunchSpecification <SpotFleetLaunchSpecification[]>
-SpotFleetRequestConfig_ReplaceUnhealthyInstance <Boolean>
-SpotFleetRequestConfig_SpotPrice <String>
-SpotFleetRequestConfig_TargetCapacity <Int32>
-SpotFleetRequestConfig_TerminateInstancesWithExpiration <Boolean>
-SpotFleetRequestConfig_Type <FleetType>
-SpotFleetRequestConfig_ValidFrom <DateTime>
-SpotFleetRequestConfig_ValidUntil <DateTime>
-Force <SwitchParameter>

Description

Creates a Spot fleet request. You can submit a single request that includes multiple launch specifications that vary by instance type, AMI, Availability Zone, or subnet. By default, the Spot fleet requests Spot instances in the Spot pool where the price per unit is the lowest. Each launch specification can include its own instance weighting that reflects the value of the instance type to your application workload. Alternatively, you can specify that the Spot fleet distribute the target capacity across the Spot pools included in its launch specifications. By ensuring that the Spot instances in your Spot fleet are in different Spot pools, you can improve the availability of your fleet. For more information, see Spot Fleet Requests in the Amazon Elastic Compute Cloud User Guide.

Parameters

-Force <SwitchParameter>
This parameter overrides confirmation prompts to force the cmdlet to continue its operation. This parameter should always be used with caution.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_AllocationStrategy <AllocationStrategy>
Indicates how to allocate the target capacity across the Spot pools specified by the Spot fleet request. The default is lowestPrice.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_ClientToken <String>
A unique, case-sensitive identifier you provide to ensure idempotency of your listings. This helps avoid duplicate listings. For more information, see Ensuring Idempotency.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_ExcessCapacityTerminationPolicy <ExcessCapacityTerminationPolicy>
Indicates whether running Spot instances should be terminated if the target capacity of the Spot fleet request is decreased below the current size of the Spot fleet.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_FulfilledCapacity <Double>
The number of units fulfilled by this request compared to the set target capacity.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_IamFleetRole <String>
Grants the Spot fleet permission to terminate Spot instances on your behalf when you cancel its Spot fleet request using CancelSpotFleetRequests or when the Spot fleet request expires, if you set terminateInstancesWithExpiration.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_InstanceInterruptionBehavior <InstanceInterruptionBehavior>
Indicates whether a Spot instance stops or terminates when it is interrupted.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_LaunchSpecification <SpotFleetLaunchSpecification[]>
Information about the launch specifications for the Spot fleet request.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_ReplaceUnhealthyInstance <Boolean>
Indicates whether Spot fleet should replace unhealthy instances.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_SpotPrice <String>
The bid price per unit hour.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_TargetCapacity <Int32>
The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_TerminateInstancesWithExpiration <Boolean>
Indicates whether running Spot instances should be terminated when the Spot fleet request expires.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_Type <FleetType>
The type of request. Indicates whether the fleet will only request the target capacity or also attempt to maintain it. When you request a certain target capacity, the fleet will only place the required bids. It will not attempt to replenish Spot instances if capacity is diminished, nor will it submit bids in alternative Spot pools if capacity is not available. When you want to maintain a certain target capacity, fleet will place the required bids to meet this target capacity. It will also automatically replenish any interrupted instances. Default: maintain.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_ValidFrom <DateTime>
The start date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.
Required?False
Position?Named
Accept pipeline input?False
-SpotFleetRequestConfig_ValidUntil <DateTime>
The end date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request.
Required?False
Position?Named
Accept pipeline input?False

Common Credential and Region Parameters

-AccessKey <String>
The AWS access key for the user account. This can be a temporary access key if the corresponding session token is supplied to the -SessionToken parameter.
Required? False
Position? Named
Accept pipeline input? False
-Credential <AWSCredentials>
An AWSCredentials object instance containing access and secret key information, and optionally a token for session-based credentials.
Required? False
Position? Named
Accept pipeline input? False
-ProfileLocation <String>

Used to specify the name and location of the ini-format credential file (shared with the AWS CLI and other AWS SDKs)

If this optional parameter is omitted this cmdlet will search the encrypted credential file used by the AWS SDK for .NET and AWS Toolkit for Visual Studio first. If the profile is not found then the cmdlet will search in the ini-format credential file at the default location: (user's home directory)\.aws\credentials. Note that the encrypted credential file is not supported on all platforms. It will be skipped when searching for profiles on Windows Nano Server, Mac, and Linux platforms.

If this parameter is specified then this cmdlet will only search the ini-format credential file at the location given.

As the current folder can vary in a shell or during script execution it is advised that you use specify a fully qualified path instead of a relative path.

Required? False
Position? Named
Accept pipeline input? False
-ProfileName <String>
The user-defined name of an AWS credentials or SAML-based role profile containing credential information. The profile is expected to be found in the secure credential file shared with the AWS SDK for .NET and AWS Toolkit for Visual Studio. You can also specify the name of a profile stored in the .ini-format credential file used with the AWS CLI and other AWS SDKs.
Required? False
Position? Named
Accept pipeline input? False
-NetworkCredential <PSCredential>
Used with SAML-based authentication when ProfileName references a SAML role profile. Contains the network credentials to be supplied during authentication with the configured identity provider's endpoint. This parameter is not required if the user's default network identity can or should be used during authentication.
Required? False
Position? Named
Accept pipeline input? False
-SecretKey <String>
The AWS secret key for the user account. This can be a temporary secret key if the corresponding session token is supplied to the -SessionToken parameter.
Required? False
Position? Named
Accept pipeline input? False
-SessionToken <String>
The session token if the access and secret keys are temporary session-based credentials.
Required? False
Position? Named
Accept pipeline input? False
-Region <String>
The system name of the AWS region in which the operation should be invoked. For example, us-east-1, eu-west-1 etc.
Required? False
Position? Named
Accept pipeline input? False
-EndpointUrl <String>

The endpoint to make the call against.

Note: This parameter is primarily for internal AWS use and is not required/should not be specified for normal usage. The cmdlets normally determine which endpoint to call based on the region specified to the -Region parameter or set as default in the shell (via Set-DefaultAWSRegion). Only specify this parameter if you must direct the call to a specific custom endpoint.

Required? False
Position? Named
Accept pipeline input? False

Inputs

This cmdlet does not accept pipeline input.

Outputs

None
This cmdlet does not generate any output. The service response (type Amazon.EC2.Model.RequestSpotFleetResponse) can be referenced from properties attached to the cmdlet entry in the $AWSHistory stack.

Examples

Example 1

PS C:\> $sg = New-Object Amazon.EC2.Model.GroupIdentifier
PS C:\> $sg.GroupId = "sg-12345678"
PS C:\> $lc = New-Object Amazon.EC2.Model.SpotFleetLaunchSpecification
PS C:\> $lc.ImageId = "ami-12345678"
PS C:\> $lc.InstanceType = "m3.medium"
PS C:\> $lc.SecurityGroups.Add($sg)
PS C:\> Request-EC2SpotFleet -SpotFleetRequestConfig_SpotPrice 0.04 `
-SpotFleetRequestConfig_TargetCapacity 2 `
-SpotFleetRequestConfig_IamFleetRole arn:aws:iam::123456789012:role/my-spot-fleet-role `
-SpotFleetRequestConfig_LaunchSpecification $lc
This example creates a Spot fleet request in the Availability Zone with the lowest price for the specified instance type. If your account supports EC2-VPC only, the Spot fleet launches the instances in the lowest-priced Availability Zone that has a default subnet. If your account supports EC2-Classic, the Spot fleet launches the instances in EC2-Classic in the lowest-priced Availability Zone. Note that the price you pay will not exceed the specified Spot price for the request.

Supported Version

AWS Tools for PowerShell: 2.x.y.z