OpenStack Networking LBaaS

Post on 29-Jun-2015

4.450 views 4 download

Tags:

description

The presentation on OpenStack Networking Loadbalancing-as-a-service held at Havana summit in Portland, 18 Apr 2013

Transcript of OpenStack Networking LBaaS

Load Balancingas-a-service

Ilya ShakhatEugene Nikanorov

Avishay, Eugene, KC, Leon, Mark, Oleg, Youcef

... and all who helped with discussions,

specifications and testing

Thanks!

● History

Agenda

● Grizzly○ features○ architecture○ workflow

● Future

● Stand-alone solutions:○ Atlas (Java)○ Equilibrium (Python)

● In Grizzly became Quantum extension

History

● REST API● CLI ● UI in Horizon● On-host HAProxy● DevStack out-of-box support

Features Overview

● Load balancing between services on VMs● Load balancing methods (e.g. round-robin)● Session persistence● Health monitoring (TCP, HTTP)● Connection limit

Load Balancing Features

Quantum

Quantum Service Plugins

Core Plugin

Service PluginService PluginService Plugin

L2 and L3 network

LB Service

Architecture

Plugin

Agent HAProxy process

RPC

REST API

DB

Extension

python-quantumclient

Horizon

Quantum

Pool

Model

Member Member

VM A10.0.0.4:80

VM B10.0.0.5:80

Vip (10.0.0.10:80)

Health Monitor

Subnet

Subnet

Wiring

VM A Load Balancer

Router

10.0.0.1010.0.0.4

VM B

10.0.0.5

External Traffic

Internal Trafficfloating ip172.0.0.10

1. Create pool 2. Create members (1 per VM / service)3. Create vip for the pool4. (opt.) Create health monitor and

associate with Pool

Workflow

UI | Step 1

UI | Step 2

UI | Step 3

UI | Step 4

● Support of HW / VM LBs ○ driver API

● Device Inventory● Service insertion modes

○ routed mode○ 1-arm○ other modes

LBaaS Next

Architecture

LBaaS Plugin

Agent

LB A

LBaaS Extension

Driver A Driver B

Device Inventory Pluginmaps service type to device

(mgmt interface)

Device Inventory Ext.

LB B

Routed Mode Insertion

VM A

Load Balancer

10.0.0.4

VM B

10.0.0.5

provider network

tenantnetwork

172.0.0.10

Q&A