Difference between revisions of "Os api floating ip"
Line 81: | Line 81: | ||
<floating_ip> | <floating_ip> | ||
<id>1</id> | <id>1</id> | ||
− | <ip>10.0.0.3 | + | <ip>10.0.0.3</ip> |
</floating_ip> | </floating_ip> | ||
</floating_ips> | </floating_ips> | ||
Line 94: | Line 94: | ||
{ | { | ||
"id" : 1, | "id" : 1, | ||
− | "ip" : "10.0.0.3 | + | "ip" : "10.0.0.3" |
} | } | ||
] | ] | ||
Line 108: | Line 108: | ||
<floating_ip> | <floating_ip> | ||
<id>1</id> | <id>1</id> | ||
− | <ip>10.0.0.3 | + | <ip>10.0.0.3</ip> |
<fixed_id>null</fixed_ip> | <fixed_id>null</fixed_ip> | ||
<instance_id>null</instance_id> | <instance_id>null</instance_id> | ||
Line 122: | Line 122: | ||
{ | { | ||
"id" : 1, | "id" : 1, | ||
− | "ip" : "10.0.0.3 | + | "ip" : "10.0.0.3", |
"fixed_ip" : null, | "fixed_ip" : null, | ||
"instance_id" : null | "instance_id" : null | ||
} | } | ||
} | } | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</nowiki></pre> | </nowiki></pre> | ||
Line 155: | Line 137: | ||
<?xml version="1.0" encoding="UTF-8"?> | <?xml version="1.0" encoding="UTF-8"?> | ||
<associate_address> | <associate_address> | ||
− | <fixed_ip>10.0.0.3 | + | <fixed_ip>10.0.0.3</fixed_ip> |
</associate_address></nowiki></pre> | </associate_address></nowiki></pre> | ||
Line 164: | Line 146: | ||
{ | { | ||
"associate_address" : { | "associate_address" : { | ||
− | "fixed_ip":"10.0.0.3 | + | "fixed_ip":"10.0.0.3" |
} | } | ||
} | } | ||
</nowiki></pre> | </nowiki></pre> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Implementation == | == Implementation == |
Revision as of 22:59, 15 June 2011
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.
Rationale
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.
Assumptions
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
verb | URI | Request | Response |
POST | /floating_ips/ | n/a | |
GET | /floating_ips/ | n/a | |
GET | /floating_ips/{ip} | n/a | |
GET | /floating_ips/{ip_id} | n/a | |
DELETE | ip_id} | n/a | |
POST | ip_id}/disassociate | n/a | |
POST | ip_id}/associate | fixed ip |
List of floating IPs
Response XML
<floating_ips> <floating_ip> <id>1</id> <ip>10.0.0.3</ip> </floating_ip> </floating_ips>
Response JSON
{ "floating_ips" : [ { "id" : 1, "ip" : "10.0.0.3" } ] }
Floating IP details
Response XML
<floating_ip> <id>1</id> <ip>10.0.0.3</ip> <fixed_id>null</fixed_ip> <instance_id>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> <fixed_ip>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
Migration
Include:
- data migration, if any
- redirects from old URLs to new ones, if any
- how users will be pointed to the new way of doing things, if necessary.
Test/Demo Plan
This need not be added or completed until the specification is nearing beta.
Unresolved issues
This should highlight any issues that should be addressed in further specifications, and not problems with the specification itself; since any specification with problems cannot be approved.
BoF agenda and discussion
Use this section to take notes during the BoF; if you keep it in the approved spec, use it for summarising what was discussed and note any options that were rejected.