Jump to: navigation, search

Difference between revisions of "Neutron/LBaaS"

m
(31 intermediate revisions by 16 users not shown)
Line 1: Line 1:
__NOTOC__
 
 
= Overview =
 
= 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.
  
LBaaS (Load-balancer-as-a-Service) is Quantum extension that introduces load balancing feature set into the core.
+
==== Features ====
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.
+
''TODO: Fill out''
  
== Current Design Discussions + whats need to be done ==
+
==== Neutron LBaaS Architecture ====
# Initial Discussions Document [[NetworkLoadBalancingIntegrationsWithQuantum]]
+
[[Neutron_LBaaS_Arch]]
  May need to specify workflow of LB provisioning in all scenarios that LBaaS is going to support.
 
  
# Object Model proposal - [[LBaaS/CoreResourceModel/proposal]]
+
= How do I contribute? =
  All agreed upon.  
+
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!
  Might need minor update to include resources needed for device management (HW device catalog)
 
  
# Tenant REST API - main proposal [[Quantum/LBaaS/API_1.0]]
+
= Communication Channels =
  Discussion about tenant_id in URL ended with most people agreeing to go with 2.0 style or URL (no tenant_id in URL)
+
* '''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]'
  
# Service Insertion - main proposal [[Quantum/ServiceInsertion]]
+
= Relevant Links =
  Things to be discussed:
+
=== Links Related to Community Process ===
# Code architecture: multiplugin / multivendor approach, changes in infrastructure (extension and plugin frameworks)
+
* [https://etherpad.openstack.org/p/neutron-lbaas-weekly-standup Weekly Standup Info ]
# changes in existing resource model (router)
+
* [[Network/LBaaS#Agenda|Weekly Meeting Agenda]]
# service catalog configuration
+
* [https://etherpad.openstack.org/p/lbaas_reviews Current reviews ]
# API
 
# Provider API / Device Management - proposal [[Quantum/LBaaS/RESTAPI/ProviderAPI]]
 
  The document describes API/process of registering a physical appliance as an LB device.
 
  
# Balancer provisioning - proposal [[Quantum/LBaaS/Provisioning/proposal]]
+
=== Requirements, Use Cases & Operator Data ===
  The document needs to be updated with workflows that correspond to (1)
+
* [https://wiki.openstack.org/wiki/Neutron/LBaaS/requirements Requirements ]
 +
* [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 ]
  
# Overall code architecture proposal [[Quantum/LBaaS/Architecture]]
+
=== Links Related to Juno Release===
  Contains overall picture of components and what they do.  
+
==== Atlanta OpenStack Summit Sessions ====
  Sequence diagram needs to be updated according to latest decision about async execution.
+
* [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"]
  
# Miscellaneous
+
==== LBaaS Juno Mid Cycle Meeting ====
## Device Locking - proposal [[Quantum/LBaaS/Architecture/ConcurrentRequests]]
+
* [https://etherpad.openstack.org/p/neutron-juno-lbaas-mid-cycle Planning & Logistics ]
## Asynchronous execution (discussion):
+
* [https://etherpad.openstack.org/p/1gsTm4GBdu Agenda & Preparation ]
    Client gets immediate response with Job ID which it polls later on. May need to have short design spec on this.
+
* [https://etherpad.openstack.org/p/juno-lbaas-mid-cycle-hackathon Notes From Hackathon ]
# Inter-service resource dependency (discussion):
 
    Resources of different advanced services may depend on one another. Solution options: (?)
 
  
= Mettings =
+
==== Blueprints Actively Worked On ====
We have a weekly meeting on every "Tuesday at 9:00 AM (Pacific TIme)" for discussing the Project Status, Issues, Work Item Rebalancing etc.
+
* [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 ]
  
== Agenda for 10/23/2012 Meeting ==
+
==== Other Links ====
 +
* https://etherpad.openstack.org/p/neutron-lbaas-api-proposals
 +
* https://etherpad.openstack.org/p/neutron-lbaas-ssl-l7
 +
* https://etherpad.openstack.org/p/LBaaS_project_name_vote
  
* Work Planning and Tasks Assignment
+
= Neutron LBaaS BoneYard =
* Discuss Deliverables for Grizzly 1 as per http://wiki.openstack.org/GrizzlyReleaseSchedule
+
This page contains older content that is no longer being kept up to date. Use at your own risk :-)
* 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:
+
[[LBaaS/BoneYard]]
* (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 [[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)
 
 
 
== 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