SlideShare a Scribd company logo
1 of 33
Intro to OpenStack Quantum

Dan Wendlandt – Quantum Hacker & PTL
          dan@nicira.com
       twitter - danwendlandt
Outline
• Why Quantum?
• What is Quantum?
  – API
  – High-level System Components
• Current Project Status
• Future Directions
• Frequently Asked Questions
Why Quantum?
 Reason #1
Enterprise applications have sophisticated
        networking requirements




                          Image curtsey of “the Hoff”:
    http://rationalsecurity.typepad.com/blog/2008/08/all-your-virtua.html
Traditional “clouds” provide
                   little/no network control.



Example of Nova
Network “multi-NIC”.

Each VM gets VIF on
same two networks,
regardless of tenant.
Why Quantum? Reason #1
• To attract enterprise workloads, cloud must
  give tenants the tools + control for enterprise-
  class networking.
  – Rich multi-tier topologies
  – Insert services (FW, VPN, IDS, etc.)
  – QoS guarantees for SLAs
  – Security & Monitoring for compliance
• Quantum API can allows user control to build
  advanced networking configurations.
Why Quantum?
 Reason #2
Cloud Networking Challenges
• Cloud environments stress networks like never
  before:
  – High-density multi-tenancy
  – Massive scale
  – Strong price pressure.
  – VM mobility
  – EVERYTHING must be automated
New approaches are looking
       to tackle these issues


• Software-Defined Networking / OpenFlow
• VXLAN / NVGRE
• * insert other solution here…. +
Why Quantum? Reason #2
• New technologies are needed to cope with
  new challenges in cloud networking.
• Existing Nova implementation used basic
  Linux Bridge + VLANs (very limiting)
• Quantum provides a “plugin” mechanism to
  enable different technologies implement calls
  made via the Quantum API.
• Choice is a good thing!
Why Do You Care?
• Cloud Provider / OpenStack consultants: Help
  understand how Quantum can overcome
  limitations of existing Nova networking.

• Network Vendor: learn how you can integrate
  with or contribute to Quantum.

• Cloud User: Help is on the way!
What is Quantum?
Quantum Basics
           Nova : virtual server
           Quantum : virtual network

Quantum is:
- Expose a API for creating virtual networks and attaching
  instances (e.g., nova servers) to those networks.
- Manage switches (virtual or physical) in the data center to
  implement connectivity described via API.
- Provide a “plugin” architecture to leverage support using
  different back-end technologies.
Quantum API Abstractions

• Networks:
   – Equivalent to a “virtual VLAN”, a dedicated L2 segment.
   – Tenants use Quantum API to create networks, get back UUID:
   – Example: quantum.foo.com/<tenant-id>/network/<network-id>

• Ports:
   – When an interface (e.g., Nova vNIC) is attached to a network,
     attachment point is a “port”.
   – Ports expose configuration and monitoring state (e.g., ACLs, QoS
     policies, Packet Statistics)
   – Example: quantum.foo.com/<tenant-id>/network/<network-
     id>/port/<port-id>
Basic Quantum + Nova API Flow
API Client                                      Quantum                           Nova Server
     Create Network (POST /tenant1/network)     Server

     Network UUID: ‘abc’

     Create Server (POST /tenant1/server)

     Server UUID: ‘def’

     Get Server Interface(s) (GET /tenant1/server/def/interface)

     Server Interface UUID List: * ‘ghi’ +

       Create Port on Network (POST /tenant1/network/abc/port)

      Port UUID ‘jkl’

       Attach Interface to port (PUT /tenant1/network/abc/port/jkl) , ‘attachment’ : ‘ghi’ -

       Success
Old Model: Static Nova Networking
     Nova i-23         Nova i-26      Nova i-22   Nova i-24
     10.0.0.23         10.0.0.26      10.0.0.22   10.0.0.24




                       Tenant-A Net




                 • Single network exists (per-project or
                   global).
                 • VMs automatically get a vNIC on that
                   single network on boot.
New Model: Dynamic Network
       Creation + Association
           Nova i-23      Nova i-26      Nova i-22       Nova i-24
           10.0.0.23      10.0.0.26      10.0.0.22       10.0.0.24



                       Tenant-A               Tenant-A
                        Net #1                 Net #2




