Class: AWSCDK::EMR::CfnCluster::JobFlowInstancesConfigProperty

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

Overview

JobFlowInstancesConfig is a property of the AWS::EMR::Cluster resource.

JobFlowInstancesConfig defines the instance groups or instance fleets that comprise the cluster. JobFlowInstancesConfig must contain either InstanceFleetConfig or InstanceGroupConfig . They cannot be used together.

You can now define task instance groups or task instance fleets using the TaskInstanceGroups and TaskInstanceFleets subproperties. Using these subproperties reduces delays in provisioning task nodes compared to specifying task nodes with the InstanceFleetConfig and InstanceGroupConfig resources.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(additional_master_security_groups: nil, additional_slave_security_groups: nil, core_instance_fleet: nil, core_instance_group: nil, ec2_key_name: nil, ec2_subnet_id: nil, ec2_subnet_ids: nil, emr_managed_master_security_group: nil, emr_managed_slave_security_group: nil, hadoop_version: nil, keep_job_flow_alive_when_no_steps: nil, master_instance_fleet: nil, master_instance_group: nil, placement: nil, service_access_security_group: nil, task_instance_fleets: nil, task_instance_groups: nil, termination_protected: nil, unhealthy_node_replacement: nil) ⇒ JobFlowInstancesConfigProperty

Returns a new instance of JobFlowInstancesConfigProperty.

