SlideShare a Scribd company logo
1 of 14
Download to read offline
LBaaS Use Cases and
   Requirements

     What do you mean we
   have to make this work now?




OpenStack Design Summit – Fall 2012 – Tuesday October 16th   j.gruber@f5.com
Background and Thoughts

Please Read the Wiki: http://wiki.openstack.org/Quantum/LBaaS

Primer on Network Load Balancing:
     http://wiki.openstack.org/NetworkLoadBalancingIntegrationsWithQuantum




 Decided to Standardize Two L3 Routed Use Cases for Now:

   “Routed Mode”- LB device is the default L3 route path (maybe)

   “One-Arm Mode”- LB device uses SNAT to force a L3 route path
Quick Look At Routed Mode
Ramifications:
 - L2 adjacency to 'Nodes'
 - L3 routing works to everything
    the 'Nodes' need to get to
 - No LB for the Local Segment              VIP: 10.10.10.10




                                                 NLB: 20.20.20.1




                                                           Node: 20.20.20.10
   Node: 20.20.20.8
                                                           Gateway: 20.20.20.1
   Gateway: 20.20.20.1              Node: 20.20.20.9
                                    Gateway: 20.20.20.1
Quick Look At One-Arm Mode
Ramifications:
 - L3 client address abstracted to 'Nodes'
 - Additional L3 addressing for SNAT
    - 64k connections per IP
    - Defined as pools before deployed


                                                     Router: 20.20.20.1
                             VIP: 20.20.20.5

                        SNAT Pool
                      20.20.20.50-52




            Node: 20.20.20.8           Node: 20.20.20.9    Node: 20.20.20.10
            Gateway: 20.20.20.1        Gateway: 20.20.20.1 Gateway: 20.20.20.1
LB Devices Should Be HA

            MAC A        Virtual IP bound
                             to MAC C        Dynamic MAC address generation
                                             Dynamic MAC address generation
              MAC Masq C
L2 HA                                           GARP or ICMPv6 for failover
                                                GARP or ICMPv6 for failover
            MAC B
                                            1 IP per HA + 1 IP per device + 1 VIP
                                            1 IP per        IP per device + 1 VIP
             broadcast
             domain




            Virtual IP
                                              Dynamic routing protocol with
                                                       routing protocol with
                                            forwarding on separate L3 network
                                            forwarding on separate L3 network
           Virtual IP
L3 HA                                            Anycast or RHI Virtual IPs
                                                 Anycast or RHI Virtual IPs

                                                  1 IP per device + 1 VIP
                                                    IP per device + 1 VIP
                route
                domain
Use Case 1: Multi-Tenant
         Devices with Routed Shared Networks
  One-Arm mode only – Edge LB Service
                                                                  HA Virtual IP Network (Public)

                                                                              Management Network

                                                                              OOB Management Port


                                                                                          OOB Typically
                                                                                          is a physical
                                                        ……….
                                                                                          interface

     100% Routed L3 Topology for LB
     100% Routed L3 Topology     LB

All Virtual IPs are from shared network pools
All Virtual IPs are from shared         pools                            HA Shared Network (Private)
   There are no tenant specific networks
   There are no tenant specific networks                             n = number of LB devices
  at L2 or tenant provided L3 addressing
     L2 or tenant          L3                                        d = number of HA domains
                                                                     p = number of concurrent SNAT addresses

 1 IP Address per Device + 1 IP HA Cluster Management ( n + 1 )
 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP Address per Virtual Service ( n + d + v )
 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP per 64k connections ( n + d + p )
Use Case 1: Multi-Tenant
        Devices with Routed Shared Networks
One-Arm Mode Only
                                                                 HA Virtual IP Network (Public)
      PROVIDER REQUIREMENTS                                      TENANT REQUIREMENTS
            This looks like AtlasLB today
            This looks like AtlasLB today                                    Management Network
                                                                     This looks like AtlasLB today
                                                                                like AtlasLB today

     LB Device Management and HA networking
     LB        Management     HA                                           Defines Members
                                                                                    Members
                                                                             OOB Management Port
                                                                          Defines LB Method
                                                                                   LB Method
            Predefined network pools
            Predefined network pools                              Defines Monitoring Requirements
                                                                  Defines Monitoring Requirements
     for PUBLIC and PRIVATE routed networks
     for PUBLIC and PRIVATE routed networks                       Defines Persistence Requirements
                                                                  Defines Persistence Requirements
                                                                Overload Virtual IPs with Different Ports
                                                                Overload Virtual IPs with Different Ports
         Predefined SNAT pool addresses
         Predefined SNAT pool addresses                                                  OOB Typically
                                                                                         is a physical
         L3 filtering on PRIVATE virtual IPs
         L3 filtering            virtual               ……….
      allowing only tenant network addresses
                                                                                         interface
      allowing only tenant network addresses
          to connect to the virtual service
          to connect the            service

      Security groups must allow connections
      Security groups must allow connections
            from SNAT pool addresses
            from SNAT pool addresses                                    HA Shared Network (Private)

                                                                    n = number of LB devices
                                                                    d = number of HA domains
                                                                    p = number of concurrent SNAT addresses