Internet
             • Tenant can use API to create many networks.
             • When booting a VM, define which network(s) it
               should connect to.
             • Can even plug-in instances from other services
               (e.g., a load-balancing service).
Quantum API Principles

•   Implementation Abstraction: At no time does the customer see details of how a
    network is implemented (e.g., VLANs).

•   Explicit Association: Association of interfaces with network is an explicit step 
    more control.

•   API Extensions: Plugins can expose API extensions to introduce more complex
    functionality (e.g., QoS). Extension support is queriable, so a customer can
    “discover” capabilities.

•   Extension Refactoring: API extensions that represent common functionality across
    many plug-ins can become part of the core API.

•   API Evolution: Core API is currently simple, focused on connectivity. Core API will
    evolve.
Plugin Architecture
• “Quantum Plugin” design allows abstract
  network/port API to be implemented using
  many different technologies.
• Plugins perform two main tasks:
  – Process all API calls: store the results of all
    network + port calls, while mapping abstract
    entities to a plugin-specific technology (e.g., map
    a network to a VLAN)
  – Manage switches: learn about nova interfaces
    when they are attached to the network and
    configure network switches accordingly.
Quantum Architecture
API Clients                    Quantum Server
                                                                  Internal plugin
                                                                 communication.
            Uniform API       Quantum          Quantum
            for all clients     API             Plugin

  Tenant                      Create-net        Create-net
  Scripts                          .                .
                                                                        Nova Computeswitch
                                                                               virtual
                                   .                .                    Nova Compute
 Horizon                                                                  Nova Compute
                                   .                .                       Nova Compute
                              Create-port      Create-port                    Nova Compute
  Nova
                                                                             Interfaces from a service
                                                                               like Nova plug into a
                                                                              switch manages by the
                                API + Plugin = Quantum Service                    Quantum plugin.
Simple VLAN Plugin Example
• Plugin assumes all VLANs are trunked to all
  hypervisors (similar to nova-network)
• When new q-network is created, creates a DB
  entry mapping network to a free VLAN.
• Stores port + attachment mappings in DB.
• Runs agent on hypervisor to recognize new
  vswitch ports that represent Nova interfaces.
• When new vswitch port appears, finds q-port + q-
  network associated with interface-id, configures
  vswitch port with correct VLAN.
Example Quantum + Nova Architecture
                                             Dashboard /
                                           Automation Tools
     Tenant API                                                        Tenant API


  Quantum           Quantum API                                    Nova Service
  Service
                                                           nova-scheduler       nova-api
                  Quantum Plugin

                                                                    Internal nova
                                                                    Communication

Two Plugins Available:                      nova-compute
- Open vSwitch
- Cisco UCS/Nexus
                                               vswitch
                                              XenServer #1
                         Internal Plugin
                         Communication       Hypervisor
Key Take-away
•   A “plugin” is NOT a “driver” *
•   A “plugin” is NOT a “driver” *
•   A “plugin” is NOT a “driver” *
•   A “plugin” is NOT a “driver” *
•   A “plugin” is NOT a “driver” *
•   A “plugin” is NOT a “driver” *
•   A “plugin” is NOT a “driver” *
•   A “plugin” is NOT a “driver” *
     * Explained on next slide….
A plugin is not a driver
• A plugin registers to handle all Quantum API
  calls in a “group” (e.g., all network/port calls).
• Because Quantum only has one “group” of API
  calls right now, only one plugin runs at a time
  (this will change as APIs expand beyond L2).
• A single plugin may talk to multiple types of
  switches (i.e., it may have multiple “drivers”)
• “driver” code can be shared across plugins.
Why separate plugins + drivers?
• Plugins may make decisions that are technology,
  but not device-specific (e.g., mapping q-network
  ‘foo’ to VLAN 99).
• That decision must be made by only a single
  entity… if multiple such decisions were made by
  different plugins, they likely would conflict.
• The plugin may use drivers to communicate the
  results of this decision to different devices (e.g., it
  may configure the VLAN on a vswitch port, and
  tell the upstream physical switch to trunk that
  VLAN).
Current Project Status
Project Status: Essex Cycle
• Started at Diablo summit, became “incubation” for Essex,
  will apply to be “core” in Folsom.
