【发布时间】:2015-12-14 02:14:01
【问题描述】:
我想使用此代码获取 EC2 实例性能数据:
public void testCreateSpotInstance() throws Exception
{
BasicAWSCredentials bawsc = new BasicAWSCredentials(
"AKI2IUYDKF4KZV1DAL2A", "Onv+nq32tUkiLlKI32H3JtIB7Y4QM3esh01J37tL");
AmazonEC2 ec2 = new AmazonEC2Client(bawsc);
ec2.setEndpoint("ec2.ap-southeast-1.amazonaws.com");
ec2.setRegion(Region.getRegion(Regions.EU_CENTRAL_1));
fetchInstancePublicIP(ec2);
}
public void fetchInstancePublicIP(AmazonEC2 ec2)
{
DescribeInstancesRequest request = new DescribeInstancesRequest().withInstanceIds("i-03f5b2c1");
DescribeInstancesResult result = ec2.describeInstances(request);
List<Reservation> list = result.getReservations();
for (Reservation res : list)
{
List<Instance> instanceList = res.getInstances();
for (Instance instance : instanceList)
{
System.out.println("Public IP : " + instance.getPublicIpAddress());
System.out.println("Public DNS : " + instance.getPublicDnsName());
System.out.println("Instance State : " + instance.getState());
System.out.println("Instance TAGS : " + instance.getTags());
System.out.println("Instance Architecture : " + instance.getArchitecture());
System.out.println("Instance VpcId : " + instance.getVpcId());
System.out.println("Instance Launch Time : " + instance.getLaunchTime());
System.out.println("Instance Root Device Name : " + instance.getRootDeviceName());
System.out.println("Instance Hypervisor : " + instance.getHypervisor());
System.out.println("Instance Root Device Type : " + instance.getRootDeviceType());
System.out.println("Instance Virtualization Type : " + instance.getVirtualizationType());
System.out.println("Instance Location : " + instance.getPlacement());
instance.getNetworkInterfaces();
for (int i = 0; i < instance.getNetworkInterfaces().size(); i++)
{
InstanceNetworkInterface get = instance.getNetworkInterfaces().get(i);
System.out.println("Private Ip Address " + get.getPrivateIpAddress());
System.out.println("Mac Address " + get.getMacAddress());
System.out.println("Private Dns Name " + get.getPrivateDnsName());
InstanceNetworkInterfaceAssociation association = get.getAssociation();
System.out.println("Public Ip " + association.getPublicIp());
System.out.println("Public Dns Name " + association.getPublicDnsName());
System.out.println("Ip Owner Id " + association.getIpOwnerId());
}
}
}
}
我可以获取实例数据,但无法获取有关 CPU 性能和 RAM 的数据。
您能否提供一些建议,如何使用 Java 获取这些数据?
【问题讨论】:
标签: amazon-web-services amazon-ec2