Show / Hide Table of Contents

Class CfnCluster

A CloudFormation AWS::EMR::Cluster.

Inheritance
System.Object
Construct
CfnElement
CfnRefElement
CfnResource
CfnCluster
Implements
IConstruct
Constructs.IConstruct
IDependable
IInspectable
Inherited Members
CfnResource.IsCfnResource(IConstruct)
CfnResource.AddDeletionOverride(String)
CfnResource.AddDependsOn(CfnResource)
CfnResource.AddMetadata(String, Object)
CfnResource.AddOverride(String, Object)
CfnResource.AddPropertyDeletionOverride(String)
CfnResource.AddPropertyOverride(String, Object)
CfnResource.ApplyRemovalPolicy(Nullable<RemovalPolicy>, IRemovalPolicyOptions)
CfnResource.GetAtt(String)
CfnResource.GetMetadata(String)
CfnResource.ShouldSynthesize()
CfnResource.ToString()
CfnResource.ValidateProperties(Object)
CfnResource.CfnOptions
CfnResource.CfnResourceType
CfnResource.UpdatedProperites
CfnRefElement.Ref
CfnElement.IsCfnElement(Object)
CfnElement.OverrideLogicalId(String)
CfnElement.CreationStack
CfnElement.LogicalId
CfnElement.Stack
Construct.IsConstruct(Object)
Construct.OnPrepare()
Construct.OnSynthesize(ISynthesisSession)
Construct.OnValidate()
Construct.Prepare()
Construct.Synthesize(ISynthesisSession)
Construct.Validate()
Construct.Node
Namespace: Amazon.CDK.AWS.EMR
Assembly: Amazon.CDK.AWS.EMR.dll
Syntax (csharp)
public class CfnCluster : CfnResource, IConstruct, IConstruct, IDependable, IInspectable
Syntax (vb)
Public Class CfnCluster
    Inherits CfnResource
    Implements IConstruct, IConstruct, IDependable, IInspectable
Remarks

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.

CloudformationResource: AWS::EMR::Cluster

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html

ExampleMetadata: fixture=_generated

Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.EMR;

var additionalInfo;
ConfigurationProperty configurationProperty_;

