Class: AWSCDK::EMR::CfnInstanceFleetConfig::OnDemandProvisioningSpecificationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
emr/cfn_instance_fleet_config.rb

Overview

The launch specification for On-Demand Instances in the instance fleet, which determines the allocation strategy.

The instance fleet configuration is available only in Amazon EMR releases 4.8.0 and later, excluding 5.0.x versions. On-Demand Instances allocation strategy is available in Amazon EMR releases 5.12.1 and later.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(allocation_strategy:, capacity_reservation_options: nil) ⇒ OnDemandProvisioningSpecificationProperty

Returns a new instance of OnDemandProvisioningSpecificationProperty.

Parameters:



1012
1013
1014
1015
1016
1017
# File 'emr/cfn_instance_fleet_config.rb', line 1012

def initialize(allocation_strategy:, capacity_reservation_options: nil)
  @allocation_strategy = allocation_strategy
  Jsii::Type.check_type(@allocation_strategy, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "allocationStrategy")
  @capacity_reservation_options = capacity_reservation_options.is_a?(Hash) ? ::AWSCDK::EMR::CfnInstanceFleetConfig::OnDemandCapacityReservationOptionsProperty.new(**capacity_reservation_options.transform_keys(&:to_sym)) : capacity_reservation_options
  Jsii::Type.check_type(@capacity_reservation_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXIuQ2ZuSW5zdGFuY2VGbGVldENvbmZpZy5PbkRlbWFuZENhcGFjaXR5UmVzZXJ2YXRpb25PcHRpb25zUHJvcGVydHkifV19fQ==")), "capacityReservationOptions") unless @capacity_reservation_options.nil?
end

Instance Attribute Details

#allocation_strategyString (readonly)

Specifies the strategy to use in launching On-Demand instance fleets.

Available options are lowest-price and prioritized . lowest-price specifies to launch the instances with the lowest price first, and prioritized specifies that Amazon EMR should launch the instances with the highest priority first. The default is lowest-price .



1025
1026
1027
# File 'emr/cfn_instance_fleet_config.rb', line 1025

def allocation_strategy
  @allocation_strategy
end

#capacity_reservation_optionsAWSCDK::IResolvable, ... (readonly)

The launch specification for On-Demand instances in the instance fleet, which determines the allocation strategy.



1030
1031
1032
# File 'emr/cfn_instance_fleet_config.rb', line 1030

def capacity_reservation_options
  @capacity_reservation_options
end

Class Method Details

.jsii_propertiesObject



1032
1033
1034
1035
1036
1037
# File 'emr/cfn_instance_fleet_config.rb', line 1032

def self.jsii_properties
  {
    :allocation_strategy => "allocationStrategy",
    :capacity_reservation_options => "capacityReservationOptions",
  }
end

Instance Method Details

#to_jsiiObject



1039
1040
1041
1042
1043
1044
1045
1046
# File 'emr/cfn_instance_fleet_config.rb', line 1039

def to_jsii
  result = {}
  result.merge!({
    "allocationStrategy" => @allocation_strategy,
    "capacityReservationOptions" => @capacity_reservation_options,
  })
  result.compact
end