Class: AWSCDK::EMR::CfnClusterProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::EMR::CfnClusterProps
- Defined in:
- emr/cfn_cluster_props.rb
Overview
Properties for defining a CfnCluster.
Instance Attribute Summary collapse
-
#additional_info ⇒ Object?
readonly
A JSON string for selecting additional features.
-
#applications ⇒ AWSCDK::IResolvable, ...
readonly
The applications to install on this cluster, for example, Spark, Flink, Oozie, Zeppelin, and so on.
-
#auto_scaling_role ⇒ String?
readonly
An IAM role for automatic scaling policies.
-
#auto_termination_policy ⇒ AWSCDK::IResolvable, ...
readonly
An auto-termination policy for an Amazon EMR cluster.
-
#bootstrap_actions ⇒ AWSCDK::IResolvable, ...
readonly
A list of bootstrap actions to run before Hadoop starts on the cluster nodes.
-
#configurations ⇒ AWSCDK::IResolvable, ...
readonly
Applies only to Amazon EMR releases 4.x and later.
-
#custom_ami_id ⇒ String?
readonly
Available only in Amazon EMR releases 5.7.0 and later.
-
#ebs_root_volume_iops ⇒ Numeric?
readonly
The IOPS, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance.
-
#ebs_root_volume_size ⇒ Numeric?
readonly
The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance.
-
#ebs_root_volume_throughput ⇒ Numeric?
readonly
The throughput, in MiB/s, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance.
-
#instances ⇒ AWSCDK::IResolvable, AWSCDK::EMR::CfnCluster::JobFlowInstancesConfigProperty
readonly
A specification of the number and type of Amazon EC2 instances.
-
#job_flow_role ⇒ String
readonly
Also called instance profile and Amazon EC2 role.
-
#kerberos_attributes ⇒ AWSCDK::IResolvable, ...
readonly
Attributes for Kerberos configuration when Kerberos authentication is enabled using a security configuration.
-
#log_encryption_kms_key_id ⇒ String?
readonly
The AWS KMS key used for encrypting log files.
-
#log_uri ⇒ String?
readonly
The path to the Amazon S3 location where logs for this cluster are stored.
-
#managed_scaling_policy ⇒ AWSCDK::IResolvable, ...
readonly
Creates or updates a managed scaling policy for an Amazon EMR cluster.
-
#name ⇒ String
readonly
The name of the cluster.
-
#os_release_label ⇒ String?
readonly
The Amazon Linux release specified in a cluster launch RunJobFlow request.
- #placement_group_configs ⇒ AWSCDK::IResolvable, ... readonly
-
#release_label ⇒ String?
readonly
The Amazon EMR release label, which determines the version of open-source application packages installed on the cluster.
-
#scale_down_behavior ⇒ String?
readonly
The way that individual Amazon EC2 instances terminate when an automatic scale-in activity occurs or an instance group is resized.
-
#security_configuration ⇒ String?
readonly
The name of the security configuration applied to the cluster.
-
#service_role ⇒ String
readonly
The IAM role that Amazon EMR assumes in order to access AWS resources on your behalf.
-
#step_concurrency_level ⇒ Numeric?
readonly
Specifies the number of steps that can be executed concurrently.
-
#steps ⇒ AWSCDK::IResolvable, ...
readonly
A list of steps to run.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
A list of tags associated with a cluster.
-
#visible_to_all_users ⇒ Boolean, ...
readonly
Indicates whether the cluster is visible to all IAM users of the AWS account associated with the cluster.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(instances:, job_flow_role:, name:, service_role:, additional_info: nil, applications: nil, auto_scaling_role: nil, auto_termination_policy: nil, bootstrap_actions: nil, configurations: nil, custom_ami_id: nil, ebs_root_volume_iops: nil, ebs_root_volume_size: nil, ebs_root_volume_throughput: nil, kerberos_attributes: nil, log_encryption_kms_key_id: nil, log_uri: nil, managed_scaling_policy: nil, os_release_label: nil, placement_group_configs: nil, release_label: nil, scale_down_behavior: nil, security_configuration: nil, step_concurrency_level: nil, steps: nil, tags: nil, visible_to_all_users: nil) ⇒ CfnClusterProps
constructor
A new instance of CfnClusterProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(instances:, job_flow_role:, name:, service_role:, additional_info: nil, applications: nil, auto_scaling_role: nil, auto_termination_policy: nil, bootstrap_actions: nil, configurations: nil, custom_ami_id: nil, ebs_root_volume_iops: nil, ebs_root_volume_size: nil, ebs_root_volume_throughput: nil, kerberos_attributes: nil, log_encryption_kms_key_id: nil, log_uri: nil, managed_scaling_policy: nil, os_release_label: nil, placement_group_configs: nil, release_label: nil, scale_down_behavior: nil, security_configuration: nil, step_concurrency_level: nil, steps: nil, tags: nil, visible_to_all_users: nil) ⇒ CfnClusterProps
Returns a new instance of CfnClusterProps.
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
# File 'emr/cfn_cluster_props.rb', line 36 def initialize(instances:, job_flow_role:, name:, service_role:, additional_info: nil, applications: nil, auto_scaling_role: nil, auto_termination_policy: nil, bootstrap_actions: nil, configurations: nil, custom_ami_id: nil, ebs_root_volume_iops: nil, ebs_root_volume_size: nil, ebs_root_volume_throughput: nil, kerberos_attributes: nil, log_encryption_kms_key_id: nil, log_uri: nil, managed_scaling_policy: nil, os_release_label: nil, placement_group_configs: nil, release_label: nil, scale_down_behavior: nil, security_configuration: nil, step_concurrency_level: nil, steps: nil, tags: nil, visible_to_all_users: nil) @instances = instances.is_a?(Hash) ? ::AWSCDK::EMR::CfnCluster::JobFlowInstancesConfigProperty.new(**instances.transform_keys(&:to_sym)) : instances Jsii::Type.check_type(@instances, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXIuQ2ZuQ2x1c3Rlci5Kb2JGbG93SW5zdGFuY2VzQ29uZmlnUHJvcGVydHkifV19fQ==")), "instances") @job_flow_role = job_flow_role Jsii::Type.check_type(@job_flow_role, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "jobFlowRole") @name = name Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") @service_role = service_role Jsii::Type.check_type(@service_role, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "serviceRole") @additional_info = additional_info Jsii::Type.check_type(@additional_info, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "additionalInfo") unless @additional_info.nil? @applications = applications Jsii::Type.check_type(@applications, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZW1yLkNmbkNsdXN0ZXIuQXBwbGljYXRpb25Qcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "applications") unless @applications.nil? @auto_scaling_role = auto_scaling_role Jsii::Type.check_type(@auto_scaling_role, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "autoScalingRole") unless @auto_scaling_role.nil? @auto_termination_policy = auto_termination_policy.is_a?(Hash) ? ::AWSCDK::EMR::CfnCluster::AutoTerminationPolicyProperty.new(**auto_termination_policy.transform_keys(&:to_sym)) : auto_termination_policy Jsii::Type.check_type(@auto_termination_policy, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXIuQ2ZuQ2x1c3Rlci5BdXRvVGVybWluYXRpb25Qb2xpY3lQcm9wZXJ0eSJ9XX19")), "autoTerminationPolicy") unless @auto_termination_policy.nil? @bootstrap_actions = bootstrap_actions Jsii::Type.check_type(@bootstrap_actions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZW1yLkNmbkNsdXN0ZXIuQm9vdHN0cmFwQWN0aW9uQ29uZmlnUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "bootstrapActions") unless @bootstrap_actions.nil? @configurations = configurations Jsii::Type.check_type(@configurations, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZW1yLkNmbkNsdXN0ZXIuQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "configurations") unless @configurations.nil? @custom_ami_id = custom_ami_id Jsii::Type.check_type(@custom_ami_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "customAmiId") unless @custom_ami_id.nil? @ebs_root_volume_iops = ebs_root_volume_iops Jsii::Type.check_type(@ebs_root_volume_iops, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "ebsRootVolumeIops") unless @ebs_root_volume_iops.nil? @ebs_root_volume_size = ebs_root_volume_size Jsii::Type.check_type(@ebs_root_volume_size, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "ebsRootVolumeSize") unless @ebs_root_volume_size.nil? @ebs_root_volume_throughput = ebs_root_volume_throughput Jsii::Type.check_type(@ebs_root_volume_throughput, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "ebsRootVolumeThroughput") unless @ebs_root_volume_throughput.nil? @kerberos_attributes = kerberos_attributes.is_a?(Hash) ? ::AWSCDK::EMR::CfnCluster::KerberosAttributesProperty.new(**kerberos_attributes.transform_keys(&:to_sym)) : kerberos_attributes Jsii::Type.check_type(@kerberos_attributes, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXIuQ2ZuQ2x1c3Rlci5LZXJiZXJvc0F0dHJpYnV0ZXNQcm9wZXJ0eSJ9XX19")), "kerberosAttributes") unless @kerberos_attributes.nil? @log_encryption_kms_key_id = log_encryption_kms_key_id Jsii::Type.check_type(@log_encryption_kms_key_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "logEncryptionKmsKeyId") unless @log_encryption_kms_key_id.nil? @log_uri = log_uri Jsii::Type.check_type(@log_uri, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "logUri") unless @log_uri.nil? @managed_scaling_policy = managed_scaling_policy.is_a?(Hash) ? ::AWSCDK::EMR::CfnCluster::ManagedScalingPolicyProperty.new(**managed_scaling_policy.transform_keys(&:to_sym)) : managed_scaling_policy Jsii::Type.check_type(@managed_scaling_policy, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXIuQ2ZuQ2x1c3Rlci5NYW5hZ2VkU2NhbGluZ1BvbGljeVByb3BlcnR5In1dfX0=")), "managedScalingPolicy") unless @managed_scaling_policy.nil? @os_release_label = os_release_label Jsii::Type.check_type(@os_release_label, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "osReleaseLabel") unless @os_release_label.nil? @placement_group_configs = placement_group_configs Jsii::Type.check_type(@placement_group_configs, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZW1yLkNmbkNsdXN0ZXIuUGxhY2VtZW50R3JvdXBDb25maWdQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "placementGroupConfigs") unless @placement_group_configs.nil? @release_label = release_label Jsii::Type.check_type(@release_label, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "releaseLabel") unless @release_label.nil? @scale_down_behavior = scale_down_behavior Jsii::Type.check_type(@scale_down_behavior, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "scaleDownBehavior") unless @scale_down_behavior.nil? @security_configuration = security_configuration Jsii::Type.check_type(@security_configuration, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "securityConfiguration") unless @security_configuration.nil? @step_concurrency_level = step_concurrency_level Jsii::Type.check_type(@step_concurrency_level, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "stepConcurrencyLevel") unless @step_concurrency_level.nil? @steps = steps Jsii::Type.check_type(@steps, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZW1yLkNmbkNsdXN0ZXIuU3RlcENvbmZpZ1Byb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "steps") unless @steps.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? @visible_to_all_users = visible_to_all_users Jsii::Type.check_type(@visible_to_all_users, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "visibleToAllUsers") unless @visible_to_all_users.nil? end |
Instance Attribute Details
#additional_info ⇒ Object? (readonly)
A JSON string for selecting additional features.
121 122 123 |
# File 'emr/cfn_cluster_props.rb', line 121 def additional_info @additional_info end |
#applications ⇒ AWSCDK::IResolvable, ... (readonly)
The applications to install on this cluster, for example, Spark, Flink, Oozie, Zeppelin, and so on.
126 127 128 |
# File 'emr/cfn_cluster_props.rb', line 126 def applications @applications end |
#auto_scaling_role ⇒ String? (readonly)
An IAM role for automatic scaling policies.
The default role is EMR_AutoScaling_DefaultRole . The IAM role provides permissions that the automatic scaling feature requires to launch and terminate Amazon EC2 instances in an instance group.
133 134 135 |
# File 'emr/cfn_cluster_props.rb', line 133 def auto_scaling_role @auto_scaling_role end |
#auto_termination_policy ⇒ AWSCDK::IResolvable, ... (readonly)
An auto-termination policy for an Amazon EMR cluster.
An auto-termination policy defines the amount of idle time in seconds after which a cluster automatically terminates. For alternative cluster termination options, see Control cluster termination .
140 141 142 |
# File 'emr/cfn_cluster_props.rb', line 140 def auto_termination_policy @auto_termination_policy end |
#bootstrap_actions ⇒ AWSCDK::IResolvable, ... (readonly)
A list of bootstrap actions to run before Hadoop starts on the cluster nodes.
145 146 147 |
# File 'emr/cfn_cluster_props.rb', line 145 def bootstrap_actions @bootstrap_actions end |
#configurations ⇒ AWSCDK::IResolvable, ... (readonly)
Applies only to Amazon EMR releases 4.x and later. The list of configurations that are supplied to the Amazon EMR cluster.
150 151 152 |
# File 'emr/cfn_cluster_props.rb', line 150 def configurations @configurations end |
#custom_ami_id ⇒ String? (readonly)
Available only in Amazon EMR releases 5.7.0 and later. The ID of a custom Amazon EBS-backed Linux AMI if the cluster uses a custom AMI.
155 156 157 |
# File 'emr/cfn_cluster_props.rb', line 155 def custom_ami_id @custom_ami_id end |
#ebs_root_volume_iops ⇒ Numeric? (readonly)
The IOPS, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance.
Available in Amazon EMR releases 6.15.0 and later.
162 163 164 |
# File 'emr/cfn_cluster_props.rb', line 162 def ebs_root_volume_iops @ebs_root_volume_iops end |
#ebs_root_volume_size ⇒ Numeric? (readonly)
The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance.
Available in Amazon EMR releases 4.x and later.
169 170 171 |
# File 'emr/cfn_cluster_props.rb', line 169 def ebs_root_volume_size @ebs_root_volume_size end |
#ebs_root_volume_throughput ⇒ Numeric? (readonly)
The throughput, in MiB/s, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance.
Available in Amazon EMR releases 6.15.0 and later.
176 177 178 |
# File 'emr/cfn_cluster_props.rb', line 176 def ebs_root_volume_throughput @ebs_root_volume_throughput end |
#instances ⇒ AWSCDK::IResolvable, AWSCDK::EMR::CfnCluster::JobFlowInstancesConfigProperty (readonly)
A specification of the number and type of Amazon EC2 instances.
97 98 99 |
# File 'emr/cfn_cluster_props.rb', line 97 def instances @instances end |
#job_flow_role ⇒ String (readonly)
Also called instance profile and Amazon EC2 role.
An IAM role for an Amazon EMR cluster. The Amazon EC2 instances of the cluster assume this role. The default role is EMR_EC2_DefaultRole . In order to use the default role, you must have already created it using the AWS CLI or console.
104 105 106 |
# File 'emr/cfn_cluster_props.rb', line 104 def job_flow_role @job_flow_role end |
#kerberos_attributes ⇒ AWSCDK::IResolvable, ... (readonly)
Attributes for Kerberos configuration when Kerberos authentication is enabled using a security configuration.
For more information see Use Kerberos Authentication in the Amazon EMR Management Guide .
183 184 185 |
# File 'emr/cfn_cluster_props.rb', line 183 def kerberos_attributes @kerberos_attributes end |
#log_encryption_kms_key_id ⇒ String? (readonly)
The AWS KMS key used for encrypting log files.
This attribute is only available with Amazon EMR 5.30.0 and later, excluding Amazon EMR 6.0.0.
190 191 192 |
# File 'emr/cfn_cluster_props.rb', line 190 def log_encryption_kms_key_id @log_encryption_kms_key_id end |
#log_uri ⇒ String? (readonly)
The path to the Amazon S3 location where logs for this cluster are stored.
195 196 197 |
# File 'emr/cfn_cluster_props.rb', line 195 def log_uri @log_uri end |
#managed_scaling_policy ⇒ AWSCDK::IResolvable, ... (readonly)
Creates or updates a managed scaling policy for an Amazon EMR cluster.
The managed scaling policy defines the limits for resources, such as Amazon EC2 instances that can be added or terminated from a cluster. The policy only applies to the core and task nodes. The master node cannot be scaled after initial configuration.
202 203 204 |
# File 'emr/cfn_cluster_props.rb', line 202 def managed_scaling_policy @managed_scaling_policy end |
#name ⇒ String (readonly)
The name of the cluster.
This parameter can't contain the characters <, >, $, |, or ` (backtick).
111 112 113 |
# File 'emr/cfn_cluster_props.rb', line 111 def name @name end |
#os_release_label ⇒ String? (readonly)
The Amazon Linux release specified in a cluster launch RunJobFlow request.
If no Amazon Linux release was specified, the default Amazon Linux release is shown in the response.
209 210 211 |
# File 'emr/cfn_cluster_props.rb', line 209 def os_release_label @os_release_label end |
#placement_group_configs ⇒ AWSCDK::IResolvable, ... (readonly)
212 213 214 |
# File 'emr/cfn_cluster_props.rb', line 212 def placement_group_configs @placement_group_configs end |
#release_label ⇒ String? (readonly)
The Amazon EMR release label, which determines the version of open-source application packages installed on the cluster.
Release labels are in the form emr-x.x.x , where x.x.x is an Amazon EMR release version such as emr-5.14.0 . For more information about Amazon EMR release versions and included application versions and features, see . The release label applies only to Amazon EMR releases version 4.0 and later. Earlier versions use AmiVersion .
219 220 221 |
# File 'emr/cfn_cluster_props.rb', line 219 def release_label @release_label end |
#scale_down_behavior ⇒ String? (readonly)
The way that individual Amazon EC2 instances terminate when an automatic scale-in activity occurs or an instance group is resized.
TERMINATE_AT_INSTANCE_HOUR indicates that Amazon EMR terminates nodes at the instance-hour boundary, regardless of when the request to terminate the instance was submitted. This option is only available with Amazon EMR 5.1.0 and later and is the default for clusters created using that version. TERMINATE_AT_TASK_COMPLETION indicates that Amazon EMR adds nodes to a deny list and drains tasks from nodes before terminating the Amazon EC2 instances, regardless of the instance-hour boundary. With either behavior, Amazon EMR removes the least active nodes first and blocks instance termination if it could lead to HDFS corruption. TERMINATE_AT_TASK_COMPLETION is available only in Amazon EMR releases 4.1.0 and later, and is the default for versions of Amazon EMR earlier than 5.1.0.
226 227 228 |
# File 'emr/cfn_cluster_props.rb', line 226 def scale_down_behavior @scale_down_behavior end |
#security_configuration ⇒ String? (readonly)
The name of the security configuration applied to the cluster.
231 232 233 |
# File 'emr/cfn_cluster_props.rb', line 231 def security_configuration @security_configuration end |
#service_role ⇒ String (readonly)
The IAM role that Amazon EMR assumes in order to access AWS resources on your behalf.
116 117 118 |
# File 'emr/cfn_cluster_props.rb', line 116 def service_role @service_role end |
#step_concurrency_level ⇒ Numeric? (readonly)
Specifies the number of steps that can be executed concurrently.
The default value is 1 . The maximum value is 256 .
238 239 240 |
# File 'emr/cfn_cluster_props.rb', line 238 def step_concurrency_level @step_concurrency_level end |
#steps ⇒ AWSCDK::IResolvable, ... (readonly)
A list of steps to run.
243 244 245 |
# File 'emr/cfn_cluster_props.rb', line 243 def steps @steps end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
A list of tags associated with a cluster.
248 249 250 |
# File 'emr/cfn_cluster_props.rb', line 248 def @tags end |
#visible_to_all_users ⇒ Boolean, ... (readonly)
Indicates whether the cluster is visible to all IAM users of the AWS account associated with the cluster.
If this value is set to true , all IAM users of that AWS account can view and manage the cluster if they have the proper policy permissions set. If this value is false , only the IAM user that created the cluster can view and manage it. This value can be changed using the SetVisibleToAllUsers action.
When you create clusters directly through the EMR console or API, this value is set to
trueby default. However, forAWS::EMR::Clusterresources in CloudFormation, the default isfalse.
257 258 259 |
# File 'emr/cfn_cluster_props.rb', line 257 def visible_to_all_users @visible_to_all_users end |
Class Method Details
.jsii_properties ⇒ Object
259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 |
# File 'emr/cfn_cluster_props.rb', line 259 def self.jsii_properties { :instances => "instances", :job_flow_role => "jobFlowRole", :name => "name", :service_role => "serviceRole", :additional_info => "additionalInfo", :applications => "applications", :auto_scaling_role => "autoScalingRole", :auto_termination_policy => "autoTerminationPolicy", :bootstrap_actions => "bootstrapActions", :configurations => "configurations", :custom_ami_id => "customAmiId", :ebs_root_volume_iops => "ebsRootVolumeIops", :ebs_root_volume_size => "ebsRootVolumeSize", :ebs_root_volume_throughput => "ebsRootVolumeThroughput", :kerberos_attributes => "kerberosAttributes", :log_encryption_kms_key_id => "logEncryptionKmsKeyId", :log_uri => "logUri", :managed_scaling_policy => "managedScalingPolicy", :os_release_label => "osReleaseLabel", :placement_group_configs => "placementGroupConfigs", :release_label => "releaseLabel", :scale_down_behavior => "scaleDownBehavior", :security_configuration => "securityConfiguration", :step_concurrency_level => "stepConcurrencyLevel", :steps => "steps", :tags => "tags", :visible_to_all_users => "visibleToAllUsers", } end |
Instance Method Details
#to_jsii ⇒ Object
291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 |
# File 'emr/cfn_cluster_props.rb', line 291 def to_jsii result = {} result.merge!({ "instances" => @instances, "jobFlowRole" => @job_flow_role, "name" => @name, "serviceRole" => @service_role, "additionalInfo" => @additional_info, "applications" => @applications, "autoScalingRole" => @auto_scaling_role, "autoTerminationPolicy" => @auto_termination_policy, "bootstrapActions" => @bootstrap_actions, "configurations" => @configurations, "customAmiId" => @custom_ami_id, "ebsRootVolumeIops" => @ebs_root_volume_iops, "ebsRootVolumeSize" => @ebs_root_volume_size, "ebsRootVolumeThroughput" => @ebs_root_volume_throughput, "kerberosAttributes" => @kerberos_attributes, "logEncryptionKmsKeyId" => @log_encryption_kms_key_id, "logUri" => @log_uri, "managedScalingPolicy" => @managed_scaling_policy, "osReleaseLabel" => @os_release_label, "placementGroupConfigs" => @placement_group_configs, "releaseLabel" => @release_label, "scaleDownBehavior" => @scale_down_behavior, "securityConfiguration" => @security_configuration, "stepConcurrencyLevel" => @step_concurrency_level, "steps" => @steps, "tags" => @tags, "visibleToAllUsers" => @visible_to_all_users, }) result.compact end |