CfnCluster cfnCluster = new CfnCluster(this, "MyCfnCluster", new CfnClusterProps {
    Instances = new JobFlowInstancesConfigProperty {
        AdditionalMasterSecurityGroups = new [] { "additionalMasterSecurityGroups" },
        AdditionalSlaveSecurityGroups = new [] { "additionalSlaveSecurityGroups" },
        CoreInstanceFleet = new InstanceFleetConfigProperty {
            InstanceTypeConfigs = new [] { new InstanceTypeConfigProperty {
                InstanceType = "instanceType",

                // the properties below are optional
                BidPrice = "bidPrice",
                BidPriceAsPercentageOfOnDemandPrice = 123,
                Configurations = new [] { new ConfigurationProperty {
                    Classification = "classification",
                    ConfigurationProperties = new Dictionary<string, string> {
                        { "configurationPropertiesKey", "configurationProperties" }
                    },
                    Configurations = new [] { configurationProperty_ }
                } },
                CustomAmiId = "customAmiId",
                EbsConfiguration = new EbsConfigurationProperty {
                    EbsBlockDeviceConfigs = new [] { new EbsBlockDeviceConfigProperty {
                        VolumeSpecification = new VolumeSpecificationProperty {
                            SizeInGb = 123,
                            VolumeType = "volumeType",

                            // the properties below are optional
                            Iops = 123
                        },

                        // the properties below are optional
                        VolumesPerInstance = 123
                    } },
                    EbsOptimized = false
                },
                WeightedCapacity = 123
            } },
            LaunchSpecifications = new InstanceFleetProvisioningSpecificationsProperty {
                OnDemandSpecification = new OnDemandProvisioningSpecificationProperty {
                    AllocationStrategy = "allocationStrategy"
                },
                SpotSpecification = new SpotProvisioningSpecificationProperty {
                    TimeoutAction = "timeoutAction",
                    TimeoutDurationMinutes = 123,

                    // the properties below are optional
                    AllocationStrategy = "allocationStrategy",
                    BlockDurationMinutes = 123
                }
            },
            Name = "name",
            TargetOnDemandCapacity = 123,
            TargetSpotCapacity = 123
        },
        CoreInstanceGroup = new InstanceGroupConfigProperty {
            InstanceCount = 123,
            InstanceType = "instanceType",

            // the properties below are optional
            AutoScalingPolicy = new AutoScalingPolicyProperty {
                Constraints = new ScalingConstraintsProperty {
                    MaxCapacity = 123,
                    MinCapacity = 123
                },
                Rules = new [] { new ScalingRuleProperty {
                    Action = new ScalingActionProperty {
                        SimpleScalingPolicyConfiguration = new SimpleScalingPolicyConfigurationProperty {
                            ScalingAdjustment = 123,

                            // the properties below are optional
                            AdjustmentType = "adjustmentType",
                            CoolDown = 123
                        },

                        // the properties below are optional
                        Market = "market"
                    },
                    Name = "name",
                    Trigger = new ScalingTriggerProperty {
                        CloudWatchAlarmDefinition = new CloudWatchAlarmDefinitionProperty {
                            ComparisonOperator = "comparisonOperator",
                            MetricName = "metricName",
                            Period = 123,
                            Threshold = 123,

                            // the properties below are optional
                            Dimensions = new [] { new MetricDimensionProperty {
                                Key = "key",
                                Value = "value"
                            } },
                            EvaluationPeriods = 123,
                            Namespace = "namespace",
                            Statistic = "statistic",
                            Unit = "unit"
                        }
                    },

                    // the properties below are optional
                    Description = "description"
                } }
            },
            BidPrice = "bidPrice",
            Configurations = new [] { new ConfigurationProperty {
                Classification = "classification",
                ConfigurationProperties = new Dictionary<string, string> {
                    { "configurationPropertiesKey", "configurationProperties" }
                },
                Configurations = new [] { configurationProperty_ }
            } },
            CustomAmiId = "customAmiId",
            EbsConfiguration = new EbsConfigurationProperty {
                EbsBlockDeviceConfigs = new [] { new EbsBlockDeviceConfigProperty {
                    VolumeSpecification = new VolumeSpecificationProperty {
                        SizeInGb = 123,
                        VolumeType = "volumeType",

                        // the properties below are optional
                        Iops = 123
                    },

                    // the properties below are optional
                    VolumesPerInstance = 123
                } },
                EbsOptimized = false
            },
            Market = "market",
            Name = "name"
        },
        Ec2KeyName = "ec2KeyName",
        Ec2SubnetId = "ec2SubnetId",
        Ec2SubnetIds = new [] { "ec2SubnetIds" },
        EmrManagedMasterSecurityGroup = "emrManagedMasterSecurityGroup",
        EmrManagedSlaveSecurityGroup = "emrManagedSlaveSecurityGroup",
        HadoopVersion = "hadoopVersion",
        KeepJobFlowAliveWhenNoSteps = false,
        MasterInstanceFleet = new InstanceFleetConfigProperty {
            InstanceTypeConfigs = new [] { new InstanceTypeConfigProperty {
                InstanceType = "instanceType",

                // the properties below are optional
                BidPrice = "bidPrice",
                BidPriceAsPercentageOfOnDemandPrice = 123,
                Configurations = new [] { new ConfigurationProperty {
                    Classification = "classification",
                    ConfigurationProperties = new Dictionary<string, string> {
                        { "configurationPropertiesKey", "configurationProperties" }
                    },
                    Configurations = new [] { configurationProperty_ }
                } },
                CustomAmiId = "customAmiId",
                EbsConfiguration = new EbsConfigurationProperty {
                    EbsBlockDeviceConfigs = new [] { new EbsBlockDeviceConfigProperty {
                        VolumeSpecification = new VolumeSpecificationProperty {
                            SizeInGb = 123,
                            VolumeType = "volumeType",

                            // the properties below are optional
                            Iops = 123
                        },

                        // the properties below are optional
                        VolumesPerInstance = 123
                    } },
                    EbsOptimized = false
                },
                WeightedCapacity = 123
            } },
            LaunchSpecifications = new InstanceFleetProvisioningSpecificationsProperty {
                OnDemandSpecification = new OnDemandProvisioningSpecificationProperty {
                    AllocationStrategy = "allocationStrategy"
                },
                SpotSpecification = new SpotProvisioningSpecificationProperty {
                    TimeoutAction = "timeoutAction",
                    TimeoutDurationMinutes = 123,

                    // the properties below are optional
                    AllocationStrategy = "allocationStrategy",
                    BlockDurationMinutes = 123
                }
            },
            Name = "name",
            TargetOnDemandCapacity = 123,
            TargetSpotCapacity = 123
        },
        MasterInstanceGroup = new InstanceGroupConfigProperty {
            InstanceCount = 123,
            InstanceType = "instanceType",

            // the properties below are optional
            AutoScalingPolicy = new AutoScalingPolicyProperty {
                Constraints = new ScalingConstraintsProperty {
                    MaxCapacity = 123,
                    MinCapacity = 123
                },
                Rules = new [] { new ScalingRuleProperty {
                    Action = new ScalingActionProperty {
                        SimpleScalingPolicyConfiguration = new SimpleScalingPolicyConfigurationProperty {
                            ScalingAdjustment = 123,

                            // the properties below are optional
                            AdjustmentType = "adjustmentType",
                            CoolDown = 123
                        },

                        // the properties below are optional
                        Market = "market"
                    },
                    Name = "name",
                    Trigger = new ScalingTriggerProperty {
                        CloudWatchAlarmDefinition = new CloudWatchAlarmDefinitionProperty {
                            ComparisonOperator = "comparisonOperator",
                            MetricName = "metricName",
                            Period = 123,
                            Threshold = 123,

                            // the properties below are optional
                            Dimensions = new [] { new MetricDimensionProperty {
                                Key = "key",
                                Value = "value"
                            } },
                            EvaluationPeriods = 123,
                            Namespace = "namespace",
                            Statistic = "statistic",
                            Unit = "unit"
                        }
                    },

                    // the properties below are optional
                    Description = "description"
                } }
            },
            BidPrice = "bidPrice",
            Configurations = new [] { new ConfigurationProperty {
                Classification = "classification",
                ConfigurationProperties = new Dictionary<string, string> {
                    { "configurationPropertiesKey", "configurationProperties" }
                },
                Configurations = new [] { configurationProperty_ }
            } },
            CustomAmiId = "customAmiId",
            EbsConfiguration = new EbsConfigurationProperty {
                EbsBlockDeviceConfigs = new [] { new EbsBlockDeviceConfigProperty {
                    VolumeSpecification = new VolumeSpecificationProperty {
                        SizeInGb = 123,
                        VolumeType = "volumeType",

                        // the properties below are optional
                        Iops = 123
                    },

                    // the properties below are optional
                    VolumesPerInstance = 123
                } },
                EbsOptimized = false
            },
            Market = "market",
            Name = "name"
        },
        Placement = new PlacementTypeProperty {
            AvailabilityZone = "availabilityZone"
        },
        ServiceAccessSecurityGroup = "serviceAccessSecurityGroup",
        TerminationProtected = false
    },
    JobFlowRole = "jobFlowRole",
    Name = "name",
    ServiceRole = "serviceRole",

    // the properties below are optional
    AdditionalInfo = additionalInfo,
    Applications = new [] { new ApplicationProperty {
        AdditionalInfo = new Dictionary<string, string> {
            { "additionalInfoKey", "additionalInfo" }
        },
        Args = new [] { "args" },
        Name = "name",
        Version = "version"
    } },
    AutoScalingRole = "autoScalingRole",
    BootstrapActions = new [] { new BootstrapActionConfigProperty {
        Name = "name",
        ScriptBootstrapAction = new ScriptBootstrapActionConfigProperty {
            Path = "path",

            // the properties below are optional
            Args = new [] { "args" }
        }
    } },
    Configurations = new [] { new ConfigurationProperty {
        Classification = "classification",
        ConfigurationProperties = new Dictionary<string, string> {
            { "configurationPropertiesKey", "configurationProperties" }
        },
        Configurations = new [] { configurationProperty_ }
    } },
    CustomAmiId = "customAmiId",
    EbsRootVolumeSize = 123,
    KerberosAttributes = new KerberosAttributesProperty {
        KdcAdminPassword = "kdcAdminPassword",
        Realm = "realm",

        // the properties below are optional
        AdDomainJoinPassword = "adDomainJoinPassword",
        AdDomainJoinUser = "adDomainJoinUser",
        CrossRealmTrustPrincipalPassword = "crossRealmTrustPrincipalPassword"
    },
    LogEncryptionKmsKeyId = "logEncryptionKmsKeyId",
    LogUri = "logUri",
    ManagedScalingPolicy = new ManagedScalingPolicyProperty {
        ComputeLimits = new ComputeLimitsProperty {
            MaximumCapacityUnits = 123,
            MinimumCapacityUnits = 123,
            UnitType = "unitType",

            // the properties below are optional
            MaximumCoreCapacityUnits = 123,
            MaximumOnDemandCapacityUnits = 123
        }
    },
    ReleaseLabel = "releaseLabel",
    ScaleDownBehavior = "scaleDownBehavior",
    SecurityConfiguration = "securityConfiguration",
    StepConcurrencyLevel = 123,
    Steps = new [] { new StepConfigProperty {
        HadoopJarStep = new HadoopJarStepConfigProperty {
            Jar = "jar",

            // the properties below are optional
            Args = new [] { "args" },
            MainClass = "mainClass",
            StepProperties = new [] { new KeyValueProperty {
                Key = "key",
                Value = "value"
            } }
        },
        Name = "name",

        // the properties below are optional
        ActionOnFailure = "actionOnFailure"
    } },
    Tags = new [] { new CfnTag {
        Key = "key",
        Value = "value"
    } },
    VisibleToAllUsers = false
});

