/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes the configuration of a Spot Fleet request.See Also:
* AWS
* API Reference
Indicates how to allocate the target Spot Instance capacity across the Spot * Instance pools specified by the Spot Fleet request.
If the allocation
* strategy is lowestPrice, Spot Fleet launches instances from the
* Spot Instance pools with the lowest price. This is the default allocation
* strategy.
If the allocation strategy is diversified, Spot
* Fleet launches instances from all the Spot Instance pools that you specify.
If the allocation strategy is capacityOptimized, Spot Fleet
* launches instances from Spot Instance pools with optimal capacity for the number
* of instances that are launching.
Indicates how to allocate the target Spot Instance capacity across the Spot * Instance pools specified by the Spot Fleet request.
If the allocation
* strategy is lowestPrice, Spot Fleet launches instances from the
* Spot Instance pools with the lowest price. This is the default allocation
* strategy.
If the allocation strategy is diversified, Spot
* Fleet launches instances from all the Spot Instance pools that you specify.
If the allocation strategy is capacityOptimized, Spot Fleet
* launches instances from Spot Instance pools with optimal capacity for the number
* of instances that are launching.
Indicates how to allocate the target Spot Instance capacity across the Spot * Instance pools specified by the Spot Fleet request.
If the allocation
* strategy is lowestPrice, Spot Fleet launches instances from the
* Spot Instance pools with the lowest price. This is the default allocation
* strategy.
If the allocation strategy is diversified, Spot
* Fleet launches instances from all the Spot Instance pools that you specify.
If the allocation strategy is capacityOptimized, Spot Fleet
* launches instances from Spot Instance pools with optimal capacity for the number
* of instances that are launching.
Indicates how to allocate the target Spot Instance capacity across the Spot * Instance pools specified by the Spot Fleet request.
If the allocation
* strategy is lowestPrice, Spot Fleet launches instances from the
* Spot Instance pools with the lowest price. This is the default allocation
* strategy.
If the allocation strategy is diversified, Spot
* Fleet launches instances from all the Spot Instance pools that you specify.
If the allocation strategy is capacityOptimized, Spot Fleet
* launches instances from Spot Instance pools with optimal capacity for the number
* of instances that are launching.
Indicates how to allocate the target Spot Instance capacity across the Spot * Instance pools specified by the Spot Fleet request.
If the allocation
* strategy is lowestPrice, Spot Fleet launches instances from the
* Spot Instance pools with the lowest price. This is the default allocation
* strategy.
If the allocation strategy is diversified, Spot
* Fleet launches instances from all the Spot Instance pools that you specify.
If the allocation strategy is capacityOptimized, Spot Fleet
* launches instances from Spot Instance pools with optimal capacity for the number
* of instances that are launching.
Indicates how to allocate the target Spot Instance capacity across the Spot * Instance pools specified by the Spot Fleet request.
If the allocation
* strategy is lowestPrice, Spot Fleet launches instances from the
* Spot Instance pools with the lowest price. This is the default allocation
* strategy.
If the allocation strategy is diversified, Spot
* Fleet launches instances from all the Spot Instance pools that you specify.
If the allocation strategy is capacityOptimized, Spot Fleet
* launches instances from Spot Instance pools with optimal capacity for the number
* of instances that are launching.
The order of the launch template overrides to use in fulfilling On-Demand
* capacity. If you specify lowestPrice, Spot Fleet uses price to
* determine the order, launching the lowest price first. If you specify
* prioritized, Spot Fleet uses the priority that you assign to each
* Spot Fleet launch template override, launching the highest priority first. If
* you do not specify a value, Spot Fleet defaults to lowestPrice.
The order of the launch template overrides to use in fulfilling On-Demand
* capacity. If you specify lowestPrice, Spot Fleet uses price to
* determine the order, launching the lowest price first. If you specify
* prioritized, Spot Fleet uses the priority that you assign to each
* Spot Fleet launch template override, launching the highest priority first. If
* you do not specify a value, Spot Fleet defaults to lowestPrice.
The order of the launch template overrides to use in fulfilling On-Demand
* capacity. If you specify lowestPrice, Spot Fleet uses price to
* determine the order, launching the lowest price first. If you specify
* prioritized, Spot Fleet uses the priority that you assign to each
* Spot Fleet launch template override, launching the highest priority first. If
* you do not specify a value, Spot Fleet defaults to lowestPrice.
The order of the launch template overrides to use in fulfilling On-Demand
* capacity. If you specify lowestPrice, Spot Fleet uses price to
* determine the order, launching the lowest price first. If you specify
* prioritized, Spot Fleet uses the priority that you assign to each
* Spot Fleet launch template override, launching the highest priority first. If
* you do not specify a value, Spot Fleet defaults to lowestPrice.
The order of the launch template overrides to use in fulfilling On-Demand
* capacity. If you specify lowestPrice, Spot Fleet uses price to
* determine the order, launching the lowest price first. If you specify
* prioritized, Spot Fleet uses the priority that you assign to each
* Spot Fleet launch template override, launching the highest priority first. If
* you do not specify a value, Spot Fleet defaults to lowestPrice.
The order of the launch template overrides to use in fulfilling On-Demand
* capacity. If you specify lowestPrice, Spot Fleet uses price to
* determine the order, launching the lowest price first. If you specify
* prioritized, Spot Fleet uses the priority that you assign to each
* Spot Fleet launch template override, launching the highest priority first. If
* you do not specify a value, Spot Fleet defaults to lowestPrice.
A unique, case-sensitive identifier that you provide to ensure the * idempotency of your listings. This helps to avoid duplicate listings. For more * information, see Ensuring * Idempotency.
*/ inline const Aws::String& GetClientToken() const{ return m_clientToken; } /** *A unique, case-sensitive identifier that you provide to ensure the * idempotency of your listings. This helps to avoid duplicate listings. For more * information, see Ensuring * Idempotency.
*/ inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; } /** *A unique, case-sensitive identifier that you provide to ensure the * idempotency of your listings. This helps to avoid duplicate listings. For more * information, see Ensuring * Idempotency.
*/ inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; } /** *A unique, case-sensitive identifier that you provide to ensure the * idempotency of your listings. This helps to avoid duplicate listings. For more * information, see Ensuring * Idempotency.
*/ inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); } /** *A unique, case-sensitive identifier that you provide to ensure the * idempotency of your listings. This helps to avoid duplicate listings. For more * information, see Ensuring * Idempotency.
*/ inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); } /** *A unique, case-sensitive identifier that you provide to ensure the * idempotency of your listings. This helps to avoid duplicate listings. For more * information, see Ensuring * Idempotency.
*/ inline SpotFleetRequestConfigData& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;} /** *A unique, case-sensitive identifier that you provide to ensure the * idempotency of your listings. This helps to avoid duplicate listings. For more * information, see Ensuring * Idempotency.
*/ inline SpotFleetRequestConfigData& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;} /** *A unique, case-sensitive identifier that you provide to ensure the * idempotency of your listings. This helps to avoid duplicate listings. For more * information, see Ensuring * Idempotency.
*/ inline SpotFleetRequestConfigData& WithClientToken(const char* value) { SetClientToken(value); return *this;} /** *Indicates whether running Spot Instances should be terminated if you decrease * the target capacity of the Spot Fleet request below the current size of the Spot * Fleet.
*/ inline const ExcessCapacityTerminationPolicy& GetExcessCapacityTerminationPolicy() const{ return m_excessCapacityTerminationPolicy; } /** *Indicates whether running Spot Instances should be terminated if you decrease * the target capacity of the Spot Fleet request below the current size of the Spot * Fleet.
*/ inline bool ExcessCapacityTerminationPolicyHasBeenSet() const { return m_excessCapacityTerminationPolicyHasBeenSet; } /** *Indicates whether running Spot Instances should be terminated if you decrease * the target capacity of the Spot Fleet request below the current size of the Spot * Fleet.
*/ inline void SetExcessCapacityTerminationPolicy(const ExcessCapacityTerminationPolicy& value) { m_excessCapacityTerminationPolicyHasBeenSet = true; m_excessCapacityTerminationPolicy = value; } /** *Indicates whether running Spot Instances should be terminated if you decrease * the target capacity of the Spot Fleet request below the current size of the Spot * Fleet.
*/ inline void SetExcessCapacityTerminationPolicy(ExcessCapacityTerminationPolicy&& value) { m_excessCapacityTerminationPolicyHasBeenSet = true; m_excessCapacityTerminationPolicy = std::move(value); } /** *Indicates whether running Spot Instances should be terminated if you decrease * the target capacity of the Spot Fleet request below the current size of the Spot * Fleet.
*/ inline SpotFleetRequestConfigData& WithExcessCapacityTerminationPolicy(const ExcessCapacityTerminationPolicy& value) { SetExcessCapacityTerminationPolicy(value); return *this;} /** *Indicates whether running Spot Instances should be terminated if you decrease * the target capacity of the Spot Fleet request below the current size of the Spot * Fleet.
*/ inline SpotFleetRequestConfigData& WithExcessCapacityTerminationPolicy(ExcessCapacityTerminationPolicy&& value) { SetExcessCapacityTerminationPolicy(std::move(value)); return *this;} /** *The number of units fulfilled by this request compared to the set target * capacity. You cannot set this value.
*/ inline double GetFulfilledCapacity() const{ return m_fulfilledCapacity; } /** *The number of units fulfilled by this request compared to the set target * capacity. You cannot set this value.
*/ inline bool FulfilledCapacityHasBeenSet() const { return m_fulfilledCapacityHasBeenSet; } /** *The number of units fulfilled by this request compared to the set target * capacity. You cannot set this value.
*/ inline void SetFulfilledCapacity(double value) { m_fulfilledCapacityHasBeenSet = true; m_fulfilledCapacity = value; } /** *The number of units fulfilled by this request compared to the set target * capacity. You cannot set this value.
*/ inline SpotFleetRequestConfigData& WithFulfilledCapacity(double value) { SetFulfilledCapacity(value); return *this;} /** *The number of On-Demand units fulfilled by this request compared to the set * target On-Demand capacity.
*/ inline double GetOnDemandFulfilledCapacity() const{ return m_onDemandFulfilledCapacity; } /** *The number of On-Demand units fulfilled by this request compared to the set * target On-Demand capacity.
*/ inline bool OnDemandFulfilledCapacityHasBeenSet() const { return m_onDemandFulfilledCapacityHasBeenSet; } /** *The number of On-Demand units fulfilled by this request compared to the set * target On-Demand capacity.
*/ inline void SetOnDemandFulfilledCapacity(double value) { m_onDemandFulfilledCapacityHasBeenSet = true; m_onDemandFulfilledCapacity = value; } /** *The number of On-Demand units fulfilled by this request compared to the set * target On-Demand capacity.
*/ inline SpotFleetRequestConfigData& WithOnDemandFulfilledCapacity(double value) { SetOnDemandFulfilledCapacity(value); return *this;} /** *The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM)
* role that grants the Spot Fleet the permission to request, launch, terminate,
* and tag instances on your behalf. For more information, see Spot
* Fleet prerequisites in the Amazon EC2 User Guide for Linux Instances.
* Spot Fleet can 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.
The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM)
* role that grants the Spot Fleet the permission to request, launch, terminate,
* and tag instances on your behalf. For more information, see Spot
* Fleet prerequisites in the Amazon EC2 User Guide for Linux Instances.
* Spot Fleet can 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.
The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM)
* role that grants the Spot Fleet the permission to request, launch, terminate,
* and tag instances on your behalf. For more information, see Spot
* Fleet prerequisites in the Amazon EC2 User Guide for Linux Instances.
* Spot Fleet can 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.
The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM)
* role that grants the Spot Fleet the permission to request, launch, terminate,
* and tag instances on your behalf. For more information, see Spot
* Fleet prerequisites in the Amazon EC2 User Guide for Linux Instances.
* Spot Fleet can 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.
The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM)
* role that grants the Spot Fleet the permission to request, launch, terminate,
* and tag instances on your behalf. For more information, see Spot
* Fleet prerequisites in the Amazon EC2 User Guide for Linux Instances.
* Spot Fleet can 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.
The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM)
* role that grants the Spot Fleet the permission to request, launch, terminate,
* and tag instances on your behalf. For more information, see Spot
* Fleet prerequisites in the Amazon EC2 User Guide for Linux Instances.
* Spot Fleet can 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.
The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM)
* role that grants the Spot Fleet the permission to request, launch, terminate,
* and tag instances on your behalf. For more information, see Spot
* Fleet prerequisites in the Amazon EC2 User Guide for Linux Instances.
* Spot Fleet can 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.
The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM)
* role that grants the Spot Fleet the permission to request, launch, terminate,
* and tag instances on your behalf. For more information, see Spot
* Fleet prerequisites in the Amazon EC2 User Guide for Linux Instances.
* Spot Fleet can 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.
The launch specifications for the Spot Fleet request. If you specify
* LaunchSpecifications, you can't specify
* LaunchTemplateConfigs. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch specifications for the Spot Fleet request. If you specify
* LaunchSpecifications, you can't specify
* LaunchTemplateConfigs. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch specifications for the Spot Fleet request. If you specify
* LaunchSpecifications, you can't specify
* LaunchTemplateConfigs. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch specifications for the Spot Fleet request. If you specify
* LaunchSpecifications, you can't specify
* LaunchTemplateConfigs. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch specifications for the Spot Fleet request. If you specify
* LaunchSpecifications, you can't specify
* LaunchTemplateConfigs. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch specifications for the Spot Fleet request. If you specify
* LaunchSpecifications, you can't specify
* LaunchTemplateConfigs. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch specifications for the Spot Fleet request. If you specify
* LaunchSpecifications, you can't specify
* LaunchTemplateConfigs. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch specifications for the Spot Fleet request. If you specify
* LaunchSpecifications, you can't specify
* LaunchTemplateConfigs. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch template and overrides. If you specify
* LaunchTemplateConfigs, you can't specify
* LaunchSpecifications. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch template and overrides. If you specify
* LaunchTemplateConfigs, you can't specify
* LaunchSpecifications. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch template and overrides. If you specify
* LaunchTemplateConfigs, you can't specify
* LaunchSpecifications. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch template and overrides. If you specify
* LaunchTemplateConfigs, you can't specify
* LaunchSpecifications. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch template and overrides. If you specify
* LaunchTemplateConfigs, you can't specify
* LaunchSpecifications. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch template and overrides. If you specify
* LaunchTemplateConfigs, you can't specify
* LaunchSpecifications. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch template and overrides. If you specify
* LaunchTemplateConfigs, you can't specify
* LaunchSpecifications. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The launch template and overrides. If you specify
* LaunchTemplateConfigs, you can't specify
* LaunchSpecifications. If you include On-Demand capacity in your
* request, you must use LaunchTemplateConfigs.
The maximum price per unit hour that you are willing to pay for a Spot * Instance. The default is the On-Demand price.
*/ inline const Aws::String& GetSpotPrice() const{ return m_spotPrice; } /** *The maximum price per unit hour that you are willing to pay for a Spot * Instance. The default is the On-Demand price.
*/ inline bool SpotPriceHasBeenSet() const { return m_spotPriceHasBeenSet; } /** *The maximum price per unit hour that you are willing to pay for a Spot * Instance. The default is the On-Demand price.
*/ inline void SetSpotPrice(const Aws::String& value) { m_spotPriceHasBeenSet = true; m_spotPrice = value; } /** *The maximum price per unit hour that you are willing to pay for a Spot * Instance. The default is the On-Demand price.
*/ inline void SetSpotPrice(Aws::String&& value) { m_spotPriceHasBeenSet = true; m_spotPrice = std::move(value); } /** *The maximum price per unit hour that you are willing to pay for a Spot * Instance. The default is the On-Demand price.
*/ inline void SetSpotPrice(const char* value) { m_spotPriceHasBeenSet = true; m_spotPrice.assign(value); } /** *The maximum price per unit hour that you are willing to pay for a Spot * Instance. The default is the On-Demand price.
*/ inline SpotFleetRequestConfigData& WithSpotPrice(const Aws::String& value) { SetSpotPrice(value); return *this;} /** *The maximum price per unit hour that you are willing to pay for a Spot * Instance. The default is the On-Demand price.
*/ inline SpotFleetRequestConfigData& WithSpotPrice(Aws::String&& value) { SetSpotPrice(std::move(value)); return *this;} /** *The maximum price per unit hour that you are willing to pay for a Spot * Instance. The default is the On-Demand price.
*/ inline SpotFleetRequestConfigData& WithSpotPrice(const char* value) { SetSpotPrice(value); return *this;} /** *The number of units to request for the Spot Fleet. 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. If the
* request type is maintain, you can specify a target capacity of 0
* and add capacity later.
The number of units to request for the Spot Fleet. 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. If the
* request type is maintain, you can specify a target capacity of 0
* and add capacity later.
The number of units to request for the Spot Fleet. 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. If the
* request type is maintain, you can specify a target capacity of 0
* and add capacity later.
The number of units to request for the Spot Fleet. 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. If the
* request type is maintain, you can specify a target capacity of 0
* and add capacity later.
The number of On-Demand 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. If the request type
* is maintain, you can specify a target capacity of 0 and add
* capacity later.
The number of On-Demand 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. If the request type
* is maintain, you can specify a target capacity of 0 and add
* capacity later.
The number of On-Demand 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. If the request type
* is maintain, you can specify a target capacity of 0 and add
* capacity later.
The number of On-Demand 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. If the request type
* is maintain, you can specify a target capacity of 0 and add
* capacity later.
The maximum amount per hour for On-Demand Instances that you're willing to
* pay. You can use the onDemandMaxTotalPrice parameter, the
* spotMaxTotalPrice parameter, or both parameters to ensure that your
* fleet cost does not exceed your budget. If you set a maximum price per hour for
* the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for On-Demand Instances that you're willing to
* pay. You can use the onDemandMaxTotalPrice parameter, the
* spotMaxTotalPrice parameter, or both parameters to ensure that your
* fleet cost does not exceed your budget. If you set a maximum price per hour for
* the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for On-Demand Instances that you're willing to
* pay. You can use the onDemandMaxTotalPrice parameter, the
* spotMaxTotalPrice parameter, or both parameters to ensure that your
* fleet cost does not exceed your budget. If you set a maximum price per hour for
* the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for On-Demand Instances that you're willing to
* pay. You can use the onDemandMaxTotalPrice parameter, the
* spotMaxTotalPrice parameter, or both parameters to ensure that your
* fleet cost does not exceed your budget. If you set a maximum price per hour for
* the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for On-Demand Instances that you're willing to
* pay. You can use the onDemandMaxTotalPrice parameter, the
* spotMaxTotalPrice parameter, or both parameters to ensure that your
* fleet cost does not exceed your budget. If you set a maximum price per hour for
* the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for On-Demand Instances that you're willing to
* pay. You can use the onDemandMaxTotalPrice parameter, the
* spotMaxTotalPrice parameter, or both parameters to ensure that your
* fleet cost does not exceed your budget. If you set a maximum price per hour for
* the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for On-Demand Instances that you're willing to
* pay. You can use the onDemandMaxTotalPrice parameter, the
* spotMaxTotalPrice parameter, or both parameters to ensure that your
* fleet cost does not exceed your budget. If you set a maximum price per hour for
* the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for On-Demand Instances that you're willing to
* pay. You can use the onDemandMaxTotalPrice parameter, the
* spotMaxTotalPrice parameter, or both parameters to ensure that your
* fleet cost does not exceed your budget. If you set a maximum price per hour for
* the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for Spot Instances that you're willing to pay.
* You can use the spotdMaxTotalPrice parameter, the
* onDemandMaxTotalPrice parameter, or both parameters to ensure that
* your fleet cost does not exceed your budget. If you set a maximum price per hour
* for the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for Spot Instances that you're willing to pay.
* You can use the spotdMaxTotalPrice parameter, the
* onDemandMaxTotalPrice parameter, or both parameters to ensure that
* your fleet cost does not exceed your budget. If you set a maximum price per hour
* for the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for Spot Instances that you're willing to pay.
* You can use the spotdMaxTotalPrice parameter, the
* onDemandMaxTotalPrice parameter, or both parameters to ensure that
* your fleet cost does not exceed your budget. If you set a maximum price per hour
* for the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for Spot Instances that you're willing to pay.
* You can use the spotdMaxTotalPrice parameter, the
* onDemandMaxTotalPrice parameter, or both parameters to ensure that
* your fleet cost does not exceed your budget. If you set a maximum price per hour
* for the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for Spot Instances that you're willing to pay.
* You can use the spotdMaxTotalPrice parameter, the
* onDemandMaxTotalPrice parameter, or both parameters to ensure that
* your fleet cost does not exceed your budget. If you set a maximum price per hour
* for the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for Spot Instances that you're willing to pay.
* You can use the spotdMaxTotalPrice parameter, the
* onDemandMaxTotalPrice parameter, or both parameters to ensure that
* your fleet cost does not exceed your budget. If you set a maximum price per hour
* for the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for Spot Instances that you're willing to pay.
* You can use the spotdMaxTotalPrice parameter, the
* onDemandMaxTotalPrice parameter, or both parameters to ensure that
* your fleet cost does not exceed your budget. If you set a maximum price per hour
* for the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
The maximum amount per hour for Spot Instances that you're willing to pay.
* You can use the spotdMaxTotalPrice parameter, the
* onDemandMaxTotalPrice parameter, or both parameters to ensure that
* your fleet cost does not exceed your budget. If you set a maximum price per hour
* for the On-Demand Instances and Spot Instances in your request, Spot Fleet will
* launch instances until it reaches the maximum amount you're willing to pay. When
* the maximum amount you're willing to pay is reached, the fleet stops launching
* instances even if it hasn’t met the target capacity.
Indicates whether running Spot Instances are terminated when the Spot Fleet * request expires.
*/ inline bool GetTerminateInstancesWithExpiration() const{ return m_terminateInstancesWithExpiration; } /** *Indicates whether running Spot Instances are terminated when the Spot Fleet * request expires.
*/ inline bool TerminateInstancesWithExpirationHasBeenSet() const { return m_terminateInstancesWithExpirationHasBeenSet; } /** *Indicates whether running Spot Instances are terminated when the Spot Fleet * request expires.
*/ inline void SetTerminateInstancesWithExpiration(bool value) { m_terminateInstancesWithExpirationHasBeenSet = true; m_terminateInstancesWithExpiration = value; } /** *Indicates whether running Spot Instances are terminated when the Spot Fleet * request expires.
*/ inline SpotFleetRequestConfigData& WithTerminateInstancesWithExpiration(bool value) { SetTerminateInstancesWithExpiration(value); return *this;} /** *The type of request. Indicates whether the Spot Fleet only requests the
* target capacity or also attempts to maintain it. When this value is
* request, the Spot Fleet only places the required requests. It does
* not attempt to replenish Spot Instances if capacity is diminished, nor does it
* submit requests in alternative Spot pools if capacity is not available. When
* this value is maintain, the Spot Fleet maintains the target
* capacity. The Spot Fleet places the required requests to meet capacity and
* automatically replenishes any interrupted instances. Default:
* maintain. instant is listed but is not used by Spot
* Fleet.
The type of request. Indicates whether the Spot Fleet only requests the
* target capacity or also attempts to maintain it. When this value is
* request, the Spot Fleet only places the required requests. It does
* not attempt to replenish Spot Instances if capacity is diminished, nor does it
* submit requests in alternative Spot pools if capacity is not available. When
* this value is maintain, the Spot Fleet maintains the target
* capacity. The Spot Fleet places the required requests to meet capacity and
* automatically replenishes any interrupted instances. Default:
* maintain. instant is listed but is not used by Spot
* Fleet.
The type of request. Indicates whether the Spot Fleet only requests the
* target capacity or also attempts to maintain it. When this value is
* request, the Spot Fleet only places the required requests. It does
* not attempt to replenish Spot Instances if capacity is diminished, nor does it
* submit requests in alternative Spot pools if capacity is not available. When
* this value is maintain, the Spot Fleet maintains the target
* capacity. The Spot Fleet places the required requests to meet capacity and
* automatically replenishes any interrupted instances. Default:
* maintain. instant is listed but is not used by Spot
* Fleet.
The type of request. Indicates whether the Spot Fleet only requests the
* target capacity or also attempts to maintain it. When this value is
* request, the Spot Fleet only places the required requests. It does
* not attempt to replenish Spot Instances if capacity is diminished, nor does it
* submit requests in alternative Spot pools if capacity is not available. When
* this value is maintain, the Spot Fleet maintains the target
* capacity. The Spot Fleet places the required requests to meet capacity and
* automatically replenishes any interrupted instances. Default:
* maintain. instant is listed but is not used by Spot
* Fleet.
The type of request. Indicates whether the Spot Fleet only requests the
* target capacity or also attempts to maintain it. When this value is
* request, the Spot Fleet only places the required requests. It does
* not attempt to replenish Spot Instances if capacity is diminished, nor does it
* submit requests in alternative Spot pools if capacity is not available. When
* this value is maintain, the Spot Fleet maintains the target
* capacity. The Spot Fleet places the required requests to meet capacity and
* automatically replenishes any interrupted instances. Default:
* maintain. instant is listed but is not used by Spot
* Fleet.
The type of request. Indicates whether the Spot Fleet only requests the
* target capacity or also attempts to maintain it. When this value is
* request, the Spot Fleet only places the required requests. It does
* not attempt to replenish Spot Instances if capacity is diminished, nor does it
* submit requests in alternative Spot pools if capacity is not available. When
* this value is maintain, the Spot Fleet maintains the target
* capacity. The Spot Fleet places the required requests to meet capacity and
* automatically replenishes any interrupted instances. Default:
* maintain. instant is listed but is not used by Spot
* Fleet.
The start date and time of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). By default, * Amazon EC2 starts fulfilling the request immediately.
*/ inline const Aws::Utils::DateTime& GetValidFrom() const{ return m_validFrom; } /** *The start date and time of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). By default, * Amazon EC2 starts fulfilling the request immediately.
*/ inline bool ValidFromHasBeenSet() const { return m_validFromHasBeenSet; } /** *The start date and time of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). By default, * Amazon EC2 starts fulfilling the request immediately.
*/ inline void SetValidFrom(const Aws::Utils::DateTime& value) { m_validFromHasBeenSet = true; m_validFrom = value; } /** *The start date and time of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). By default, * Amazon EC2 starts fulfilling the request immediately.
*/ inline void SetValidFrom(Aws::Utils::DateTime&& value) { m_validFromHasBeenSet = true; m_validFrom = std::move(value); } /** *The start date and time of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). By default, * Amazon EC2 starts fulfilling the request immediately.
*/ inline SpotFleetRequestConfigData& WithValidFrom(const Aws::Utils::DateTime& value) { SetValidFrom(value); return *this;} /** *The start date and time of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). By default, * Amazon EC2 starts fulfilling the request immediately.
*/ inline SpotFleetRequestConfigData& WithValidFrom(Aws::Utils::DateTime&& value) { SetValidFrom(std::move(value)); return *this;} /** *The end date and time of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). After the end * date and time, no new Spot Instance requests are placed or able to fulfill the * request. If no value is specified, the Spot Fleet request remains until you * cancel it.
*/ inline const Aws::Utils::DateTime& GetValidUntil() const{ return m_validUntil; } /** *The end date and time of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). After the end * date and time, no new Spot Instance requests are placed or able to fulfill the * request. If no value is specified, the Spot Fleet request remains until you * cancel it.
*/ inline bool ValidUntilHasBeenSet() const { return m_validUntilHasBeenSet; } /** *The end date and time of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). After the end * date and time, no new Spot Instance requests are placed or able to fulfill the * request. If no value is specified, the Spot Fleet request remains until you * cancel it.
*/ inline void SetValidUntil(const Aws::Utils::DateTime& value) { m_validUntilHasBeenSet = true; m_validUntil = value; } /** *The end date and time of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). After the end * date and time, no new Spot Instance requests are placed or able to fulfill the * request. If no value is specified, the Spot Fleet request remains until you * cancel it.
*/ inline void SetValidUntil(Aws::Utils::DateTime&& value) { m_validUntilHasBeenSet = true; m_validUntil = std::move(value); } /** *The end date and time of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). After the end * date and time, no new Spot Instance requests are placed or able to fulfill the * request. If no value is specified, the Spot Fleet request remains until you * cancel it.
*/ inline SpotFleetRequestConfigData& WithValidUntil(const Aws::Utils::DateTime& value) { SetValidUntil(value); return *this;} /** *The end date and time of the request, in UTC format * (YYYY-MM-DDTHH:MM:SSZ). After the end * date and time, no new Spot Instance requests are placed or able to fulfill the * request. If no value is specified, the Spot Fleet request remains until you * cancel it.
*/ inline SpotFleetRequestConfigData& WithValidUntil(Aws::Utils::DateTime&& value) { SetValidUntil(std::move(value)); return *this;} /** *Indicates whether Spot Fleet should replace unhealthy instances.
*/ inline bool GetReplaceUnhealthyInstances() const{ return m_replaceUnhealthyInstances; } /** *Indicates whether Spot Fleet should replace unhealthy instances.
*/ inline bool ReplaceUnhealthyInstancesHasBeenSet() const { return m_replaceUnhealthyInstancesHasBeenSet; } /** *Indicates whether Spot Fleet should replace unhealthy instances.
*/ inline void SetReplaceUnhealthyInstances(bool value) { m_replaceUnhealthyInstancesHasBeenSet = true; m_replaceUnhealthyInstances = value; } /** *Indicates whether Spot Fleet should replace unhealthy instances.
*/ inline SpotFleetRequestConfigData& WithReplaceUnhealthyInstances(bool value) { SetReplaceUnhealthyInstances(value); return *this;} /** *The behavior when a Spot Instance is interrupted. The default is
* terminate.
The behavior when a Spot Instance is interrupted. The default is
* terminate.
The behavior when a Spot Instance is interrupted. The default is
* terminate.
The behavior when a Spot Instance is interrupted. The default is
* terminate.
The behavior when a Spot Instance is interrupted. The default is
* terminate.
The behavior when a Spot Instance is interrupted. The default is
* terminate.
One or more Classic Load Balancers and target groups to attach to the Spot * Fleet request. Spot Fleet registers the running Spot Instances with the * specified Classic Load Balancers and target groups.
With Network Load * Balancers, Spot Fleet cannot register instances that have the following instance * types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and * T1.
*/ inline const LoadBalancersConfig& GetLoadBalancersConfig() const{ return m_loadBalancersConfig; } /** *One or more Classic Load Balancers and target groups to attach to the Spot * Fleet request. Spot Fleet registers the running Spot Instances with the * specified Classic Load Balancers and target groups.
With Network Load * Balancers, Spot Fleet cannot register instances that have the following instance * types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and * T1.
*/ inline bool LoadBalancersConfigHasBeenSet() const { return m_loadBalancersConfigHasBeenSet; } /** *One or more Classic Load Balancers and target groups to attach to the Spot * Fleet request. Spot Fleet registers the running Spot Instances with the * specified Classic Load Balancers and target groups.
With Network Load * Balancers, Spot Fleet cannot register instances that have the following instance * types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and * T1.
*/ inline void SetLoadBalancersConfig(const LoadBalancersConfig& value) { m_loadBalancersConfigHasBeenSet = true; m_loadBalancersConfig = value; } /** *One or more Classic Load Balancers and target groups to attach to the Spot * Fleet request. Spot Fleet registers the running Spot Instances with the * specified Classic Load Balancers and target groups.
With Network Load * Balancers, Spot Fleet cannot register instances that have the following instance * types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and * T1.
*/ inline void SetLoadBalancersConfig(LoadBalancersConfig&& value) { m_loadBalancersConfigHasBeenSet = true; m_loadBalancersConfig = std::move(value); } /** *One or more Classic Load Balancers and target groups to attach to the Spot * Fleet request. Spot Fleet registers the running Spot Instances with the * specified Classic Load Balancers and target groups.
With Network Load * Balancers, Spot Fleet cannot register instances that have the following instance * types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and * T1.
*/ inline SpotFleetRequestConfigData& WithLoadBalancersConfig(const LoadBalancersConfig& value) { SetLoadBalancersConfig(value); return *this;} /** *One or more Classic Load Balancers and target groups to attach to the Spot * Fleet request. Spot Fleet registers the running Spot Instances with the * specified Classic Load Balancers and target groups.
With Network Load * Balancers, Spot Fleet cannot register instances that have the following instance * types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and * T1.
*/ inline SpotFleetRequestConfigData& WithLoadBalancersConfig(LoadBalancersConfig&& value) { SetLoadBalancersConfig(std::move(value)); return *this;} /** *The number of Spot pools across which to allocate your target Spot capacity.
* Valid only when Spot AllocationStrategy is set to
* lowest-price. Spot Fleet selects the cheapest Spot pools and evenly
* allocates your target Spot capacity across the number of Spot pools that you
* specify.
The number of Spot pools across which to allocate your target Spot capacity.
* Valid only when Spot AllocationStrategy is set to
* lowest-price. Spot Fleet selects the cheapest Spot pools and evenly
* allocates your target Spot capacity across the number of Spot pools that you
* specify.
The number of Spot pools across which to allocate your target Spot capacity.
* Valid only when Spot AllocationStrategy is set to
* lowest-price. Spot Fleet selects the cheapest Spot pools and evenly
* allocates your target Spot capacity across the number of Spot pools that you
* specify.
The number of Spot pools across which to allocate your target Spot capacity.
* Valid only when Spot AllocationStrategy is set to
* lowest-price. Spot Fleet selects the cheapest Spot pools and evenly
* allocates your target Spot capacity across the number of Spot pools that you
* specify.
The key-value pair for tagging the Spot Fleet request on creation. The value
* for ResourceType must be spot-fleet-request, otherwise
* the Spot Fleet request fails. To tag instances at launch, specify the tags in
* the launch
* template (valid only if you use LaunchTemplateConfigs) or in
* the
* SpotFleetTagSpecification (valid only if you use
* LaunchSpecifications). For information about tagging after launch,
* see Tagging
* Your Resources.
The key-value pair for tagging the Spot Fleet request on creation. The value
* for ResourceType must be spot-fleet-request, otherwise
* the Spot Fleet request fails. To tag instances at launch, specify the tags in
* the launch
* template (valid only if you use LaunchTemplateConfigs) or in
* the
* SpotFleetTagSpecification (valid only if you use
* LaunchSpecifications). For information about tagging after launch,
* see Tagging
* Your Resources.
The key-value pair for tagging the Spot Fleet request on creation. The value
* for ResourceType must be spot-fleet-request, otherwise
* the Spot Fleet request fails. To tag instances at launch, specify the tags in
* the launch
* template (valid only if you use LaunchTemplateConfigs) or in
* the
* SpotFleetTagSpecification (valid only if you use
* LaunchSpecifications). For information about tagging after launch,
* see Tagging
* Your Resources.
The key-value pair for tagging the Spot Fleet request on creation. The value
* for ResourceType must be spot-fleet-request, otherwise
* the Spot Fleet request fails. To tag instances at launch, specify the tags in
* the launch
* template (valid only if you use LaunchTemplateConfigs) or in
* the
* SpotFleetTagSpecification (valid only if you use
* LaunchSpecifications). For information about tagging after launch,
* see Tagging
* Your Resources.
The key-value pair for tagging the Spot Fleet request on creation. The value
* for ResourceType must be spot-fleet-request, otherwise
* the Spot Fleet request fails. To tag instances at launch, specify the tags in
* the launch
* template (valid only if you use LaunchTemplateConfigs) or in
* the
* SpotFleetTagSpecification (valid only if you use
* LaunchSpecifications). For information about tagging after launch,
* see Tagging
* Your Resources.
The key-value pair for tagging the Spot Fleet request on creation. The value
* for ResourceType must be spot-fleet-request, otherwise
* the Spot Fleet request fails. To tag instances at launch, specify the tags in
* the launch
* template (valid only if you use LaunchTemplateConfigs) or in
* the
* SpotFleetTagSpecification (valid only if you use
* LaunchSpecifications). For information about tagging after launch,
* see Tagging
* Your Resources.
The key-value pair for tagging the Spot Fleet request on creation. The value
* for ResourceType must be spot-fleet-request, otherwise
* the Spot Fleet request fails. To tag instances at launch, specify the tags in
* the launch
* template (valid only if you use LaunchTemplateConfigs) or in
* the
* SpotFleetTagSpecification (valid only if you use
* LaunchSpecifications). For information about tagging after launch,
* see Tagging
* Your Resources.
The key-value pair for tagging the Spot Fleet request on creation. The value
* for ResourceType must be spot-fleet-request, otherwise
* the Spot Fleet request fails. To tag instances at launch, specify the tags in
* the launch
* template (valid only if you use LaunchTemplateConfigs) or in
* the
* SpotFleetTagSpecification (valid only if you use
* LaunchSpecifications). For information about tagging after launch,
* see Tagging
* Your Resources.