public static interface Cluster.Builder extends SdkPojo, CopyableBuilder<Cluster.Builder,Cluster>
Modifier and Type | Method and Description |
---|---|
Cluster.Builder |
applications(Application... applications)
The applications installed on this cluster.
|
Cluster.Builder |
applications(Collection<Application> applications)
The applications installed on this cluster.
|
Cluster.Builder |
applications(Consumer<Application.Builder>... applications)
The applications installed on this cluster.
|
Cluster.Builder |
autoScalingRole(String autoScalingRole)
An IAM role for automatic scaling policies.
|
Cluster.Builder |
autoTerminate(Boolean autoTerminate)
Specifies whether the cluster should terminate after completing all steps.
|
Cluster.Builder |
clusterArn(String clusterArn)
The Amazon Resource Name of the cluster.
|
Cluster.Builder |
configurations(Collection<Configuration> configurations)
Applies only to Amazon EMR releases 4.x and later.
|
Cluster.Builder |
configurations(Configuration... configurations)
Applies only to Amazon EMR releases 4.x and later.
|
Cluster.Builder |
configurations(Consumer<Configuration.Builder>... configurations)
Applies only to Amazon EMR releases 4.x and later.
|
Cluster.Builder |
customAmiId(String customAmiId)
Available only in Amazon EMR version 5.7.0 and later.
|
Cluster.Builder |
ebsRootVolumeSize(Integer ebsRootVolumeSize)
The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that is used for each EC2 instance.
|
default Cluster.Builder |
ec2InstanceAttributes(Consumer<Ec2InstanceAttributes.Builder> ec2InstanceAttributes)
Provides information about the EC2 instances in a cluster grouped by category.
|
Cluster.Builder |
ec2InstanceAttributes(Ec2InstanceAttributes ec2InstanceAttributes)
Provides information about the EC2 instances in a cluster grouped by category.
|
Cluster.Builder |
id(String id)
The unique identifier for the cluster.
|
Cluster.Builder |
instanceCollectionType(InstanceCollectionType instanceCollectionType)
|
Cluster.Builder |
instanceCollectionType(String instanceCollectionType)
|
default Cluster.Builder |
kerberosAttributes(Consumer<KerberosAttributes.Builder> kerberosAttributes)
Attributes for Kerberos configuration when Kerberos authentication is enabled using a security configuration.
|
Cluster.Builder |
kerberosAttributes(KerberosAttributes kerberosAttributes)
Attributes for Kerberos configuration when Kerberos authentication is enabled using a security configuration.
|
Cluster.Builder |
logEncryptionKmsKeyId(String logEncryptionKmsKeyId)
The AWS KMS customer master key (CMK) used for encrypting log files.
|
Cluster.Builder |
logUri(String logUri)
The path to the Amazon S3 location where logs for this cluster are stored.
|
Cluster.Builder |
masterPublicDnsName(String masterPublicDnsName)
The DNS name of the master node.
|
Cluster.Builder |
name(String name)
The name of the cluster.
|
Cluster.Builder |
normalizedInstanceHours(Integer normalizedInstanceHours)
An approximation of the cost of the cluster, represented in m1.small/hours.
|
Cluster.Builder |
outpostArn(String outpostArn)
The Amazon Resource Name (ARN) of the Outpost where the cluster is launched.
|
Cluster.Builder |
placementGroups(Collection<PlacementGroupConfig> placementGroups)
Placement group configured for an Amazon EMR cluster.
|
Cluster.Builder |
placementGroups(Consumer<PlacementGroupConfig.Builder>... placementGroups)
Placement group configured for an Amazon EMR cluster.
|
Cluster.Builder |
placementGroups(PlacementGroupConfig... placementGroups)
Placement group configured for an Amazon EMR cluster.
|
Cluster.Builder |
releaseLabel(String releaseLabel)
The Amazon EMR release label, which determines the version of open-source application packages installed on
the cluster.
|
Cluster.Builder |
repoUpgradeOnBoot(RepoUpgradeOnBoot repoUpgradeOnBoot)
Applies only when
CustomAmiID is used. |
Cluster.Builder |
repoUpgradeOnBoot(String repoUpgradeOnBoot)
Applies only when
CustomAmiID is used. |
Cluster.Builder |
requestedAmiVersion(String requestedAmiVersion)
The AMI version requested for this cluster.
|
Cluster.Builder |
runningAmiVersion(String runningAmiVersion)
The AMI version running on this cluster.
|
Cluster.Builder |
scaleDownBehavior(ScaleDownBehavior scaleDownBehavior)
The way that individual Amazon EC2 instances terminate when an automatic scale-in activity occurs or an
instance group is resized.
|
Cluster.Builder |
scaleDownBehavior(String scaleDownBehavior)
The way that individual Amazon EC2 instances terminate when an automatic scale-in activity occurs or an
instance group is resized.
|
Cluster.Builder |
securityConfiguration(String securityConfiguration)
The name of the security configuration applied to the cluster.
|
Cluster.Builder |
serviceRole(String serviceRole)
The IAM role that will be assumed by the Amazon EMR service to access AWS resources on your behalf.
|
Cluster.Builder |
status(ClusterStatus status)
The current status details about the cluster.
|
default Cluster.Builder |
status(Consumer<ClusterStatus.Builder> status)
The current status details about the cluster.
|
Cluster.Builder |
stepConcurrencyLevel(Integer stepConcurrencyLevel)
Specifies the number of steps that can be executed concurrently.
|
Cluster.Builder |
tags(Collection<Tag> tags)
A list of tags associated with a cluster.
|
Cluster.Builder |
tags(Consumer<Tag.Builder>... tags)
A list of tags associated with a cluster.
|
Cluster.Builder |
tags(Tag... tags)
A list of tags associated with a cluster.
|
Cluster.Builder |
terminationProtected(Boolean 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.
|
Cluster.Builder |
visibleToAllUsers(Boolean visibleToAllUsers)
Indicates whether the cluster is visible to all IAM users of the AWS account associated with the cluster.
|
equalsBySdkFields, sdkFields
copy
applyMutation, build
Cluster.Builder id(String id)
The unique identifier for the cluster.
id
- The unique identifier for the cluster.Cluster.Builder name(String name)
The name of the cluster.
name
- The name of the cluster.Cluster.Builder status(ClusterStatus status)
The current status details about the cluster.
status
- The current status details about the cluster.default Cluster.Builder status(Consumer<ClusterStatus.Builder> status)
The current status details about the cluster.
This is a convenience that creates an instance of theClusterStatus.Builder
avoiding the need to
create one manually via ClusterStatus.builder()
.
When the Consumer
completes, SdkBuilder.build()
is called immediately and its
result is passed to status(ClusterStatus)
.status
- a consumer that will call methods on ClusterStatus.Builder
status(ClusterStatus)
Cluster.Builder ec2InstanceAttributes(Ec2InstanceAttributes 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.
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.default Cluster.Builder ec2InstanceAttributes(Consumer<Ec2InstanceAttributes.Builder> 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.
This is a convenience that creates an instance of theEc2InstanceAttributes.Builder
avoiding the need
to create one manually via Ec2InstanceAttributes.builder()
.
When the Consumer
completes, SdkBuilder.build()
is called immediately and
its result is passed to ec2InstanceAttributes(Ec2InstanceAttributes)
.ec2InstanceAttributes
- a consumer that will call methods on Ec2InstanceAttributes.Builder
ec2InstanceAttributes(Ec2InstanceAttributes)
Cluster.Builder instanceCollectionType(String 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.
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.
InstanceCollectionType
,
InstanceCollectionType
Cluster.Builder instanceCollectionType(InstanceCollectionType 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.
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.
InstanceCollectionType
,
InstanceCollectionType
Cluster.Builder logUri(String logUri)
The path to the Amazon S3 location where logs for this cluster are stored.
logUri
- The path to the Amazon S3 location where logs for this cluster are stored.Cluster.Builder logEncryptionKmsKeyId(String logEncryptionKmsKeyId)
The AWS KMS customer master key (CMK) used for encrypting log files. This attribute is only available with EMR version 5.30.0 and later, excluding EMR 6.0.0.
logEncryptionKmsKeyId
- The AWS KMS customer master key (CMK) used for encrypting log files. This attribute is only available
with EMR version 5.30.0 and later, excluding EMR 6.0.0.Cluster.Builder requestedAmiVersion(String requestedAmiVersion)
The AMI version requested for this cluster.
requestedAmiVersion
- The AMI version requested for this cluster.Cluster.Builder runningAmiVersion(String runningAmiVersion)
The AMI version running on this cluster.
runningAmiVersion
- The AMI version running on this cluster.Cluster.Builder releaseLabel(String 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
.
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
.Cluster.Builder autoTerminate(Boolean autoTerminate)
Specifies whether the cluster should terminate after completing all steps.
autoTerminate
- Specifies whether the cluster should terminate after completing all steps.Cluster.Builder terminationProtected(Boolean 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.
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.Cluster.Builder visibleToAllUsers(Boolean visibleToAllUsers)
Indicates whether the cluster is visible to all IAM users of the AWS account associated with the cluster. The
default value, true
, indicates that all IAM users in the AWS account can perform cluster actions
if they have the proper IAM policy permissions. If this value is false
, only the IAM user that
created the cluster can perform actions. This value can be changed on a running cluster by using the
SetVisibleToAllUsers action. You can override the default value of true
when you create a
cluster by using the VisibleToAllUsers
parameter of the RunJobFlow
action.
visibleToAllUsers
- Indicates whether the cluster is visible to all IAM users of the AWS account associated with the
cluster. The default value, true
, indicates that all IAM users in the AWS account can
perform cluster actions if they have the proper IAM policy permissions. If this value is
false
, only the IAM user that created the cluster can perform actions. This value can be
changed on a running cluster by using the SetVisibleToAllUsers action. You can override the
default value of true
when you create a cluster by using the
VisibleToAllUsers
parameter of the RunJobFlow
action.Cluster.Builder applications(Collection<Application> applications)
The applications installed on this cluster.
applications
- The applications installed on this cluster.Cluster.Builder applications(Application... applications)
The applications installed on this cluster.
applications
- The applications installed on this cluster.Cluster.Builder applications(Consumer<Application.Builder>... applications)
The applications installed on this cluster.
This is a convenience that creates an instance of theList.Builder
avoiding the need to
create one manually via List#builder()
.
When the Consumer
completes, List.Builder#build()
is called immediately and its
result is passed to #applications(List)
.applications
- a consumer that will call methods on List.Builder
#applications(List)
Cluster.Builder tags(Collection<Tag> tags)
A list of tags associated with a cluster.
tags
- A list of tags associated with a cluster.Cluster.Builder tags(Tag... tags)
A list of tags associated with a cluster.
tags
- A list of tags associated with a cluster.Cluster.Builder tags(Consumer<Tag.Builder>... tags)
A list of tags associated with a cluster.
This is a convenience that creates an instance of theList.Builder
avoiding the need to create
one manually via List#builder()
.
When the Consumer
completes, List.Builder#build()
is called immediately and its result
is passed to #tags(List)
.tags
- a consumer that will call methods on List.Builder
#tags(List)
Cluster.Builder serviceRole(String serviceRole)
The IAM role that will be assumed by the Amazon EMR service to access AWS resources on your behalf.
serviceRole
- The IAM role that will be assumed by the Amazon EMR service to access AWS resources on your behalf.Cluster.Builder normalizedInstanceHours(Integer 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.
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.Cluster.Builder masterPublicDnsName(String 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.
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.Cluster.Builder configurations(Collection<Configuration> configurations)
Applies only to Amazon EMR releases 4.x and later. The list of Configurations supplied to the EMR cluster.
configurations
- Applies only to Amazon EMR releases 4.x and later. The list of Configurations supplied to the EMR
cluster.Cluster.Builder configurations(Configuration... configurations)
Applies only to Amazon EMR releases 4.x and later. The list of Configurations supplied to the EMR cluster.
configurations
- Applies only to Amazon EMR releases 4.x and later. The list of Configurations supplied to the EMR
cluster.Cluster.Builder configurations(Consumer<Configuration.Builder>... configurations)
Applies only to Amazon EMR releases 4.x and later. The list of Configurations supplied to the EMR cluster.
This is a convenience that creates an instance of theList.Builder
avoiding the need
to create one manually via List#builder()
.
When the Consumer
completes, List.Builder#build()
is called immediately and
its result is passed to #configurations(List)
.configurations
- a consumer that will call methods on List.Builder
#configurations(List)
Cluster.Builder securityConfiguration(String securityConfiguration)
The name of the security configuration applied to the cluster.
securityConfiguration
- The name of the security configuration applied to the cluster.Cluster.Builder autoScalingRole(String 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.
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.Cluster.Builder scaleDownBehavior(String 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.
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.ScaleDownBehavior
,
ScaleDownBehavior
Cluster.Builder scaleDownBehavior(ScaleDownBehavior 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.
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.ScaleDownBehavior
,
ScaleDownBehavior
Cluster.Builder customAmiId(String 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.
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.Cluster.Builder ebsRootVolumeSize(Integer 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.
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.Cluster.Builder repoUpgradeOnBoot(String 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.
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.RepoUpgradeOnBoot
,
RepoUpgradeOnBoot
Cluster.Builder repoUpgradeOnBoot(RepoUpgradeOnBoot 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.
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.RepoUpgradeOnBoot
,
RepoUpgradeOnBoot
Cluster.Builder kerberosAttributes(KerberosAttributes 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.
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.default Cluster.Builder kerberosAttributes(Consumer<KerberosAttributes.Builder> 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.
This is a convenience that creates an instance of theKerberosAttributes.Builder
avoiding the need to
create one manually via KerberosAttributes.builder()
.
When the Consumer
completes, SdkBuilder.build()
is called immediately and its
result is passed to kerberosAttributes(KerberosAttributes)
.kerberosAttributes
- a consumer that will call methods on KerberosAttributes.Builder
kerberosAttributes(KerberosAttributes)
Cluster.Builder clusterArn(String clusterArn)
The Amazon Resource Name of the cluster.
clusterArn
- The Amazon Resource Name of the cluster.Cluster.Builder outpostArn(String outpostArn)
The Amazon Resource Name (ARN) of the Outpost where the cluster is launched.
outpostArn
- The Amazon Resource Name (ARN) of the Outpost where the cluster is launched.Cluster.Builder stepConcurrencyLevel(Integer stepConcurrencyLevel)
Specifies the number of steps that can be executed concurrently.
stepConcurrencyLevel
- Specifies the number of steps that can be executed concurrently.Cluster.Builder placementGroups(Collection<PlacementGroupConfig> placementGroups)
Placement group configured for an Amazon EMR cluster.
placementGroups
- Placement group configured for an Amazon EMR cluster.Cluster.Builder placementGroups(PlacementGroupConfig... placementGroups)
Placement group configured for an Amazon EMR cluster.
placementGroups
- Placement group configured for an Amazon EMR cluster.Cluster.Builder placementGroups(Consumer<PlacementGroupConfig.Builder>... placementGroups)
Placement group configured for an Amazon EMR cluster.
This is a convenience that creates an instance of theList.Builder
avoiding the
need to create one manually via List#builder()
.
When the Consumer
completes, List.Builder#build()
is called immediately
and its result is passed to #placementGroups(List)
.placementGroups
- a consumer that will call methods on List.Builder
#placementGroups(List)