使用openstack4j创建实例可以指定IP或者指定网段然后DHCP分配IP。指定的IP可以直接获取了,那DHCP分配的IP如何获取,看了半天API发现可以通过port去获取。
PortListOptions options = PortListOptions.create();
options.deviceId(serverId);
List<? extends Port> ports = os3.networking().port().list(options);
for (Port p : ports){
Set<? extends IP> ips = p.getFixedIps();
for (IP ip : ips ){
System.out.println(ip.getIpAddress());
}
}