• Available at: http://launchpad.net/quantum
• Docs at: http://docs.openstack.org/incubation/
• Current Features:
   –   v1.1 of the Quantum L2 API, with extension support.
   –   API client library and CLI
   –   Nova Integration via the QuantumManager
   –   OpenStack Dashboard Integration (a bit borked right now…)
   –   Plugin framework & two publicly available plugins:
        • Open vSwitch Plugin
        • Cisco UCS/Nexus Plugin
        • Linux Bridge Plugin
   – Packaging for Ubuntu / Red Hat / Debian + more.
Project Status: Two Deployment Models
• Model #1 (available now):
   – QuantumManager in Nova is only Quantum API client.
   – Cloud admin must define networks with nova-manage.
   – Tenant can place VMs on different networks using nova
     extension (--nic option in nova client).
   – Allows cloud provider to leverage advanced networking
     technologies.
• Model #2 (few months out):
   – Tenants can create their own networks, determine their
     own IP addressing via Quantum API.
   – Tenants can insert other services exposed by service
     provider (e.g., router, VPN) using extensions.
Project Status: Who should use Quantum?

• “Early adopters” are already putting Quantum
  into their OpenStack trial deployments.
• Expect early adopters to go live with Quantum
  in spring / summer.
• Caution: deployments are by bleeding edge,
  working closely with someone who knows
  Quantum well.
• Folsom release will be first target for
  widespread adoption.
Future Directions
• More L2 Plugins
   – Linux Bridge, Ryu Controller, Nicira NVP, Brocade
• Beyond L2: Advanced Network Services
   – L3 routing + NAT, Firewall, VPN, DHCP, LB
   – Services may be part of Quantum, or separate
     projects that integrate with Quantum.
   – Additional services will be independently pluggable
     (i.e., can choose L2 plugin X, L3 plugin Y)
• RBAC via API to allow for fine grain controls
  among users of the same tenant.
Play with Quantum
•   New integrated with DevStack
•   http://wiki.openstack.org/QuantumDevstack
•   Use nova-manage to create networks
•   Spin up VMs with -- nic option.
•   See Quantum Administrator Guide for details
    – http://docs.openstack.org/incubation/openstack-
      network/admin/content/
Frequently Asked Questions
• Is OpenFlow required for Quantum
  – A: Nope! OpenFlow is just one technology that
    Quantum enables.
• Is Quantum “software-defined networking”?
  – It depends…
• How does Quantum compare to Amazon VPC?
  – A: Have similar goal of enabling advanced networking
    in cloud. Quantum will give cloud operators ability to
    compete with (and go beyond) VPC feature-set.
Thanks! Questions / Comments?

          Come join us:
  http://wiki.openstack.org/Quantum
     netstack@lists.launchpad.net

           Dan Wendlandt
          Dan@nicira.com
        Twitter: danwendlandt
 http://www.slideshare.net/danwent/

More Related Content

What's hot

ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networking
ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack NetworkingONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networking
ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networkingmarkmcclain
 
Open stack networking_101_part-1
Open stack networking_101_part-1Open stack networking_101_part-1
Open stack networking_101_part-1yfauser
 
Open stack networking_101_part-2_tech_deep_dive
Open stack networking_101_part-2_tech_deep_diveOpen stack networking_101_part-2_tech_deep_dive
Open stack networking_101_part-2_tech_deep_diveyfauser
 
How to write a Neutron Plugin - if you really need to
How to write a Neutron Plugin - if you really need toHow to write a Neutron Plugin - if you really need to
How to write a Neutron Plugin - if you really need tosalv_orlando
 
Network virtualization with open stack quantum
Network virtualization with open stack quantumNetwork virtualization with open stack quantum
Network virtualization with open stack quantumMiguel Lavalle
 
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
 
OpenStack Neutron Tutorial
OpenStack Neutron TutorialOpenStack Neutron Tutorial
OpenStack Neutron Tutorialmestery
 
OpenStack networking (Neutron)
OpenStack networking (Neutron) OpenStack networking (Neutron)
OpenStack networking (Neutron) CREATE-NET
 
Introduction to Software Defined Networking and OpenStack Neutron
Introduction to Software Defined Networking and OpenStack NeutronIntroduction to Software Defined Networking and OpenStack Neutron
Introduction to Software Defined Networking and OpenStack NeutronSana Khan
 