Synopsis

Constructors

CfnCluster(Construct, String, ICfnClusterProps)

Create a new AWS::EMR::Cluster.

CfnCluster(ByRefValue)

Used by jsii to construct an instance of this class from a Javascript-owned object reference

CfnCluster(DeputyBase.DeputyProps)

Used by jsii to construct an instance of this class from DeputyProps

Properties

AdditionalInfo

A JSON string for selecting additional features.

Applications

The applications to install on this cluster, for example, Spark, Flink, Oozie, Zeppelin, and so on.

AttrMasterPublicDns

The public DNS name of the master node (instance), such as ec2-12-123-123-123.us-west-2.compute.amazonaws.com .

AutoScalingRole

An IAM role for automatic scaling policies.

BootstrapActions

A list of bootstrap actions to run before Hadoop starts on the cluster nodes.

CFN_RESOURCE_TYPE_NAME

The CloudFormation resource type name for this resource class.

CfnProperties
Configurations

Applies only to Amazon EMR releases 4.x and later. The list of Configurations supplied to the EMR cluster.

CustomAmiId

Available only in Amazon EMR version 5.7.0 and later. The ID of a custom Amazon EBS-backed Linux AMI if the cluster uses a custom AMI.

EbsRootVolumeSize

The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that is used for each EC2 instance.

