libZSservicesZSamazonka-emrZSamazonka-emr
Copyright(c) 2013-2021 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone

Amazonka.EMR.Types.SpotProvisioningSpecification

Description

 
Synopsis

Documentation

data SpotProvisioningSpecification Source #

The launch specification for Spot Instances in the instance fleet, which determines the defined duration, provisioning timeout behavior, and allocation strategy.

The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions. Spot Instance allocation strategy is available in Amazon EMR version 5.12.1 and later.

See: newSpotProvisioningSpecification smart constructor.

Constructors

SpotProvisioningSpecification' 

Fields

  • blockDurationMinutes :: Maybe Natural

    The defined duration for Spot Instances (also known as Spot blocks) in minutes. When specified, the Spot Instance does not terminate before the defined duration expires, and defined duration pricing for Spot Instances applies. Valid values are 60, 120, 180, 240, 300, or 360. The duration period starts as soon as a Spot Instance receives its instance ID. At the end of the duration, Amazon EC2 marks the Spot Instance for termination and provides a Spot Instance termination notice, which gives the instance a two-minute warning before it terminates.

  • allocationStrategy :: Maybe SpotProvisioningAllocationStrategy

    Specifies the strategy to use in launching Spot Instance fleets. Currently, the only option is capacity-optimized (the default), which launches instances from Spot Instance pools with optimal capacity for the number of instances that are launching.

  • timeoutDurationMinutes :: Natural

    The spot provisioning timeout period in minutes. If Spot Instances are not provisioned within this time period, the TimeOutAction is taken. Minimum value is 5 and maximum value is 1440. The timeout applies only during initial provisioning, when the cluster is first created.

  • timeoutAction :: SpotProvisioningTimeoutAction

    The action to take when TargetSpotCapacity has not been fulfilled when the TimeoutDurationMinutes has expired; that is, when all Spot Instances could not be provisioned within the Spot provisioning timeout. Valid values are TERMINATE_CLUSTER and SWITCH_TO_ON_DEMAND. SWITCH_TO_ON_DEMAND specifies that if no Spot Instances are available, On-Demand Instances should be provisioned to fulfill any remaining Spot capacity.

Instances

Instances details
Eq SpotProvisioningSpecification Source # 
Instance details

Defined in Amazonka.EMR.Types.SpotProvisioningSpecification

Read SpotProvisioningSpecification Source # 
Instance details

Defined in Amazonka.EMR.Types.SpotProvisioningSpecification

Show SpotProvisioningSpecification Source # 
Instance details

Defined in Amazonka.EMR.Types.SpotProvisioningSpecification

Generic SpotProvisioningSpecification Source # 
Instance details

Defined in Amazonka.EMR.Types.SpotProvisioningSpecification

Associated Types

type Rep SpotProvisioningSpecification :: Type -> Type #

NFData SpotProvisioningSpecification Source # 
Instance details

Defined in Amazonka.EMR.Types.SpotProvisioningSpecification

Hashable SpotProvisioningSpecification Source # 
Instance details

Defined in Amazonka.EMR.Types.SpotProvisioningSpecification

ToJSON SpotProvisioningSpecification Source # 
Instance details

Defined in Amazonka.EMR.Types.SpotProvisioningSpecification

FromJSON SpotProvisioningSpecification Source # 
Instance details

Defined in Amazonka.EMR.Types.SpotProvisioningSpecification

type Rep SpotProvisioningSpecification Source # 
Instance details

Defined in Amazonka.EMR.Types.SpotProvisioningSpecification