1 IP Address per Device + 1 IP HA Cluster Management ( n + 1 )
1 IP Address per Device + 1 IP Address per HA Domain + 1 IP Address per Virtual Service ( n + d + v )
1 IP Address per Device + 1 IP Address per HA Domain + 1 IP per 64k connections ( n + d + p )
Use Case 2: Multi-Tenant
        Devices with Shared and Quantum Networks
   One-Arm mode only?                                               HA Virtual IP Network (Public)

                                                                                Management Network

                                                                                OOB Management Port

                                                                                          OOB Typically
                                                                                          is a physical
                                                          ……….                            interface
      Public HA Virtual IPs are
       Public HA Virtual IPs are
     from shared network pools
     from shared network pools

    Tenant supplies network ids
    Tenant supplies network ids                                                   Tenant Networks
                                               HA Tenant Network
    and required L3 addressing
    and required L3 addressing

                                               HA Tenant Network
Quantum IP Addresses
 1 IP Address per Device + 1 IP HA Cluster Management ( n + 1 )
 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP Address per Virtual Service ( n + d + v )

Dynamic MAC Addresses + Tenant Managed IP Addresses
 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP per 64k connections ( n + d + p )
 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP per 64k connections ( n + d + p )
Use Case 2: Multi-Tenant
        Devices with Shared and Quantum Networks
   One-Arm mode only?                                               HA Virtual IP Network (Public)

        PROVIDER REQUIREMENTS                                      TENANT REQUIREMENTS
                                                                          Management Network
          LB devices Management and shared
          LB devices Management and shared                                 Tenant network id(s)
                                                                           Tenant network id(s)
               network HA requirements
               network HA requirements                                          OOB Management Port
                                                                       LB devices tenant network(s)
                                                                       LB devices tenant network(s)
                Predefined network pools
                Predefined network pools                                     HA requirements
                                                                             HA requirements
              for shared network virtual IPs
              for shared network virtual IPs                                             OOB Typically
                                                                   IP for virtual IPs on tenant network(s)
                                                                   IP for virtual IPs on tenant
                                                                                         is a physical
                                                          ……….        Predefined network interface
                                                                      Predefined network addresses
                                                                                         addresses
                                                                   for SNAT pools on tenant network(s)
                                                                   for SNAT pools on tenant network(s)

                                                                           Defines Members
                                                                                    Members
                                                                          Defines LB Method
                                                                                   LB Method
                                               HA Tenant     Network            Tenant Networks
                                                                  Defines Monitoring Requirements
                                                                  Defines Monitoring Requirements
                                                                  Defines Persistence Requirements
                                                                  Defines Persistence Requirements
                                                                Overload Virtual IPs with Different Ports
                                                                Overload Virtual IPs with Different Ports
                                               HA Tenant Network
Quantum IP Addresses
 1 IP Address per Device + 1 IP HA Cluster Management ( n + 1 )
 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP Address per Virtual Service ( n + d + v )

Dynamic MAC Addresses + Tenant Managed IP Addresses
 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP per 64k connections ( n + d + p )
 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP per 64k connections ( n + d + p )
Use Case 3: Single-Tenant
                       Load Balancing
One-Arm Mode Only


Quantum IP Addresses                  Public Network Address is not HA
1 IP Address per Device   optional                LB device is 'owned' by a
                                                  LB device is 'owned' by a
                                                   single quantum tenant
                                                   single quantum

                                                   LB device is not the only
                                                   LB        is not     only
                                                route between tenant networks
                                                route between tenant networks

                                                Tenant controls LB HA devices
                                                Tenant controls LB HA devices



                                                     Tenant Networks



                                     Possibly HA Tenant Network


Possibly HA Tenant Network
Use Case 3: Single-Tenant
                         Load Balancing