OpenStack networking - Neutron deep dive with PLUMgrid
OpenStack networking - Neutron deep dive with PLUMgridOpenStack networking - Neutron deep dive with PLUMgrid
OpenStack networking - Neutron deep dive with PLUMgridKamesh Pemmaraju
 
Openstack Neutron and SDN
Openstack Neutron and SDNOpenstack Neutron and SDN
Openstack Neutron and SDNinakipascual
 
OpenStack Neutron 201 1hr
OpenStack Neutron 201 1hr OpenStack Neutron 201 1hr
OpenStack Neutron 201 1hr David Lenwell
 
Quantum - Virtual networks for Openstack
Quantum - Virtual networks for OpenstackQuantum - Virtual networks for Openstack
Quantum - Virtual networks for Openstacksalv_orlando
 
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge MigrationJames Denton
 
OpenStack Neutron's Distributed Virtual Router
OpenStack Neutron's Distributed Virtual RouterOpenStack Neutron's Distributed Virtual Router
OpenStack Neutron's Distributed Virtual Routercarlbaldwin
 
OpenStack Neutron Liberty Updates
OpenStack Neutron Liberty UpdatesOpenStack Neutron Liberty Updates
OpenStack Neutron Liberty Updatesmestery
 
Navigating OpenStack Networking
Navigating OpenStack NetworkingNavigating OpenStack Networking
Navigating OpenStack NetworkingPLUMgrid
 
From Nova-Network to Neutron and Beyond: A Look at OpenStack Networking
From Nova-Network to Neutron and Beyond: A Look at OpenStack NetworkingFrom Nova-Network to Neutron and Beyond: A Look at OpenStack Networking
From Nova-Network to Neutron and Beyond: A Look at OpenStack NetworkingCynthia Thomas
 
Inside Architecture of Neutron
Inside Architecture of NeutronInside Architecture of Neutron
Inside Architecture of Neutronmarkmcclain
 

What's hot (20)

ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networking
ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack NetworkingONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networking
ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networking
 
Open stack networking_101_part-1
Open stack networking_101_part-1Open stack networking_101_part-1
Open stack networking_101_part-1
 
Open stack networking_101_part-2_tech_deep_dive
Open stack networking_101_part-2_tech_deep_diveOpen stack networking_101_part-2_tech_deep_dive
Open stack networking_101_part-2_tech_deep_dive
 
How to write a Neutron Plugin - if you really need to
How to write a Neutron Plugin - if you really need toHow to write a Neutron Plugin - if you really need to
How to write a Neutron Plugin - if you really need to
 
Network virtualization with open stack quantum
Network virtualization with open stack quantumNetwork virtualization with open stack quantum
Network virtualization with open stack quantum
 
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
 
OpenStack Neutron behind the Scenes
OpenStack Neutron behind the ScenesOpenStack Neutron behind the Scenes
OpenStack Neutron behind the Scenes
 
OpenStack Neutron Tutorial
OpenStack Neutron TutorialOpenStack Neutron Tutorial
OpenStack Neutron Tutorial
 
OpenStack networking (Neutron)
OpenStack networking (Neutron) OpenStack networking (Neutron)
OpenStack networking (Neutron)
 
Introduction to Software Defined Networking and OpenStack Neutron
Introduction to Software Defined Networking and OpenStack NeutronIntroduction to Software Defined Networking and OpenStack Neutron
Introduction to Software Defined Networking and OpenStack Neutron
 
OpenStack networking - Neutron deep dive with PLUMgrid
OpenStack networking - Neutron deep dive with PLUMgridOpenStack networking - Neutron deep dive with PLUMgrid
OpenStack networking - Neutron deep dive with PLUMgrid
 
Openstack Neutron and SDN
Openstack Neutron and SDNOpenstack Neutron and SDN
Openstack Neutron and SDN
 
OpenStack Neutron 201 1hr
OpenStack Neutron 201 1hr OpenStack Neutron 201 1hr
OpenStack Neutron 201 1hr
 
Quantum - Virtual networks for Openstack
Quantum - Virtual networks for OpenstackQuantum - Virtual networks for Openstack
Quantum - Virtual networks for Openstack
 
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
2014 OpenStack Summit - Neutron OVS to LinuxBridge Migration
 
