Class CfnInstanceGroupConfig.Builder

java.lang.Object
software.amazon.awscdk.services.emr.CfnInstanceGroupConfig.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnInstanceGroupConfig>
Enclosing class:
CfnInstanceGroupConfig

@Stability(Stable) public static final class CfnInstanceGroupConfig.Builder extends Object implements software.amazon.jsii.Builder<CfnInstanceGroupConfig>
A fluent builder for CfnInstanceGroupConfig.
  • Method Details

    • create

      @Stability(Stable) public static CfnInstanceGroupConfig.Builder create(Construct scope, String id)
      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
      Returns:
      a new instance of CfnInstanceGroupConfig.Builder.
    • instanceCount

      @Stability(Stable) public CfnInstanceGroupConfig.Builder instanceCount(Number instanceCount)
      Target number of instances for the instance group.

      Parameters:
      instanceCount - Target number of instances for the instance group. This parameter is required.
      Returns:
      this
    • instanceRole

      @Stability(Stable) public CfnInstanceGroupConfig.Builder instanceRole(String instanceRole)
      The role of the instance group in the cluster.

      Allowed Values : TASK

      Parameters:
      instanceRole - The role of the instance group in the cluster. This parameter is required.
      Returns:
      this
    • instanceType

      @Stability(Stable) public CfnInstanceGroupConfig.Builder instanceType(String instanceType)
      The Amazon EC2 instance type for all instances in the instance group.

      Parameters:
      instanceType - The Amazon EC2 instance type for all instances in the instance group. This parameter is required.
      Returns:
      this
    • jobFlowId

      @Stability(Stable) public CfnInstanceGroupConfig.Builder jobFlowId(String jobFlowId)
      The ID of an Amazon EMR cluster that you want to associate this instance group with.

      Parameters:
      jobFlowId - The ID of an Amazon EMR cluster that you want to associate this instance group with. This parameter is required.
      Returns:
      this
    • autoScalingPolicy

      @Stability(Stable) public CfnInstanceGroupConfig.Builder autoScalingPolicy(IResolvable autoScalingPolicy)
      AutoScalingPolicy is a subproperty of InstanceGroupConfig .

      AutoScalingPolicy defines how an instance group dynamically adds and terminates EC2 instances in response to the value of a CloudWatch metric. For more information, see Using Automatic Scaling in Amazon EMR in the Amazon EMR Management Guide .

      Parameters:
      autoScalingPolicy - AutoScalingPolicy is a subproperty of InstanceGroupConfig . This parameter is required.
      Returns:
      this
    • autoScalingPolicy

      @Stability(Stable) public CfnInstanceGroupConfig.Builder autoScalingPolicy(CfnInstanceGroupConfig.AutoScalingPolicyProperty autoScalingPolicy)
      AutoScalingPolicy is a subproperty of InstanceGroupConfig .

      AutoScalingPolicy defines how an instance group dynamically adds and terminates EC2 instances in response to the value of a CloudWatch metric. For more information, see Using Automatic Scaling in Amazon EMR in the Amazon EMR Management Guide .

      Parameters:
      autoScalingPolicy - AutoScalingPolicy is a subproperty of InstanceGroupConfig . This parameter is required.
      Returns:
      this
    • bidPrice

      @Stability(Stable) public CfnInstanceGroupConfig.Builder bidPrice(String bidPrice)
      If specified, indicates that the instance group uses Spot Instances.

      This is the maximum price you are willing to pay for Spot Instances. Specify OnDemandPrice to set the amount equal to the On-Demand price, or specify an amount in USD.

      Parameters:
      bidPrice - If specified, indicates that the instance group uses Spot Instances. This parameter is required.
      Returns:
      this
    • configurations

      @Stability(Stable) public CfnInstanceGroupConfig.Builder configurations(IResolvable configurations)

      Amazon EMR releases 4.x or later.

      The list of configurations supplied for an Amazon EMR cluster instance group. You can specify a separate configuration for each instance group (master, core, and task).

      Parameters:
      configurations -

      Amazon EMR releases 4.x or later.

      This parameter is required.
      Returns:
      this
    • configurations

      @Stability(Stable) public CfnInstanceGroupConfig.Builder configurations(List<? extends Object> configurations)

      Amazon EMR releases 4.x or later.

      The list of configurations supplied for an Amazon EMR cluster instance group. You can specify a separate configuration for each instance group (master, core, and task).

      Parameters:
      configurations -

      Amazon EMR releases 4.x or later.

      This parameter is required.
      Returns:
      this
    • customAmiId

      @Stability(Stable) public CfnInstanceGroupConfig.Builder customAmiId(String customAmiId)
      The custom AMI ID to use for the provisioned instance group.

      Parameters:
      customAmiId - The custom AMI ID to use for the provisioned instance group. This parameter is required.
      Returns:
      this
    • ebsConfiguration

      @Stability(Stable) public CfnInstanceGroupConfig.Builder ebsConfiguration(IResolvable ebsConfiguration)
      EbsConfiguration determines the EBS volumes to attach to EMR cluster instances.

      Parameters:
      ebsConfiguration - EbsConfiguration determines the EBS volumes to attach to EMR cluster instances. This parameter is required.
      Returns:
      this
    • ebsConfiguration

      @Stability(Stable) public CfnInstanceGroupConfig.Builder ebsConfiguration(CfnInstanceGroupConfig.EbsConfigurationProperty ebsConfiguration)
      EbsConfiguration determines the EBS volumes to attach to EMR cluster instances.

      Parameters:
      ebsConfiguration - EbsConfiguration determines the EBS volumes to attach to EMR cluster instances. This parameter is required.
      Returns:
      this
    • market

      @Stability(Stable) public CfnInstanceGroupConfig.Builder market(String market)
      Market type of the Amazon EC2 instances used to create a cluster node.

      Parameters:
      market - Market type of the Amazon EC2 instances used to create a cluster node. This parameter is required.
      Returns:
      this
    • name

      @Stability(Stable) public CfnInstanceGroupConfig.Builder name(String name)
      Friendly name given to the instance group.

      Parameters:
      name - Friendly name given to the instance group. This parameter is required.
      Returns:
      this
    • build

      @Stability(Stable) public CfnInstanceGroupConfig build()
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnInstanceGroupConfig>
      Returns:
      a newly built instance of CfnInstanceGroupConfig.