Copyright | (c) 2013-2023 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Synopsis
- data Cluster = Cluster' {
- applications :: Maybe [Application]
- autoScalingRole :: Maybe Text
- autoTerminate :: Maybe Bool
- clusterArn :: Maybe Text
- configurations :: Maybe [Configuration]
- customAmiId :: Maybe Text
- ebsRootVolumeSize :: Maybe Int
- ec2InstanceAttributes :: Maybe Ec2InstanceAttributes
- instanceCollectionType :: Maybe InstanceCollectionType
- kerberosAttributes :: Maybe KerberosAttributes
- logEncryptionKmsKeyId :: Maybe Text
- logUri :: Maybe Text
- masterPublicDnsName :: Maybe Text
- normalizedInstanceHours :: Maybe Int
- oSReleaseLabel :: Maybe Text
- outpostArn :: Maybe Text
- placementGroups :: Maybe [PlacementGroupConfig]
- releaseLabel :: Maybe Text
- repoUpgradeOnBoot :: Maybe RepoUpgradeOnBoot
- requestedAmiVersion :: Maybe Text
- runningAmiVersion :: Maybe Text
- scaleDownBehavior :: Maybe ScaleDownBehavior
- securityConfiguration :: Maybe Text
- serviceRole :: Maybe Text
- stepConcurrencyLevel :: Maybe Int
- tags :: Maybe [Tag]
- terminationProtected :: Maybe Bool
- visibleToAllUsers :: Maybe Bool
- id :: Text
- name :: Text
- status :: ClusterStatus
- newCluster :: Text -> Text -> ClusterStatus -> Cluster
- cluster_applications :: Lens' Cluster (Maybe [Application])
- cluster_autoScalingRole :: Lens' Cluster (Maybe Text)
- cluster_autoTerminate :: Lens' Cluster (Maybe Bool)
- cluster_clusterArn :: Lens' Cluster (Maybe Text)
- cluster_configurations :: Lens' Cluster (Maybe [Configuration])
- cluster_customAmiId :: Lens' Cluster (Maybe Text)
- cluster_ebsRootVolumeSize :: Lens' Cluster (Maybe Int)
- cluster_ec2InstanceAttributes :: Lens' Cluster (Maybe Ec2InstanceAttributes)
- cluster_instanceCollectionType :: Lens' Cluster (Maybe InstanceCollectionType)
- cluster_kerberosAttributes :: Lens' Cluster (Maybe KerberosAttributes)
- cluster_logEncryptionKmsKeyId :: Lens' Cluster (Maybe Text)
- cluster_logUri :: Lens' Cluster (Maybe Text)
- cluster_masterPublicDnsName :: Lens' Cluster (Maybe Text)
- cluster_normalizedInstanceHours :: Lens' Cluster (Maybe Int)
- cluster_oSReleaseLabel :: Lens' Cluster (Maybe Text)
- cluster_outpostArn :: Lens' Cluster (Maybe Text)
- cluster_placementGroups :: Lens' Cluster (Maybe [PlacementGroupConfig])
- cluster_releaseLabel :: Lens' Cluster (Maybe Text)
- cluster_repoUpgradeOnBoot :: Lens' Cluster (Maybe RepoUpgradeOnBoot)
- cluster_requestedAmiVersion :: Lens' Cluster (Maybe Text)
- cluster_runningAmiVersion :: Lens' Cluster (Maybe Text)
- cluster_scaleDownBehavior :: Lens' Cluster (Maybe ScaleDownBehavior)
- cluster_securityConfiguration :: Lens' Cluster (Maybe Text)
- cluster_serviceRole :: Lens' Cluster (Maybe Text)
- cluster_stepConcurrencyLevel :: Lens' Cluster (Maybe Int)
- cluster_tags :: Lens' Cluster (Maybe [Tag])
- cluster_terminationProtected :: Lens' Cluster (Maybe Bool)
- cluster_visibleToAllUsers :: Lens' Cluster (Maybe Bool)
- cluster_id :: Lens' Cluster Text
- cluster_name :: Lens' Cluster Text
- cluster_status :: Lens' Cluster ClusterStatus
Documentation
The detailed description of the cluster.
See: newCluster
smart constructor.
Cluster' | |
|
Instances
Create a value of Cluster
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:applications:Cluster'
, cluster_applications
- The applications installed on this cluster.
$sel:autoScalingRole:Cluster'
, cluster_autoScalingRole
- 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 EC2
instances in an instance group.
$sel:autoTerminate:Cluster'
, cluster_autoTerminate
- Specifies whether the cluster should terminate after completing all
steps.
$sel:clusterArn:Cluster'
, cluster_clusterArn
- The Amazon Resource Name of the cluster.
Cluster
, cluster_configurations
- Applies only to Amazon EMR releases 4.x and later. The list of
Configurations supplied to the EMR cluster.
$sel:customAmiId:Cluster'
, 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.
$sel:ebsRootVolumeSize:Cluster'
, cluster_ebsRootVolumeSize
- The size, in GiB, of the Amazon EBS root device volume of the Linux AMI
that is used for each EC2 instance. Available in Amazon EMR version 4.x
and later.
$sel:ec2InstanceAttributes:Cluster'
, cluster_ec2InstanceAttributes
- Provides information about the EC2 instances in a cluster grouped by
category. For example, key name, subnet ID, IAM instance profile, and so
on.
$sel:instanceCollectionType:Cluster'
, cluster_instanceCollectionType
- The instance fleet configuration is available only in Amazon EMR
versions 4.8.0 and later, excluding 5.0.x versions.
The instance group configuration of the cluster. A value of
INSTANCE_GROUP
indicates a uniform instance group configuration. A
value of INSTANCE_FLEET
indicates an instance fleets configuration.
$sel:kerberosAttributes:Cluster'
, cluster_kerberosAttributes
- 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.
$sel:logEncryptionKmsKeyId:Cluster'
, cluster_logEncryptionKmsKeyId
- The KMS key used for encrypting log files. This attribute is only
available with EMR version 5.30.0 and later, excluding EMR 6.0.0.
$sel:logUri:Cluster'
, cluster_logUri
- The path to the Amazon S3 location where logs for this cluster are
stored.
$sel:masterPublicDnsName:Cluster'
, cluster_masterPublicDnsName
- The DNS name of the master node. If the cluster is on a private subnet,
this is the private DNS name. On a public subnet, this is the public DNS
name.
$sel:normalizedInstanceHours:Cluster'
, cluster_normalizedInstanceHours
- An approximation of the cost of the cluster, represented in
m1.small/hours. This value is incremented one time for every hour an
m1.small instance runs. Larger instances are weighted more, so an EC2
instance that is roughly four times more expensive would result in the
normalized instance hours being incremented by four. This result is only
an approximation and does not reflect the actual billing rate.
$sel:oSReleaseLabel:Cluster'
, cluster_oSReleaseLabel
- 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.
$sel:outpostArn:Cluster'
, cluster_outpostArn
- The Amazon Resource Name (ARN) of the Outpost where the cluster is
launched.
$sel:placementGroups:Cluster'
, cluster_placementGroups
- Placement group configured for an Amazon EMR cluster.
$sel:releaseLabel:Cluster'
, cluster_releaseLabel
- 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
https://docs.aws.amazon.com/emr/latest/ReleaseGuide/. The release
label applies only to Amazon EMR releases version 4.0 and later. Earlier
versions use AmiVersion
.
$sel:repoUpgradeOnBoot:Cluster'
, cluster_repoUpgradeOnBoot
- Applies only when CustomAmiID
is used. Specifies the type of updates
that are applied from the Amazon Linux AMI package repositories when an
instance boots using the AMI.
$sel:requestedAmiVersion:Cluster'
, cluster_requestedAmiVersion
- The AMI version requested for this cluster.
$sel:runningAmiVersion:Cluster'
, cluster_runningAmiVersion
- The AMI version running on this cluster.
$sel:scaleDownBehavior:Cluster'
, cluster_scaleDownBehavior
- 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 version
4.1.0 and later, and is the default for versions of Amazon EMR earlier
than 5.1.0.
$sel:securityConfiguration:Cluster'
, cluster_securityConfiguration
- The name of the security configuration applied to the cluster.
$sel:serviceRole:Cluster'
, cluster_serviceRole
- The IAM role that Amazon EMR assumes in order to access Amazon Web
Services resources on your behalf.
$sel:stepConcurrencyLevel:Cluster'
, cluster_stepConcurrencyLevel
- Specifies the number of steps that can be executed concurrently.
$sel:tags:Cluster'
, cluster_tags
- A list of tags associated with a cluster.
$sel:terminationProtected:Cluster'
, cluster_terminationProtected
- Indicates whether Amazon EMR will lock the cluster to prevent the EC2
instances from being terminated by an API call or user intervention, or
in the event of a cluster error.
$sel:visibleToAllUsers:Cluster'
, cluster_visibleToAllUsers
- Indicates whether the cluster is visible to IAM principals in the Amazon
Web Services account associated with the cluster. When true
, IAM
principals in the Amazon Web Services account can perform EMR cluster
actions on the cluster that their IAM policies allow. When false
, only
the IAM principal that created the cluster and the Amazon Web Services
account root user can perform EMR actions, regardless of IAM permissions
policies attached to other IAM principals.
The default value is true
if a value is not provided when creating a
cluster using the EMR API RunJobFlow command, the CLI
create-cluster
command, or the Amazon Web Services Management Console.
$sel:id:Cluster'
, cluster_id
- The unique identifier for the cluster.
Cluster
, cluster_name
- The name of the cluster.
$sel:status:Cluster'
, cluster_status
- The current status details about the cluster.
cluster_applications :: Lens' Cluster (Maybe [Application]) Source #
The applications installed on this cluster.
cluster_autoScalingRole :: Lens' Cluster (Maybe Text) Source #
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 EC2
instances in an instance group.
cluster_autoTerminate :: Lens' Cluster (Maybe Bool) Source #
Specifies whether the cluster should terminate after completing all steps.
cluster_configurations :: Lens' Cluster (Maybe [Configuration]) Source #
Applies only to Amazon EMR releases 4.x and later. The list of Configurations supplied to the EMR cluster.
cluster_customAmiId :: Lens' Cluster (Maybe Text) Source #
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.
cluster_ebsRootVolumeSize :: Lens' Cluster (Maybe Int) Source #
The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that is used for each EC2 instance. Available in Amazon EMR version 4.x and later.
cluster_ec2InstanceAttributes :: Lens' Cluster (Maybe Ec2InstanceAttributes) Source #
Provides information about the EC2 instances in a cluster grouped by category. For example, key name, subnet ID, IAM instance profile, and so on.
cluster_instanceCollectionType :: Lens' Cluster (Maybe InstanceCollectionType) Source #
The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions.
The instance group configuration of the cluster. A value of
INSTANCE_GROUP
indicates a uniform instance group configuration. A
value of INSTANCE_FLEET
indicates an instance fleets configuration.
cluster_kerberosAttributes :: Lens' Cluster (Maybe KerberosAttributes) Source #
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.
cluster_logEncryptionKmsKeyId :: Lens' Cluster (Maybe Text) Source #
The KMS key used for encrypting log files. This attribute is only available with EMR version 5.30.0 and later, excluding EMR 6.0.0.
cluster_logUri :: Lens' Cluster (Maybe Text) Source #
The path to the Amazon S3 location where logs for this cluster are stored.
cluster_masterPublicDnsName :: Lens' Cluster (Maybe Text) Source #
The DNS name of the master node. If the cluster is on a private subnet, this is the private DNS name. On a public subnet, this is the public DNS name.
cluster_normalizedInstanceHours :: Lens' Cluster (Maybe Int) Source #
An approximation of the cost of the cluster, represented in m1.small/hours. This value is incremented one time for every hour an m1.small instance runs. Larger instances are weighted more, so an EC2 instance that is roughly four times more expensive would result in the normalized instance hours being incremented by four. This result is only an approximation and does not reflect the actual billing rate.
cluster_oSReleaseLabel :: Lens' Cluster (Maybe Text) Source #
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.
cluster_outpostArn :: Lens' Cluster (Maybe Text) Source #
The Amazon Resource Name (ARN) of the Outpost where the cluster is launched.
cluster_placementGroups :: Lens' Cluster (Maybe [PlacementGroupConfig]) Source #
Placement group configured for an Amazon EMR cluster.
cluster_releaseLabel :: Lens' Cluster (Maybe Text) Source #
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
https://docs.aws.amazon.com/emr/latest/ReleaseGuide/. The release
label applies only to Amazon EMR releases version 4.0 and later. Earlier
versions use AmiVersion
.
cluster_repoUpgradeOnBoot :: Lens' Cluster (Maybe RepoUpgradeOnBoot) Source #
Applies only when CustomAmiID
is used. Specifies the type of updates
that are applied from the Amazon Linux AMI package repositories when an
instance boots using the AMI.
cluster_requestedAmiVersion :: Lens' Cluster (Maybe Text) Source #
The AMI version requested for this cluster.
cluster_runningAmiVersion :: Lens' Cluster (Maybe Text) Source #
The AMI version running on this cluster.
cluster_scaleDownBehavior :: Lens' Cluster (Maybe ScaleDownBehavior) Source #
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 version
4.1.0 and later, and is the default for versions of Amazon EMR earlier
than 5.1.0.
cluster_securityConfiguration :: Lens' Cluster (Maybe Text) Source #
The name of the security configuration applied to the cluster.
cluster_serviceRole :: Lens' Cluster (Maybe Text) Source #
The IAM role that Amazon EMR assumes in order to access Amazon Web Services resources on your behalf.
cluster_stepConcurrencyLevel :: Lens' Cluster (Maybe Int) Source #
Specifies the number of steps that can be executed concurrently.
cluster_terminationProtected :: Lens' Cluster (Maybe Bool) Source #
Indicates whether Amazon EMR will lock the cluster to prevent the EC2 instances from being terminated by an API call or user intervention, or in the event of a cluster error.
cluster_visibleToAllUsers :: Lens' Cluster (Maybe Bool) Source #
Indicates whether the cluster is visible to IAM principals in the Amazon
Web Services account associated with the cluster. When true
, IAM
principals in the Amazon Web Services account can perform EMR cluster
actions on the cluster that their IAM policies allow. When false
, only
the IAM principal that created the cluster and the Amazon Web Services
account root user can perform EMR actions, regardless of IAM permissions
policies attached to other IAM principals.
The default value is true
if a value is not provided when creating a
cluster using the EMR API RunJobFlow command, the CLI
create-cluster
command, or the Amazon Web Services Management Console.
cluster_status :: Lens' Cluster ClusterStatus Source #
The current status details about the cluster.