Class EmrCreateCluster.InstancesConfigProperty.Builder
java.lang.Object
software.amazon.awscdk.services.stepfunctions.tasks.EmrCreateCluster.InstancesConfigProperty.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<EmrCreateCluster.InstancesConfigProperty>
- Enclosing interface:
EmrCreateCluster.InstancesConfigProperty
@Stability(Stable)
public static final class EmrCreateCluster.InstancesConfigProperty.Builder
extends Object
implements software.amazon.jsii.Builder<EmrCreateCluster.InstancesConfigProperty>
A builder for
EmrCreateCluster.InstancesConfigProperty
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionadditionalMasterSecurityGroups
(List<String> additionalMasterSecurityGroups) additionalSlaveSecurityGroups
(List<String> additionalSlaveSecurityGroups) build()
Builds the configured instance.ec2KeyName
(String ec2KeyName) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getEc2KeyName()
ec2SubnetId
(String ec2SubnetId) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getEc2SubnetId()
ec2SubnetIds
(List<String> ec2SubnetIds) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getEc2SubnetIds()
emrManagedMasterSecurityGroup
(String emrManagedMasterSecurityGroup) emrManagedSlaveSecurityGroup
(String emrManagedSlaveSecurityGroup) hadoopVersion
(String hadoopVersion) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getHadoopVersion()
instanceCount
(Number instanceCount) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getInstanceCount()
instanceFleets
(List<? extends EmrCreateCluster.InstanceFleetConfigProperty> instanceFleets) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getInstanceFleets()
instanceGroups
(List<? extends EmrCreateCluster.InstanceGroupConfigProperty> instanceGroups) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getInstanceGroups()
masterInstanceType
(String masterInstanceType) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getMasterInstanceType()
placement
(EmrCreateCluster.PlacementTypeProperty placement) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getPlacement()
serviceAccessSecurityGroup
(String serviceAccessSecurityGroup) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getServiceAccessSecurityGroup()
slaveInstanceType
(String slaveInstanceType) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getSlaveInstanceType()
terminationProtected
(Boolean terminationProtected) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getTerminationProtected()
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
additionalMasterSecurityGroups
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder additionalMasterSecurityGroups(List<String> additionalMasterSecurityGroups) - Parameters:
additionalMasterSecurityGroups
- A list of additional Amazon EC2 security group IDs for the master node.- Returns:
this
-
additionalSlaveSecurityGroups
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder additionalSlaveSecurityGroups(List<String> additionalSlaveSecurityGroups) - Parameters:
additionalSlaveSecurityGroups
- A list of additional Amazon EC2 security group IDs for the core and task nodes.- Returns:
this
-
ec2KeyName
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder ec2KeyName(String ec2KeyName) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getEc2KeyName()
- Parameters:
ec2KeyName
- The name of the EC2 key pair that can be used to ssh to the master node as the user called "hadoop.".- Returns:
this
-
ec2SubnetId
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder ec2SubnetId(String ec2SubnetId) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getEc2SubnetId()
- Parameters:
ec2SubnetId
- Applies to clusters that use the uniform instance group configuration. To launch the cluster in Amazon Virtual Private Cloud (Amazon VPC), set this parameter to the identifier of the Amazon VPC subnet where you want the cluster to launch.- Returns:
this
-
ec2SubnetIds
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder ec2SubnetIds(List<String> ec2SubnetIds) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getEc2SubnetIds()
- Parameters:
ec2SubnetIds
- Applies to clusters that use the instance fleet configuration. When multiple EC2 subnet IDs are specified, Amazon EMR evaluates them and launches instances in the optimal subnet.- Returns:
this
-
emrManagedMasterSecurityGroup
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder emrManagedMasterSecurityGroup(String emrManagedMasterSecurityGroup) - Parameters:
emrManagedMasterSecurityGroup
- The identifier of the Amazon EC2 security group for the master node.- Returns:
this
-
emrManagedSlaveSecurityGroup
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder emrManagedSlaveSecurityGroup(String emrManagedSlaveSecurityGroup) - Parameters:
emrManagedSlaveSecurityGroup
- The identifier of the Amazon EC2 security group for the core and task nodes.- Returns:
this
-
hadoopVersion
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder hadoopVersion(String hadoopVersion) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getHadoopVersion()
- Parameters:
hadoopVersion
- Applies only to Amazon EMR release versions earlier than 4.0. The Hadoop version for the cluster.- Returns:
this
-
instanceCount
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder instanceCount(Number instanceCount) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getInstanceCount()
- Parameters:
instanceCount
- The number of EC2 instances in the cluster.- Returns:
this
-
instanceFleets
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder instanceFleets(List<? extends EmrCreateCluster.InstanceFleetConfigProperty> instanceFleets) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getInstanceFleets()
- Parameters:
instanceFleets
- Describes the EC2 instances and instance configurations for clusters that use the instance fleet configuration. The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions.- Returns:
this
-
instanceGroups
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder instanceGroups(List<? extends EmrCreateCluster.InstanceGroupConfigProperty> instanceGroups) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getInstanceGroups()
- Parameters:
instanceGroups
- Configuration for the instance groups in a cluster.- Returns:
this
-
masterInstanceType
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder masterInstanceType(String masterInstanceType) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getMasterInstanceType()
- Parameters:
masterInstanceType
- The EC2 instance type of the master node.- Returns:
this
-
placement
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder placement(EmrCreateCluster.PlacementTypeProperty placement) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getPlacement()
- Parameters:
placement
- The Availability Zone in which the cluster runs.- Returns:
this
-
serviceAccessSecurityGroup
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder serviceAccessSecurityGroup(String serviceAccessSecurityGroup) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getServiceAccessSecurityGroup()
- Parameters:
serviceAccessSecurityGroup
- The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private subnets.- Returns:
this
-
slaveInstanceType
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder slaveInstanceType(String slaveInstanceType) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getSlaveInstanceType()
- Parameters:
slaveInstanceType
- The EC2 instance type of the core and task nodes.- Returns:
this
-
terminationProtected
@Stability(Stable) public EmrCreateCluster.InstancesConfigProperty.Builder terminationProtected(Boolean terminationProtected) Sets the value ofEmrCreateCluster.InstancesConfigProperty.getTerminationProtected()
- Parameters:
terminationProtected
- Specifies whether to lock the cluster to prevent the Amazon EC2 instances from being terminated by API call, user intervention, or in the event of a job-flow error.- Returns:
this
-
build
Builds the configured instance.- Specified by:
build
in interfacesoftware.amazon.jsii.Builder<EmrCreateCluster.InstancesConfigProperty>
- Returns:
- a new instance of
EmrCreateCluster.InstancesConfigProperty
- Throws:
NullPointerException
- if any required attribute was not provided
-