Class: AWSCDK::EMR::CfnInstanceFleetConfig::InstanceFleetProvisioningSpecificationsProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::EMR::CfnInstanceFleetConfig::InstanceFleetProvisioningSpecificationsProperty
- Defined in:
- emr/cfn_instance_fleet_config.rb
Overview
The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions.
InstanceTypeConfig is a sub-property of InstanceFleetConfig . InstanceTypeConfig determines the EC2 instances that Amazon EMR attempts to provision to fulfill On-Demand and Spot target capacities.
Instance Attribute Summary collapse
-
#on_demand_specification ⇒ AWSCDK::IResolvable, ...
readonly
The launch specification for On-Demand Instances in the instance fleet, which determines the allocation strategy and capacity reservation options.
-
#spot_specification ⇒ AWSCDK::IResolvable, ...
readonly
The launch specification for Spot instances in the fleet, which determines the allocation strategy, defined duration, and provisioning timeout behavior.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(on_demand_specification: nil, spot_specification: nil) ⇒ InstanceFleetProvisioningSpecificationsProperty
constructor
A new instance of InstanceFleetProvisioningSpecificationsProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(on_demand_specification: nil, spot_specification: nil) ⇒ InstanceFleetProvisioningSpecificationsProperty
Returns a new instance of InstanceFleetProvisioningSpecificationsProperty.
745 746 747 748 749 750 |
# File 'emr/cfn_instance_fleet_config.rb', line 745 def initialize(on_demand_specification: nil, spot_specification: nil) @on_demand_specification = on_demand_specification.is_a?(Hash) ? ::AWSCDK::EMR::CfnInstanceFleetConfig::OnDemandProvisioningSpecificationProperty.new(**on_demand_specification.transform_keys(&:to_sym)) : on_demand_specification Jsii::Type.check_type(@on_demand_specification, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXIuQ2ZuSW5zdGFuY2VGbGVldENvbmZpZy5PbkRlbWFuZFByb3Zpc2lvbmluZ1NwZWNpZmljYXRpb25Qcm9wZXJ0eSJ9XX19")), "onDemandSpecification") unless @on_demand_specification.nil? @spot_specification = spot_specification.is_a?(Hash) ? ::AWSCDK::EMR::CfnInstanceFleetConfig::SpotProvisioningSpecificationProperty.new(**spot_specification.transform_keys(&:to_sym)) : spot_specification Jsii::Type.check_type(@spot_specification, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXIuQ2ZuSW5zdGFuY2VGbGVldENvbmZpZy5TcG90UHJvdmlzaW9uaW5nU3BlY2lmaWNhdGlvblByb3BlcnR5In1dfX0=")), "spotSpecification") unless @spot_specification.nil? end |
Instance Attribute Details
#on_demand_specification ⇒ AWSCDK::IResolvable, ... (readonly)
The launch specification for On-Demand Instances in the instance fleet, which determines the allocation strategy and capacity reservation options.
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.
758 759 760 |
# File 'emr/cfn_instance_fleet_config.rb', line 758 def on_demand_specification @on_demand_specification end |
#spot_specification ⇒ AWSCDK::IResolvable, ... (readonly)
The launch specification for Spot instances in the fleet, which determines the allocation strategy, defined duration, and provisioning timeout behavior.
763 764 765 |
# File 'emr/cfn_instance_fleet_config.rb', line 763 def spot_specification @spot_specification end |
Class Method Details
.jsii_properties ⇒ Object
765 766 767 768 769 770 |
# File 'emr/cfn_instance_fleet_config.rb', line 765 def self.jsii_properties { :on_demand_specification => "onDemandSpecification", :spot_specification => "spotSpecification", } end |
Instance Method Details
#to_jsii ⇒ Object
772 773 774 775 776 777 778 779 |
# File 'emr/cfn_instance_fleet_config.rb', line 772 def to_jsii result = {} result.merge!({ "onDemandSpecification" => @on_demand_specification, "spotSpecification" => @spot_specification, }) result.compact end |