Instances

A specification of the number and type of Amazon EC2 instances.

JobFlowRole

Also called instance profile and EC2 role.

KerberosAttributes

Attributes for Kerberos configuration when Kerberos authentication is enabled using a security configuration.

LogEncryptionKmsKeyId

The AWS KMS key used for encrypting log files.

LogUri

The path to the Amazon S3 location where logs for this cluster are stored.

ManagedScalingPolicy

Creates or updates a managed scaling policy for an Amazon EMR cluster.

Name

The name of the cluster.

ReleaseLabel

The Amazon EMR release label, which determines the version of open-source application packages installed on the cluster.

ScaleDownBehavior

The way that individual Amazon EC2 instances terminate when an automatic scale-in activity occurs or an instance group is resized.

SecurityConfiguration

The name of the security configuration applied to the cluster.

ServiceRole

The IAM role that Amazon EMR assumes in order to access AWS resources on your behalf.

StepConcurrencyLevel

Specifies the number of steps that can be executed concurrently.

Steps

A list of steps to run.

Tags

A list of tags associated with a cluster.

VisibleToAllUsers

Indicates whether the cluster is visible to all IAM users of the AWS account associated with the cluster.

Methods

Inspect(TreeInspector)

Examines the CloudFormation resource and discloses attributes.

