« Previous | Next » 

Revision 77f0fa63

ID77f0fa63b76bc610d495b1e1c28efb1e17c8b5ed

Added by Christos Stavrakakis over 11 years ago

Implement IP management

Delegate IP management to synnefo, in order to be able to allocate IP
addresses accross multiple Ganeti backends. This is achieved by creating a
Pool of IPs for each Network, in the form of a bitarray, which is stored
in the DB as a base64 string.

Reservation of IPs is done beforing creating the NIC in Ganeti, unlike
releasing which is only done after the notification from Ganeti(hook) is
received.

Reservation and release of address must be performed inside a
transaction, and with the use of select_for_update() statement in order
to guarantee atomic and isolated access to the pool.

Files

  • added
  • modified
  • copied
  • renamed
  • deleted

View differences