OpenStack Neutron's Distributed Virtual Router
OpenStack Neutron's Distributed Virtual RouterOpenStack Neutron's Distributed Virtual Router
OpenStack Neutron's Distributed Virtual Router
 
OpenStack Neutron Liberty Updates
OpenStack Neutron Liberty UpdatesOpenStack Neutron Liberty Updates
OpenStack Neutron Liberty Updates
 
Navigating OpenStack Networking
Navigating OpenStack NetworkingNavigating OpenStack Networking
Navigating OpenStack Networking
 
From Nova-Network to Neutron and Beyond: A Look at OpenStack Networking
From Nova-Network to Neutron and Beyond: A Look at OpenStack NetworkingFrom Nova-Network to Neutron and Beyond: A Look at OpenStack Networking
From Nova-Network to Neutron and Beyond: A Look at OpenStack Networking
 
Inside Architecture of Neutron
Inside Architecture of NeutronInside Architecture of Neutron
Inside Architecture of Neutron
 

Similar to Quantum (OpenStack Meetup Feb 9th, 2012)

Quantum Folsom Summit Developer Overview
Quantum Folsom Summit Developer OverviewQuantum Folsom Summit Developer Overview
Quantum Folsom Summit Developer OverviewDan Wendlandt
 
OpenStack Quantum Intro (OS Meetup 3-26-12)
OpenStack Quantum Intro (OS Meetup 3-26-12)OpenStack Quantum Intro (OS Meetup 3-26-12)
OpenStack Quantum Intro (OS Meetup 3-26-12)Dan Wendlandt
 
OpenStack Quantum - Past, Present & Future
OpenStack Quantum - Past, Present & FutureOpenStack Quantum - Past, Present & Future
OpenStack Quantum - Past, Present & FutureSomik Behera
 
Quantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptxQuantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptxOpenStack Foundation
 
Quantum grizzly summit
Quantum   grizzly summitQuantum   grizzly summit
Quantum grizzly summitDan Wendlandt
 
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
 
Quantum for Cloud Operators - Folsom Conference
Quantum for Cloud Operators  - Folsom Conference Quantum for Cloud Operators  - Folsom Conference
Quantum for Cloud Operators - Folsom Conference Dan Wendlandt
 
OpenStack Quantum: Cloud Carrier Summit 2012
OpenStack Quantum: Cloud Carrier Summit 2012OpenStack Quantum: Cloud Carrier Summit 2012
OpenStack Quantum: Cloud Carrier Summit 2012Dan Wendlandt
 
Quantum essex summary
Quantum essex summaryQuantum essex summary
Quantum essex summaryDan Wendlandt
 
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
 
Am 04 track1--salvatore orlando--openstack-apac-2012-final
Am 04 track1--salvatore orlando--openstack-apac-2012-finalAm 04 track1--salvatore orlando--openstack-apac-2012-final
Am 04 track1--salvatore orlando--openstack-apac-2012-finalOpenCity Community
 
Openstack meetup-pune-aug22-overview
Openstack meetup-pune-aug22-overviewOpenstack meetup-pune-aug22-overview
Openstack meetup-pune-aug22-overviewrajdeep
 
Openstack Overview
Openstack OverviewOpenstack Overview
Openstack Overviewrajdeep
 
Quantum diablo summary
Quantum diablo summaryQuantum diablo summary
Quantum diablo summaryDan Wendlandt
 
What's new in OpenStack Liberty
What's new in OpenStack LibertyWhat's new in OpenStack Liberty
What's new in OpenStack LibertyMichael Solberg
 
OpenStack Networking
OpenStack NetworkingOpenStack Networking
OpenStack NetworkingIlya Shakhat
 
Quantum - The Network Mechanics
Quantum - The Network MechanicsQuantum - The Network Mechanics
Quantum - The Network MechanicsKiran Murari
 

Similar to Quantum (OpenStack Meetup Feb 9th, 2012) (20)

Quantum Folsom Summit Developer Overview
Quantum Folsom Summit Developer OverviewQuantum Folsom Summit Developer Overview
Quantum Folsom Summit Developer Overview
 