RenderProperties(IDictionary<String, Object>)

Constructors

CfnCluster(Construct, String, ICfnClusterProps)

Create a new AWS::EMR::Cluster.

public CfnCluster(Construct scope, string id, ICfnClusterProps props)
Parameters
scope Construct
  • scope in which this resource is defined.
id System.String
  • scoped id of the resource.
props ICfnClusterProps
  • resource properties.

CfnCluster(ByRefValue)

Used by jsii to construct an instance of this class from a Javascript-owned object reference

protected CfnCluster(ByRefValue reference)
Parameters
reference Amazon.JSII.Runtime.Deputy.ByRefValue

The Javascript-owned object reference

CfnCluster(DeputyBase.DeputyProps)

Used by jsii to construct an instance of this class from DeputyProps

protected CfnCluster(DeputyBase.DeputyProps props)
Parameters
props Amazon.JSII.Runtime.Deputy.DeputyBase.DeputyProps

The deputy props

Properties

AdditionalInfo

A JSON string for selecting additional features.

public virtual object AdditionalInfo { get; set; }
Property Value

System.Object

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-additionalinfo

Applications

The applications to install on this cluster, for example, Spark, Flink, Oozie, Zeppelin, and so on.

public virtual object Applications { get; set; }
Property Value

System.Object

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-applications

AttrMasterPublicDns

The public DNS name of the master node (instance), such as ec2-12-123-123-123.us-west-2.compute.amazonaws.com .

public virtual string AttrMasterPublicDns { get; }
Property Value

System.String

Remarks

CloudformationAttribute: MasterPublicDNS

AutoScalingRole

An IAM role for automatic scaling policies.

public virtual string AutoScalingRole { get; set; }
Property Value

System.String

Remarks

The default role is EMR_AutoScaling_DefaultRole . The IAM role provides permissions that the automatic scaling feature requires to launch and terminate EC2 instances in an instance group.

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-autoscalingrole

BootstrapActions

A list of bootstrap actions to run before Hadoop starts on the cluster nodes.

public virtual object BootstrapActions { get; set; }
Property Value

System.Object

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-bootstrapactions

CFN_RESOURCE_TYPE_NAME

The CloudFormation resource type name for this resource class.

public static string CFN_RESOURCE_TYPE_NAME { get; }
Property Value

System.String

CfnProperties

protected override IDictionary<string, object> CfnProperties { get; }
Property Value

System.Collections.Generic.IDictionary<System.String, System.Object>

Overrides
CfnResource.CfnProperties

Configurations

Applies only to Amazon EMR releases 4.x and later. The list of Configurations supplied to the EMR cluster.

public virtual object Configurations { get; set; }
Property Value

System.Object

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-configurations

CustomAmiId

Available only in Amazon EMR version 5.7.0 and later. The ID of a custom Amazon EBS-backed Linux AMI if the cluster uses a custom AMI.

public virtual string CustomAmiId { get; set; }
Property Value

System.String

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-customamiid

EbsRootVolumeSize

The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that is used for each EC2 instance.

public virtual Nullable<double> EbsRootVolumeSize { get; set; }
Property Value

System.Nullable<System.Double>

Remarks