One-Arm Mode Only


      PROVIDER REQUIREMENTS                      TENANT REQUIREMENTS
Quantum IP Addresses                          Public Network Address is not HA
                                                  Tenant network id(s) (L2 on device)
                                                  Tenant network id(s) (L2 on device)
       LB devices Management requirements
       LB devices Management requirements
1 IP Address per Device       optional
                                                     LB devices tenant network(s)
                                                     LB devices tenant network(s)
             Predefined network pools
             Predefined network pools                      HA requirements
                                                           HA requirements
           for shared network virtual IPs
           for shared network virtual IPs
                                                      LB device L3 filtering control
                                                      LB device L3           control

                                                 IP for virtual IPs on tenant network(s)
                                                 IP for virtual IPs on tenant

                                                      Predefined network addresses
                                                      Predefined network addresses
                                                  for SNAT pools on tenant network(s)
                                                  for SNAT pools on tenant network(s)
                                                                 Tenant Networks
                                                          Defines Members
                                                                   Members
                                                         Defines LB Method
                                                                  LB Method
                                                  Defines Monitoring Requirements
                                                  Defines Monitoring Requirements
                                                 Defines Persistence Requirements
                                                 Defines Persistence Requirements
                                               Overload Virtual IPs with Different Ports
                                            Possibly HA Tenantwith Different Ports
                                               Overload Virtual IPs Network



Possibly HA Tenant Network
Use Case 4: Single-Tenant
                LB Devices as Gateway
Do we even need this use case?


Quantum IP Addresses        Public Network Address is not HA
1 IP per Device
1 IP per 64k connections
                                                 LB device is 'owned' by a
                                                 LB device is 'owned' by a
                                                  single quantum tenant
                                                  single quantum

                                                   LB device is the only
                                                    LB device is the only
                                              route between tenant networks
                                              route between tenant networks



                                                   Tenant Networks
                           Possibly HA Tenant Network

                           Possibly HA Tenant Network
Use Case 4: Single-Tenant
                     Devices as Gateway
Do we even need this use case?
                                                          TENANT REQUIREMENTS
   PROVIDER REQUIREMENTS                                   Tenant network id(s) (L2 on device)
                                                           Tenant network id(s) (L2 on device)
Quantum IP Addressesrequirements
   LB devices Management requirements
   LB devices Management                  Public Network Address is not network(s)
                                                         LB devices tenant network(s)
                                                          LB devices tenant HA
1 IP per Device                                                     HA requirements
                                                                    HA requirements
1 IP per 64k connections pools
           Predefined network pools
           Predefined network
         for shared network virtual IPs
         for shared network virtual IPs                       LB device L3 filtering control
                                                              LB device L3           control

                                                              LB device route table control
                                                              LB device route table control

                                                             LB device DHCP relay // service
                                                             LB device DHCP relay service

                                                          IP for virtual IPs on tenant network(s)
                                                          IP for virtual IPs on tenant

                                                              Predefined network addresses
                                                              Predefined network addresses
                                                          for SNAT poolsTenant Networks
                                                          for SNAT pools on tenant network(s)
                                                                          on tenant network(s)
                                          Possibly HA Tenant Network
                                                                    Defines Members
                                                                             Members
                                                                   Defines LB Method
                                                                            LB Method
                                          Possibly HA   Tenant Network Requirements
                                                           Defines Monitoring Requirements
                                                           Defines Monitoring
                                                           Defines Persistence Requirements
                                                           Defines Persistence Requirements
                                                         Overload Virtual IPs with Different Ports
                                                         Overload Virtual IPs with Different Ports
What Did We Miss?

More Related Content

What's hot

OpenStack Neutron's Distributed Virtual Router
OpenStack Neutron's Distributed Virtual RouterOpenStack Neutron's Distributed Virtual Router
OpenStack Neutron's Distributed Virtual Routercarlbaldwin
 
Open daylight and Openstack
Open daylight and OpenstackOpen daylight and Openstack
Open daylight and OpenstackDave Neary
 
OpenStack Networking LBaaS
OpenStack Networking LBaaSOpenStack Networking LBaaS
OpenStack Networking LBaaSIlya Shakhat
 
Inside Architecture of Neutron
Inside Architecture of NeutronInside Architecture of Neutron
Inside Architecture of Neutronmarkmcclain
 
Overview of Distributed Virtual Router (DVR) in Openstack/Neutron
Overview of Distributed Virtual Router (DVR) in Openstack/NeutronOverview of Distributed Virtual Router (DVR) in Openstack/Neutron
Overview of Distributed Virtual Router (DVR) in Openstack/Neutronvivekkonnect
 