OpenStack Quantum Intro (OS Meetup 3-26-12)
OpenStack Quantum Intro (OS Meetup 3-26-12)OpenStack Quantum Intro (OS Meetup 3-26-12)
OpenStack Quantum Intro (OS Meetup 3-26-12)
 
OpenStack Quantum - Past, Present & Future
OpenStack Quantum - Past, Present & FutureOpenStack Quantum - Past, Present & Future
OpenStack Quantum - Past, Present & Future
 
Quantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptxQuantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptx
 
Quantum grizzly summit
Quantum   grizzly summitQuantum   grizzly summit
Quantum grizzly summit
 
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
 
NaaS
NaaSNaaS
NaaS
 
NaaS
NaaSNaaS
NaaS
 
Quantum for Cloud Operators - Folsom Conference
Quantum for Cloud Operators  - Folsom Conference Quantum for Cloud Operators  - Folsom Conference
Quantum for Cloud Operators - Folsom Conference
 
OpenStack Quantum: Cloud Carrier Summit 2012
OpenStack Quantum: Cloud Carrier Summit 2012OpenStack Quantum: Cloud Carrier Summit 2012
OpenStack Quantum: Cloud Carrier Summit 2012
 
Quantum essex summary
Quantum essex summaryQuantum essex summary
Quantum essex summary
 
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
 
Am 04 track1--salvatore orlando--openstack-apac-2012-final
Am 04 track1--salvatore orlando--openstack-apac-2012-finalAm 04 track1--salvatore orlando--openstack-apac-2012-final
Am 04 track1--salvatore orlando--openstack-apac-2012-final
 
Openstack meetup-pune-aug22-overview
Openstack meetup-pune-aug22-overviewOpenstack meetup-pune-aug22-overview
Openstack meetup-pune-aug22-overview
 
Openstack Overview
Openstack OverviewOpenstack Overview
Openstack Overview
 
Quantum diablo summary
Quantum diablo summaryQuantum diablo summary
Quantum diablo summary
 
What's new in OpenStack Liberty
What's new in OpenStack LibertyWhat's new in OpenStack Liberty
What's new in OpenStack Liberty
 
OpenStack Networking
OpenStack NetworkingOpenStack Networking
OpenStack Networking
 
Quantum - The Network Mechanics
Quantum - The Network MechanicsQuantum - The Network Mechanics
Quantum - The Network Mechanics
 
OpenStack Quantum
OpenStack QuantumOpenStack Quantum
OpenStack Quantum
 

Recently uploaded

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 