Available in Amazon EMR version 4.x and later.

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-ebsrootvolumesize

Instances

A specification of the number and type of Amazon EC2 instances.

public virtual object Instances { get; set; }
Property Value

System.Object

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-instances

JobFlowRole

Also called instance profile and EC2 role.

public virtual string JobFlowRole { get; set; }
Property Value

System.String

Remarks

An IAM role for an EMR cluster. The 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 CLI or console.

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-jobflowrole

KerberosAttributes

Attributes for Kerberos configuration when Kerberos authentication is enabled using a security configuration.

public virtual object KerberosAttributes { get; set; }
Property Value

System.Object

Remarks

For more information see Use Kerberos Authentication in the Amazon EMR Management Guide .

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-kerberosattributes

LogEncryptionKmsKeyId

The AWS KMS key used for encrypting log files.

public virtual string LogEncryptionKmsKeyId { get; set; }
Property Value

System.String

Remarks

This attribute is only available with EMR version 5.30.0 and later, excluding EMR 6.0.0.

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-logencryptionkmskeyid

LogUri

The path to the Amazon S3 location where logs for this cluster are stored.

public virtual string LogUri { get; set; }
Property Value

System.String

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-loguri

ManagedScalingPolicy

Creates or updates a managed scaling policy for an Amazon EMR cluster.

public virtual object ManagedScalingPolicy { get; set; }
Property Value

System.Object

Remarks

The managed scaling policy defines the limits for resources, such as 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.

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-managedscalingpolicy

Name

The name of the cluster.

public virtual string Name { get; set; }
Property Value

System.String

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-name

ReleaseLabel

The Amazon EMR release label, which determines the version of open-source application packages installed on the cluster.

public virtual string ReleaseLabel { get; set; }
Property Value

System.String

Remarks

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 .

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-releaselabel

ScaleDownBehavior

The way that individual Amazon EC2 instances terminate when an automatic scale-in activity occurs or an instance group is resized.

public virtual string ScaleDownBehavior { get; set; }
Property Value

System.String

Remarks

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 version 4.1.0 and later, and is the default for versions of Amazon EMR earlier than 5.1.0.

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-scaledownbehavior

SecurityConfiguration

The name of the security configuration applied to the cluster.

public virtual string SecurityConfiguration { get; set; }
Property Value

System.String

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-securityconfiguration

ServiceRole

The IAM role that Amazon EMR assumes in order to access AWS resources on your behalf.

public virtual string ServiceRole { get; set; }
Property Value

System.String

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-servicerole

StepConcurrencyLevel

Specifies the number of steps that can be executed concurrently.

public virtual Nullable<double> StepConcurrencyLevel { get; set; }
Property Value

System.Nullable<System.Double>

Remarks

The default value is 1 . The maximum value is 256 .

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-stepconcurrencylevel

Steps

A list of steps to run.

public virtual object Steps { get; set; }
Property Value

System.Object

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-steps

Tags

A list of tags associated with a cluster.

public virtual TagManager Tags { get; }
Property Value

TagManager

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-tags

VisibleToAllUsers

Indicates whether the cluster is visible to all IAM users of the AWS account associated with the cluster.

public virtual object VisibleToAllUsers { get; set; }
Property Value

System.Object

Remarks

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 true by default. However, for AWS::EMR::Cluster resources in CloudFormation, the default is false .

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html#cfn-elasticmapreduce-cluster-visibletoallusers

Methods

Inspect(TreeInspector)

Examines the CloudFormation resource and discloses attributes.

public virtual void Inspect(TreeInspector inspector)
Parameters
inspector TreeInspector
  • tree inspector to collect and process attributes.

RenderProperties(IDictionary<String, Object>)

protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
Parameters
props System.Collections.Generic.IDictionary<System.String, System.Object>
Returns

System.Collections.Generic.IDictionary<System.String, System.Object>

Overrides
CfnResource.RenderProperties(IDictionary<String, Object>)

Implements

IConstruct
Constructs.IConstruct
IDependable
IInspectable
Back to top Generated by DocFX