@Generated(value="software.amazon.awssdk:codegen") public class RunJobFlowRequest extends EMRRequest implements ToCopyableBuilder<RunJobFlowRequest.Builder,RunJobFlowRequest>
Input to the RunJobFlow operation.
Modifier and Type | Class and Description |
---|---|
static interface |
RunJobFlowRequest.Builder |
Modifier and Type | Method and Description |
---|---|
String |
additionalInfo()
A JSON string for selecting additional features.
|
String |
amiVersion()
For Amazon EMR AMI versions 3.x and 2.x.
|
List<Application> |
applications()
For Amazon EMR releases 4.0 and later.
|
String |
autoScalingRole()
An IAM role for automatic scaling policies.
|
List<BootstrapActionConfig> |
bootstrapActions()
A list of bootstrap actions to run before Hadoop starts on the cluster nodes.
|
static RunJobFlowRequest.Builder |
builder() |
List<Configuration> |
configurations()
For Amazon EMR releases 4.0 and later.
|
String |
customAmiId()
Available only in Amazon EMR version 5.7.0 and later.
|
Integer |
ebsRootVolumeSize()
The size, in GiB, of the EBS root device volume of the Linux AMI that is used for each EC2 instance.
|
boolean |
equals(Object obj) |
<T> Optional<T> |
getValueForField(String fieldName,
Class<T> clazz)
Used to retrieve the value of a field from any class that extends
SdkRequest . |
int |
hashCode() |
JobFlowInstancesConfig |
instances()
A specification of the number and type of Amazon EC2 instances.
|
String |
jobFlowRole()
Also called instance profile and EC2 role.
|
String |
logUri()
The location in Amazon S3 to write the log files of the job flow.
|
String |
name()
The name of the job flow.
|
List<SupportedProductConfig> |
newSupportedProducts()
|
String |
releaseLabel()
The release label for the Amazon EMR release.
|
RepoUpgradeOnBoot |
repoUpgradeOnBoot()
Applies only when
CustomAmiID is used. |
String |
repoUpgradeOnBootString()
Applies only when
CustomAmiID is used. |
ScaleDownBehavior |
scaleDownBehavior()
Specifies the way that individual Amazon EC2 instances terminate when an automatic scale-in activity occurs or an
instance group is resized.
|
String |
scaleDownBehaviorString()
Specifies the way that individual Amazon EC2 instances terminate when an automatic scale-in activity occurs or an
instance group is resized.
|
String |
securityConfiguration()
The name of a security configuration to apply to the cluster.
|
static Class<? extends RunJobFlowRequest.Builder> |
serializableBuilderClass() |
String |
serviceRole()
The IAM role that will be assumed by the Amazon EMR service to access AWS resources on your behalf.
|
List<StepConfig> |
steps()
A list of steps to run.
|
List<String> |
supportedProducts()
|
List<Tag> |
tags()
A list of tags to associate with a cluster and propagate to Amazon EC2 instances.
|
RunJobFlowRequest.Builder |
toBuilder()
Take this object and create a builder that contains all of the current property values of this object.
|
String |
toString() |
Boolean |
visibleToAllUsers()
Whether the cluster is visible to all IAM users of the AWS account associated with the cluster.
|
requestOverrideConfig
copy
public String name()
The name of the job flow.
public String logUri()
The location in Amazon S3 to write the log files of the job flow. If a value is not provided, logs are not created.
public String additionalInfo()
A JSON string for selecting additional features.
public String amiVersion()
For Amazon EMR AMI versions 3.x and 2.x. For Amazon EMR releases 4.0 and later, the Linux AMI is determined by
the ReleaseLabel
specified or by CustomAmiID
. The version of the Amazon Machine Image
(AMI) to use when launching Amazon EC2 instances in the job flow. For details about the AMI versions currently
supported in EMR version 3.x and 2.x, see AMI Versions Supported
in EMR in the Amazon EMR Developer Guide.
If the AMI supports multiple versions of Hadoop (for example, AMI 1.0 supports both Hadoop 0.18 and 0.20), you
can use the JobFlowInstancesConfig HadoopVersion
parameter to modify the version of Hadoop
from the defaults shown above.
Previously, the EMR AMI version API parameter options allowed you to use latest for the latest AMI version rather than specify a numerical value. Some regions no longer support this deprecated option as they only have a newer release label version of EMR, which requires you to specify an EMR release label release (EMR 4.x or later).
ReleaseLabel
specified or by CustomAmiID
. The version of the
Amazon Machine Image (AMI) to use when launching Amazon EC2 instances in the job flow. For details about
the AMI versions currently supported in EMR version 3.x and 2.x, see AMI Versions
Supported in EMR in the Amazon EMR Developer Guide.
If the AMI supports multiple versions of Hadoop (for example, AMI 1.0 supports both Hadoop 0.18 and
0.20), you can use the JobFlowInstancesConfig HadoopVersion
parameter to modify the
version of Hadoop from the defaults shown above.
Previously, the EMR AMI version API parameter options allowed you to use latest for the latest AMI version rather than specify a numerical value. Some regions no longer support this deprecated option as they only have a newer release label version of EMR, which requires you to specify an EMR release label release (EMR 4.x or later).
public String releaseLabel()
The release label for the Amazon EMR release. For Amazon EMR 3.x and 2.x AMIs, use AmiVersion
instead.
AmiVersion
instead.public JobFlowInstancesConfig instances()
A specification of the number and type of Amazon EC2 instances.
public List<StepConfig> steps()
A list of steps to run.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
public List<BootstrapActionConfig> bootstrapActions()
A list of bootstrap actions to run before Hadoop starts on the cluster nodes.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
public List<String> supportedProducts()
For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and later, use Applications.
A list of strings that indicates third-party software to use. For more information, see Use Third Party Applications with Amazon EMR. Currently supported values are:
"mapr-m3" - launch the job flow using MapR M3 Edition.
"mapr-m5" - launch the job flow using MapR M5 Edition.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and later, use Applications.
A list of strings that indicates third-party software to use. For more information, see Use Third Party Applications with Amazon EMR. Currently supported values are:
"mapr-m3" - launch the job flow using MapR M3 Edition.
"mapr-m5" - launch the job flow using MapR M5 Edition.
public List<SupportedProductConfig> newSupportedProducts()
For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and later, use Applications.
A list of strings that indicates third-party software to use with the job flow that accepts a user argument list. EMR accepts and forwards the argument list to the corresponding installation script as bootstrap action arguments. For more information, see "Launch a Job Flow on the MapR Distribution for Hadoop" in the Amazon EMR Developer Guide. Supported values are:
"mapr-m3" - launch the cluster using MapR M3 Edition.
"mapr-m5" - launch the cluster using MapR M5 Edition.
"mapr" with the user arguments specifying "--edition,m3" or "--edition,m5" - launch the job flow using MapR M3 or M5 Edition respectively.
"mapr-m7" - launch the cluster using MapR M7 Edition.
"hunk" - launch the cluster with the Hunk Big Data Analtics Platform.
"hue"- launch the cluster with Hue installed.
"spark" - launch the cluster with Apache Spark installed.
"ganglia" - launch the cluster with the Ganglia Monitoring System installed.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and later, use Applications.
A list of strings that indicates third-party software to use with the job flow that accepts a user argument list. EMR accepts and forwards the argument list to the corresponding installation script as bootstrap action arguments. For more information, see "Launch a Job Flow on the MapR Distribution for Hadoop" in the Amazon EMR Developer Guide. Supported values are:
"mapr-m3" - launch the cluster using MapR M3 Edition.
"mapr-m5" - launch the cluster using MapR M5 Edition.
"mapr" with the user arguments specifying "--edition,m3" or "--edition,m5" - launch the job flow using MapR M3 or M5 Edition respectively.
"mapr-m7" - launch the cluster using MapR M7 Edition.
"hunk" - launch the cluster with the Hunk Big Data Analtics Platform.
"hue"- launch the cluster with Hue installed.
"spark" - launch the cluster with Apache Spark installed.
"ganglia" - launch the cluster with the Ganglia Monitoring System installed.
public List<Application> applications()
For Amazon EMR releases 4.0 and later. A list of applications for the cluster. Valid values are: "Hadoop", "Hive", "Mahout", "Pig", and "Spark." They are case insensitive.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
public List<Configuration> configurations()
For Amazon EMR releases 4.0 and later. The list of configurations supplied for the EMR cluster you are creating.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
public Boolean visibleToAllUsers()
Whether the cluster is visible to all IAM users of the AWS account associated with the cluster. If this value is
set to true
, all IAM users of that AWS account can view and (if they have the proper policy
permissions set) manage the cluster. If it is set to false
, only the IAM user that created the
cluster can view and manage it.
true
, all IAM users of that AWS account can view and (if they have the
proper policy permissions set) manage the cluster. If it is set to false
, only the IAM user
that created the cluster can view and manage it.public String jobFlowRole()
Also called instance profile and EC2 role. 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.
EMR_EC2_DefaultRole
. In order to use the
default role, you must have already created it using the CLI or console.public String serviceRole()
The IAM role that will be assumed by the Amazon EMR service to access AWS resources on your behalf.
public List<Tag> tags()
A list of tags to associate with a cluster and propagate to Amazon EC2 instances.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
public String securityConfiguration()
The name of a security configuration to apply to the cluster.
public 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.
EMR_AutoScaling_DefaultRole
.
The IAM role provides permissions that the automatic scaling feature requires to launch and terminate EC2
instances in an instance group.public ScaleDownBehavior scaleDownBehavior()
Specifies 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 blacklists 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
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.
If the service returns an enum value that is not available in the current SDK version, scaleDownBehavior
will return ScaleDownBehavior.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available
from scaleDownBehaviorString()
.
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
blacklists 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
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
public String scaleDownBehaviorString()
Specifies 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 blacklists 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
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.
If the service returns an enum value that is not available in the current SDK version, scaleDownBehavior
will return ScaleDownBehavior.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available
from scaleDownBehaviorString()
.
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
blacklists 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
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
public String customAmiId()
Available only in Amazon EMR version 5.7.0 and later. The ID of a custom Amazon EBS-backed Linux AMI. If
specified, Amazon EMR uses this AMI when it launches cluster EC2 instances. For more information about custom
AMIs in Amazon EMR, see Using
a Custom AMI in the Amazon EMR Management Guide. If omitted, the cluster uses the base Linux AMI for
the ReleaseLabel
specified. For Amazon EMR versions 2.x and 3.x, use AmiVersion
instead.
For information about creating a custom AMI, see Creating an Amazon EBS-Backed Linux AMI in the Amazon Elastic Compute Cloud User Guide for Linux Instances. For information about finding an AMI ID, see Finding a Linux AMI.
ReleaseLabel
specified. For Amazon EMR versions 2.x and 3.x, use AmiVersion
instead.
For information about creating a custom AMI, see Creating an Amazon EBS-Backed Linux AMI in the Amazon Elastic Compute Cloud User Guide for Linux Instances. For information about finding an AMI ID, see Finding a Linux AMI.
public Integer ebsRootVolumeSize()
The size, in GiB, of the EBS root device volume of the Linux AMI that is used for each EC2 instance. Available in Amazon EMR version 4.x and later.
public RepoUpgradeOnBoot repoUpgradeOnBoot()
Applies only when CustomAmiID
is used. Specifies which updates from the Amazon Linux AMI package
repositories to apply automatically when the instance boots using the AMI. If omitted, the default is
SECURITY
, which indicates that only security updates are applied. If NONE
is specified,
no updates are applied, and all updates must be applied manually.
If the service returns an enum value that is not available in the current SDK version, repoUpgradeOnBoot
will return RepoUpgradeOnBoot.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available
from repoUpgradeOnBootString()
.
CustomAmiID
is used. Specifies which updates from the Amazon Linux AMI
package repositories to apply automatically when the instance boots using the AMI. If omitted, the
default is SECURITY
, which indicates that only security updates are applied. If
NONE
is specified, no updates are applied, and all updates must be applied manually.RepoUpgradeOnBoot
public String repoUpgradeOnBootString()
Applies only when CustomAmiID
is used. Specifies which updates from the Amazon Linux AMI package
repositories to apply automatically when the instance boots using the AMI. If omitted, the default is
SECURITY
, which indicates that only security updates are applied. If NONE
is specified,
no updates are applied, and all updates must be applied manually.
If the service returns an enum value that is not available in the current SDK version, repoUpgradeOnBoot
will return RepoUpgradeOnBoot.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available
from repoUpgradeOnBootString()
.
CustomAmiID
is used. Specifies which updates from the Amazon Linux AMI
package repositories to apply automatically when the instance boots using the AMI. If omitted, the
default is SECURITY
, which indicates that only security updates are applied. If
NONE
is specified, no updates are applied, and all updates must be applied manually.RepoUpgradeOnBoot
public RunJobFlowRequest.Builder toBuilder()
ToCopyableBuilder
toBuilder
in interface ToCopyableBuilder<RunJobFlowRequest.Builder,RunJobFlowRequest>
toBuilder
in class EMRRequest
public static RunJobFlowRequest.Builder builder()
public static Class<? extends RunJobFlowRequest.Builder> serializableBuilderClass()
public <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
SdkRequest
SdkRequest
. The field name
specified should match the member name from the corresponding service-2.json model specified in the
codegen-resources folder for a given service. The class specifies what class to cast the returned value to.
If the returned value is also a modeled class, the SdkRequest.getValueForField(String, Class)
method will
again be available.getValueForField
in class SdkRequest
fieldName
- The name of the member to be retrieved.clazz
- The class to cast the returned object to.Copyright © 2017 Amazon Web Services, Inc. All Rights Reserved.