Kubernetes from scratch at veepee sysadmins days 2019
Kubernetes from scratch at veepee   sysadmins days 2019Kubernetes from scratch at veepee   sysadmins days 2019
Kubernetes from scratch at veepee sysadmins days 2019🔧 Loïc BLOT
 
OpenStack Cinder Overview - Havana Release
OpenStack Cinder Overview - Havana ReleaseOpenStack Cinder Overview - Havana Release
OpenStack Cinder Overview - Havana ReleaseAvishay Traeger
 
OpenStack: Virtual Routers On Compute Nodes
OpenStack: Virtual Routers On Compute NodesOpenStack: Virtual Routers On Compute Nodes
OpenStack: Virtual Routers On Compute Nodesclayton_oneill
 
OpenStack HA
OpenStack HAOpenStack HA
OpenStack HAtcp cloud
 
OpenStack Meetup - SDN
OpenStack Meetup - SDNOpenStack Meetup - SDN
OpenStack Meetup - SDNSzilvia Racz
 
OpenStack Toronto: Juno Community Update
OpenStack Toronto: Juno Community UpdateOpenStack Toronto: Juno Community Update
OpenStack Toronto: Juno Community UpdateStephen Gordon
 
Open vSwitch Introduction
Open vSwitch IntroductionOpen vSwitch Introduction
Open vSwitch IntroductionHungWei Chiu
 
Large scale overlay networks with ovn: problems and solutions
Large scale overlay networks with ovn: problems and solutionsLarge scale overlay networks with ovn: problems and solutions
Large scale overlay networks with ovn: problems and solutionsHan Zhou
 
OpenStack DVR_What is DVR?
OpenStack DVR_What is DVR?OpenStack DVR_What is DVR?
OpenStack DVR_What is DVR?Yongyoon Shin
 
OpenShift on OpenStack with Kuryr
OpenShift on OpenStack with KuryrOpenShift on OpenStack with Kuryr
OpenShift on OpenStack with KuryrAntoni Segura Puimedon
 
What's new in OpenStack Liberty
What's new in OpenStack LibertyWhat's new in OpenStack Liberty
What's new in OpenStack LibertyMichael Solberg
 
Kuryr & Fuxi: OpenStack networking and storage for Docker Swarm containers
Kuryr & Fuxi: OpenStack networking and storage for Docker Swarm containersKuryr & Fuxi: OpenStack networking and storage for Docker Swarm containers
Kuryr & Fuxi: OpenStack networking and storage for Docker Swarm containersAntoni Segura Puimedon
 

What's hot (20)

OpenStack Neutron's Distributed Virtual Router
OpenStack Neutron's Distributed Virtual RouterOpenStack Neutron's Distributed Virtual Router
OpenStack Neutron's Distributed Virtual Router
 
Open daylight and Openstack
Open daylight and OpenstackOpen daylight and Openstack
Open daylight and Openstack
 
OpenStack Networking LBaaS
OpenStack Networking LBaaSOpenStack Networking LBaaS
OpenStack Networking LBaaS
 
Inside Architecture of Neutron
Inside Architecture of NeutronInside Architecture of Neutron
Inside Architecture of Neutron
 
OpenDaylight OpenStack Integration
OpenDaylight OpenStack IntegrationOpenDaylight OpenStack Integration
OpenDaylight OpenStack Integration
 
Overview of Distributed Virtual Router (DVR) in Openstack/Neutron
Overview of Distributed Virtual Router (DVR) in Openstack/NeutronOverview of Distributed Virtual Router (DVR) in Openstack/Neutron
Overview of Distributed Virtual Router (DVR) in Openstack/Neutron
 
Kubernetes from scratch at veepee sysadmins days 2019
Kubernetes from scratch at veepee   sysadmins days 2019Kubernetes from scratch at veepee   sysadmins days 2019
Kubernetes from scratch at veepee sysadmins days 2019
 
OpenStack Cinder Overview - Havana Release
OpenStack Cinder Overview - Havana ReleaseOpenStack Cinder Overview - Havana Release
OpenStack Cinder Overview - Havana Release
 
OpenStack: Virtual Routers On Compute Nodes
OpenStack: Virtual Routers On Compute NodesOpenStack: Virtual Routers On Compute Nodes
OpenStack: Virtual Routers On Compute Nodes
 
OpenStack HA
OpenStack HAOpenStack HA
OpenStack HA
 
