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() |
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 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 for the master node.
|
String |
getEmrManagedSlaveSecurityGroup()
The identifier of the Amazon EC2 security group for the slave nodes.
|
String |
getHadoopVersion()
The Hadoop version for the job flow.
|
Integer |
getInstanceCount()
The number of 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 |
getServiceAccessSecurityGroup()
The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private
subnets.
|
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 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 for the master node.
|
void |
setEmrManagedSlaveSecurityGroup(String emrManagedSlaveSecurityGroup)
The identifier of the Amazon EC2 security group for the slave nodes.
|
void |
setHadoopVersion(String hadoopVersion)
The Hadoop version for the job flow.
|
void |
setInstanceCount(Integer instanceCount)
The number of 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 |
setServiceAccessSecurityGroup(String serviceAccessSecurityGroup)
The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private
subnets.
|
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 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 for the master node.
|
JobFlowInstancesConfig |
withEmrManagedSlaveSecurityGroup(String emrManagedSlaveSecurityGroup)
The identifier of the Amazon EC2 security group for the slave nodes.
|
JobFlowInstancesConfig |
withHadoopVersion(String hadoopVersion)
The Hadoop version for the job flow.
|
JobFlowInstancesConfig |
withInstanceCount(Integer instanceCount)
The number of 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 |
withServiceAccessSecurityGroup(String serviceAccessSecurityGroup)
The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private
subnets.
|
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 void setMasterInstanceType(String masterInstanceType)
The EC2 instance type of the master node.
masterInstanceType
- The EC2 instance type of the master node.public String getMasterInstanceType()
The EC2 instance type of the master node.
public JobFlowInstancesConfig withMasterInstanceType(String masterInstanceType)
The EC2 instance type of the master node.
masterInstanceType
- The EC2 instance type of the master node.public void setSlaveInstanceType(String slaveInstanceType)
The EC2 instance type of the slave nodes.
slaveInstanceType
- The EC2 instance type of the slave nodes.public String getSlaveInstanceType()
The EC2 instance type of the slave nodes.
public JobFlowInstancesConfig withSlaveInstanceType(String slaveInstanceType)
The EC2 instance type of the slave nodes.
slaveInstanceType
- The EC2 instance type of the slave nodes.public void setInstanceCount(Integer instanceCount)
The number of EC2 instances used to execute the job flow.
instanceCount
- The number of EC2 instances used to execute the job flow.public Integer getInstanceCount()
The number of EC2 instances used to execute the job flow.
public JobFlowInstancesConfig withInstanceCount(Integer instanceCount)
The number of EC2 instances used to execute the job flow.
instanceCount
- The number of EC2 instances used to execute the job flow.public List<InstanceGroupConfig> getInstanceGroups()
Configuration for the job flow's instance groups.
public void setInstanceGroups(Collection<InstanceGroupConfig> instanceGroups)
Configuration for the job flow's instance groups.
instanceGroups
- Configuration for the job flow's instance groups.public JobFlowInstancesConfig withInstanceGroups(InstanceGroupConfig... instanceGroups)
Configuration for the job flow's instance groups.
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.
instanceGroups
- Configuration for the job flow's instance groups.public JobFlowInstancesConfig withInstanceGroups(Collection<InstanceGroupConfig> instanceGroups)
Configuration for the job flow's instance groups.
instanceGroups
- Configuration for the job flow's instance groups.public void setEc2KeyName(String ec2KeyName)
The name of the EC2 key pair that can be used to ssh to the master node as the user called "hadoop."
ec2KeyName
- The name of the EC2 key pair that can be used to ssh to the master node as the user called "hadoop."public String getEc2KeyName()
The name of the EC2 key pair that can be used to ssh to the master node as the user called "hadoop."
public JobFlowInstancesConfig withEc2KeyName(String ec2KeyName)
The name of the EC2 key pair that can be used to ssh to the master node as the user called "hadoop."
ec2KeyName
- The name of the EC2 key pair that can be used to ssh to the master node as the user called "hadoop."public void setPlacement(PlacementType placement)
The Availability Zone the job flow will run in.
placement
- The Availability Zone the job flow will run in.public PlacementType getPlacement()
The Availability Zone the job flow will run in.
public JobFlowInstancesConfig withPlacement(PlacementType placement)
The Availability Zone the job flow will run in.
placement
- The Availability Zone the job flow will run in.public void setKeepJobFlowAliveWhenNoSteps(Boolean keepJobFlowAliveWhenNoSteps)
Specifies whether the job flow should be kept alive after completing all steps.
keepJobFlowAliveWhenNoSteps
- Specifies whether the job flow should be kept alive after completing all steps.public Boolean getKeepJobFlowAliveWhenNoSteps()
Specifies whether the job flow should be kept alive after completing all steps.
public JobFlowInstancesConfig withKeepJobFlowAliveWhenNoSteps(Boolean keepJobFlowAliveWhenNoSteps)
Specifies whether the job flow should be kept alive after completing all steps.
keepJobFlowAliveWhenNoSteps
- Specifies whether the job flow should be kept alive after completing all steps.public Boolean isKeepJobFlowAliveWhenNoSteps()
Specifies whether the job flow should be kept alive after completing all steps.
public 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.
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()
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)
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.
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 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.
public void setHadoopVersion(String 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.
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 getHadoopVersion()
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)
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.
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 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. 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.
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 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. 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.
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)
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.
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 void setEmrManagedMasterSecurityGroup(String emrManagedMasterSecurityGroup)
The identifier of the Amazon EC2 security group for the master node.
emrManagedMasterSecurityGroup
- The identifier of the Amazon EC2 security group for the master node.public String getEmrManagedMasterSecurityGroup()
The identifier of the Amazon EC2 security group for the master node.
public JobFlowInstancesConfig withEmrManagedMasterSecurityGroup(String emrManagedMasterSecurityGroup)
The identifier of the Amazon EC2 security group for the master node.
emrManagedMasterSecurityGroup
- The identifier of the Amazon EC2 security group for the master node.public void setEmrManagedSlaveSecurityGroup(String emrManagedSlaveSecurityGroup)
The identifier of the Amazon EC2 security group for the slave nodes.
emrManagedSlaveSecurityGroup
- The identifier of the Amazon EC2 security group for the slave nodes.public String getEmrManagedSlaveSecurityGroup()
The identifier of the Amazon EC2 security group for the slave nodes.
public JobFlowInstancesConfig withEmrManagedSlaveSecurityGroup(String emrManagedSlaveSecurityGroup)
The identifier of the Amazon EC2 security group for the slave nodes.
emrManagedSlaveSecurityGroup
- The identifier of the Amazon EC2 security group for the slave nodes.public void setServiceAccessSecurityGroup(String serviceAccessSecurityGroup)
The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private subnets.
serviceAccessSecurityGroup
- The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC
private subnets.public String getServiceAccessSecurityGroup()
The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private subnets.
public JobFlowInstancesConfig withServiceAccessSecurityGroup(String serviceAccessSecurityGroup)
The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private subnets.
serviceAccessSecurityGroup
- The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC
private subnets.public List<String> getAdditionalMasterSecurityGroups()
A list of additional Amazon EC2 security group IDs for the master node.
public void setAdditionalMasterSecurityGroups(Collection<String> additionalMasterSecurityGroups)
A list of additional Amazon EC2 security group IDs for the master node.
additionalMasterSecurityGroups
- A list of additional Amazon EC2 security group IDs for the master node.public JobFlowInstancesConfig withAdditionalMasterSecurityGroups(String... additionalMasterSecurityGroups)
A list of additional Amazon EC2 security group IDs for the master node.
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.
additionalMasterSecurityGroups
- A list of additional Amazon EC2 security group IDs for the master node.public JobFlowInstancesConfig withAdditionalMasterSecurityGroups(Collection<String> additionalMasterSecurityGroups)
A list of additional Amazon EC2 security group IDs for the master node.
additionalMasterSecurityGroups
- A list of additional Amazon EC2 security group IDs for the master node.public List<String> getAdditionalSlaveSecurityGroups()
A list of additional Amazon EC2 security group IDs for the slave nodes.
public void setAdditionalSlaveSecurityGroups(Collection<String> additionalSlaveSecurityGroups)
A list of additional Amazon EC2 security group IDs for the slave nodes.
additionalSlaveSecurityGroups
- A list of additional Amazon EC2 security group IDs for the slave nodes.public JobFlowInstancesConfig withAdditionalSlaveSecurityGroups(String... additionalSlaveSecurityGroups)
A list of additional Amazon EC2 security group IDs for the slave nodes.
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.
additionalSlaveSecurityGroups
- A list of additional Amazon EC2 security group IDs for the slave nodes.public JobFlowInstancesConfig withAdditionalSlaveSecurityGroups(Collection<String> additionalSlaveSecurityGroups)
A list of additional Amazon EC2 security group IDs for the slave nodes.
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 © 2013 Amazon Web Services, Inc. All Rights Reserved.