Parameters:

  • additional_master_security_groups (Array<String>, nil) (defaults to: nil)

    A list of additional Amazon EC2 security group IDs for the master node.

  • additional_slave_security_groups (Array<String>, nil) (defaults to: nil)

    A list of additional Amazon EC2 security group IDs for the core and task nodes.

  • core_instance_fleet (AWSCDK::IResolvable, AWSCDK::EMR::CfnCluster::InstanceFleetConfigProperty, nil) (defaults to: nil)

    Describes the EC2 instances and instance configurations for the core instance fleet when using clusters with the instance fleet configuration.

  • core_instance_group (AWSCDK::IResolvable, AWSCDK::EMR::CfnCluster::InstanceGroupConfigProperty, nil) (defaults to: nil)

    Describes the EC2 instances and instance configurations for core instance groups when using clusters with the uniform instance group configuration.

  • ec2_key_name (String, nil) (defaults to: nil)

    The name of the Amazon EC2 key pair that can be used to connect to the master node using SSH as the user called "hadoop.".

  • ec2_subnet_id (String, nil) (defaults to: nil)

    Applies to clusters that use the uniform instance group configuration.

  • ec2_subnet_ids (Array<String>, nil) (defaults to: nil)

    Applies to clusters that use the instance fleet configuration.

  • emr_managed_master_security_group (String, nil) (defaults to: nil)

    The identifier of the Amazon EC2 security group for the master node.

  • emr_managed_slave_security_group (String, nil) (defaults to: nil)

    The identifier of the Amazon EC2 security group for the core and task nodes.

  • hadoop_version (String, nil) (defaults to: nil)

    Applies only to Amazon EMR release versions earlier than 4.0. The Hadoop version for the cluster. Valid inputs are "0.18" (no longer maintained), "0.20" (no longer maintained), "0.20.205" (no longer maintained), "1.0.3", "2.2.0", or "2.4.0". If you do not set this value, the default of 0.18 is used, unless the AmiVersion parameter is set in the RunJobFlow call, in which case the default version of Hadoop for that AMI version is used.

  • keep_job_flow_alive_when_no_steps (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Specifies whether the cluster should remain available after completing all steps.

  • master_instance_fleet (AWSCDK::IResolvable, AWSCDK::EMR::CfnCluster::InstanceFleetConfigProperty, nil) (defaults to: nil)

    Describes the EC2 instances and instance configurations for the master instance fleet when using clusters with the instance fleet configuration.

  • master_instance_group (AWSCDK::IResolvable, AWSCDK::EMR::CfnCluster::InstanceGroupConfigProperty, nil) (defaults to: nil)

    Describes the EC2 instances and instance configurations for the master instance group when using clusters with the uniform instance group configuration.

  • placement (AWSCDK::IResolvable, AWSCDK::EMR::CfnCluster::PlacementTypeProperty, nil) (defaults to: nil)

    The Availability Zone in which the cluster runs.

  • service_access_security_group (String, nil) (defaults to: nil)

    The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private subnets.

  • task_instance_fleets (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::EMR::CfnCluster::InstanceFleetConfigProperty>, nil) (defaults to: nil)

    Describes the EC2 instances and instance configurations for the task instance fleets when using clusters with the instance fleet configuration.

  • task_instance_groups (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::EMR::CfnCluster::InstanceGroupConfigProperty>, nil) (defaults to: nil)

    Describes the EC2 instances and instance configurations for task instance groups when using clusters with the uniform instance group configuration.

  • termination_protected (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Specifies whether to lock the cluster to prevent the Amazon EC2 instances from being terminated by API call, user intervention, or in the event of a job-flow error.

  • unhealthy_node_replacement (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Indicates whether Amazon EMR should gracefully replace core nodes that have degraded within the cluster.



1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
# File 'emr/cfn_cluster.rb', line 1947

def initialize(additional_master_security_groups: nil, additional_slave_security_groups: nil, core_instance_fleet: nil, core_instance_group: nil, ec2_key_name: nil, ec2_subnet_id: nil, ec2_subnet_ids: nil, emr_managed_master_security_group: nil, emr_managed_slave_security_group: nil, hadoop_version: nil, keep_job_flow_alive_when_no_steps: nil, master_instance_fleet: nil, master_instance_group: nil, placement: nil, service_access_security_group: nil, task_instance_fleets: nil, task_instance_groups: nil, termination_protected: nil, unhealthy_node_replacement: nil)
  @additional_master_security_groups = additional_master_security_groups
  Jsii::Type.check_type(@additional_master_security_groups, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "additionalMasterSecurityGroups") unless @additional_master_security_groups.nil?
  @additional_slave_security_groups = additional_slave_security_groups
  Jsii::Type.check_type(@additional_slave_security_groups, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "additionalSlaveSecurityGroups") unless @additional_slave_security_groups.nil?
  @core_instance_fleet = core_instance_fleet.is_a?(Hash) ? ::AWSCDK::EMR::CfnCluster::InstanceFleetConfigProperty.new(**core_instance_fleet.transform_keys(&:to_sym)) : core_instance_fleet
  Jsii::Type.check_type(@core_instance_fleet, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXIuQ2ZuQ2x1c3Rlci5JbnN0YW5jZUZsZWV0Q29uZmlnUHJvcGVydHkifV19fQ==")), "coreInstanceFleet") unless @core_instance_fleet.nil?
  @core_instance_group = core_instance_group.is_a?(Hash) ? ::AWSCDK::EMR::CfnCluster::InstanceGroupConfigProperty.new(**core_instance_group.transform_keys(&:to_sym)) : core_instance_group
  Jsii::Type.check_type(@core_instance_group, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXIuQ2ZuQ2x1c3Rlci5JbnN0YW5jZUdyb3VwQ29uZmlnUHJvcGVydHkifV19fQ==")), "coreInstanceGroup") unless @core_instance_group.nil?
  @ec2_key_name = ec2_key_name
  Jsii::Type.check_type(@ec2_key_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "ec2KeyName") unless @ec2_key_name.nil?
  @ec2_subnet_id = ec2_subnet_id
  Jsii::Type.check_type(@ec2_subnet_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "ec2SubnetId") unless @ec2_subnet_id.nil?
  @ec2_subnet_ids = ec2_subnet_ids
  Jsii::Type.check_type(@ec2_subnet_ids, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "ec2SubnetIds") unless @ec2_subnet_ids.nil?
  @emr_managed_master_security_group = emr_managed_master_security_group
  Jsii::Type.check_type(@emr_managed_master_security_group, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "emrManagedMasterSecurityGroup") unless @emr_managed_master_security_group.nil?
  @emr_managed_slave_security_group = emr_managed_slave_security_group
  Jsii::Type.check_type(@emr_managed_slave_security_group, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "emrManagedSlaveSecurityGroup") unless @emr_managed_slave_security_group.nil?
  @hadoop_version = hadoop_version
  Jsii::Type.check_type(@hadoop_version, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "hadoopVersion") unless @hadoop_version.nil?
  @keep_job_flow_alive_when_no_steps = keep_job_flow_alive_when_no_steps
  Jsii::Type.check_type(@keep_job_flow_alive_when_no_steps, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "keepJobFlowAliveWhenNoSteps") unless @keep_job_flow_alive_when_no_steps.nil?
  @master_instance_fleet = master_instance_fleet.is_a?(Hash) ? ::AWSCDK::EMR::CfnCluster::InstanceFleetConfigProperty.new(**master_instance_fleet.transform_keys(&:to_sym)) : master_instance_fleet
  Jsii::Type.check_type(@master_instance_fleet, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXIuQ2ZuQ2x1c3Rlci5JbnN0YW5jZUZsZWV0Q29uZmlnUHJvcGVydHkifV19fQ==")), "masterInstanceFleet") unless @master_instance_fleet.nil?
  @master_instance_group = master_instance_group.is_a?(Hash) ? ::AWSCDK::EMR::CfnCluster::InstanceGroupConfigProperty.new(**master_instance_group.transform_keys(&:to_sym)) : master_instance_group
  Jsii::Type.check_type(@master_instance_group, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXIuQ2ZuQ2x1c3Rlci5JbnN0YW5jZUdyb3VwQ29uZmlnUHJvcGVydHkifV19fQ==")), "masterInstanceGroup") unless @master_instance_group.nil?
  @placement = placement.is_a?(Hash) ? ::AWSCDK::EMR::CfnCluster::PlacementTypeProperty.new(**placement.transform_keys(&:to_sym)) : placement
  Jsii::Type.check_type(@placement, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXIuQ2ZuQ2x1c3Rlci5QbGFjZW1lbnRUeXBlUHJvcGVydHkifV19fQ==")), "placement") unless @placement.nil?
  @service_access_security_group = service_access_security_group
  Jsii::Type.check_type(@service_access_security_group, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "serviceAccessSecurityGroup") unless @service_access_security_group.nil?
  @task_instance_fleets = task_instance_fleets
  Jsii::Type.check_type(@task_instance_fleets, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZW1yLkNmbkNsdXN0ZXIuSW5zdGFuY2VGbGVldENvbmZpZ1Byb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "taskInstanceFleets") unless @task_instance_fleets.nil?
  @task_instance_groups = task_instance_groups
  Jsii::Type.check_type(@task_instance_groups, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZW1yLkNmbkNsdXN0ZXIuSW5zdGFuY2VHcm91cENvbmZpZ1Byb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "taskInstanceGroups") unless @task_instance_groups.nil?
  @termination_protected = termination_protected
  Jsii::Type.check_type(@termination_protected, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "terminationProtected") unless @termination_protected.nil?
  @unhealthy_node_replacement = unhealthy_node_replacement
  Jsii::Type.check_type(@unhealthy_node_replacement, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "unhealthyNodeReplacement") unless @unhealthy_node_replacement.nil?
end

Instance Attribute Details

#additional_master_security_groupsArray<String>? (readonly)

A list of additional Amazon EC2 security group IDs for the master node.



1992
1993
1994
# File 'emr/cfn_cluster.rb', line 1992

def additional_master_security_groups
  @additional_master_security_groups
end

#additional_slave_security_groupsArray<String>? (readonly)

A list of additional Amazon EC2 security group IDs for the core and task nodes.



1997
1998
1999
# File 'emr/cfn_cluster.rb', line 1997

def additional_slave_security_groups
  @additional_slave_security_groups
end

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

Describes the EC2 instances and instance configurations for the core instance fleet when using clusters with the instance fleet configuration.



2002
2003
2004
# File 'emr/cfn_cluster.rb', line 2002

def core_instance_fleet
  @core_instance_fleet
end

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

Describes the EC2 instances and instance configurations for core instance groups when using clusters with the uniform instance group configuration.



2007
2008
2009
# File 'emr/cfn_cluster.rb', line 2007

def core_instance_group
  @core_instance_group
end

#ec2_key_nameString? (readonly)

The name of the Amazon EC2 key pair that can be used to connect to the master node using SSH as the user called "hadoop.".



2012
2013
2014
# File 'emr/cfn_cluster.rb', line 2012

def ec2_key_name
  @ec2_key_name
end

#ec2_subnet_idString? (readonly)

Applies to clusters that use the uniform instance group configuration.

To launch the cluster in Amazon Virtual Private Cloud (Amazon VPC), set this parameter to the identifier of the Amazon VPC subnet where you want the cluster to launch. If you do not specify this value and your account supports EC2-Classic, the cluster launches in EC2-Classic.



2019
2020
2021
# File 'emr/cfn_cluster.rb', line 2019

def ec2_subnet_id
  @ec2_subnet_id
end

#ec2_subnet_idsArray<String>? (readonly)

Applies to clusters that use the instance fleet configuration.

When multiple Amazon EC2 subnet IDs are specified, Amazon EMR evaluates them and launches instances in the optimal subnet.

The instance fleet configuration is available only in Amazon EMR releases 4.8.0 and later, excluding 5.0.x versions.



2028
2029
2030
# File 'emr/cfn_cluster.rb', line 2028

def ec2_subnet_ids
  @ec2_subnet_ids
end

#emr_managed_master_security_groupString? (readonly)

The identifier of the Amazon EC2 security group for the master node.

If you specify EmrManagedMasterSecurityGroup , you must also specify EmrManagedSlaveSecurityGroup .



2035
2036
2037
# File 'emr/cfn_cluster.rb', line 2035

def emr_managed_master_security_group
  @emr_managed_master_security_group
end

#emr_managed_slave_security_groupString? (readonly)

The identifier of the Amazon EC2 security group for the core and task nodes.

If you specify EmrManagedSlaveSecurityGroup , you must also specify EmrManagedMasterSecurityGroup .



2042
2043
2044
# File 'emr/cfn_cluster.rb', line 2042

def emr_managed_slave_security_group
  @emr_managed_slave_security_group
end

#hadoop_versionString? (readonly)

Applies only to Amazon EMR release versions earlier than 4.0. The Hadoop version for the cluster. Valid inputs are "0.18" (no longer maintained), "0.20" (no longer maintained), "0.20.205" (no longer maintained), "1.0.3", "2.2.0", or "2.4.0". If you do not set this value, the default of 0.18 is used, unless the AmiVersion parameter is set in the RunJobFlow call, in which case the default version of Hadoop for that AMI version is used.



2047
2048
2049
# File 'emr/cfn_cluster.rb', line 2047

def hadoop_version
  @hadoop_version
end

#keep_job_flow_alive_when_no_stepsBoolean, ... (readonly)

Specifies whether the cluster should remain available after completing all steps.

Defaults to false . For more information about configuring cluster termination, see Control Cluster Termination in the EMR Management Guide .



2054
2055
2056
# File 'emr/cfn_cluster.rb', line 2054

def keep_job_flow_alive_when_no_steps
  @keep_job_flow_alive_when_no_steps
end

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

Describes the EC2 instances and instance configurations for the master instance fleet when using clusters with the instance fleet configuration.



2059
2060
2061
# File 'emr/cfn_cluster.rb', line 2059

def master_instance_fleet
  @master_instance_fleet
end

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

Describes the EC2 instances and instance configurations for the master instance group when using clusters with the uniform instance group configuration.



2064
2065
2066
# File 'emr/cfn_cluster.rb', line 2064

def master_instance_group
  @master_instance_group
end

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

The Availability Zone in which the cluster runs.



2069
2070
2071
# File 'emr/cfn_cluster.rb', line 2069

def placement
  @placement
end

#service_access_security_groupString? (readonly)

The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private subnets.



2074
2075
2076
# File 'emr/cfn_cluster.rb', line 2074

def service_access_security_group
  @service_access_security_group
end

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

Describes the EC2 instances and instance configurations for the task instance fleets when using clusters with the instance fleet configuration.

These task instance fleets are added to the cluster as part of the cluster launch. Each task instance fleet must have a unique name specified so that CloudFormation can differentiate between the task instance fleets.

You can currently specify only one task instance fleet for a cluster. After creating the cluster, you can only modify the mutable properties of InstanceFleetConfig , which are TargetOnDemandCapacity and TargetSpotCapacity . Modifying any other property results in cluster replacement. > To allow a maximum of 30 Amazon EC2 instance types per fleet, include TaskInstanceFleets when you create your cluster. If you create your cluster without TaskInstanceFleets , Amazon EMR uses its default allocation strategy, which allows for a maximum of five Amazon EC2 instance types.



2083
2084
2085
# File 'emr/cfn_cluster.rb', line 2083

def task_instance_fleets
  @task_instance_fleets
end

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

Describes the EC2 instances and instance configurations for task instance groups when using clusters with the uniform instance group configuration.

These task instance groups are added to the cluster as part of the cluster launch. Each task instance group must have a unique name specified so that CloudFormation can differentiate between the task instance groups.

After creating the cluster, you can only modify the mutable properties of InstanceGroupConfig , which are AutoScalingPolicy and InstanceCount . Modifying any other property results in cluster replacement.



2092
2093
2094
# File 'emr/cfn_cluster.rb', line 2092

def task_instance_groups
  @task_instance_groups
end

#termination_protectedBoolean, ... (readonly)

Specifies whether to lock the cluster to prevent the Amazon EC2 instances from being terminated by API call, user intervention, or in the event of a job-flow error.



2097
2098
2099
# File 'emr/cfn_cluster.rb', line 2097

def termination_protected
  @termination_protected
end

#unhealthy_node_replacementBoolean, ... (readonly)

Indicates whether Amazon EMR should gracefully replace core nodes that have degraded within the cluster.



2102
2103
2104
# File 'emr/cfn_cluster.rb', line 2102

def unhealthy_node_replacement
  @unhealthy_node_replacement
end

Class Method Details

.jsii_propertiesObject



2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
# File 'emr/cfn_cluster.rb', line 2104

def self.jsii_properties
  {
    :additional_master_security_groups => "additionalMasterSecurityGroups",
    :additional_slave_security_groups => "additionalSlaveSecurityGroups",
    :core_instance_fleet => "coreInstanceFleet",
    :core_instance_group => "coreInstanceGroup",
    :ec2_key_name => "ec2KeyName",
    :ec2_subnet_id => "ec2SubnetId",
    :ec2_subnet_ids => "ec2SubnetIds",
    :emr_managed_master_security_group => "emrManagedMasterSecurityGroup",
    :emr_managed_slave_security_group => "emrManagedSlaveSecurityGroup",
    :hadoop_version => "hadoopVersion",
    :keep_job_flow_alive_when_no_steps => "keepJobFlowAliveWhenNoSteps",
    :master_instance_fleet => "masterInstanceFleet",
    :master_instance_group => "masterInstanceGroup",
    :placement => "placement",
    :service_access_security_group => "serviceAccessSecurityGroup",
    :task_instance_fleets => "taskInstanceFleets",
    :task_instance_groups => "taskInstanceGroups",
    :termination_protected => "terminationProtected",
    :unhealthy_node_replacement => "unhealthyNodeReplacement",
  }
end

Instance Method Details

#to_jsiiObject



2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
# File 'emr/cfn_cluster.rb', line 2128

def to_jsii
  result = {}
  result.merge!({
    "additionalMasterSecurityGroups" => @additional_master_security_groups,
    "additionalSlaveSecurityGroups" => @additional_slave_security_groups,
    "coreInstanceFleet" => @core_instance_fleet,
    "coreInstanceGroup" => @core_instance_group,
    "ec2KeyName" => @ec2_key_name,
    "ec2SubnetId" => @ec2_subnet_id,
    "ec2SubnetIds" => @ec2_subnet_ids,
    "emrManagedMasterSecurityGroup" => @emr_managed_master_security_group,
    "emrManagedSlaveSecurityGroup" => @emr_managed_slave_security_group,
    "hadoopVersion" => @hadoop_version,
    "keepJobFlowAliveWhenNoSteps" => @keep_job_flow_alive_when_no_steps,
    "masterInstanceFleet" => @master_instance_fleet,
    "masterInstanceGroup" => @master_instance_group,
    "placement" => @placement,
    "serviceAccessSecurityGroup" => @service_access_security_group,
    "taskInstanceFleets" => @task_instance_fleets,
    "taskInstanceGroups" => @task_instance_groups,
    "terminationProtected" => @termination_protected,
    "unhealthyNodeReplacement" => @unhealthy_node_replacement,
  })
  result.compact
end