Class: AWSCDK::StepFunctionsTasks::EMRCreateCluster::InstanceGroupConfigProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::StepFunctionsTasks::EMRCreateCluster::InstanceGroupConfigProperty
- Defined in:
- step_functions_tasks/emr_create_cluster.rb
Overview
Configuration defining a new instance group.
Instance Attribute Summary collapse
-
#auto_scaling_policy ⇒ AWSCDK::StepFunctionsTasks::EMRCreateCluster::AutoScalingPolicyProperty?
readonly
An automatic scaling policy for a core instance group or task instance group in an Amazon EMR cluster.
-
#bid_price ⇒ String?
readonly
The bid price for each EC2 Spot instance type as defined by InstanceType.
-
#configurations ⇒ Array<AWSCDK::StepFunctionsTasks::EMRCreateCluster::ConfigurationProperty>?
readonly
The list of configurations supplied for an EMR cluster instance group.
-
#ebs_configuration ⇒ AWSCDK::StepFunctionsTasks::EMRCreateCluster::EbsConfigurationProperty?
readonly
EBS configurations that will be attached to each EC2 instance in the instance group.
-
#instance_count ⇒ Numeric
readonly
Target number of instances for the instance group.
-
#instance_role ⇒ AWSCDK::StepFunctionsTasks::EMRCreateCluster::InstanceRoleType
readonly
The role of the instance group in the cluster.
-
#instance_type ⇒ String
readonly
The EC2 instance type for all instances in the instance group.
-
#market ⇒ AWSCDK::StepFunctionsTasks::EMRCreateCluster::InstanceMarket?
readonly
Market type of the EC2 instances used to create a cluster node.
-
#name ⇒ String?
readonly
Friendly name given to the instance group.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(instance_count:, instance_role:, instance_type:, auto_scaling_policy: nil, bid_price: nil, configurations: nil, ebs_configuration: nil, market: nil, name: nil) ⇒ InstanceGroupConfigProperty
constructor
A new instance of InstanceGroupConfigProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(instance_count:, instance_role:, instance_type:, auto_scaling_policy: nil, bid_price: nil, configurations: nil, ebs_configuration: nil, market: nil, name: nil) ⇒ InstanceGroupConfigProperty
Returns a new instance of InstanceGroupConfigProperty.
1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 |
# File 'step_functions_tasks/emr_create_cluster.rb', line 1511 def initialize(instance_count:, instance_role:, instance_type:, auto_scaling_policy: nil, bid_price: nil, configurations: nil, ebs_configuration: nil, market: nil, name: nil) @instance_count = instance_count Jsii::Type.check_type(@instance_count, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "instanceCount") @instance_role = instance_role Jsii::Type.check_type(@instance_role, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9uc190YXNrcy5FbXJDcmVhdGVDbHVzdGVyLkluc3RhbmNlUm9sZVR5cGUifQ==")), "instanceRole") @instance_type = instance_type Jsii::Type.check_type(@instance_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "instanceType") @auto_scaling_policy = auto_scaling_policy.is_a?(Hash) ? ::AWSCDK::StepFunctionsTasks::EMRCreateCluster::AutoScalingPolicyProperty.new(**auto_scaling_policy.transform_keys(&:to_sym)) : auto_scaling_policy Jsii::Type.check_type(@auto_scaling_policy, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9uc190YXNrcy5FbXJDcmVhdGVDbHVzdGVyLkF1dG9TY2FsaW5nUG9saWN5UHJvcGVydHkifQ==")), "autoScalingPolicy") unless @auto_scaling_policy.nil? @bid_price = bid_price Jsii::Type.check_type(@bid_price, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "bidPrice") unless @bid_price.nil? @configurations = configurations.is_a?(Array) ? configurations.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::StepFunctionsTasks::EMRCreateCluster::ConfigurationProperty.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : configurations Jsii::Type.check_type(@configurations, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zdGVwZnVuY3Rpb25zX3Rhc2tzLkVtckNyZWF0ZUNsdXN0ZXIuQ29uZmlndXJhdGlvblByb3BlcnR5In0sImtpbmQiOiJhcnJheSJ9fQ==")), "configurations") unless @configurations.nil? @ebs_configuration = ebs_configuration.is_a?(Hash) ? ::AWSCDK::StepFunctionsTasks::EMRCreateCluster::EbsConfigurationProperty.new(**ebs_configuration.transform_keys(&:to_sym)) : ebs_configuration Jsii::Type.check_type(@ebs_configuration, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9uc190YXNrcy5FbXJDcmVhdGVDbHVzdGVyLkVic0NvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9")), "ebsConfiguration") unless @ebs_configuration.nil? @market = market Jsii::Type.check_type(@market, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9uc190YXNrcy5FbXJDcmVhdGVDbHVzdGVyLkluc3RhbmNlTWFya2V0In0=")), "market") unless @market.nil? @name = name Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil? end |
Instance Attribute Details
#auto_scaling_policy ⇒ AWSCDK::StepFunctionsTasks::EMRCreateCluster::AutoScalingPolicyProperty? (readonly)
Default: - None
An automatic scaling policy for a core instance group or task instance group in an Amazon EMR cluster.
1548 1549 1550 |
# File 'step_functions_tasks/emr_create_cluster.rb', line 1548 def auto_scaling_policy @auto_scaling_policy end |
#bid_price ⇒ String? (readonly)
Default: - None
The bid price for each EC2 Spot instance type as defined by InstanceType.
Expressed in USD.
1555 1556 1557 |
# File 'step_functions_tasks/emr_create_cluster.rb', line 1555 def bid_price @bid_price end |
#configurations ⇒ Array<AWSCDK::StepFunctionsTasks::EMRCreateCluster::ConfigurationProperty>? (readonly)
Default: - None
The list of configurations supplied for an EMR cluster instance group.
1560 1561 1562 |
# File 'step_functions_tasks/emr_create_cluster.rb', line 1560 def configurations @configurations end |
#ebs_configuration ⇒ AWSCDK::StepFunctionsTasks::EMRCreateCluster::EbsConfigurationProperty? (readonly)
Default: - None
EBS configurations that will be attached to each EC2 instance in the instance group.
1565 1566 1567 |
# File 'step_functions_tasks/emr_create_cluster.rb', line 1565 def ebs_configuration @ebs_configuration end |
#instance_count ⇒ Numeric (readonly)
Target number of instances for the instance group.
1535 1536 1537 |
# File 'step_functions_tasks/emr_create_cluster.rb', line 1535 def instance_count @instance_count end |
#instance_role ⇒ AWSCDK::StepFunctionsTasks::EMRCreateCluster::InstanceRoleType (readonly)
The role of the instance group in the cluster.
1539 1540 1541 |
# File 'step_functions_tasks/emr_create_cluster.rb', line 1539 def instance_role @instance_role end |
#instance_type ⇒ String (readonly)
The EC2 instance type for all instances in the instance group.
1543 1544 1545 |
# File 'step_functions_tasks/emr_create_cluster.rb', line 1543 def instance_type @instance_type end |
#market ⇒ AWSCDK::StepFunctionsTasks::EMRCreateCluster::InstanceMarket? (readonly)
Default: - EMR selected default
Market type of the EC2 instances used to create a cluster node.
1570 1571 1572 |
# File 'step_functions_tasks/emr_create_cluster.rb', line 1570 def market @market end |
#name ⇒ String? (readonly)
Default: - None
Friendly name given to the instance group.
1575 1576 1577 |
# File 'step_functions_tasks/emr_create_cluster.rb', line 1575 def name @name end |
Class Method Details
.jsii_properties ⇒ Object
1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 |
# File 'step_functions_tasks/emr_create_cluster.rb', line 1577 def self.jsii_properties { :instance_count => "instanceCount", :instance_role => "instanceRole", :instance_type => "instanceType", :auto_scaling_policy => "autoScalingPolicy", :bid_price => "bidPrice", :configurations => "configurations", :ebs_configuration => "ebsConfiguration", :market => "market", :name => "name", } end |
Instance Method Details
#to_jsii ⇒ Object
1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 |
# File 'step_functions_tasks/emr_create_cluster.rb', line 1591 def to_jsii result = {} result.merge!({ "instanceCount" => @instance_count, "instanceRole" => @instance_role, "instanceType" => @instance_type, "autoScalingPolicy" => @auto_scaling_policy, "bidPrice" => @bid_price, "configurations" => @configurations, "ebsConfiguration" => @ebs_configuration, "market" => @market, "name" => @name, }) result.compact end |