libZSservicesZSamazonka-emrZSamazonka-emr
Copyright(c) 2013-2021 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone

Amazonka.EMR.Types.JobFlowInstancesConfig

Description

 
Synopsis

Documentation

data JobFlowInstancesConfig Source #

A description of the Amazon EC2 instance on which the cluster (job flow) runs. A valid JobFlowInstancesConfig must contain either InstanceGroups or InstanceFleets. They cannot be used together. You may also have MasterInstanceType, SlaveInstanceType, and InstanceCount (all three must be present), but we don't recommend this configuration.

See: newJobFlowInstancesConfig smart constructor.

Constructors

JobFlowInstancesConfig' 

Fields

  • instanceFleets :: Maybe [InstanceFleetConfig]

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

    Describes the EC2 instances and instance configurations for clusters that use the instance fleet configuration.

  • ec2KeyName :: Maybe Text

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

  • slaveInstanceType :: Maybe Text

    The EC2 instance type of the core and task nodes.

  • instanceCount :: Maybe Int

    The number of EC2 instances in the cluster.

  • emrManagedSlaveSecurityGroup :: Maybe Text

    The identifier of the Amazon EC2 security group for the core and task nodes. If you specify EmrManagedSlaveSecurityGroup, you must also specify EmrManagedMasterSecurityGroup.

  • additionalSlaveSecurityGroups :: Maybe [Text]

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

  • ec2SubnetIds :: Maybe [Text]

    Applies to clusters that use the instance fleet configuration. When multiple EC2 subnet IDs are specified, Amazon EMR evaluates them and launches instances in the optimal subnet.

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

  • hadoopVersion :: Maybe Text

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

  • additionalMasterSecurityGroups :: Maybe [Text]

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

  • emrManagedMasterSecurityGroup :: Maybe Text

    The identifier of the Amazon EC2 security group for the master node. If you specify EmrManagedMasterSecurityGroup, you must also specify EmrManagedSlaveSecurityGroup.

  • ec2SubnetId :: Maybe Text

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

  • masterInstanceType :: Maybe Text

    The EC2 instance type of the master node.

  • instanceGroups :: Maybe [InstanceGroupConfig]

    Configuration for the instance groups in a cluster.

  • keepJobFlowAliveWhenNoSteps :: Maybe Bool

    Specifies whether the cluster should remain available after completing all steps. Defaults to true. For more information about configuring cluster termination, see Control Cluster Termination in the EMR Management Guide.

  • serviceAccessSecurityGroup :: Maybe Text

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

  • terminationProtected :: Maybe Bool

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

  • placement :: Maybe PlacementType

    The Availability Zone in which the cluster runs.

Instances

Instances details
Eq JobFlowInstancesConfig Source # 
Instance details

Defined in Amazonka.EMR.Types.JobFlowInstancesConfig

Read JobFlowInstancesConfig Source # 
Instance details

Defined in Amazonka.EMR.Types.JobFlowInstancesConfig

Show JobFlowInstancesConfig Source # 
Instance details

Defined in Amazonka.EMR.Types.JobFlowInstancesConfig

Generic JobFlowInstancesConfig Source # 
Instance details

Defined in Amazonka.EMR.Types.JobFlowInstancesConfig

Associated Types

type Rep JobFlowInstancesConfig :: Type -> Type #

NFData JobFlowInstancesConfig Source # 
Instance details

Defined in Amazonka.EMR.Types.JobFlowInstancesConfig

Methods

rnf :: JobFlowInstancesConfig -> () #

Hashable JobFlowInstancesConfig Source # 
Instance details

Defined in Amazonka.EMR.Types.JobFlowInstancesConfig

ToJSON JobFlowInstancesConfig Source # 
Instance details

Defined in Amazonka.EMR.Types.JobFlowInstancesConfig

type Rep JobFlowInstancesConfig Source # 
Instance details

Defined in Amazonka.EMR.Types.JobFlowInstancesConfig