type Rep SpotProvisioningSpecification = D1 ('MetaData "SpotProvisioningSpecification" "Amazonka.EMR.Types.SpotProvisioningSpecification" "libZSservicesZSamazonka-emrZSamazonka-emr" 'False) (C1 ('MetaCons "SpotProvisioningSpecification'" 'PrefixI 'True) ((S1 ('MetaSel ('Just "blockDurationMinutes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Natural)) :*: S1 ('MetaSel ('Just "allocationStrategy") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe SpotProvisioningAllocationStrategy))) :*: (S1 ('MetaSel ('Just "timeoutDurationMinutes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Natural) :*: S1 ('MetaSel ('Just "timeoutAction") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SpotProvisioningTimeoutAction))))

newSpotProvisioningSpecification Source #

Create a value of SpotProvisioningSpecification with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:blockDurationMinutes:SpotProvisioningSpecification', spotProvisioningSpecification_blockDurationMinutes - The defined duration for Spot Instances (also known as Spot blocks) in minutes. When specified, the Spot Instance does not terminate before the defined duration expires, and defined duration pricing for Spot Instances applies. Valid values are 60, 120, 180, 240, 300, or 360. The duration period starts as soon as a Spot Instance receives its instance ID. At the end of the duration, Amazon EC2 marks the Spot Instance for termination and provides a Spot Instance termination notice, which gives the instance a two-minute warning before it terminates.

$sel:allocationStrategy:SpotProvisioningSpecification', spotProvisioningSpecification_allocationStrategy - Specifies the strategy to use in launching Spot Instance fleets. Currently, the only option is capacity-optimized (the default), which launches instances from Spot Instance pools with optimal capacity for the number of instances that are launching.

$sel:timeoutDurationMinutes:SpotProvisioningSpecification', spotProvisioningSpecification_timeoutDurationMinutes - The spot provisioning timeout period in minutes. If Spot Instances are not provisioned within this time period, the TimeOutAction is taken. Minimum value is 5 and maximum value is 1440. The timeout applies only during initial provisioning, when the cluster is first created.

$sel:timeoutAction:SpotProvisioningSpecification', spotProvisioningSpecification_timeoutAction - The action to take when TargetSpotCapacity has not been fulfilled when the TimeoutDurationMinutes has expired; that is, when all Spot Instances could not be provisioned within the Spot provisioning timeout. Valid values are TERMINATE_CLUSTER and SWITCH_TO_ON_DEMAND. SWITCH_TO_ON_DEMAND specifies that if no Spot Instances are available, On-Demand Instances should be provisioned to fulfill any remaining Spot capacity.

spotProvisioningSpecification_blockDurationMinutes :: Lens' SpotProvisioningSpecification (Maybe Natural) Source #

The defined duration for Spot Instances (also known as Spot blocks) in minutes. When specified, the Spot Instance does not terminate before the defined duration expires, and defined duration pricing for Spot Instances applies. Valid values are 60, 120, 180, 240, 300, or 360. The duration period starts as soon as a Spot Instance receives its instance ID. At the end of the duration, Amazon EC2 marks the Spot Instance for termination and provides a Spot Instance termination notice, which gives the instance a two-minute warning before it terminates.

spotProvisioningSpecification_allocationStrategy :: Lens' SpotProvisioningSpecification (Maybe SpotProvisioningAllocationStrategy) Source #

Specifies the strategy to use in launching Spot Instance fleets. Currently, the only option is capacity-optimized (the default), which launches instances from Spot Instance pools with optimal capacity for the number of instances that are launching.

spotProvisioningSpecification_timeoutDurationMinutes :: Lens' SpotProvisioningSpecification Natural Source #

The spot provisioning timeout period in minutes. If Spot Instances are not provisioned within this time period, the TimeOutAction is taken. Minimum value is 5 and maximum value is 1440. The timeout applies only during initial provisioning, when the cluster is first created.

spotProvisioningSpecification_timeoutAction :: Lens' SpotProvisioningSpecification SpotProvisioningTimeoutAction Source #

The action to take when TargetSpotCapacity has not been fulfilled when the TimeoutDurationMinutes has expired; that is, when all Spot Instances could not be provisioned within the Spot provisioning timeout. Valid values are TERMINATE_CLUSTER and SWITCH_TO_ON_DEMAND. SWITCH_TO_ON_DEMAND specifies that if no Spot Instances are available, On-Demand Instances should be provisioned to fulfill any remaining Spot capacity.