Class CfnCluster
- All Implemented Interfaces:
IConstruct
,IDependable
,IInspectable
,software.amazon.jsii.JsiiSerializable
,software.constructs.IConstruct
AWS::EMR::Cluster
.
The AWS::EMR::Cluster
resource specifies an Amazon EMR cluster. This cluster is a collection of Amazon EC2 instances that run open source big data frameworks and applications to process and analyze vast amounts of data. For more information, see the Amazon EMR Management Guide .
Amazon EMR now supports launching task instance groups and task instance fleets as part of the AWS::EMR::Cluster
resource. This can be done by using the JobFlowInstancesConfig
property type's TaskInstanceGroups
and TaskInstanceFleets
subproperties. Using these subproperties reduces delays in provisioning task nodes compared to specifying task nodes with the AWS::EMR::InstanceGroupConfig
and AWS::EMR::InstanceFleetConfig
resources. Please refer to the examples at the bottom of this page to learn how to use these subproperties.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import software.amazon.awscdk.services.emr.*; Object additionalInfo; ConfigurationProperty configurationProperty_; CfnCluster cfnCluster = CfnCluster.Builder.create(this, "MyCfnCluster") .instances(JobFlowInstancesConfigProperty.builder() .additionalMasterSecurityGroups(List.of("additionalMasterSecurityGroups")) .additionalSlaveSecurityGroups(List.of("additionalSlaveSecurityGroups")) .coreInstanceFleet(InstanceFleetConfigProperty.builder() .instanceTypeConfigs(List.of(InstanceTypeConfigProperty.builder() .instanceType("instanceType") // the properties below are optional .bidPrice("bidPrice") .bidPriceAsPercentageOfOnDemandPrice(123) .configurations(List.of(ConfigurationProperty.builder() .classification("classification") .configurationProperties(Map.of( "configurationPropertiesKey", "configurationProperties")) .configurations(List.of(configurationProperty_)) .build())) .customAmiId("customAmiId") .ebsConfiguration(EbsConfigurationProperty.builder() .ebsBlockDeviceConfigs(List.of(EbsBlockDeviceConfigProperty.builder() .volumeSpecification(VolumeSpecificationProperty.builder() .sizeInGb(123) .volumeType("volumeType") // the properties below are optional .iops(123) .build()) // the properties below are optional .volumesPerInstance(123) .build())) .ebsOptimized(false) .build()) .weightedCapacity(123) .build())) .launchSpecifications(InstanceFleetProvisioningSpecificationsProperty.builder() .onDemandSpecification(OnDemandProvisioningSpecificationProperty.builder() .allocationStrategy("allocationStrategy") .build()) .spotSpecification(SpotProvisioningSpecificationProperty.builder() .timeoutAction("timeoutAction") .timeoutDurationMinutes(123) // the properties below are optional .allocationStrategy("allocationStrategy") .blockDurationMinutes(123) .build()) .build()) .name("name") .targetOnDemandCapacity(123) .targetSpotCapacity(123) .build()) .coreInstanceGroup(InstanceGroupConfigProperty.builder() .instanceCount(123) .instanceType("instanceType") // the properties below are optional .autoScalingPolicy(AutoScalingPolicyProperty.builder() .constraints(ScalingConstraintsProperty.builder() .maxCapacity(123) .minCapacity(123) .build()) .rules(List.of(ScalingRuleProperty.builder() .action(ScalingActionProperty.builder() .simpleScalingPolicyConfiguration(SimpleScalingPolicyConfigurationProperty.builder() .scalingAdjustment(123) // the properties below are optional .adjustmentType("adjustmentType") .coolDown(123) .build()) // the properties below are optional .market("market") .build()) .name("name") .trigger(ScalingTriggerProperty.builder() .cloudWatchAlarmDefinition(CloudWatchAlarmDefinitionProperty.builder() .comparisonOperator("comparisonOperator") .metricName("metricName") .period(123) .threshold(123) // the properties below are optional .dimensions(List.of(MetricDimensionProperty.builder() .key("key") .value("value") .build())) .evaluationPeriods(123) .namespace("namespace") .statistic("statistic") .unit("unit") .build()) .build()) // the properties below are optional .description("description") .build())) .build()) .bidPrice("bidPrice") .configurations(List.of(ConfigurationProperty.builder() .classification("classification") .configurationProperties(Map.of( "configurationPropertiesKey", "configurationProperties")) .configurations(List.of(configurationProperty_)) .build())) .customAmiId("customAmiId") .ebsConfiguration(EbsConfigurationProperty.builder() .ebsBlockDeviceConfigs(List.of(EbsBlockDeviceConfigProperty.builder() .volumeSpecification(VolumeSpecificationProperty.builder() .sizeInGb(123) .volumeType("volumeType") // the properties below are optional .iops(123) .build()) // the properties below are optional .volumesPerInstance(123) .build())) .ebsOptimized(false) .build()) .market("market") .name("name") .build()) .ec2KeyName("ec2KeyName") .ec2SubnetId("ec2SubnetId") .ec2SubnetIds(List.of("ec2SubnetIds")) .emrManagedMasterSecurityGroup("emrManagedMasterSecurityGroup") .emrManagedSlaveSecurityGroup("emrManagedSlaveSecurityGroup") .hadoopVersion("hadoopVersion") .keepJobFlowAliveWhenNoSteps(false) .masterInstanceFleet(InstanceFleetConfigProperty.builder() .instanceTypeConfigs(List.of(InstanceTypeConfigProperty.builder() .instanceType("instanceType") // the properties below are optional .bidPrice("bidPrice") .bidPriceAsPercentageOfOnDemandPrice(123) .configurations(List.of(ConfigurationProperty.builder() .classification("classification") .configurationProperties(Map.of( "configurationPropertiesKey", "configurationProperties")) .configurations(List.of(configurationProperty_)) .build())) .customAmiId("customAmiId") .ebsConfiguration(EbsConfigurationProperty.builder() .ebsBlockDeviceConfigs(List.of(EbsBlockDeviceConfigProperty.builder() .volumeSpecification(VolumeSpecificationProperty.builder() .sizeInGb(123) .volumeType("volumeType") // the properties below are optional .iops(123) .build()) // the properties below are optional .volumesPerInstance(123) .build())) .ebsOptimized(false) .build()) .weightedCapacity(123) .build())) .launchSpecifications(InstanceFleetProvisioningSpecificationsProperty.builder() .onDemandSpecification(OnDemandProvisioningSpecificationProperty.builder() .allocationStrategy("allocationStrategy") .build()) .spotSpecification(SpotProvisioningSpecificationProperty.builder() .timeoutAction("timeoutAction") .timeoutDurationMinutes(123) // the properties below are optional .allocationStrategy("allocationStrategy") .blockDurationMinutes(123) .build()) .build()) .name("name") .targetOnDemandCapacity(123) .targetSpotCapacity(123) .build()) .masterInstanceGroup(InstanceGroupConfigProperty.builder() .instanceCount(123) .instanceType("instanceType") // the properties below are optional .autoScalingPolicy(AutoScalingPolicyProperty.builder() .constraints(ScalingConstraintsProperty.builder() .maxCapacity(123) .minCapacity(123) .build()) .rules(List.of(ScalingRuleProperty.builder() .action(ScalingActionProperty.builder() .simpleScalingPolicyConfiguration(SimpleScalingPolicyConfigurationProperty.builder() .scalingAdjustment(123) // the properties below are optional .adjustmentType("adjustmentType") .coolDown(123) .build()) // the properties below are optional .market("market") .build()) .name("name") .trigger(ScalingTriggerProperty.builder() .cloudWatchAlarmDefinition(CloudWatchAlarmDefinitionProperty.builder() .comparisonOperator("comparisonOperator") .metricName("metricName") .period(123) .threshold(123) // the properties below are optional .dimensions(List.of(MetricDimensionProperty.builder() .key("key") .value("value") .build())) .evaluationPeriods(123) .namespace("namespace") .statistic("statistic") .unit("unit") .build()) .build()) // the properties below are optional .description("description") .build())) .build()) .bidPrice("bidPrice") .configurations(List.of(ConfigurationProperty.builder() .classification("classification") .configurationProperties(Map.of( "configurationPropertiesKey", "configurationProperties")) .configurations(List.of(configurationProperty_)) .build())) .customAmiId("customAmiId") .ebsConfiguration(EbsConfigurationProperty.builder() .ebsBlockDeviceConfigs(List.of(EbsBlockDeviceConfigProperty.builder() .volumeSpecification(VolumeSpecificationProperty.builder() .sizeInGb(123) .volumeType("volumeType") // the properties below are optional .iops(123) .build()) // the properties below are optional .volumesPerInstance(123) .build())) .ebsOptimized(false) .build()) .market("market") .name("name") .build()) .placement(PlacementTypeProperty.builder() .availabilityZone("availabilityZone") .build()) .serviceAccessSecurityGroup("serviceAccessSecurityGroup") .taskInstanceFleets(List.of(InstanceFleetConfigProperty.builder() .instanceTypeConfigs(List.of(InstanceTypeConfigProperty.builder() .instanceType("instanceType") // the properties below are optional .bidPrice("bidPrice") .bidPriceAsPercentageOfOnDemandPrice(123) .configurations(List.of(ConfigurationProperty.builder() .classification("classification") .configurationProperties(Map.of( "configurationPropertiesKey", "configurationProperties")) .configurations(List.of(configurationProperty_)) .build())) .customAmiId("customAmiId") .ebsConfiguration(EbsConfigurationProperty.builder() .ebsBlockDeviceConfigs(List.of(EbsBlockDeviceConfigProperty.builder() .volumeSpecification(VolumeSpecificationProperty.builder() .sizeInGb(123) .volumeType("volumeType") // the properties below are optional .iops(123) .build()) // the properties below are optional .volumesPerInstance(123) .build())) .ebsOptimized(false) .build()) .weightedCapacity(123) .build())) .launchSpecifications(InstanceFleetProvisioningSpecificationsProperty.builder() .onDemandSpecification(OnDemandProvisioningSpecificationProperty.builder() .allocationStrategy("allocationStrategy") .build()) .spotSpecification(SpotProvisioningSpecificationProperty.builder() .timeoutAction("timeoutAction") .timeoutDurationMinutes(123) // the properties below are optional .allocationStrategy("allocationStrategy") .blockDurationMinutes(123) .build()) .build()) .name("name") .targetOnDemandCapacity(123) .targetSpotCapacity(123) .build())) .taskInstanceGroups(List.of(InstanceGroupConfigProperty.builder() .instanceCount(123) .instanceType("instanceType") // the properties below are optional .autoScalingPolicy(AutoScalingPolicyProperty.builder() .constraints(ScalingConstraintsProperty.builder() .maxCapacity(123) .minCapacity(123) .build()) .rules(List.of(ScalingRuleProperty.builder() .action(ScalingActionProperty.builder() .simpleScalingPolicyConfiguration(SimpleScalingPolicyConfigurationProperty.builder() .scalingAdjustment(123) // the properties below are optional .adjustmentType("adjustmentType") .coolDown(123) .build()) // the properties below are optional .market("market") .build()) .name("name") .trigger(ScalingTriggerProperty.builder() .cloudWatchAlarmDefinition(CloudWatchAlarmDefinitionProperty.builder() .comparisonOperator("comparisonOperator") .metricName("metricName") .period(123) .threshold(123) // the properties below are optional .dimensions(List.of(MetricDimensionProperty.builder() .key("key") .value("value") .build())) .evaluationPeriods(123) .namespace("namespace") .statistic("statistic") .unit("unit") .build()) .build()) // the properties below are optional .description("description") .build())) .build()) .bidPrice("bidPrice") .configurations(List.of(ConfigurationProperty.builder() .classification("classification") .configurationProperties(Map.of( "configurationPropertiesKey", "configurationProperties")) .configurations(List.of(configurationProperty_)) .build())) .customAmiId("customAmiId") .ebsConfiguration(EbsConfigurationProperty.builder() .ebsBlockDeviceConfigs(List.of(EbsBlockDeviceConfigProperty.builder() .volumeSpecification(VolumeSpecificationProperty.builder() .sizeInGb(123) .volumeType("volumeType") // the properties below are optional .iops(123) .build()) // the properties below are optional .volumesPerInstance(123) .build())) .ebsOptimized(false) .build()) .market("market") .name("name") .build())) .terminationProtected(false) .build()) .jobFlowRole("jobFlowRole") .name("name") .serviceRole("serviceRole") // the properties below are optional .additionalInfo(additionalInfo) .applications(List.of(ApplicationProperty.builder() .additionalInfo(Map.of( "additionalInfoKey", "additionalInfo")) .args(List.of("args")) .name("name") .version("version") .build())) .autoScalingRole("autoScalingRole") .autoTerminationPolicy(AutoTerminationPolicyProperty.builder() .idleTimeout(123) .build()) .bootstrapActions(List.of(BootstrapActionConfigProperty.builder() .name("name") .scriptBootstrapAction(ScriptBootstrapActionConfigProperty.builder() .path("path") // the properties below are optional .args(List.of("args")) .build()) .build())) .configurations(List.of(ConfigurationProperty.builder() .classification("classification") .configurationProperties(Map.of( "configurationPropertiesKey", "configurationProperties")) .configurations(List.of(configurationProperty_)) .build())) .customAmiId("customAmiId") .ebsRootVolumeSize(123) .kerberosAttributes(KerberosAttributesProperty.builder() .kdcAdminPassword("kdcAdminPassword") .realm("realm") // the properties below are optional .adDomainJoinPassword("adDomainJoinPassword") .adDomainJoinUser("adDomainJoinUser") .crossRealmTrustPrincipalPassword("crossRealmTrustPrincipalPassword") .build()) .logEncryptionKmsKeyId("logEncryptionKmsKeyId") .logUri("logUri") .managedScalingPolicy(ManagedScalingPolicyProperty.builder() .computeLimits(ComputeLimitsProperty.builder() .maximumCapacityUnits(123) .minimumCapacityUnits(123) .unitType("unitType") // the properties below are optional .maximumCoreCapacityUnits(123) .maximumOnDemandCapacityUnits(123) .build()) .build()) .osReleaseLabel("osReleaseLabel") .releaseLabel("releaseLabel") .scaleDownBehavior("scaleDownBehavior") .securityConfiguration("securityConfiguration") .stepConcurrencyLevel(123) .steps(List.of(StepConfigProperty.builder() .hadoopJarStep(HadoopJarStepConfigProperty.builder() .jar("jar") // the properties below are optional .args(List.of("args")) .mainClass("mainClass") .stepProperties(List.of(KeyValueProperty.builder() .key("key") .value("value") .build())) .build()) .name("name") // the properties below are optional .actionOnFailure("actionOnFailure") .build())) .tags(List.of(CfnTag.builder() .key("key") .value("value") .build())) .visibleToAllUsers(false) .build();
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic interface
Application
is a property ofAWS::EMR::Cluster
.static interface
AutoScalingPolicy
is a subproperty ofInstanceGroupConfig
.static interface
Example:static interface
BootstrapActionConfig
is a property ofAWS::EMR::Cluster
that can be used to run bootstrap actions on EMR clusters.static final class
A fluent builder forCfnCluster
.static interface
CloudWatchAlarmDefinition
is a subproperty of theScalingTrigger
property, which determines when to trigger an automatic scaling activity.static interface
The Amazon EC2 unit limits for a managed scaling policy.static interface
static interface
EbsBlockDeviceConfig
is a subproperty of theEbsConfiguration
property type.static interface
EbsConfiguration
is a subproperty ofInstanceFleetConfig
orInstanceGroupConfig
.static interface
TheHadoopJarStepConfig
property type specifies a job flow step consisting of a JAR file whose main function will be executed.static interface
UseInstanceFleetConfig
to define instance fleets for an EMR cluster.static interface
InstanceFleetProvisioningSpecification
is a subproperty ofInstanceFleetConfig
.static interface
UseInstanceGroupConfig
to define instance groups for an EMR cluster.static interface
static interface
JobFlowInstancesConfig
is a property of theAWS::EMR::Cluster
resource.static interface
KerberosAttributes
is a property of theAWS::EMR::Cluster
resource.static interface
KeyValue
is a subproperty of theHadoopJarStepConfig
property type.static interface
Managed scaling policy for an Amazon EMR cluster.static interface
MetricDimension
is a subproperty of theCloudWatchAlarmDefinition
property type.static interface
The launch specification for On-Demand Instances in the instance fleet, which determines the allocation strategy.static interface
PlacementType
is a property of theAWS::EMR::Cluster
resource.static interface
ScalingAction
is a subproperty of theScalingRule
property type.static interface
ScalingConstraints
is a subproperty of theAutoScalingPolicy
property type.static interface
ScalingRule
is a subproperty of theAutoScalingPolicy
property type.static interface
ScalingTrigger
is a subproperty of theScalingRule
property type.static interface
ScriptBootstrapActionConfig
is a subproperty of theBootstrapActionConfig
property type.static interface
SimpleScalingPolicyConfiguration
is a subproperty of theScalingAction
property type.static interface
SpotProvisioningSpecification
is a subproperty of theInstanceFleetProvisioningSpecifications
property type.static interface
StepConfig
is a property of theAWS::EMR::Cluster
resource.static interface
VolumeSpecification
is a subproperty of theEbsBlockDeviceConfig
property type.Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode
Nested classes/interfaces inherited from interface software.amazon.awscdk.core.IConstruct
IConstruct.Jsii$Default
Nested classes/interfaces inherited from interface software.constructs.IConstruct
software.constructs.IConstruct.Jsii$Default
Nested classes/interfaces inherited from interface software.amazon.awscdk.core.IInspectable
IInspectable.Jsii$Default, IInspectable.Jsii$Proxy
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
The CloudFormation resource type name for this resource class. -
Constructor Summary
ModifierConstructorDescriptionCfnCluster
(Construct scope, String id, CfnClusterProps props) Create a newAWS::EMR::Cluster
.protected
CfnCluster
(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protected
CfnCluster
(software.amazon.jsii.JsiiObjectRef objRef) -
Method Summary
Modifier and TypeMethodDescriptionA JSON string for selecting additional features.The applications to install on this cluster, for example, Spark, Flink, Oozie, Zeppelin, and so on.The public DNS name of the master node (instance), such asec2-12-123-123-123.us-west-2.compute.amazonaws.com
.An IAM role for automatic scaling policies.AWS::EMR::Cluster.AutoTerminationPolicy
.A list of bootstrap actions to run before Hadoop starts on the cluster nodes.Applies only to Amazon EMR releases 4.x and later.Available only in Amazon EMR releases 5.7.0 and later.The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance.A specification of the number and type of Amazon EC2 instances.Also called instance profile and Amazon EC2 role.Attributes for Kerberos configuration when Kerberos authentication is enabled using a security configuration.The AWS KMS key used for encrypting log files.The path to the Amazon S3 location where logs for this cluster are stored.Creates or updates a managed scaling policy for an Amazon EMR cluster.getName()
The name of the cluster.AWS::EMR::Cluster.OSReleaseLabel
.The Amazon EMR release label, which determines the version of open-source application packages installed on the cluster.The way that individual Amazon EC2 instances terminate when an automatic scale-in activity occurs or an instance group is resized.The name of the security configuration applied to the cluster.The IAM role that Amazon EMR assumes in order to access AWS resources on your behalf.Specifies the number of steps that can be executed concurrently.getSteps()
A list of steps to run.getTags()
A list of tags associated with a cluster.Indicates whether the cluster is visible to all IAM users of the AWS account associated with the cluster.void
inspect
(TreeInspector inspector) Examines the CloudFormation resource and discloses attributes.renderProperties
(Map<String, Object> props) void
setAdditionalInfo
(Object value) A JSON string for selecting additional features.void
setApplications
(List<Object> value) The applications to install on this cluster, for example, Spark, Flink, Oozie, Zeppelin, and so on.void
setApplications
(IResolvable value) The applications to install on this cluster, for example, Spark, Flink, Oozie, Zeppelin, and so on.void
setAutoScalingRole
(String value) An IAM role for automatic scaling policies.void
AWS::EMR::Cluster.AutoTerminationPolicy
.void
AWS::EMR::Cluster.AutoTerminationPolicy
.void
setBootstrapActions
(List<Object> value) A list of bootstrap actions to run before Hadoop starts on the cluster nodes.void
setBootstrapActions
(IResolvable value) A list of bootstrap actions to run before Hadoop starts on the cluster nodes.void
setConfigurations
(List<Object> value) Applies only to Amazon EMR releases 4.x and later.void
setConfigurations
(IResolvable value) Applies only to Amazon EMR releases 4.x and later.void
setCustomAmiId
(String value) Available only in Amazon EMR releases 5.7.0 and later.void
setEbsRootVolumeSize
(Number value) The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance.void
setInstances
(IResolvable value) A specification of the number and type of Amazon EC2 instances.void
A specification of the number and type of Amazon EC2 instances.void
setJobFlowRole
(String value) Also called instance profile and Amazon EC2 role.void
setKerberosAttributes
(IResolvable value) Attributes for Kerberos configuration when Kerberos authentication is enabled using a security configuration.void
Attributes for Kerberos configuration when Kerberos authentication is enabled using a security configuration.void
setLogEncryptionKmsKeyId
(String value) The AWS KMS key used for encrypting log files.void
The path to the Amazon S3 location where logs for this cluster are stored.void
Creates or updates a managed scaling policy for an Amazon EMR cluster.void
Creates or updates a managed scaling policy for an Amazon EMR cluster.void
The name of the cluster.void
setOsReleaseLabel
(String value) AWS::EMR::Cluster.OSReleaseLabel
.void
setReleaseLabel
(String value) The Amazon EMR release label, which determines the version of open-source application packages installed on the cluster.void
setScaleDownBehavior
(String value) The way that individual Amazon EC2 instances terminate when an automatic scale-in activity occurs or an instance group is resized.void
setSecurityConfiguration
(String value) The name of the security configuration applied to the cluster.void
setServiceRole
(String value) The IAM role that Amazon EMR assumes in order to access AWS resources on your behalf.void
setStepConcurrencyLevel
(Number value) Specifies the number of steps that can be executed concurrently.void
A list of steps to run.void
setSteps
(IResolvable value) A list of steps to run.void
setVisibleToAllUsers
(Boolean value) Indicates whether the cluster is visible to all IAM users of the AWS account associated with the cluster.void
setVisibleToAllUsers
(IResolvable value) Indicates whether the cluster is visible to all IAM users of the AWS account associated with the cluster.Methods inherited from class software.amazon.awscdk.core.CfnResource
addDeletionOverride, addDependsOn, addMetadata, addOverride, addPropertyDeletionOverride, addPropertyOverride, applyRemovalPolicy, applyRemovalPolicy, applyRemovalPolicy, getAtt, getCfnOptions, getCfnResourceType, getMetadata, getUpdatedProperites, isCfnResource, shouldSynthesize, toString, validateProperties
Methods inherited from class software.amazon.awscdk.core.CfnRefElement
getRef
Methods inherited from class software.amazon.awscdk.core.CfnElement
getCreationStack, getLogicalId, getStack, isCfnElement, overrideLogicalId
Methods inherited from class software.amazon.awscdk.core.Construct
getNode, isConstruct, onPrepare, onSynthesize, onValidate, prepare, synthesize, validate
Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Field Details
-
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
-
-
Constructor Details
-
CfnCluster
protected CfnCluster(software.amazon.jsii.JsiiObjectRef objRef) -
CfnCluster
protected CfnCluster(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
CfnCluster
@Stability(Stable) public CfnCluster(@NotNull Construct scope, @NotNull String id, @NotNull CfnClusterProps props) Create a newAWS::EMR::Cluster
.- Parameters:
scope
-- scope in which this resource is defined.
id
-- scoped id of the resource.
props
-- resource properties.
-
-
Method Details
-
inspect
Examines the CloudFormation resource and discloses attributes.- Specified by:
inspect
in interfaceIInspectable
- Parameters:
inspector
-- tree inspector to collect and process attributes.
-
renderProperties
@Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String, Object> props) - Overrides:
renderProperties
in classCfnResource
- Parameters:
props
- This parameter is required.
-
getAttrMasterPublicDns
The public DNS name of the master node (instance), such asec2-12-123-123-123.us-west-2.compute.amazonaws.com
. -
getCfnProperties
- Overrides:
getCfnProperties
in classCfnResource
-
getTags
A list of tags associated with a cluster. -
getAdditionalInfo
A JSON string for selecting additional features. -
setAdditionalInfo
A JSON string for selecting additional features. -
getInstances
A specification of the number and type of Amazon EC2 instances. -
setInstances
@Stability(Stable) public void setInstances(@NotNull CfnCluster.JobFlowInstancesConfigProperty value) A specification of the number and type of Amazon EC2 instances. -
setInstances
A specification of the number and type of Amazon EC2 instances. -
getJobFlowRole
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. -
setJobFlowRole
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. -
getName
The name of the cluster. -
setName
The name of the cluster. -
getServiceRole
The IAM role that Amazon EMR assumes in order to access AWS resources on your behalf. -
setServiceRole
The IAM role that Amazon EMR assumes in order to access AWS resources on your behalf. -
getApplications
The applications to install on this cluster, for example, Spark, Flink, Oozie, Zeppelin, and so on. -
setApplications
The applications to install on this cluster, for example, Spark, Flink, Oozie, Zeppelin, and so on. -
setApplications
The applications to install on this cluster, for example, Spark, Flink, Oozie, Zeppelin, and so on. -
getAutoScalingRole
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. -
setAutoScalingRole
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. -
getAutoTerminationPolicy
AWS::EMR::Cluster.AutoTerminationPolicy
. -
setAutoTerminationPolicy
AWS::EMR::Cluster.AutoTerminationPolicy
. -
setAutoTerminationPolicy
@Stability(Stable) public void setAutoTerminationPolicy(@Nullable CfnCluster.AutoTerminationPolicyProperty value) AWS::EMR::Cluster.AutoTerminationPolicy
. -
getBootstrapActions
A list of bootstrap actions to run before Hadoop starts on the cluster nodes. -
setBootstrapActions
A list of bootstrap actions to run before Hadoop starts on the cluster nodes. -
setBootstrapActions
A list of bootstrap actions to run before Hadoop starts on the cluster nodes. -
getConfigurations
Applies only to Amazon EMR releases 4.x and later. The list of configurations that are supplied to the Amazon EMR cluster. -
setConfigurations
Applies only to Amazon EMR releases 4.x and later. The list of configurations that are supplied to the Amazon EMR cluster. -
setConfigurations
Applies only to Amazon EMR releases 4.x and later. The list of configurations that are supplied to the Amazon EMR cluster. -
getCustomAmiId
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. -
setCustomAmiId
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. -
getEbsRootVolumeSize
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.
-
setEbsRootVolumeSize
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.
-
getKerberosAttributes
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 .
-
setKerberosAttributes
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 .
-
setKerberosAttributes
@Stability(Stable) public void setKerberosAttributes(@Nullable CfnCluster.KerberosAttributesProperty value) 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 .
-
getLogEncryptionKmsKeyId
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.
-
setLogEncryptionKmsKeyId
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.
-
getLogUri
The path to the Amazon S3 location where logs for this cluster are stored. -
setLogUri
The path to the Amazon S3 location where logs for this cluster are stored. -
getManagedScalingPolicy
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.
-
setManagedScalingPolicy
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.
-
setManagedScalingPolicy
@Stability(Stable) public void setManagedScalingPolicy(@Nullable CfnCluster.ManagedScalingPolicyProperty value) 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.
-
getOsReleaseLabel
AWS::EMR::Cluster.OSReleaseLabel
. -
setOsReleaseLabel
AWS::EMR::Cluster.OSReleaseLabel
. -
getReleaseLabel
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 asemr-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 useAmiVersion
. -
setReleaseLabel
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 asemr-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 useAmiVersion
. -
getScaleDownBehavior
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. -
setScaleDownBehavior
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. -
getSecurityConfiguration
The name of the security configuration applied to the cluster. -
setSecurityConfiguration
The name of the security configuration applied to the cluster. -
getStepConcurrencyLevel
Specifies the number of steps that can be executed concurrently.The default value is
1
. The maximum value is256
. -
setStepConcurrencyLevel
Specifies the number of steps that can be executed concurrently.The default value is
1
. The maximum value is256
. -
getSteps
A list of steps to run. -
setSteps
A list of steps to run. -
setSteps
A list of steps to run. -
getVisibleToAllUsers
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 isfalse
, 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
true
by default. However, forAWS::EMR::Cluster
resources in CloudFormation, the default isfalse
. -
setVisibleToAllUsers
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 isfalse
, 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
true
by default. However, forAWS::EMR::Cluster
resources in CloudFormation, the default isfalse
. -
setVisibleToAllUsers
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 isfalse
, 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
true
by default. However, forAWS::EMR::Cluster
resources in CloudFormation, the default isfalse
.
-