2012-11-24 14 views
5

プログラムでEBSを使用してUbuntu 12.04 LTS Server 64ビットを起動しようとしています。私は、次のコードを書いている:InvalidAMIID.NotFound、AWSエラーメッセージ:AMI ID 'ami-c1aaabb5'が存在しません

Placement placement = new Placement("eu-west-1b"); 
RunInstancesRequest runInstancesRequest = new RunInstancesRequest() 
    .withPlacement(placement).withInstanceType("t1.micro") 
    .withImageId("ami-c1aaabb5").withMinCount(1).withMaxCount(1) 
    .withSecurityGroupIds("testGroup").withKeyName("testKey") 
    .withUserData(Base64.encodeBase64String(startupScript.getBytes())); 
RunInstancesResult runInstances = amazonEC2.runInstances(runInstancesRequest); 
List<Instance> instances = runInstances.getReservation().getInstances(); 

はしかし、私はこのエラーを取得する:

AWS Error Code: InvalidAMIID.NotFound, AWS Error Message: The AMI ID 'ami-c1aaabb5' does not exist

私はアマゾンAWSコンソールにしても、このURLでそのインスタンスIDを見つけた:http://cloud-images.ubuntu.com/releases/precise/release-20121001/

私は間違って何をしていますか?

答えて

6

私は、デフォルトで要求が米国バージニアのデータセンターに送信され、問題を解決した正しいエンドポイントを設定していることを理解しました。

public AmazonEC2 createAmazonEC2() { 
    AmazonEC2 ec2 = new AmazonEC2Client(createAwsCredentials()); 
    ec2.setEndpoint("https://eu-west-1.ec2.amazonaws.com"); 
    return ec2; 
} 

private AWSCredentials createAwsCredentials() { 
    AWSCredentials credentials = new BasicAWSCredentials(awsAccessKey, awsSecretKey); 
    return credentials; 
} 
+1

Ah!それで私はずっと時間を節約できました! – Shankar

+0

私はコードを開くことができたかもしれませんが、あなたのポストは私がそれほど多くのことを考える機会を得る前に私を助けました。どうもありがとう。 – Stephano

関連する問題