Class: AWSCDK::EMR::CfnCluster::OnDemandResizingSpecificationProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::EMR::CfnCluster::OnDemandResizingSpecificationProperty
- Defined in:
- emr/cfn_cluster.rb
Overview
The resize specification for On-Demand Instances in the instance fleet, which contains the resize timeout period.
Instance Attribute Summary collapse
-
#allocation_strategy ⇒ String?
readonly
Specifies the allocation strategy to use to launch On-Demand instances during a resize.
- #capacity_reservation_options ⇒ AWSCDK::IResolvable, ... readonly
-
#timeout_duration_minutes ⇒ Numeric?
readonly
On-Demand resize timeout in minutes.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(allocation_strategy: nil, capacity_reservation_options: nil, timeout_duration_minutes: nil) ⇒ OnDemandResizingSpecificationProperty
constructor
A new instance of OnDemandResizingSpecificationProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(allocation_strategy: nil, capacity_reservation_options: nil, timeout_duration_minutes: nil) ⇒ OnDemandResizingSpecificationProperty
Returns a new instance of OnDemandResizingSpecificationProperty.
2503 2504 2505 2506 2507 2508 2509 2510 |
# File 'emr/cfn_cluster.rb', line 2503 def initialize(allocation_strategy: nil, capacity_reservation_options: nil, timeout_duration_minutes: nil) @allocation_strategy = allocation_strategy Jsii::Type.check_type(@allocation_strategy, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "allocationStrategy") unless @allocation_strategy.nil? @capacity_reservation_options = .is_a?(Hash) ? ::AWSCDK::EMR::CfnCluster::OnDemandCapacityReservationOptionsProperty.new(**.transform_keys(&:to_sym)) : Jsii::Type.check_type(@capacity_reservation_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXIuQ2ZuQ2x1c3Rlci5PbkRlbWFuZENhcGFjaXR5UmVzZXJ2YXRpb25PcHRpb25zUHJvcGVydHkifV19fQ==")), "capacityReservationOptions") unless @capacity_reservation_options.nil? @timeout_duration_minutes = timeout_duration_minutes Jsii::Type.check_type(@timeout_duration_minutes, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "timeoutDurationMinutes") unless @timeout_duration_minutes.nil? end |
Instance Attribute Details
#allocation_strategy ⇒ String? (readonly)
Specifies the allocation strategy to use to launch On-Demand instances during a resize.
The default is lowest-price .
2518 2519 2520 |
# File 'emr/cfn_cluster.rb', line 2518 def allocation_strategy @allocation_strategy end |
#capacity_reservation_options ⇒ AWSCDK::IResolvable, ... (readonly)
2521 2522 2523 |
# File 'emr/cfn_cluster.rb', line 2521 def @capacity_reservation_options end |
#timeout_duration_minutes ⇒ Numeric? (readonly)
On-Demand resize timeout in minutes.
If On-Demand Instances are not provisioned within this time, the resize workflow stops. The minimum value is 5 minutes, and the maximum value is 10,080 minutes (7 days). The timeout applies to all resize workflows on the Instance Fleet. The resize could be triggered by Amazon EMR Managed Scaling or by the customer (via Amazon EMR Console, Amazon EMR CLI modify-instance-fleet or Amazon EMR SDK ModifyInstanceFleet API) or by Amazon EMR due to Amazon EC2 Spot Reclamation.
2528 2529 2530 |
# File 'emr/cfn_cluster.rb', line 2528 def timeout_duration_minutes @timeout_duration_minutes end |
Class Method Details
.jsii_properties ⇒ Object
2530 2531 2532 2533 2534 2535 2536 |
# File 'emr/cfn_cluster.rb', line 2530 def self.jsii_properties { :allocation_strategy => "allocationStrategy", :capacity_reservation_options => "capacityReservationOptions", :timeout_duration_minutes => "timeoutDurationMinutes", } end |
Instance Method Details
#to_jsii ⇒ Object
2538 2539 2540 2541 2542 2543 2544 2545 2546 |
# File 'emr/cfn_cluster.rb', line 2538 def to_jsii result = {} result.merge!({ "allocationStrategy" => @allocation_strategy, "capacityReservationOptions" => @capacity_reservation_options, "timeoutDurationMinutes" => @timeout_duration_minutes, }) result.compact end |