type Rep JobFlowInstancesConfig = D1 ('MetaData "JobFlowInstancesConfig" "Amazonka.EMR.Types.JobFlowInstancesConfig" "libZSservicesZSamazonka-emrZSamazonka-emr" 'False) (C1 ('MetaCons "JobFlowInstancesConfig'" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "instanceFleets") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [InstanceFleetConfig])) :*: S1 ('MetaSel ('Just "ec2KeyName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "slaveInstanceType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "instanceCount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int)))) :*: ((S1 ('MetaSel ('Just "emrManagedSlaveSecurityGroup") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "additionalSlaveSecurityGroups") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text]))) :*: (S1 ('MetaSel ('Just "ec2SubnetIds") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text])) :*: S1 ('MetaSel ('Just "hadoopVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))))) :*: (((S1 ('MetaSel ('Just "additionalMasterSecurityGroups") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text])) :*: S1 ('MetaSel ('Just "emrManagedMasterSecurityGroup") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "ec2SubnetId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "masterInstanceType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)))) :*: ((S1 ('MetaSel ('Just "instanceGroups") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [InstanceGroupConfig])) :*: S1 ('MetaSel ('Just "keepJobFlowAliveWhenNoSteps") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool))) :*: (S1 ('MetaSel ('Just "serviceAccessSecurityGroup") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "terminationProtected") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "placement") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe PlacementType))))))))

newJobFlowInstancesConfig :: JobFlowInstancesConfig Source #

Create a value of JobFlowInstancesConfig with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:instanceFleets:JobFlowInstancesConfig', jobFlowInstancesConfig_instanceFleets - The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions.

Describes the EC2 instances and instance configurations for clusters that use the instance fleet configuration.

$sel:ec2KeyName:JobFlowInstancesConfig', jobFlowInstancesConfig_ec2KeyName - The name of the EC2 key pair that can be used to connect to the master node using SSH as the user called "hadoop."

$sel:slaveInstanceType:JobFlowInstancesConfig', jobFlowInstancesConfig_slaveInstanceType - The EC2 instance type of the core and task nodes.

$sel:instanceCount:JobFlowInstancesConfig', jobFlowInstancesConfig_instanceCount - The number of EC2 instances in the cluster.

$sel:emrManagedSlaveSecurityGroup:JobFlowInstancesConfig', jobFlowInstancesConfig_emrManagedSlaveSecurityGroup - The identifier of the Amazon EC2 security group for the core and task nodes. If you specify EmrManagedSlaveSecurityGroup, you must also specify EmrManagedMasterSecurityGroup.

$sel:additionalSlaveSecurityGroups:JobFlowInstancesConfig', jobFlowInstancesConfig_additionalSlaveSecurityGroups - A list of additional Amazon EC2 security group IDs for the core and task nodes.

$sel:ec2SubnetIds:JobFlowInstancesConfig', jobFlowInstancesConfig_ec2SubnetIds - Applies to clusters that use the instance fleet configuration. When multiple EC2 subnet IDs are specified, Amazon EMR evaluates them and launches instances in the optimal subnet.

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

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

$sel:additionalMasterSecurityGroups:JobFlowInstancesConfig', jobFlowInstancesConfig_additionalMasterSecurityGroups - A list of additional Amazon EC2 security group IDs for the master node.

$sel:emrManagedMasterSecurityGroup:JobFlowInstancesConfig', jobFlowInstancesConfig_emrManagedMasterSecurityGroup - The identifier of the Amazon EC2 security group for the master node. If you specify EmrManagedMasterSecurityGroup, you must also specify EmrManagedSlaveSecurityGroup.

$sel:ec2SubnetId:JobFlowInstancesConfig', jobFlowInstancesConfig_ec2SubnetId - Applies to clusters that use the uniform instance group configuration. To launch the cluster in Amazon Virtual Private Cloud (Amazon VPC), set this parameter to the identifier of the Amazon VPC subnet where you want the cluster to launch. If you do not specify this value and your account supports EC2-Classic, the cluster launches in EC2-Classic.

$sel:masterInstanceType:JobFlowInstancesConfig', jobFlowInstancesConfig_masterInstanceType - The EC2 instance type of the master node.

$sel:instanceGroups:JobFlowInstancesConfig', jobFlowInstancesConfig_instanceGroups - Configuration for the instance groups in a cluster.

$sel:keepJobFlowAliveWhenNoSteps:JobFlowInstancesConfig', jobFlowInstancesConfig_keepJobFlowAliveWhenNoSteps - Specifies whether the cluster should remain available after completing all steps. Defaults to true. For more information about configuring cluster termination, see Control Cluster Termination in the EMR Management Guide.

$sel:serviceAccessSecurityGroup:JobFlowInstancesConfig', jobFlowInstancesConfig_serviceAccessSecurityGroup - The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private subnets.

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

$sel:placement:JobFlowInstancesConfig', jobFlowInstancesConfig_placement - The Availability Zone in which the cluster runs.

jobFlowInstancesConfig_instanceFleets :: Lens' JobFlowInstancesConfig (Maybe [InstanceFleetConfig]) Source #

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

Describes the EC2 instances and instance configurations for clusters that use the instance fleet configuration.

jobFlowInstancesConfig_ec2KeyName :: Lens' JobFlowInstancesConfig (Maybe Text) Source #

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

jobFlowInstancesConfig_slaveInstanceType :: Lens' JobFlowInstancesConfig (Maybe Text) Source #

The EC2 instance type of the core and task nodes.

jobFlowInstancesConfig_instanceCount :: Lens' JobFlowInstancesConfig (Maybe Int) Source #

The number of EC2 instances in the cluster.

jobFlowInstancesConfig_emrManagedSlaveSecurityGroup :: Lens' JobFlowInstancesConfig (Maybe Text) Source #

The identifier of the Amazon EC2 security group for the core and task nodes. If you specify EmrManagedSlaveSecurityGroup, you must also specify EmrManagedMasterSecurityGroup.

jobFlowInstancesConfig_additionalSlaveSecurityGroups :: Lens' JobFlowInstancesConfig (Maybe [Text]) Source #

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

jobFlowInstancesConfig_ec2SubnetIds :: Lens' JobFlowInstancesConfig (Maybe [Text]) Source #

Applies to clusters that use the instance fleet configuration. When multiple EC2 subnet IDs are specified, Amazon EMR evaluates them and launches instances in the optimal subnet.

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

jobFlowInstancesConfig_hadoopVersion :: Lens' JobFlowInstancesConfig (Maybe Text) Source #

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

jobFlowInstancesConfig_additionalMasterSecurityGroups :: Lens' JobFlowInstancesConfig (Maybe [Text]) Source #

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

jobFlowInstancesConfig_emrManagedMasterSecurityGroup :: Lens' JobFlowInstancesConfig (Maybe Text) Source #

The identifier of the Amazon EC2 security group for the master node. If you specify EmrManagedMasterSecurityGroup, you must also specify EmrManagedSlaveSecurityGroup.

jobFlowInstancesConfig_ec2SubnetId :: Lens' JobFlowInstancesConfig (Maybe Text) Source #

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

jobFlowInstancesConfig_instanceGroups :: Lens' JobFlowInstancesConfig (Maybe [InstanceGroupConfig]) Source #

Configuration for the instance groups in a cluster.

jobFlowInstancesConfig_keepJobFlowAliveWhenNoSteps :: Lens' JobFlowInstancesConfig (Maybe Bool) Source #

Specifies whether the cluster should remain available after completing all steps. Defaults to true. For more information about configuring cluster termination, see Control Cluster Termination in the EMR Management Guide.

jobFlowInstancesConfig_serviceAccessSecurityGroup :: Lens' JobFlowInstancesConfig (Maybe Text) Source #

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

jobFlowInstancesConfig_terminationProtected :: Lens' JobFlowInstancesConfig (Maybe Bool) Source #

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

jobFlowInstancesConfig_placement :: Lens' JobFlowInstancesConfig (Maybe PlacementType) Source #

The Availability Zone in which the cluster runs.