Jump to: navigation, search

Difference between revisions of "Neutron/LBaaS"

m (ThierryCarrez moved page Quantum/LBaaS to Neutron/LBaaS)
m
(21 intermediate revisions by 6 users not shown)
Line 1: Line 1:
 
= Overview =
 
= 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.
+
LBaaS (Load-Balancing-as-a-Service) is currently an advanced service of Neutron. It allows for proprietary ''and'' open-source load balancing technologies to drive the actual load balancing of requests. Thus, an OpenStack operator can choose which back-end technology to use. The long-term vision for the project, however, is to provide a single API that allows a user to seamlessly move between different load balancing technologies should the operator choose to do so. While LBaaS is currently part of Neutron, plans are underway to make it a separate project within Openstack yet still under the Networking umbrella. Please see below to see what is currently being worked on for the current cycle.
  
== Agenda for Havana OpenStack Summit ==
+
==== Features ====
https://etherpad.openstack.org/havana-quantum-lbaas
+
''TODO: Fill out''
  
== LBaaS Plan for Havana ==
+
==== Neutron LBaaS Architecture ====
[[Quantum/LBaaS/HavanaPlan]]
+
[[Neutron_LBaaS_Arch]]
== 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 [http://wiki.openstack.org/QuantumServicesInsertion 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
 
# 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 =
+
= How do I contribute? =
We have a weekly meeting on every "Tuesday at 9:00 AM (Pacific TIme)" for discussing the Project Status, Issues, Work Item Rebalancing etc.
+
First of all thanks for joining our cause! The best way to contribute is to join the discussions on IRC and the mailing list. To get up to speed however, please take a look at the requirements section to see what is on the road-map. It would also benefit you to take a look at the weekly standup etherpad document that gets updated every week. This document will get you up to speed on what each individual team/individual is currently working on. Lastly, don't hesitate to ask community members questions!
  
== Agenda for 10/23/2012 Meeting ==
+
= Communication Channels =
* Work Planning and Tasks Assignment
+
* '''IRC:''' #openstack-lbaas
* Discuss Deliverables for Grizzly 1 as per http://wiki.openstack.org/GrizzlyReleaseSchedule
+
* '''IRC Weekly Meeting:''' #openstack-meeting every Thursday @ 14:00 UTC
* Dev Environment Set up Discussions  - http://wiki.openstack.org/QuantumDevelopment
+
* '''Mailing List:''' openstack-dev [at] lists [dot] openstack [dot] org. Please prefix subject with '[openstack-dev][Neutron][LBaaS]'
* Proposal - http://wiki.openstack.org/LBaaS/CoreResourceModel/proposal
 
* Etherpad - https://etherpad.openstack.org/grizzly-quantum-lbaas
 
* [[BluePrints]] - (TBD)
 
  
Phones:
+
= Relevant Links =
 +
=== Links Related to Community Process ===
 +
* [https://etherpad.openstack.org/p/neutron-lbaas-weekly-standup Weekly Standup Info ]
 +
* [[Network/LBaaS#Agenda|Weekly Meeting Agenda]]
 +
* [https://etherpad.openstack.org/p/lbaas_reviews Current reviews ]
  
* (855) 227-1767(USA) - 08003765931(UK)  Conf. Code 7152259
+
=== Requirements, Use Cases & Operator Data ===
* 0008006103229 (India – Toll Free)
+
* [https://wiki.openstack.org/wiki/Neutron/LBaaS/requirements Requirements ]
* 81080024322044 (Moscow), 4992701688(Moscow)
+
* [https://docs.google.com/document/d/1Ewl95yxAMq2fO0Z6Dz6fL-w2FScERQXQR1-mXuSINis/edit# Use Cases ]
 +
* [https://docs.google.com/spreadsheet/ccc?key=0Ar1FuMFYRhgadDVXZ25NM2NfbGtLTkR0TDFNUWJQUWc#gid=0 Operator Feature Usage & Metrics ]
  
Web Conf: https://myroom-na.adobeconnect.com/anandpalanisamy/ https://www.intercallonline.com/portlets/scheduling/viewNumbers/listNumbersByCode.do?confCode=7152259&name=&email=&selectedProduct=joinMeeting
+
=== Links Related to Juno Release===
 +
==== Atlanta OpenStack Summit Sessions ====
 +
* [https://etherpad.openstack.org/p/juno-neutron-lbaas Session #1]
 +
* [https://etherpad.openstack.org/p/neutron-lbaas-ssl-l7 Session #2]
 +
* [https://etherpad.openstack.org/p/AdvancedServices_and_Neutron Adhoc Session on "Making a separate service from Neutron"]
  
= Efforts Summary =
+
==== LBaaS Juno Mid Cycle Meeting ====
The following content summarizes the effort that the community put together to reach the "One-LBaaS for [[OpenStack]]" goal.
+
* [https://etherpad.openstack.org/p/neutron-juno-lbaas-mid-cycle Planning & Logistics ]
 +
* [https://etherpad.openstack.org/p/1gsTm4GBdu Agenda & Preparation ]
 +
* [https://etherpad.openstack.org/p/juno-lbaas-mid-cycle-hackathon Notes From Hackathon ]
  
=== Agenda for Grizzly [[OpenStack]] Summit ===
+
==== Blueprints Actively Worked On ====
See http://etherpad.openstack.org/grizzly-quantum-lbaas
+
* [https://blueprints.launchpad.net/neutron/+spec/lbaas-api-and-objmodel-improvement LBaaS API and object model improvement ]
 +
* [https://blueprints.launchpad.net/neutron/+spec/neutron-flavor-framework Provide better user-facing mechanism to chose service capabilities ]
 +
* [https://blueprints.launchpad.net/neutron/+spec/lbaas-ref-impl-tls-support LBaaS reference implementation TLS support ]
 +
* [https://blueprints.launchpad.net/neutron/+spec/lbaas-ssl-termination Support SSL Termination in Neutron LBaaS ]
 +
* [https://blueprints.launchpad.net/neutron/+spec/lbaas-l7-rules LBaaS Layer 7 rules ]
 +
* [https://blueprints.launchpad.net/barbican/+spec/api-add-container-registration *Barbican BP* Add a service registration feature to the Containers resource ]
 +
* [https://blueprints.launchpad.net/neutron/+spec/neutron-services-insertion-chaining-steering Neutron Services Insertion, Chaining, and Steering ]
  
= Link to Existing Resources =
+
==== Other Links ====
== Equilibrium (Mirantis LBaaS) ==
+
* https://etherpad.openstack.org/p/neutron-lbaas-api-proposals
* Project overview: https://docs.google.com/document/pub?id=1DRgQhZJ73EyzQ2KvzVQd7Li9YEL7fXWBp8reMdAEhiM
+
* https://etherpad.openstack.org/p/neutron-lbaas-ssl-l7
* Screencast: http://www.youtube.com/watch?v=NgAL-kfdbtE
+
* https://etherpad.openstack.org/p/LBaaS_project_name_vote
* REST API: [https://github.com/Mirantis/openstack-lbaas/wiki/REST%20API 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 ==
+
= Neutron LBaaS BoneYard =
* Atlas project resources: http://wiki.openstack.org/Atlas/Resources
+
This page contains older content that is no longer being kept up to date. Use at your own risk :-)
  
== eBay/PayPal Project ==
+
[[LBaaS/BoneYard]]
* 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)
 
 
 
== LBaaS Integrated with Quantum (Sam Bercovici) ==
 
* https://docs.google.com/a/nicira.com/document/d/10HpTpvRzjqDhnGnWFdMv19mENbb_TsMMvAAozzSu8hc/edit
 
 
 
== LBaaS with Quantum (Alex Gosse) ==
 
* https://docs.google.com/a/nicira.com/document/pub?id=1B8Xu8Td05dd_ar4aTej8pA3UDH8f3-bE8h5Oyg6Z2OU
 

Revision as of 03:34, 16 September 2015

Overview

LBaaS (Load-Balancing-as-a-Service) is currently an advanced service of Neutron. It allows for proprietary and open-source load balancing technologies to drive the actual load balancing of requests. Thus, an OpenStack operator can choose which back-end technology to use. The long-term vision for the project, however, is to provide a single API that allows a user to seamlessly move between different load balancing technologies should the operator choose to do so. While LBaaS is currently part of Neutron, plans are underway to make it a separate project within Openstack yet still under the Networking umbrella. Please see below to see what is currently being worked on for the current cycle.

Features

TODO: Fill out

Neutron LBaaS Architecture

Neutron_LBaaS_Arch

How do I contribute?

First of all thanks for joining our cause! The best way to contribute is to join the discussions on IRC and the mailing list. To get up to speed however, please take a look at the requirements section to see what is on the road-map. It would also benefit you to take a look at the weekly standup etherpad document that gets updated every week. This document will get you up to speed on what each individual team/individual is currently working on. Lastly, don't hesitate to ask community members questions!

Communication Channels

  • IRC: #openstack-lbaas
  • IRC Weekly Meeting: #openstack-meeting every Thursday @ 14:00 UTC
  • Mailing List: openstack-dev [at] lists [dot] openstack [dot] org. Please prefix subject with '[openstack-dev][Neutron][LBaaS]'

Relevant Links

Links Related to Community Process

Requirements, Use Cases & Operator Data

Links Related to Juno Release

Atlanta OpenStack Summit Sessions

LBaaS Juno Mid Cycle Meeting

Blueprints Actively Worked On

Other Links

Neutron LBaaS BoneYard

This page contains older content that is no longer being kept up to date. Use at your own risk :-)

LBaaS/BoneYard