Jump to: navigation, search

Difference between revisions of "Neutron/LBaaS"

m
(13 intermediate revisions by 4 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.
  
= Plans for Juno =
+
==== Features ====
 +
''TODO: Fill out''
  
'''Most of us hang-out in the IRC #neutron-lbaas channel'''
+
==== Neutron LBaaS Architecture ====
 +
[[Neutron_LBaaS_Arch]]
  
=== Blueprints being discussed as of 5/23/2014 ===
+
= How do I contribute? =
# LBaaS APIs and Object Model Improvements: https://review.openstack.org/#/c/89903/5/specs/juno/lbaas-api-and-objmodel-improvement.rst
+
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!
  
=== etherpad proposals being discussed on the ML ===
+
= Communication Channels =
# https://etherpad.openstack.org/p/neutron-lbaas-api-proposals
+
* '''IRC:''' #openstack-lbaas
# https://etherpad.openstack.org/p/neutron-lbaas-ssl-l7
+
* '''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]'
  
=== Atlanta OpenStack Summit Sessions ===
+
= Relevant Links =
# Summit 2nd session: https://etherpad.openstack.org/p/neutron-lbaas-ssl-l7
+
=== Links Related to Community Process ===
# Summit 1st session: https://etherpad.openstack.org/p/juno-neutron-lbaas
+
* [https://etherpad.openstack.org/p/neutron-lbaas-weekly-standup Weekly Standup Info ]
# Adhoc session around "Making a separate service from Neutron": https://etherpad.openstack.org/p/AdvancedServices_and_Neutron
+
* [[Network/LBaaS#Agenda|Weekly Meeting Agenda]]
 +
* [https://etherpad.openstack.org/p/lbaas_reviews Current reviews ]
  
= Agenda for Havana OpenStack Summit =
+
=== Requirements, Use Cases & Operator Data ===
https://etherpad.openstack.org/havana-quantum-lbaas
+
* [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 ]
  
== LBaaS Plan for Havana ==
+
=== Links Related to Juno Release===
[[Quantum/LBaaS/HavanaPlan]]
+
==== Atlanta OpenStack Summit Sessions ====
== Current Design Discussions + whats need to be done ==
+
* [https://etherpad.openstack.org/p/juno-neutron-lbaas Session #1]
# Initial Discussions Document [[NetworkLoadBalancingIntegrationsWithQuantum]]
+
* [https://etherpad.openstack.org/p/neutron-lbaas-ssl-l7 Session #2]
#* May need to specify workflow of LB provisioning in all scenarios that LBaaS is going to support.
+
* [https://etherpad.openstack.org/p/AdvancedServices_and_Neutron Adhoc Session on "Making a separate service from Neutron"]
# 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
 
  
= Meetings =
+
==== LBaaS Juno Mid Cycle Meeting ====
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://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 10/23/2012 Meeting ==
+
==== Blueprints Actively Worked On ====
* Work Planning and Tasks Assignment
+
* [https://blueprints.launchpad.net/neutron/+spec/lbaas-api-and-objmodel-improvement LBaaS API and object model improvement ]
* Discuss Deliverables for Grizzly 1 as per http://wiki.openstack.org/GrizzlyReleaseSchedule
+
* [https://blueprints.launchpad.net/neutron/+spec/neutron-flavor-framework Provide better user-facing mechanism to chose service capabilities ]
* Dev Environment Set up Discussions  - http://wiki.openstack.org/QuantumDevelopment
+
* [https://blueprints.launchpad.net/neutron/+spec/lbaas-ref-impl-tls-support LBaaS reference implementation TLS support ]
* Proposal - http://wiki.openstack.org/LBaaS/CoreResourceModel/proposal
+
* [https://blueprints.launchpad.net/neutron/+spec/lbaas-ssl-termination Support SSL Termination in Neutron LBaaS ]
* Etherpad - https://etherpad.openstack.org/grizzly-quantum-lbaas
+
* [https://blueprints.launchpad.net/neutron/+spec/lbaas-l7-rules LBaaS Layer 7 rules ]
* [[BluePrints]] - (TBD)
+
* [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 ]
  
Phones:
+
==== 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
  
* (855) 227-1767(USA) - 08003765931(UK)  Conf. Code 7152259
+
= Neutron LBaaS BoneYard =
* 0008006103229 (India – Toll Free)
+
This page contains older content that is no longer being kept up to date. Use at your own risk :-)
* 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
+
[[LBaaS/BoneYard]]
 
 
= 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 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 : https://wiki.openstack.org/wiki/File:Ebayinc-LBMS-ResourceModel.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