Revision history [back]

One possibility, assuming that the failure doesn't destroy the neutron database:

  • Create a port neutron port-create
  • Assign it a floating IP neutron floatingip-associate ipaddr portid
  • Boot your instance with this port nova boot ... --nic port-id=....
  • After failure, boot an instance from the snapshot, using the same port

Or you bulk-create floating IPs, providing the range, then associate the correct IP to the instance after you booted it:

  • nova floating-ip-bulk-create <range>
  • nova floating-ip-associate <server> <ip from that range>

I doubt there is a guarantee that you will actually get the range you request, so the former approach is probably more robust.