OpenStack Meetup - SDN
OpenStack Meetup - SDNOpenStack Meetup - SDN
OpenStack Meetup - SDN
 
OpenStack Toronto: Juno Community Update
OpenStack Toronto: Juno Community UpdateOpenStack Toronto: Juno Community Update
OpenStack Toronto: Juno Community Update
 
Neutron DVR
Neutron DVRNeutron DVR
Neutron DVR
 
Open vSwitch Introduction
Open vSwitch IntroductionOpen vSwitch Introduction
Open vSwitch Introduction
 
Large scale overlay networks with ovn: problems and solutions
Large scale overlay networks with ovn: problems and solutionsLarge scale overlay networks with ovn: problems and solutions
Large scale overlay networks with ovn: problems and solutions
 
OpenStack DVR_What is DVR?
OpenStack DVR_What is DVR?OpenStack DVR_What is DVR?
OpenStack DVR_What is DVR?
 
OpenStack sdn
OpenStack sdnOpenStack sdn
OpenStack sdn
 
OpenShift on OpenStack with Kuryr
OpenShift on OpenStack with KuryrOpenShift on OpenStack with Kuryr
OpenShift on OpenStack with Kuryr
 
What's new in OpenStack Liberty
What's new in OpenStack LibertyWhat's new in OpenStack Liberty
What's new in OpenStack Liberty
 
Kuryr & Fuxi: OpenStack networking and storage for Docker Swarm containers
Kuryr & Fuxi: OpenStack networking and storage for Docker Swarm containersKuryr & Fuxi: OpenStack networking and storage for Docker Swarm containers
Kuryr & Fuxi: OpenStack networking and storage for Docker Swarm containers
 

Similar to OpenStack Load Balancing Use Cases and Requirements

Networking in the Cloud: An SDN Primer
Networking in the Cloud: An SDN PrimerNetworking in the Cloud: An SDN Primer
Networking in the Cloud: An SDN PrimerOpenStack Foundation
 
Cherian networking in_the_cloud_041613
Cherian networking in_the_cloud_041613Cherian networking in_the_cloud_041613
Cherian networking in_the_cloud_041613OpenStack Foundation
 
Networking in the cloud: An SDN primer
Networking in the cloud: An SDN primerNetworking in the cloud: An SDN primer
Networking in the cloud: An SDN primerMidokura
 
Link Virtualization based on Xen
Link Virtualization based on XenLink Virtualization based on Xen
Link Virtualization based on XenThe Linux Foundation
 
Cloudstack collab talk
Cloudstack collab talkCloudstack collab talk
Cloudstack collab talkMidokura
 
Horizon quantum-integration-grizzly
Horizon quantum-integration-grizzlyHorizon quantum-integration-grizzly
Horizon quantum-integration-grizzlyAkihiro Motoki
 
Horizon Quantum Integration grizzly
Horizon Quantum Integration grizzlyHorizon Quantum Integration grizzly
Horizon Quantum Integration grizzlyAkihiro Motoki
 
Windows server 8 hyper v networking (aidan finn)
Windows server 8 hyper v networking (aidan finn)Windows server 8 hyper v networking (aidan finn)
Windows server 8 hyper v networking (aidan finn)hypervnu
 
Windows Server 8 Hyper V Networking
Windows Server 8 Hyper V NetworkingWindows Server 8 Hyper V Networking
Windows Server 8 Hyper V NetworkingAidan Finn
 
Openstack Quantum yahoo meetup 1 23-13
Openstack Quantum yahoo meetup 1 23-13Openstack Quantum yahoo meetup 1 23-13
Openstack Quantum yahoo meetup 1 23-13Dan Wendlandt
 
2010 coscup be_android
2010 coscup be_android2010 coscup be_android
2010 coscup be_androidtick
 
Quantum grizzly summit
Quantum   grizzly summitQuantum   grizzly summit
Quantum grizzly summitDan Wendlandt
 
Quantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptxQuantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptxOpenStack Foundation
 
I Pv6 Enabling Menog 0.4
I Pv6 Enabling Menog 0.4I Pv6 Enabling Menog 0.4
I Pv6 Enabling Menog 0.4Hussein Elmenshawy
 
OpenStack 2012 fall summit observation - Quantum/SDN
OpenStack 2012 fall summit observation - Quantum/SDNOpenStack 2012 fall summit observation - Quantum/SDN
OpenStack 2012 fall summit observation - Quantum/SDNTe-Yen Liu
 
