通过AWS Java SDK设置EMR
以下是我设置EMR群集的代码:通过AWS Java SDK设置EMR,java,amazon-web-services,amazon-ec2,emr,Java,Amazon Web Services,Amazon Ec2,Emr,以下是我设置EMR群集的代码: public void createCluster(){ AWSCredentials credentials = new BasicAWSCredentials("xxx","xxx"); AmazonElasticMapReduceClient emr = new AmazonElasticMapReduceClient(credentials); StepFactory stepFactory = new S
public void createCluster(){
AWSCredentials credentials = new BasicAWSCredentials("xxx","xxx");
AmazonElasticMapReduceClient emr = new AmazonElasticMapReduceClient(credentials);
StepFactory stepFactory = new StepFactory();
StepConfig enableDebugging = new StepConfig()
.withName("Enable Debugging")
.withActionOnFailure("TERMINATE_JOB_FLOW")
.withHadoopJarStep(stepFactory.newEnableDebuggingStep());
StepConfig installHive = new StepConfig()
.withName("Install Hive")
.withActionOnFailure("TERMINATE_JOB_FLOW")
.withHadoopJarStep(stepFactory.newInstallHiveStep());
/* StepConfig hiveScript = new StepConfig().withName("Hive Script")
.withActionOnFailure("TERMINATE_JOB_FLOW")
.withHadoopJarStep(stepFactory.newRunHiveScriptStep("s3://mywordcountbuckett/binary/WordCount.jar"));
*/
RunJobFlowRequest request = new RunJobFlowRequest()
.withName("Hive Interactive")
.withAmiVersion("3.8")
.withSteps(enableDebugging, installHive)
.withLogUri("s3://mywordcountbuckett/")
.withServiceRole("EMR_DefaultRole")
.withJobFlowRole("EMR_EC2_DefaultRole")
.withInstances(new JobFlowInstancesConfig()
.withEc2KeyName("mykeypair")
.withInstanceCount(5)
.withKeepJobFlowAliveWhenNoSteps(true)
.withMasterInstanceType("m3.xlarge")
.withSlaveInstanceType("m1.large"));
RunJobFlowResult result = emr.runJobFlow(request);
System.out.println("This is result: " + result.toString());
println打印出以下内容:
This is result: {JobFlowId: j-10BX80MGWF3XQ}
这是否意味着我已成功创建集群?然而,当我试图从aws.amazon.com查看时,没有创建任何集群
EC2中也没有创建任何内容。这是区域问题 放置此代码,所有操作都相应进行:
emr.setRegion(Region.getRegion(Regions.US_WEST_2));
这是地区问题 放置此代码,所有操作都相应进行:
emr.setRegion(Region.getRegion(Regions.US_WEST_2));
从控制台看,您是在看正确的区域吗?从控制台看,您是在看正确的区域吗?