Amazon EMR Cluster JobFlowInstancesConfig
Use theJobFlowInstancesConfig, which is a property of the AWS::EMR::Cluster resource, to
configure the EC2 instances (nodes) that will run jobs in an Amazon EMR cluster.
Note
When creating your cluster using EmrManagedMasterSecurityGroup and
EmrManagedSlaveSecurityGroup, to avoid a delete_failed exception,
use security groups created outside of the AWS CloudFormation stack or retain
them
on deletion.
Syntax
JSON
{ "AdditionalMasterSecurityGroups" : [String, ...], "AdditionalSlaveSecurityGroups" : [String, ...], "CoreInstanceFleet" :InstanceFleetConfig, "CoreInstanceGroup" :InstanceGroupConfig, "Ec2KeyName" :String, "Ec2SubnetId" :String, "EmrManagedMasterSecurityGroup" :String, "EmrManagedSlaveSecurityGroup" :String, "HadoopVersion" :String, "KeepJobFlowAliveWhenNoSteps" :Boolean, "MasterInstanceFleet" :InstanceFleetConfig, "MasterInstanceGroup" :InstanceGroupConfig, "Placement" :Placement, "ServiceAccessSecurityGroup" :String, "TerminationProtected" :Boolean}
YAML
AdditionalMasterSecurityGroups: -StringAdditionalSlaveSecurityGroups: -StringCoreInstanceFleet:InstanceFleetConfig, CoreInstanceGroup:InstanceGroupConfigEc2KeyName:StringEc2SubnetId:StringEmrManagedMasterSecurityGroup:StringEmrManagedSlaveSecurityGroup:StringHadoopVersion:StringKeepJobFlowAliveWhenNoSteps:BooleanMasterInstanceFleet:InstanceFleetConfigMasterInstanceGroup:InstanceGroupConfigPlacement:PlacementServiceAccessSecurityGroup:StringTerminationProtected:Boolean
Properties
AdditionalMasterSecurityGroups-
A list of additional EC2 security group IDs to assign to the master instance (master node) in your Amazon EMR cluster. Use this property to supplement the rules specified by the Amazon EMR managed master security group.
Required: No
Type: List of String values
Update requires: Replacement
AdditionalSlaveSecurityGroups-
A list of additional EC2 security group IDs to assign to the slave instances (slave nodes) in your Amazon EMR cluster. Use this property to supplement the rules specified by the Amazon EMR managed slave security group.
Required: No
Type: List of String values
Update requires: Replacement
CoreInstanceFleet-
The instance fleet settings for the core instances in your Amazon EMR cluster. Use this property with the
MasterInstanceFleetproperty.Note
The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions.
Required: No
Type: Amazon EMR Cluster InstanceFleetConfig
Update requires: Replacement
CoreInstanceGroup-
The settings for the core instances in your Amazon EMR cluster. Use this property with the
MasterInstanceGroupproperty.Required: No
Type: Amazon EMR Cluster InstanceGroupConfig
Update requires: Replacement
Ec2KeyName-
The name of an Amazon Elastic Compute Cloud (Amazon EC2) key pair, which you can use to access the instances in your Amazon EMR cluster.
Required: No
Type: String
Update requires: Replacement
Ec2SubnetId-
The ID of the subnet where you want to launch your instances.
Required: No
Type: String
Update requires: Replacement
EmrManagedMasterSecurityGroup-
The ID of an EC2 security group (managed by Amazon EMR) that is assigned to the master instance (master node) in your Amazon EMR cluster.
Required: No
Type: String
Update requires: Replacement
EmrManagedSlaveSecurityGroup-
The ID of an EC2 security group (managed by Amazon EMR) that is assigned to the slave instances (slave nodes) in your Amazon EMR cluster.
Required: No
Type: String
Update requires: Replacement
HadoopVersion-
The Hadoop version for the job flow. For valid values, see the HadoopVersion parameter in the Amazon EMR API Reference.
Required: No
Type: String
Update requires: Replacement
KeepJobFlowAliveWhenNoSteps-
Specifies whether the cluster should remain available after completing all steps.
Required: No
Type: Boolean
Update requires: Replacement
MasterInstanceFleet-
The instance fleet settings for the master instance (master node).
Note
The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions.
You must use either
MasterInstanceFleetorMasterInstanceGroupin your configuration. If you useMasterInstanceFleet, then you may also specify theCoreInstanceFleetproperty.Required: No
Type: Amazon EMR Cluster InstanceFleetConfig
Update requires: Replacement
MasterInstanceGroup-
The settings for the master instance (master node).
You must use either
MasterInstanceGrouporMasterInstanceFleetin your configuration. If you useMasterInstanceGroup, then you may also specify theCoreInstanceGroupproperty.Required: No
Type: Amazon EMR Cluster InstanceGroupConfig
Update requires: Replacement
Placement-
The Availability Zone (AZ) in which the job flow runs.
Required: No
Type: Amazon EMR Cluster PlacementType
Update requires: Replacement
ServiceAccessSecurityGroup-
The ID of the EC2 security group (managed by Amazon EMR) that services use to access clusters in private subnets.
Required: No
Type: String
Update requires: Replacement
TerminationProtected-
Indicates whether to prevent the EC2 instances from being terminated by an API call or user intervention. If you want to delete a stack with protected instances, update this value to
falsebefore you delete the stack. By default, AWS CloudFormation sets this property tofalse.Required: No
Type: Boolean
Update requires: No interruption
