获取新创建的实例
问题描述:
的空DNS我写下面的代码来获得新创建的实例的公共DNS但是我得到空获取新创建的实例
DescribeInstancesResult describeInstancesRequest = amazonEC2Client.describeInstances(new DescribeInstancesRequest());
List<Reservation> reservations = describeInstancesRequest.getReservations();
for (Reservation reservation : reservations) {
for (Instance instance1 : reservation.getInstances()) {
dns = instance1.getPublicDnsName();
if(!(dns.equals("")))
{
break;
}
}
}
System.out.println("value:" + dns);
答
所有非运行的情况下,DNS名称为空。您可以查看文档Instance
类
这个名称不可用,直到实例进入
running
状态
如果你有一个VPC
当你启动一个实例上运行到VPC中,只有在为VPC启用DNS主机名的情况下,Amazon才会为公用和专用DNS主机名提供实例。默认情况下,仅对在VPC控制台中使用VPC向导创建的默认VPC和VPC启用DNS主机名。
亚马逊支持以下VPC属性来控制DNS支持。如果您希望您的实例具有可从Internet访问的公用DNS主机名,请确保将这两个属性都设置为true。
- enableDnsHostnames
- enableDnsSupport
是在VPC创建的实例,而无需公网IP? – datasage
是的,但是在创建实例u =之后,已经为其分配了一个公共dns – aquaabhi
这是否意味着您在创建实例后为其分配弹性IP? – datasage