Revision 77f0fa63
ID | 77f0fa63b76bc610d495b1e1c28efb1e17c8b5ed |
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