Class BootstrapActions

java.lang.Object
com.amazonaws.services.elasticmapreduce.util.BootstrapActions

public class BootstrapActions extends Object
Class that provides helper methods for constructing predefined bootstrap actions.
 AWSCredentials credentials = new BasicAWSCredentials(accessKey, secretKey);
 AmazonElasticMapReduce emr = new AmazonElasticMapReduceClient(credentials);

 BootstrapActions bootstrapActions = new BootstrapActions();

 RunJobFlowRequest request = new RunJobFlowRequest()
       .withName("Job Flow With Bootstrap Actions")
       .withBootstrapActions(
             bootstrapActions.newRunIf(
                 "instance.isMaster=true",
                 bootstrapActions.newConfigureDaemons()
                     .withHeapSize(Daemon.JobTracker, 2048)
                     .build()))
       .withLogUri("s3://log-bucket/")
       .withInstances(new JobFlowInstancesConfig()
            .withEc2KeyName("keypair")
            .withHadoopVersion("0.20")
            .withInstanceCount(5)
            .withKeepJobFlowAliveWhenNoSteps(true)
            .withMasterInstanceType("m1.small")
            .withSlaveInstanceType("m1.small"));

 RunJobFlowResult result = emr.runJobFlow(request);
 
  • Constructor Details

    • BootstrapActions

      public BootstrapActions()
      Creates a new default BootstrapActions for us in us-east-1.
    • BootstrapActions

      public BootstrapActions(String bucket)
      Creates a new BootstrapActions.
      Parameters:
      bucket - the bucket from which to download the bootstrap actions.
  • Method Details

    • newRunIf

      public BootstrapActionConfig newRunIf(String condition, BootstrapActionConfig config)
      Create a new run-if bootstrap action which lets you conditionally run bootstrap actions.
      Parameters:
      condition - The condition to evaluate, if true the bootstrap action executes.
      config - The bootstrap action to execute in case of successful evaluation.
      Returns:
      A BootstrapActionConfig to be provided when running a job flow.
    • newConfigureHadoop

      public BootstrapActions.ConfigureHadoop newConfigureHadoop()
      Create a new bootstrap action which lets you configure Hadoop's XML files. ConfigureHadoop is deprecated. Use .elasticmapreduce.model.RunJobFlowRequest#setConfigurations instead. For more information see,
    • newConfigureDaemons

      public BootstrapActions.ConfigureDaemons newConfigureDaemons()
      Create a new bootstrap action which lets you configure Hadoop's daemons. The options are written to the hadoop-user-env.sh file.