Scaling the Container Dataplane
Scaling the Container Dataplane Scaling the Container Dataplane
Scaling the Container Dataplane Michelle Holley
 
Networking is NOT Free: Lessons in Network Design
Networking is NOT Free: Lessons in Network DesignNetworking is NOT Free: Lessons in Network Design
Networking is NOT Free: Lessons in Network DesignRandy Bias
 
Ryu: network operating system
Ryu: network operating systemRyu: network operating system
Ryu: network operating systemIsaku Yamahata
 

Similar to OpenStack Load Balancing Use Cases and Requirements (20)

Networking in the Cloud: An SDN Primer
Networking in the Cloud: An SDN PrimerNetworking in the Cloud: An SDN Primer
Networking in the Cloud: An SDN Primer
 
Cherian networking in_the_cloud_041613
Cherian networking in_the_cloud_041613Cherian networking in_the_cloud_041613
Cherian networking in_the_cloud_041613
 
Networking in the cloud: An SDN primer
Networking in the cloud: An SDN primerNetworking in the cloud: An SDN primer
Networking in the cloud: An SDN primer
 
Link Virtualization based on Xen
Link Virtualization based on XenLink Virtualization based on Xen
Link Virtualization based on Xen
 
Cloudstack collab talk
Cloudstack collab talkCloudstack collab talk
Cloudstack collab talk
 
Making case up
Making case upMaking case up
Making case up
 
Horizon quantum-integration-grizzly
Horizon quantum-integration-grizzlyHorizon quantum-integration-grizzly
Horizon quantum-integration-grizzly
 
Horizon Quantum Integration grizzly
Horizon Quantum Integration grizzlyHorizon Quantum Integration grizzly
Horizon Quantum Integration grizzly
 
Windows server 8 hyper v networking (aidan finn)
Windows server 8 hyper v networking (aidan finn)Windows server 8 hyper v networking (aidan finn)
Windows server 8 hyper v networking (aidan finn)
 
Windows Server 8 Hyper V Networking
Windows Server 8 Hyper V NetworkingWindows Server 8 Hyper V Networking
Windows Server 8 Hyper V Networking
 
CloudStack Networking
CloudStack NetworkingCloudStack Networking
CloudStack Networking
 
Openstack Quantum yahoo meetup 1 23-13
Openstack Quantum yahoo meetup 1 23-13Openstack Quantum yahoo meetup 1 23-13
Openstack Quantum yahoo meetup 1 23-13
 
2010 coscup be_android
2010 coscup be_android2010 coscup be_android
2010 coscup be_android
 
Quantum grizzly summit
Quantum   grizzly summitQuantum   grizzly summit
Quantum grizzly summit
 
Quantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptxQuantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptx
 
I Pv6 Enabling Menog 0.4
I Pv6 Enabling Menog 0.4I Pv6 Enabling Menog 0.4
I Pv6 Enabling Menog 0.4
 
OpenStack 2012 fall summit observation - Quantum/SDN
OpenStack 2012 fall summit observation - Quantum/SDNOpenStack 2012 fall summit observation - Quantum/SDN
OpenStack 2012 fall summit observation - Quantum/SDN
 
Scaling the Container Dataplane
Scaling the Container Dataplane Scaling the Container Dataplane
Scaling the Container Dataplane
 
Networking is NOT Free: Lessons in Network Design
Networking is NOT Free: Lessons in Network DesignNetworking is NOT Free: Lessons in Network Design
Networking is NOT Free: Lessons in Network Design
 
Ryu: network operating system
Ryu: network operating systemRyu: network operating system
Ryu: network operating system
 