Recently uploaded (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 

Quantum (OpenStack Meetup Feb 9th, 2012)

  • 1. Intro to OpenStack Quantum Dan Wendlandt – Quantum Hacker & PTL dan@nicira.com twitter - danwendlandt
  • 2. Outline • Why Quantum? • What is Quantum? – API – High-level System Components • Current Project Status • Future Directions • Frequently Asked Questions
  • 4. Enterprise applications have sophisticated networking requirements Image curtsey of “the Hoff”: http://rationalsecurity.typepad.com/blog/2008/08/all-your-virtua.html
  • 5. Traditional “clouds” provide little/no network control. Example of Nova Network “multi-NIC”. Each VM gets VIF on same two networks, regardless of tenant.
  • 6. Why Quantum? Reason #1 • To attract enterprise workloads, cloud must give tenants the tools + control for enterprise- class networking. – Rich multi-tier topologies – Insert services (FW, VPN, IDS, etc.) – QoS guarantees for SLAs – Security & Monitoring for compliance • Quantum API can allows user control to build advanced networking configurations.
  • 8. Cloud Networking Challenges • Cloud environments stress networks like never before: – High-density multi-tenancy – Massive scale – Strong price pressure. – VM mobility – EVERYTHING must be automated
  • 9. New approaches are looking to tackle these issues • Software-Defined Networking / OpenFlow • VXLAN / NVGRE • * insert other solution here…. +
  • 10. Why Quantum? Reason #2 • New technologies are needed to cope with new challenges in cloud networking. • Existing Nova implementation used basic Linux Bridge + VLANs (very limiting) • Quantum provides a “plugin” mechanism to enable different technologies implement calls made via the Quantum API. • Choice is a good thing!
  • 11. Why Do You Care? • Cloud Provider / OpenStack consultants: Help understand how Quantum can overcome limitations of existing Nova networking. • Network Vendor: learn how you can integrate with or contribute to Quantum. • Cloud User: Help is on the way!
  • 13. Quantum Basics Nova : virtual server Quantum : virtual network Quantum is: - Expose a API for creating virtual networks and attaching instances (e.g., nova servers) to those networks. - Manage switches (virtual or physical) in the data center to implement connectivity described via API. - Provide a “plugin” architecture to leverage support using different back-end technologies.
  • 14. Quantum API Abstractions • Networks: – Equivalent to a “virtual VLAN”, a dedicated L2 segment. – Tenants use Quantum API to create networks, get back UUID: – Example: quantum.foo.com/<tenant-id>/network/<network-id> • Ports: – When an interface (e.g., Nova vNIC) is attached to a network, attachment point is a “port”. – Ports expose configuration and monitoring state (e.g., ACLs, QoS policies, Packet Statistics) – Example: quantum.foo.com/<tenant-id>/network/<network- id>/port/<port-id>
  • 15. Basic Quantum + Nova API Flow API Client Quantum Nova Server Create Network (POST /tenant1/network) Server Network UUID: ‘abc’ Create Server (POST /tenant1/server) Server UUID: ‘def’ Get Server Interface(s) (GET /tenant1/server/def/interface) Server Interface UUID List: * ‘ghi’ + Create Port on Network (POST /tenant1/network/abc/port) Port UUID ‘jkl’ Attach Interface to port (PUT /tenant1/network/abc/port/jkl) , ‘attachment’ : ‘ghi’ - Success
  • 16. Old Model: Static Nova Networking Nova i-23 Nova i-26 Nova i-22 Nova i-24 10.0.0.23 10.0.0.26 10.0.0.22 10.0.0.24 Tenant-A Net • Single network exists (per-project or global). • VMs automatically get a vNIC on that single network on boot.
  • 17. New Model: Dynamic Network Creation + Association Nova i-23 Nova i-26 Nova i-22 Nova i-24 10.0.0.23 10.0.0.26 10.0.0.22 10.0.0.24 Tenant-A Tenant-A Net #1 Net #2 Internet • Tenant can use API to create many networks. • When booting a VM, define which network(s) it should connect to. • Can even plug-in instances from other services (e.g., a load-balancing service).
  • 18. Quantum API Principles • Implementation Abstraction: At no time does the customer see details of how a network is implemented (e.g., VLANs). • Explicit Association: Association of interfaces with network is an explicit step  more control. • API Extensions: Plugins can expose API extensions to introduce more complex functionality (e.g., QoS). Extension support is queriable, so a customer can “discover” capabilities. • Extension Refactoring: API extensions that represent common functionality across many plug-ins can become part of the core API. • API Evolution: Core API is currently simple, focused on connectivity. Core API will evolve.
  • 19. Plugin Architecture • “Quantum Plugin” design allows abstract network/port API to be implemented using many different technologies. • Plugins perform two main tasks: – Process all API calls: store the results of all network + port calls, while mapping abstract entities to a plugin-specific technology (e.g., map a network to a VLAN) – Manage switches: learn about nova interfaces when they are attached to the network and configure network switches accordingly.
  • 20. Quantum Architecture API Clients Quantum Server Internal plugin communication. Uniform API Quantum Quantum for all clients API Plugin Tenant Create-net Create-net Scripts . . Nova Computeswitch virtual . . Nova Compute Horizon Nova Compute . . Nova Compute Create-port Create-port Nova Compute Nova Interfaces from a service like Nova plug into a switch manages by the API + Plugin = Quantum Service Quantum plugin.
  • 21. Simple VLAN Plugin Example • Plugin assumes all VLANs are trunked to all hypervisors (similar to nova-network) • When new q-network is created, creates a DB entry mapping network to a free VLAN. • Stores port + attachment mappings in DB. • Runs agent on hypervisor to recognize new vswitch ports that represent Nova interfaces. • When new vswitch port appears, finds q-port + q- network associated with interface-id, configures vswitch port with correct VLAN.
  • 22. Example Quantum + Nova Architecture Dashboard / Automation Tools Tenant API Tenant API Quantum Quantum API Nova Service Service nova-scheduler nova-api Quantum Plugin Internal nova Communication Two Plugins Available: nova-compute - Open vSwitch - Cisco UCS/Nexus vswitch XenServer #1 Internal Plugin Communication Hypervisor
  • 23. Key Take-away • A “plugin” is NOT a “driver” * • A “plugin” is NOT a “driver” * • A “plugin” is NOT a “driver” * • A “plugin” is NOT a “driver” * • A “plugin” is NOT a “driver” * • A “plugin” is NOT a “driver” * • A “plugin” is NOT a “driver” * • A “plugin” is NOT a “driver” * * Explained on next slide….
  • 24. A plugin is not a driver • A plugin registers to handle all Quantum API calls in a “group” (e.g., all network/port calls). • Because Quantum only has one “group” of API calls right now, only one plugin runs at a time (this will change as APIs expand beyond L2). • A single plugin may talk to multiple types of switches (i.e., it may have multiple “drivers”) • “driver” code can be shared across plugins.
  • 25. Why separate plugins + drivers? • Plugins may make decisions that are technology, but not device-specific (e.g., mapping q-network ‘foo’ to VLAN 99). • That decision must be made by only a single entity… if multiple such decisions were made by different plugins, they likely would conflict. • The plugin may use drivers to communicate the results of this decision to different devices (e.g., it may configure the VLAN on a vswitch port, and tell the upstream physical switch to trunk that VLAN).
  • 27. Project Status: Essex Cycle • Started at Diablo summit, became “incubation” for Essex, will apply to be “core” in Folsom. • Available at: http://launchpad.net/quantum • Docs at: http://docs.openstack.org/incubation/ • Current Features: – v1.1 of the Quantum L2 API, with extension support. – API client library and CLI – Nova Integration via the QuantumManager – OpenStack Dashboard Integration (a bit borked right now…) – Plugin framework & two publicly available plugins: • Open vSwitch Plugin • Cisco UCS/Nexus Plugin • Linux Bridge Plugin – Packaging for Ubuntu / Red Hat / Debian + more.
  • 28. Project Status: Two Deployment Models • Model #1 (available now): – QuantumManager in Nova is only Quantum API client. – Cloud admin must define networks with nova-manage. – Tenant can place VMs on different networks using nova extension (--nic option in nova client). – Allows cloud provider to leverage advanced networking technologies. • Model #2 (few months out): – Tenants can create their own networks, determine their own IP addressing via Quantum API. – Tenants can insert other services exposed by service provider (e.g., router, VPN) using extensions.
  • 29. Project Status: Who should use Quantum? • “Early adopters” are already putting Quantum into their OpenStack trial deployments. • Expect early adopters to go live with Quantum in spring / summer. • Caution: deployments are by bleeding edge, working closely with someone who knows Quantum well. • Folsom release will be first target for widespread adoption.
  • 30. Future Directions • More L2 Plugins – Linux Bridge, Ryu Controller, Nicira NVP, Brocade • Beyond L2: Advanced Network Services – L3 routing + NAT, Firewall, VPN, DHCP, LB – Services may be part of Quantum, or separate projects that integrate with Quantum. – Additional services will be independently pluggable (i.e., can choose L2 plugin X, L3 plugin Y) • RBAC via API to allow for fine grain controls among users of the same tenant.
  • 31. Play with Quantum • New integrated with DevStack • http://wiki.openstack.org/QuantumDevstack • Use nova-manage to create networks • Spin up VMs with -- nic option. • See Quantum Administrator Guide for details – http://docs.openstack.org/incubation/openstack- network/admin/content/
  • 32. Frequently Asked Questions • Is OpenFlow required for Quantum – A: Nope! OpenFlow is just one technology that Quantum enables. • Is Quantum “software-defined networking”? – It depends… • How does Quantum compare to Amazon VPC? – A: Have similar goal of enabling advanced networking in cloud. Quantum will give cloud operators ability to compete with (and go beyond) VPC feature-set.
  • 33. Thanks! Questions / Comments? Come join us: http://wiki.openstack.org/Quantum netstack@lists.launchpad.net Dan Wendlandt Dan@nicira.com Twitter: danwendlandt http://www.slideshare.net/danwent/

Editor's Notes

  1. Common to run both Quantum and Nova on the same set of controller hosts.