Neutron/LBaaS
Overview
LBaaS (Load-balancer-as-a-Service) is Quantum extension that introduces load balancing feature set into the core. It became a sub-project of Quantum per decisions in "San Diego Oct-2012 Design Summit" since there was huge interest from Vendors and Community to participate in this effort.
Agenda for Havana OpenStack Summit
https://etherpad.openstack.org/havana-quantum-lbaas
LBaaS Plan for Havana
Current Design Discussions + whats need to be done
- Initial Discussions Document NetworkLoadBalancingIntegrationsWithQuantum
- May need to specify workflow of LB provisioning in all scenarios that LBaaS is going to support.
- Object Model proposal - LBaaS/CoreResourceModel/proposal
- All agreed upon. Might need minor update to include resources needed for device management (HW device catalog)
- Tenant REST API - main proposal Quantum/LBaaS/API_1.0
- Discussion about tenant_id in URL ended with most people agreeing to go with 2.0 style or URL (no tenant_id in URL)
- Service Insertion - Spring Proposal ServicesInsertion and Fall Proposal Quantum/ServiceInsertion
- Things to be discussed:
- Insertion modes: what is simplest and what should be implemented in the first place.
- changes in existing resource model (router)
- service catalog configuration
- API
- Things to be discussed:
- Agreed on:
- Single Plugin per service type at a time. Vendor specific device access is implemented via drivers. Drivers could provide vendor-specific extra features. 1:1 mapping between extensions and plugins.
- Provider API / Device Management - proposal Quantum/DeviceManagementAPI
- The document describes API/process of registering a physical appliance as an LB device.
- Balancer provisioning - proposal Quantum/LBaaS/Provisioning/proposal
- The document needs to be updated with workflows that correspond to (1)
- Overall code architecture proposal Quantum/LBaaS/Architecture
- Contains overall picture of components and what they do. Sequence diagram needs to be updated according to latest decision about async execution.
- Miscellaneous
- Device Locking - proposal Quantum/LBaaS/Architecture/ConcurrentRequests
- Asynchronous execution (discussion):
- Client gets immediate response with Job ID which it polls later on. May need to have short design spec on this.
- Inter-service resource dependency (discussion):
- Resources of different advanced services may depend on one another. Solution options: (?)
- Support "Service Type" in LBaaS API. https://docs.google.com/document/d/1H_OQa-Vm4oqp-Cs-s47xhatUq4mMLZWZVTIu0ypHLlA/edit
Mettings
We have a weekly meeting on every "Tuesday at 9:00 AM (Pacific TIme)" for discussing the Project Status, Issues, Work Item Rebalancing etc.
Agenda for 10/23/2012 Meeting
- Work Planning and Tasks Assignment
- Discuss Deliverables for Grizzly 1 as per http://wiki.openstack.org/GrizzlyReleaseSchedule
- Dev Environment Set up Discussions - http://wiki.openstack.org/QuantumDevelopment
- Proposal - http://wiki.openstack.org/LBaaS/CoreResourceModel/proposal
- Etherpad - https://etherpad.openstack.org/grizzly-quantum-lbaas
- BluePrints - (TBD)
Phones:
- (855) 227-1767(USA) - 08003765931(UK) Conf. Code 7152259
- 0008006103229 (India – Toll Free)
- 81080024322044 (Moscow), 4992701688(Moscow)
Web Conf: https://myroom-na.adobeconnect.com/anandpalanisamy/ https://www.intercallonline.com/portlets/scheduling/viewNumbers/listNumbersByCode.do?confCode=7152259&name=&email=&selectedProduct=joinMeeting
Efforts Summary
The following content summarizes the effort that the community put together to reach the "One-LBaaS for OpenStack" goal.
Agenda for Grizzly OpenStack Summit
See http://etherpad.openstack.org/grizzly-quantum-lbaas
Link to Existing Resources
Equilibrium (Mirantis LBaaS)
- Project overview: https://docs.google.com/document/pub?id=1DRgQhZJ73EyzQ2KvzVQd7Li9YEL7fXWBp8reMdAEhiM
- Screencast: http://www.youtube.com/watch?v=NgAL-kfdbtE
- REST API: https://github.com/Mirantis/openstack-lbaas/wiki/REST%20API
- CLI tool: https://github.com/Mirantis/openstack-lbaas-cli/wiki
- Roadmap: https://docs.google.com/document/pub?id=1yJZXI0WfpAZKhHaLQu7LaxGLrs4REmn0a5bYVbvsCTQ
- Code repositories:
- Main: https://github.com/Mirantis/openstack-lbaas
- CLI tool: https://github.com/Mirantis/openstack-lbaas-cli
- Integration with Horizon (Essex): https://github.com/Mirantis/openstack-lbaas-horizon
- F5 BigIP Driver: https://github.com/gapinc/openstack-lbaas-f5-bigip
- Quantum integration: https://docs.google.com/document/pub?id=1tZxt-AiSBVtcadUymWGskTzw6eD_Tfgp9sKeCxVAUG8
Atlas project
- Atlas project resources: http://wiki.openstack.org/Atlas/Resources
eBay/PayPal Project
- Overview, Resource Model, APIs & PayLoads - attachment:eBay-PayPal-LBaaS
- Updated resource model for Provider Side API : attachment:eBay LB Resource Model.png
LBaaS w/ resource model focused on config re-use
- Quantum/LBaaS/LBaaS_reuse_option - resource model & API suggestions (Serge Maskalik)
- LBaaS/CoreResourceModel/proposal - revised resource model suggestion (Youcef Laribi)