OpenStack Load Balancing Use Cases and Requirements

  • 1. LBaaS Use Cases and Requirements What do you mean we have to make this work now? OpenStack Design Summit – Fall 2012 – Tuesday October 16th j.gruber@f5.com
  • 2. Background and Thoughts Please Read the Wiki: http://wiki.openstack.org/Quantum/LBaaS Primer on Network Load Balancing: http://wiki.openstack.org/NetworkLoadBalancingIntegrationsWithQuantum Decided to Standardize Two L3 Routed Use Cases for Now: “Routed Mode”- LB device is the default L3 route path (maybe) “One-Arm Mode”- LB device uses SNAT to force a L3 route path
  • 3. Quick Look At Routed Mode Ramifications: - L2 adjacency to 'Nodes' - L3 routing works to everything the 'Nodes' need to get to - No LB for the Local Segment VIP: 10.10.10.10 NLB: 20.20.20.1 Node: 20.20.20.10 Node: 20.20.20.8 Gateway: 20.20.20.1 Gateway: 20.20.20.1 Node: 20.20.20.9 Gateway: 20.20.20.1
  • 4. Quick Look At One-Arm Mode Ramifications: - L3 client address abstracted to 'Nodes' - Additional L3 addressing for SNAT - 64k connections per IP - Defined as pools before deployed Router: 20.20.20.1 VIP: 20.20.20.5 SNAT Pool 20.20.20.50-52 Node: 20.20.20.8 Node: 20.20.20.9 Node: 20.20.20.10 Gateway: 20.20.20.1 Gateway: 20.20.20.1 Gateway: 20.20.20.1
  • 5. LB Devices Should Be HA MAC A Virtual IP bound to MAC C Dynamic MAC address generation Dynamic MAC address generation MAC Masq C L2 HA GARP or ICMPv6 for failover GARP or ICMPv6 for failover MAC B 1 IP per HA + 1 IP per device + 1 VIP 1 IP per IP per device + 1 VIP broadcast domain Virtual IP Dynamic routing protocol with routing protocol with forwarding on separate L3 network forwarding on separate L3 network Virtual IP L3 HA Anycast or RHI Virtual IPs Anycast or RHI Virtual IPs 1 IP per device + 1 VIP IP per device + 1 VIP route domain
  • 6. Use Case 1: Multi-Tenant Devices with Routed Shared Networks One-Arm mode only – Edge LB Service HA Virtual IP Network (Public) Management Network OOB Management Port OOB Typically is a physical ………. interface 100% Routed L3 Topology for LB 100% Routed L3 Topology LB All Virtual IPs are from shared network pools All Virtual IPs are from shared pools HA Shared Network (Private) There are no tenant specific networks There are no tenant specific networks n = number of LB devices at L2 or tenant provided L3 addressing L2 or tenant L3 d = number of HA domains p = number of concurrent SNAT addresses 1 IP Address per Device + 1 IP HA Cluster Management ( n + 1 ) 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP Address per Virtual Service ( n + d + v ) 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP per 64k connections ( n + d + p )
  • 7. Use Case 1: Multi-Tenant Devices with Routed Shared Networks One-Arm Mode Only HA Virtual IP Network (Public) PROVIDER REQUIREMENTS TENANT REQUIREMENTS This looks like AtlasLB today This looks like AtlasLB today Management Network This looks like AtlasLB today like AtlasLB today LB Device Management and HA networking LB Management HA Defines Members Members OOB Management Port Defines LB Method LB Method Predefined network pools Predefined network pools Defines Monitoring Requirements Defines Monitoring Requirements for PUBLIC and PRIVATE routed networks for PUBLIC and PRIVATE routed networks Defines Persistence Requirements Defines Persistence Requirements Overload Virtual IPs with Different Ports Overload Virtual IPs with Different Ports Predefined SNAT pool addresses Predefined SNAT pool addresses OOB Typically is a physical L3 filtering on PRIVATE virtual IPs L3 filtering virtual ………. allowing only tenant network addresses interface allowing only tenant network addresses to connect to the virtual service to connect the service Security groups must allow connections Security groups must allow connections from SNAT pool addresses from SNAT pool addresses HA Shared Network (Private) n = number of LB devices d = number of HA domains p = number of concurrent SNAT addresses 1 IP Address per Device + 1 IP HA Cluster Management ( n + 1 ) 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP Address per Virtual Service ( n + d + v ) 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP per 64k connections ( n + d + p )
  • 8. Use Case 2: Multi-Tenant Devices with Shared and Quantum Networks One-Arm mode only? HA Virtual IP Network (Public) Management Network OOB Management Port OOB Typically is a physical ………. interface Public HA Virtual IPs are Public HA Virtual IPs are from shared network pools from shared network pools Tenant supplies network ids Tenant supplies network ids Tenant Networks HA Tenant Network and required L3 addressing and required L3 addressing HA Tenant Network Quantum IP Addresses 1 IP Address per Device + 1 IP HA Cluster Management ( n + 1 ) 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP Address per Virtual Service ( n + d + v ) Dynamic MAC Addresses + Tenant Managed IP Addresses 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP per 64k connections ( n + d + p ) 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP per 64k connections ( n + d + p )
  • 9. Use Case 2: Multi-Tenant Devices with Shared and Quantum Networks One-Arm mode only? HA Virtual IP Network (Public) PROVIDER REQUIREMENTS TENANT REQUIREMENTS Management Network LB devices Management and shared LB devices Management and shared Tenant network id(s) Tenant network id(s) network HA requirements network HA requirements OOB Management Port LB devices tenant network(s) LB devices tenant network(s) Predefined network pools Predefined network pools HA requirements HA requirements for shared network virtual IPs for shared network virtual IPs OOB Typically IP for virtual IPs on tenant network(s) IP for virtual IPs on tenant is a physical ………. Predefined network interface Predefined network addresses addresses for SNAT pools on tenant network(s) for SNAT pools on tenant network(s) Defines Members Members Defines LB Method LB Method HA Tenant Network Tenant Networks Defines Monitoring Requirements Defines Monitoring Requirements Defines Persistence Requirements Defines Persistence Requirements Overload Virtual IPs with Different Ports Overload Virtual IPs with Different Ports HA Tenant Network Quantum IP Addresses 1 IP Address per Device + 1 IP HA Cluster Management ( n + 1 ) 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP Address per Virtual Service ( n + d + v ) Dynamic MAC Addresses + Tenant Managed IP Addresses 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP per 64k connections ( n + d + p ) 1 IP Address per Device + 1 IP Address per HA Domain + 1 IP per 64k connections ( n + d + p )
  • 10. Use Case 3: Single-Tenant Load Balancing One-Arm Mode Only Quantum IP Addresses Public Network Address is not HA 1 IP Address per Device optional LB device is 'owned' by a LB device is 'owned' by a single quantum tenant single quantum LB device is not the only LB is not only route between tenant networks route between tenant networks Tenant controls LB HA devices Tenant controls LB HA devices Tenant Networks Possibly HA Tenant Network Possibly HA Tenant Network
  • 11. Use Case 3: Single-Tenant Load Balancing One-Arm Mode Only PROVIDER REQUIREMENTS TENANT REQUIREMENTS Quantum IP Addresses Public Network Address is not HA Tenant network id(s) (L2 on device) Tenant network id(s) (L2 on device) LB devices Management requirements LB devices Management requirements 1 IP Address per Device optional LB devices tenant network(s) LB devices tenant network(s) Predefined network pools Predefined network pools HA requirements HA requirements for shared network virtual IPs for shared network virtual IPs LB device L3 filtering control LB device L3 control IP for virtual IPs on tenant network(s) IP for virtual IPs on tenant Predefined network addresses Predefined network addresses for SNAT pools on tenant network(s) for SNAT pools on tenant network(s) Tenant Networks Defines Members Members Defines LB Method LB Method Defines Monitoring Requirements Defines Monitoring Requirements Defines Persistence Requirements Defines Persistence Requirements Overload Virtual IPs with Different Ports Possibly HA Tenantwith Different Ports Overload Virtual IPs Network Possibly HA Tenant Network
  • 12. Use Case 4: Single-Tenant LB Devices as Gateway Do we even need this use case? Quantum IP Addresses Public Network Address is not HA 1 IP per Device 1 IP per 64k connections LB device is 'owned' by a LB device is 'owned' by a single quantum tenant single quantum LB device is the only LB device is the only route between tenant networks route between tenant networks Tenant Networks Possibly HA Tenant Network Possibly HA Tenant Network
  • 13. Use Case 4: Single-Tenant Devices as Gateway Do we even need this use case? TENANT REQUIREMENTS PROVIDER REQUIREMENTS Tenant network id(s) (L2 on device) Tenant network id(s) (L2 on device) Quantum IP Addressesrequirements LB devices Management requirements LB devices Management Public Network Address is not network(s) LB devices tenant network(s) LB devices tenant HA 1 IP per Device HA requirements HA requirements 1 IP per 64k connections pools Predefined network pools Predefined network for shared network virtual IPs for shared network virtual IPs LB device L3 filtering control LB device L3 control LB device route table control LB device route table control LB device DHCP relay // service LB device DHCP relay service IP for virtual IPs on tenant network(s) IP for virtual IPs on tenant Predefined network addresses Predefined network addresses for SNAT poolsTenant Networks for SNAT pools on tenant network(s) on tenant network(s) Possibly HA Tenant Network Defines Members Members Defines LB Method LB Method Possibly HA Tenant Network Requirements Defines Monitoring Requirements Defines Monitoring Defines Persistence Requirements Defines Persistence Requirements Overload Virtual IPs with Different Ports Overload Virtual IPs with Different Ports
  • 14. What Did We Miss?