public class JobFlowInstancesConfig extends Object implements Serializable, Cloneable
A description of the Amazon EC2 instance running the job flow. A valid JobFlowInstancesConfig must contain at least InstanceGroups, which is the recommended configuration. However, a valid alternative is to have MasterInstanceType, SlaveInstanceType, and InstanceCount (all three must be present).
Constructor and Description |
---|
JobFlowInstancesConfig()
Default constructor for a new JobFlowInstancesConfig object.
|
Modifier and Type | Method and Description |
---|---|
JobFlowInstancesConfig |
clone() |
boolean |
equals(Object obj) |
List<String> |
getAdditionalMasterSecurityGroups()
A list of additional Amazon EC2 security group IDs for the master
node.
|
List<String> |
getAdditionalSlaveSecurityGroups()
A list of additional Amazon EC2 security group IDs for the slave
nodes.
|
String |
getEc2KeyName()
The name of the Amazon EC2 key pair that can be used to ssh to the
master node as the user called "hadoop."
|
String |
getEc2SubnetId()
To launch the job flow in Amazon Virtual Private Cloud (Amazon VPC),
set this parameter to the identifier of the Amazon VPC subnet where
you want the job flow to launch.
|
String |
getEmrManagedMasterSecurityGroup()
The identifier of the Amazon EC2 security group (managed by Amazon
ElasticMapReduce) for the master node.
|
String |
getEmrManagedSlaveSecurityGroup()
The identifier of the Amazon EC2 security group (managed by Amazon
ElasticMapReduce) for the slave nodes.
|
String |
getHadoopVersion()
The Hadoop version for the job flow.
|
Integer |
getInstanceCount()
The number of Amazon EC2 instances used to execute the job flow.
|
List<InstanceGroupConfig> |
getInstanceGroups()
Configuration for the job flow's instance groups.
|
Boolean |
getKeepJobFlowAliveWhenNoSteps()
Specifies whether the job flow should be kept alive after completing
all steps.
|
String |
getMasterInstanceType()
The EC2 instance type of the master node.
|
PlacementType |
getPlacement()
The Availability Zone the job flow will run in.
|
String |
getSlaveInstanceType()
The EC2 instance type of the slave nodes.
|
Boolean |
getTerminationProtected()
Specifies whether to lock the job flow to prevent the Amazon EC2
instances from being terminated by API call, user intervention, or in
the event of a job flow error.
|
int |
hashCode() |
Boolean |
isKeepJobFlowAliveWhenNoSteps()
Specifies whether the job flow should be kept alive after completing
all steps.
|
Boolean |
isTerminationProtected()
Specifies whether to lock the job flow to prevent the Amazon EC2
instances from being terminated by API call, user intervention, or in
the event of a job flow error.
|
void |
setAdditionalMasterSecurityGroups(Collection<String> additionalMasterSecurityGroups)
A list of additional Amazon EC2 security group IDs for the master
node.
|
void |
setAdditionalSlaveSecurityGroups(Collection<String> additionalSlaveSecurityGroups)
A list of additional Amazon EC2 security group IDs for the slave
nodes.
|
void |
setEc2KeyName(String ec2KeyName)
The name of the Amazon EC2 key pair that can be used to ssh to the
master node as the user called "hadoop."
|
void |
setEc2SubnetId(String ec2SubnetId)
To launch the job flow in Amazon Virtual Private Cloud (Amazon VPC),
set this parameter to the identifier of the Amazon VPC subnet where
you want the job flow to launch.
|
void |
setEmrManagedMasterSecurityGroup(String emrManagedMasterSecurityGroup)
The identifier of the Amazon EC2 security group (managed by Amazon
ElasticMapReduce) for the master node.
|
void |
setEmrManagedSlaveSecurityGroup(String emrManagedSlaveSecurityGroup)
The identifier of the Amazon EC2 security group (managed by Amazon
ElasticMapReduce) for the slave nodes.
|
void |
setHadoopVersion(String hadoopVersion)
The Hadoop version for the job flow.
|
void |
setInstanceCount(Integer instanceCount)
The number of Amazon EC2 instances used to execute the job flow.
|
void |
setInstanceGroups(Collection<InstanceGroupConfig> instanceGroups)
Configuration for the job flow's instance groups.
|
void |
setKeepJobFlowAliveWhenNoSteps(Boolean keepJobFlowAliveWhenNoSteps)
Specifies whether the job flow should be kept alive after completing
all steps.
|
void |
setMasterInstanceType(String masterInstanceType)
The EC2 instance type of the master node.
|
void |
setPlacement(PlacementType placement)
The Availability Zone the job flow will run in.
|
void |
setSlaveInstanceType(String slaveInstanceType)
The EC2 instance type of the slave nodes.
|
void |
setTerminationProtected(Boolean terminationProtected)
Specifies whether to lock the job flow to prevent the Amazon EC2
instances from being terminated by API call, user intervention, or in
the event of a job flow error.
|
String |
toString()
Returns a string representation of this object; useful for testing and
debugging.
|
JobFlowInstancesConfig |
withAdditionalMasterSecurityGroups(Collection<String> additionalMasterSecurityGroups)
A list of additional Amazon EC2 security group IDs for the master
node.
|
JobFlowInstancesConfig |
withAdditionalMasterSecurityGroups(String... additionalMasterSecurityGroups)
A list of additional Amazon EC2 security group IDs for the master
node.
|
JobFlowInstancesConfig |
withAdditionalSlaveSecurityGroups(Collection<String> additionalSlaveSecurityGroups)
A list of additional Amazon EC2 security group IDs for the slave
nodes.
|
JobFlowInstancesConfig |
withAdditionalSlaveSecurityGroups(String... additionalSlaveSecurityGroups)
A list of additional Amazon EC2 security group IDs for the slave
nodes.
|
JobFlowInstancesConfig |
withEc2KeyName(String ec2KeyName)
The name of the Amazon EC2 key pair that can be used to ssh to the
master node as the user called "hadoop."
|
JobFlowInstancesConfig |
withEc2SubnetId(String ec2SubnetId)
To launch the job flow in Amazon Virtual Private Cloud (Amazon VPC),
set this parameter to the identifier of the Amazon VPC subnet where
you want the job flow to launch.
|
JobFlowInstancesConfig |
withEmrManagedMasterSecurityGroup(String emrManagedMasterSecurityGroup)
The identifier of the Amazon EC2 security group (managed by Amazon
ElasticMapReduce) for the master node.
|
JobFlowInstancesConfig |
withEmrManagedSlaveSecurityGroup(String emrManagedSlaveSecurityGroup)
The identifier of the Amazon EC2 security group (managed by Amazon
ElasticMapReduce) for the slave nodes.
|
JobFlowInstancesConfig |
withHadoopVersion(String hadoopVersion)
The Hadoop version for the job flow.
|
JobFlowInstancesConfig |
withInstanceCount(Integer instanceCount)
The number of Amazon EC2 instances used to execute the job flow.
|
JobFlowInstancesConfig |
withInstanceGroups(Collection<InstanceGroupConfig> instanceGroups)
Configuration for the job flow's instance groups.
|
JobFlowInstancesConfig |
withInstanceGroups(InstanceGroupConfig... instanceGroups)
Configuration for the job flow's instance groups.
|
JobFlowInstancesConfig |
withKeepJobFlowAliveWhenNoSteps(Boolean keepJobFlowAliveWhenNoSteps)
Specifies whether the job flow should be kept alive after completing
all steps.
|
JobFlowInstancesConfig |
withMasterInstanceType(String masterInstanceType)
The EC2 instance type of the master node.
|
JobFlowInstancesConfig |
withPlacement(PlacementType placement)
The Availability Zone the job flow will run in.
|
JobFlowInstancesConfig |
withSlaveInstanceType(String slaveInstanceType)
The EC2 instance type of the slave nodes.
|
JobFlowInstancesConfig |
withTerminationProtected(Boolean terminationProtected)
Specifies whether to lock the job flow to prevent the Amazon EC2
instances from being terminated by API call, user intervention, or in
the event of a job flow error.
|
public JobFlowInstancesConfig()
public String getMasterInstanceType()
Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
public void setMasterInstanceType(String masterInstanceType)
Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
masterInstanceType
- The EC2 instance type of the master node.public JobFlowInstancesConfig withMasterInstanceType(String masterInstanceType)
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
masterInstanceType
- The EC2 instance type of the master node.public String getSlaveInstanceType()
Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
public void setSlaveInstanceType(String slaveInstanceType)
Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
slaveInstanceType
- The EC2 instance type of the slave nodes.public JobFlowInstancesConfig withSlaveInstanceType(String slaveInstanceType)
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
slaveInstanceType
- The EC2 instance type of the slave nodes.public Integer getInstanceCount()
public void setInstanceCount(Integer instanceCount)
instanceCount
- The number of Amazon EC2 instances used to execute the job flow.public JobFlowInstancesConfig withInstanceCount(Integer instanceCount)
Returns a reference to this object so that method calls can be chained together.
instanceCount
- The number of Amazon EC2 instances used to execute the job flow.public List<InstanceGroupConfig> getInstanceGroups()
public void setInstanceGroups(Collection<InstanceGroupConfig> instanceGroups)
instanceGroups
- Configuration for the job flow's instance groups.public JobFlowInstancesConfig withInstanceGroups(InstanceGroupConfig... instanceGroups)
NOTE: This method appends the values to the existing list (if
any). Use setInstanceGroups(java.util.Collection)
or withInstanceGroups(java.util.Collection)
if you want to override the
existing values.
Returns a reference to this object so that method calls can be chained together.
instanceGroups
- Configuration for the job flow's instance groups.public JobFlowInstancesConfig withInstanceGroups(Collection<InstanceGroupConfig> instanceGroups)
Returns a reference to this object so that method calls can be chained together.
instanceGroups
- Configuration for the job flow's instance groups.public String getEc2KeyName()
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
public void setEc2KeyName(String ec2KeyName)
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
ec2KeyName
- The name of the Amazon EC2 key pair that can be used to ssh to the
master node as the user called "hadoop."public JobFlowInstancesConfig withEc2KeyName(String ec2KeyName)
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
ec2KeyName
- The name of the Amazon EC2 key pair that can be used to ssh to the
master node as the user called "hadoop."public PlacementType getPlacement()
public void setPlacement(PlacementType placement)
placement
- The Availability Zone the job flow will run in.public JobFlowInstancesConfig withPlacement(PlacementType placement)
Returns a reference to this object so that method calls can be chained together.
placement
- The Availability Zone the job flow will run in.public Boolean isKeepJobFlowAliveWhenNoSteps()
public void setKeepJobFlowAliveWhenNoSteps(Boolean keepJobFlowAliveWhenNoSteps)
keepJobFlowAliveWhenNoSteps
- Specifies whether the job flow should be kept alive after completing
all steps.public JobFlowInstancesConfig withKeepJobFlowAliveWhenNoSteps(Boolean keepJobFlowAliveWhenNoSteps)
Returns a reference to this object so that method calls can be chained together.
keepJobFlowAliveWhenNoSteps
- Specifies whether the job flow should be kept alive after completing
all steps.public Boolean getKeepJobFlowAliveWhenNoSteps()
public Boolean isTerminationProtected()
public void setTerminationProtected(Boolean terminationProtected)
terminationProtected
- Specifies whether to lock the job flow to prevent the Amazon EC2
instances from being terminated by API call, user intervention, or in
the event of a job flow error.public JobFlowInstancesConfig withTerminationProtected(Boolean terminationProtected)
Returns a reference to this object so that method calls can be chained together.
terminationProtected
- Specifies whether to lock the job flow to prevent the Amazon EC2
instances from being terminated by API call, user intervention, or in
the event of a job flow error.public Boolean getTerminationProtected()
public String getHadoopVersion()
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
public void setHadoopVersion(String hadoopVersion)
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
hadoopVersion
- The Hadoop version for the job flow. Valid inputs are "0.18"
(deprecated), "0.20" (deprecated), "0.20.205" (deprecated), "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.public JobFlowInstancesConfig withHadoopVersion(String hadoopVersion)
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
hadoopVersion
- The Hadoop version for the job flow. Valid inputs are "0.18"
(deprecated), "0.20" (deprecated), "0.20.205" (deprecated), "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.public String getEc2SubnetId()
Amazon VPC currently does not support cluster compute quadruple extra large (cc1.4xlarge) instances. Thus you cannot specify the cc1.4xlarge instance type for nodes of a job flow launched in a Amazon VPC.
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
Amazon VPC currently does not support cluster compute quadruple extra large (cc1.4xlarge) instances. Thus you cannot specify the cc1.4xlarge instance type for nodes of a job flow launched in a Amazon VPC.
public void setEc2SubnetId(String ec2SubnetId)
Amazon VPC currently does not support cluster compute quadruple extra large (cc1.4xlarge) instances. Thus you cannot specify the cc1.4xlarge instance type for nodes of a job flow launched in a Amazon VPC.
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
ec2SubnetId
- To launch the job flow in Amazon Virtual Private Cloud (Amazon VPC),
set this parameter to the identifier of the Amazon VPC subnet where
you want the job flow to launch. If you do not specify this value, the
job flow is launched in the normal Amazon Web Services cloud, outside
of an Amazon VPC. Amazon VPC currently does not support cluster compute quadruple extra large (cc1.4xlarge) instances. Thus you cannot specify the cc1.4xlarge instance type for nodes of a job flow launched in a Amazon VPC.
public JobFlowInstancesConfig withEc2SubnetId(String ec2SubnetId)
Amazon VPC currently does not support cluster compute quadruple extra large (cc1.4xlarge) instances. Thus you cannot specify the cc1.4xlarge instance type for nodes of a job flow launched in a Amazon VPC.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
ec2SubnetId
- To launch the job flow in Amazon Virtual Private Cloud (Amazon VPC),
set this parameter to the identifier of the Amazon VPC subnet where
you want the job flow to launch. If you do not specify this value, the
job flow is launched in the normal Amazon Web Services cloud, outside
of an Amazon VPC. Amazon VPC currently does not support cluster compute quadruple extra large (cc1.4xlarge) instances. Thus you cannot specify the cc1.4xlarge instance type for nodes of a job flow launched in a Amazon VPC.
public String getEmrManagedMasterSecurityGroup()
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
public void setEmrManagedMasterSecurityGroup(String emrManagedMasterSecurityGroup)
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
emrManagedMasterSecurityGroup
- The identifier of the Amazon EC2 security group (managed by Amazon
ElasticMapReduce) for the master node.public JobFlowInstancesConfig withEmrManagedMasterSecurityGroup(String emrManagedMasterSecurityGroup)
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
emrManagedMasterSecurityGroup
- The identifier of the Amazon EC2 security group (managed by Amazon
ElasticMapReduce) for the master node.public String getEmrManagedSlaveSecurityGroup()
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
public void setEmrManagedSlaveSecurityGroup(String emrManagedSlaveSecurityGroup)
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
emrManagedSlaveSecurityGroup
- The identifier of the Amazon EC2 security group (managed by Amazon
ElasticMapReduce) for the slave nodes.public JobFlowInstancesConfig withEmrManagedSlaveSecurityGroup(String emrManagedSlaveSecurityGroup)
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*
emrManagedSlaveSecurityGroup
- The identifier of the Amazon EC2 security group (managed by Amazon
ElasticMapReduce) for the slave nodes.public List<String> getAdditionalMasterSecurityGroups()
public void setAdditionalMasterSecurityGroups(Collection<String> additionalMasterSecurityGroups)
additionalMasterSecurityGroups
- A list of additional Amazon EC2 security group IDs for the master
node.public JobFlowInstancesConfig withAdditionalMasterSecurityGroups(String... additionalMasterSecurityGroups)
NOTE: This method appends the values to the existing list (if
any). Use setAdditionalMasterSecurityGroups(java.util.Collection)
or withAdditionalMasterSecurityGroups(java.util.Collection)
if you want
to override the existing values.
Returns a reference to this object so that method calls can be chained together.
additionalMasterSecurityGroups
- A list of additional Amazon EC2 security group IDs for the master
node.public JobFlowInstancesConfig withAdditionalMasterSecurityGroups(Collection<String> additionalMasterSecurityGroups)
Returns a reference to this object so that method calls can be chained together.
additionalMasterSecurityGroups
- A list of additional Amazon EC2 security group IDs for the master
node.public List<String> getAdditionalSlaveSecurityGroups()
public void setAdditionalSlaveSecurityGroups(Collection<String> additionalSlaveSecurityGroups)
additionalSlaveSecurityGroups
- A list of additional Amazon EC2 security group IDs for the slave
nodes.public JobFlowInstancesConfig withAdditionalSlaveSecurityGroups(String... additionalSlaveSecurityGroups)
NOTE: This method appends the values to the existing list (if
any). Use setAdditionalSlaveSecurityGroups(java.util.Collection)
or withAdditionalSlaveSecurityGroups(java.util.Collection)
if you want
to override the existing values.
Returns a reference to this object so that method calls can be chained together.
additionalSlaveSecurityGroups
- A list of additional Amazon EC2 security group IDs for the slave
nodes.public JobFlowInstancesConfig withAdditionalSlaveSecurityGroups(Collection<String> additionalSlaveSecurityGroups)
Returns a reference to this object so that method calls can be chained together.
additionalSlaveSecurityGroups
- A list of additional Amazon EC2 security group IDs for the slave
nodes.public String toString()
toString
in class Object
Object.toString()
public JobFlowInstancesConfig clone()
Copyright © 2015. All rights reserved.