Struct aws_sdk_emr::model::SpotProvisioningSpecification
source · [−]#[non_exhaustive]pub struct SpotProvisioningSpecification {
pub timeout_duration_minutes: Option<i32>,
pub timeout_action: Option<SpotProvisioningTimeoutAction>,
pub block_duration_minutes: Option<i32>,
pub allocation_strategy: Option<SpotProvisioningAllocationStrategy>,
}Expand description
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.
Spot Instances with a defined duration (also known as Spot blocks) are no longer available to new customers from July 1, 2021. For customers who have previously used the feature, we will continue to support Spot Instances with a defined duration until December 31, 2022.
Fields (Non-exhaustive)
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.timeout_duration_minutes: Option<i32>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.
timeout_action: Option<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.
block_duration_minutes: Option<i32>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.
Spot Instances with a defined duration (also known as Spot blocks) are no longer available to new customers from July 1, 2021. For customers who have previously used the feature, we will continue to support Spot Instances with a defined duration until December 31, 2022.
allocation_strategy: Option<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.
Implementations
sourceimpl SpotProvisioningSpecification
impl SpotProvisioningSpecification
sourcepub fn timeout_duration_minutes(&self) -> Option<i32>
pub fn timeout_duration_minutes(&self) -> Option<i32>
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.
sourcepub fn timeout_action(&self) -> Option<&SpotProvisioningTimeoutAction>
pub fn timeout_action(&self) -> Option<&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.
sourcepub fn block_duration_minutes(&self) -> Option<i32>
pub fn block_duration_minutes(&self) -> Option<i32>
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.
Spot Instances with a defined duration (also known as Spot blocks) are no longer available to new customers from July 1, 2021. For customers who have previously used the feature, we will continue to support Spot Instances with a defined duration until December 31, 2022.
sourcepub fn allocation_strategy(&self) -> Option<&SpotProvisioningAllocationStrategy>
pub fn allocation_strategy(&self) -> Option<&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.
sourceimpl SpotProvisioningSpecification
impl SpotProvisioningSpecification
sourcepub fn builder() -> Builder
pub fn builder() -> Builder
Creates a new builder-style object to manufacture SpotProvisioningSpecification
Trait Implementations
sourceimpl Clone for SpotProvisioningSpecification
impl Clone for SpotProvisioningSpecification
sourcefn clone(&self) -> SpotProvisioningSpecification
fn clone(&self) -> SpotProvisioningSpecification
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more
sourceimpl Debug for SpotProvisioningSpecification
impl Debug for SpotProvisioningSpecification
sourceimpl PartialEq<SpotProvisioningSpecification> for SpotProvisioningSpecification
impl PartialEq<SpotProvisioningSpecification> for SpotProvisioningSpecification
sourcefn eq(&self, other: &SpotProvisioningSpecification) -> bool
fn eq(&self, other: &SpotProvisioningSpecification) -> bool
This method tests for self and other values to be equal, and is used
by ==. Read more
sourcefn ne(&self, other: &SpotProvisioningSpecification) -> bool
fn ne(&self, other: &SpotProvisioningSpecification) -> bool
This method tests for !=.
impl StructuralPartialEq for SpotProvisioningSpecification
Auto Trait Implementations
impl RefUnwindSafe for SpotProvisioningSpecification
impl Send for SpotProvisioningSpecification
impl Sync for SpotProvisioningSpecification
impl Unpin for SpotProvisioningSpecification
impl UnwindSafe for SpotProvisioningSpecification
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into)Uses borrowed data to replace owned data, usually by cloning. Read more
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a
WithDispatch wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber to this type, returning a
WithDispatch wrapper. Read more