Os api floating ip

OpenStack Floating IPs API (draft)


 * Launchpad Entry: NovaSpec:openstack-api-floating-ips
 * Created:
 * Contributors: Ilya Alekseyev, Eldar Nugaev, Kirill Shileev

Summary
Our goal is to add support for floating ips management in OpenStack API.

Release Note
Support for floating ips management in OpenStack API.

User stories
Eldar wants to associate additional IP with instance. He should to have possibility to associate address. Then he wants to disassociate address. He also should have such possibility.

Design
At this moment we have implementation of floating IP in EC2 API. That contains next command
 * allocate_address
 * release_address
 * associate_address
 * disassociate_address

List of floating IPs

Response XML

  1 10.0.0.3 11.0.0.1 12  

Response JSON

{   "floating_ips" : [ {           "id" : 1, "ip" : "10.0.0.3", "fixed_ip":"11.0.0.1", "instance_id":12 }   ] }

Floating IP details

Response XML

 1 10.0.0.3</ip> null</fixed_ip> null</instance_id> </floating_ip>

Response JSON

{   "floating_ip" : {           "id" : 1, "ip" : "10.0.0.3", "fixed_ip" : null, "instance_id" : null } }

Associate address

Request XML

<?xml version="1.0" encoding="UTF-8"?> <associate_address> 10.0.0.3</fixed_ip> </associate_address>

Request JSON

{   "associate_address" : { "fixed_ip":"10.0.0.3" } }

Implementation
Add such methods to OS API.

Code Changes
Implementation for autoassociation floating ip was added in http://bazaar.launchpad.net/~hudson-openstack/nova/trunk/revision/1025

BoF agenda and discussion
Add information about floating IP in server details. http://etherpad.openstack.org/os-floating-ip