Class InstanceGroupArgs.Builder

  • Enclosing class:
    InstanceGroupArgs

    public static final class InstanceGroupArgs.Builder
    extends java.lang.Object
    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • autoscalingPolicy

        public InstanceGroupArgs.Builder autoscalingPolicy​(@Nullable
                                                           com.pulumi.core.Output<java.lang.String> autoscalingPolicy)
        Parameters:
        autoscalingPolicy - The Auto Scaling policy document. This is a JSON formatted string. See [EMR Auto Scaling](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-automatic-scaling.html)
        Returns:
        builder
      • autoscalingPolicy

        public InstanceGroupArgs.Builder autoscalingPolicy​(java.lang.String autoscalingPolicy)
        Parameters:
        autoscalingPolicy - The Auto Scaling policy document. This is a JSON formatted string. See [EMR Auto Scaling](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-automatic-scaling.html)
        Returns:
        builder
      • bidPrice

        public InstanceGroupArgs.Builder bidPrice​(@Nullable
                                                  com.pulumi.core.Output<java.lang.String> bidPrice)
        Parameters:
        bidPrice - If set, the bid price for each EC2 instance in the instance group, expressed in USD. By setting this attribute, the instance group is being declared as a Spot Instance, and will implicitly create a Spot request. Leave this blank to use On-Demand Instances.
        Returns:
        builder
      • bidPrice

        public InstanceGroupArgs.Builder bidPrice​(java.lang.String bidPrice)
        Parameters:
        bidPrice - If set, the bid price for each EC2 instance in the instance group, expressed in USD. By setting this attribute, the instance group is being declared as a Spot Instance, and will implicitly create a Spot request. Leave this blank to use On-Demand Instances.
        Returns:
        builder
      • clusterId

        public InstanceGroupArgs.Builder clusterId​(com.pulumi.core.Output<java.lang.String> clusterId)
        Parameters:
        clusterId - ID of the EMR Cluster to attach to. Changing this forces a new resource to be created.
        Returns:
        builder
      • clusterId

        public InstanceGroupArgs.Builder clusterId​(java.lang.String clusterId)
        Parameters:
        clusterId - ID of the EMR Cluster to attach to. Changing this forces a new resource to be created.
        Returns:
        builder
      • configurationsJson

        public InstanceGroupArgs.Builder configurationsJson​(@Nullable
                                                            com.pulumi.core.Output<java.lang.String> configurationsJson)
        Parameters:
        configurationsJson - A JSON string for supplying list of configurations specific to the EMR instance group. Note that this can only be changed when using EMR release 5.21 or later.
         
         package generated_program;
         
         import com.pulumi.Context;
         import com.pulumi.Pulumi;
         import com.pulumi.core.Output;
         import com.pulumi.aws.emr.InstanceGroup;
         import com.pulumi.aws.emr.InstanceGroupArgs;
         import java.util.ArrayList;
         import java.util.Arrays;
         import java.util.Map;
         import java.io.File;
         import java.nio.file.Files;
         import java.nio.file.Paths;
         
         public class App {
             public static void main(String[] args) {
                 Pulumi.run(App::stack);
             }
         
             public static void stack(Context ctx) {
                 var task = new InstanceGroup("task", InstanceGroupArgs.builder()
                     .configurationsJson("""
         [
         {
         \"Classification\": \"hadoop-env\",
         \"Configurations\": [
         {
         \"Classification\": \"export\",
         \"Properties\": {
         \"JAVA_HOME\": \"/usr/lib/jvm/java-1.8.0\"
         }
         }
         ],
         \"Properties\": {}
         }
         ]
                     """)
                     .build());
         
             }
         }
         
         
        Returns:
        builder
      • configurationsJson

        public InstanceGroupArgs.Builder configurationsJson​(java.lang.String configurationsJson)
        Parameters:
        configurationsJson - A JSON string for supplying list of configurations specific to the EMR instance group. Note that this can only be changed when using EMR release 5.21 or later.
         
         package generated_program;
         
         import com.pulumi.Context;
         import com.pulumi.Pulumi;
         import com.pulumi.core.Output;
         import com.pulumi.aws.emr.InstanceGroup;
         import com.pulumi.aws.emr.InstanceGroupArgs;
         import java.util.ArrayList;
         import java.util.Arrays;
         import java.util.Map;
         import java.io.File;
         import java.nio.file.Files;
         import java.nio.file.Paths;
         
         public class App {
             public static void main(String[] args) {
                 Pulumi.run(App::stack);
             }
         
             public static void stack(Context ctx) {
                 var task = new InstanceGroup("task", InstanceGroupArgs.builder()
                     .configurationsJson("""
         [
         {
         \"Classification\": \"hadoop-env\",
         \"Configurations\": [
         {
         \"Classification\": \"export\",
         \"Properties\": {
         \"JAVA_HOME\": \"/usr/lib/jvm/java-1.8.0\"
         }
         }
         ],
         \"Properties\": {}
         }
         ]
                     """)
                     .build());
         
             }
         }
         
         
        Returns:
        builder
      • ebsConfigs

        public InstanceGroupArgs.Builder ebsConfigs​(@Nullable
                                                    com.pulumi.core.Output<java.util.List<InstanceGroupEbsConfigArgs>> ebsConfigs)
        Parameters:
        ebsConfigs - One or more `ebsConfig` blocks as defined below. Changing this forces a new resource to be created.
        Returns:
        builder
      • ebsConfigs

        public InstanceGroupArgs.Builder ebsConfigs​(java.util.List<InstanceGroupEbsConfigArgs> ebsConfigs)
        Parameters:
        ebsConfigs - One or more `ebsConfig` blocks as defined below. Changing this forces a new resource to be created.
        Returns:
        builder
      • ebsOptimized

        public InstanceGroupArgs.Builder ebsOptimized​(@Nullable
                                                      com.pulumi.core.Output<java.lang.Boolean> ebsOptimized)
        Parameters:
        ebsOptimized - Indicates whether an Amazon EBS volume is EBS-optimized. Changing this forces a new resource to be created.
        Returns:
        builder
      • ebsOptimized

        public InstanceGroupArgs.Builder ebsOptimized​(java.lang.Boolean ebsOptimized)
        Parameters:
        ebsOptimized - Indicates whether an Amazon EBS volume is EBS-optimized. Changing this forces a new resource to be created.
        Returns:
        builder
      • instanceCount

        public InstanceGroupArgs.Builder instanceCount​(@Nullable
                                                       com.pulumi.core.Output<java.lang.Integer> instanceCount)
        Parameters:
        instanceCount - target number of instances for the instance group. defaults to 0.
        Returns:
        builder
      • instanceCount

        public InstanceGroupArgs.Builder instanceCount​(java.lang.Integer instanceCount)
        Parameters:
        instanceCount - target number of instances for the instance group. defaults to 0.
        Returns:
        builder
      • instanceType

        public InstanceGroupArgs.Builder instanceType​(com.pulumi.core.Output<java.lang.String> instanceType)
        Parameters:
        instanceType - The EC2 instance type for all instances in the instance group. Changing this forces a new resource to be created.
        Returns:
        builder
      • instanceType

        public InstanceGroupArgs.Builder instanceType​(java.lang.String instanceType)
        Parameters:
        instanceType - The EC2 instance type for all instances in the instance group. Changing this forces a new resource to be created.
        Returns:
        builder
      • name

        public InstanceGroupArgs.Builder name​(@Nullable
                                              com.pulumi.core.Output<java.lang.String> name)
        Parameters:
        name - Human friendly name given to the instance group. Changing this forces a new resource to be created.
        Returns:
        builder
      • name

        public InstanceGroupArgs.Builder name​(java.lang.String name)
        Parameters:
        name - Human friendly name given to the instance group. Changing this forces a new resource to be created.
        Returns:
        builder
      • region

        public InstanceGroupArgs.Builder region​(@Nullable
                                                com.pulumi.core.Output<java.lang.String> region)
        Parameters:
        region - Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
        Returns:
        builder
      • region

        public InstanceGroupArgs.Builder region​(java.lang.String region)
        Parameters:
        region - Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
        Returns:
        builder