1

次のコードで使用している実行中の ec2 インスタンスについて説明しようとしています。

DescribeInstancesResult describeInstancesRequest = ec2.describeInstances();
            List<Reservation> reservations = describeInstancesRequest.getReservations();
            Set<Instance> instances = new HashSet<Instance>();

            for (Reservation reservation : reservations) {
                instances.addAll(reservation.getInstances());
            }

            System.out.println("You have " + instances.size() + " Amazon EC2 instance(s) running.");

返される結果が 0 になっています。これは、デフォルトの AZ が US-East に設定されているためだと思います。

私のインスタンスは米国西部で実行されています。

AZ を変更するにはどうすればよいですか?

4

2 に答える 2

1

次のようにエンドポイントを設定できます。

ec2.setEndpoint("ec2.us-west-1.amazonaws.com");

于 2012-11-16T21:47:45.460 に答える
1

この投稿に出くわした人にとって、これを行う現在の方法は次のとおりです。

    AmazonEC2 ec2 = new AmazonEC2Client(new StaticCredentialsProvider(new BasicAWSCredentials("your-aws-access-key-here", "your-aws-secret-here")));
    DescribeInstancesRequest request = new DescribeInstancesRequest();

    Filter filter = new Filter()
            .withName("availability-zone")
            .withValues("us-east-1a");

    request.withFilters(filter);

    DescribeInstancesResult result = ec2.describeInstances(request);
    List<Reservation> reservations = result.getReservations();
于 2015-09-22T19:34:18.103 に答える