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

Dan Wendlandt – Quantum Hacker & PTL
          dan@nicira.com
       twitter - danwendlandt
Caveats
• “Contents may shift in flight”
   – Quantum is a young and rapidly evolving project. My
     focus will be on big picture concepts, not on deploying
     it right now.
• “Handwave, Handwave”
   – Target audience is future users of Quantum (cloud
     tenants, cloud operators). Not enough time to satisfy
     details of developers.
• “One point of view”
   – Quantum is a community, and differences of opinion
     “sometimes” exist.
Outline
• Why Quantum?
• What is Quantum?
  – Basic Concepts & Demo
  – High-level System Architecture
• Current Project Status
• Future Directions
• Frequently Asked Questions
Why Quantum?
What is OpenStack?
• Open Source Cloud Software…
• A collection of “cloud services”
• Each service includes:
  – A tenant-facing API that exposes
    logical abstractions for consuming
    the service.
  – One or more backend
    implementations of that API
In the beginning..
*-as-a-Service Capability      OpenStack Service

         Compute                       Nova




                                   Swift (Objects)
         Storage
                                  Glance (Images)




         Network
                                  ?
Why Quantum?
• Networking was sub-component of Nova
• Two Key Problems:
  #1: Limited technology “baked in” to design.
  #2: No tenant control of network topology and
  addressing, no way to insert advanced network
  services (e.g., firewall).
Problem #1: Technology Limitations
• Cloud stresses networks like never before:
   – High-density multi-tenancy, massive scale
   – Strict uptime requirements.
   – Integrate with legacy hosting environments /
     remote data centers.
   – Price pressure to use commodity gear.
   – VM mobility
• Nova provides only basic technologies:
   – VLANs are only option for multitenancy
   – Used simple Linux Bridge (no advanced QoS,
     ACLs, or monitoring)
                                                    VLANs are Great!
   – “network controller” node is centralized       - Stone Age Man
     single-point of failure for large networks.
Why Quantum? Reason #1
• New networking technologies are emerging to try and
  tackle these challenges.
   –   Software-defined Networking (SDN) / OpenFlow
   –   Overlay tunneling: VXLAN, NVGRE, STT
   –   Fabric solutions: FabricPath, Qfabric, etc.
   –   [ insert other solution here ]

• Quantum provides a “plugin” mechanism to enable
  different technologies implement calls made via the
  Quantum API.

• Choice is a good thing!
Problem #2: No Tenant Control
• Cloud tenants want to replicate rich
  enterprise network topologies:
   – Ability to create “multi-tier” networks
     (e.g., web tier, app tier, db tier)
   – Control over IP addressing.
   – Ability to insert and configure your
     own services (e.g., firewall, IPS)
   – VPN/Bridge to remote physical hosting
     or customer premises.
• Nova provides no tenant control:             “You can have any color as long
   – No way to control topology.               as its black.“
                                               - Henry Ford about the Model-T
   – Cloud assigns IP prefixes + addresses.
   – No generic service insertion.
Why Quantum? Reason #2
• Base Quantum API lets tenants create multiple
  private networks, control IP addressing on them.
• Quantum API extensions enable additional
  control:
  – Security & Compliance Policies
  – Quality-of-Service
  – Monitoring + Troubleshooting
• “Advanced Network Services” such as firewall,
  intrusion detection, VPN, can be inserted either
  as VMs that route between networks, or as API
  extensions.
All is Right with the World…
*-as-a-Service Capability   OpenStack Service

        Compute                     Nova




                                Swift (Objects)
        Storage
                               Glance (Images)




        Network                   Quantum
Why Quantum?

 Questions?
What is Quantum?
Quantum Basics (by analogy to Nova)
                                     Nova                            Quantum
*-as-a-service           Compute                       Network

Major API abstractions   “virtual servers”: represents “virtual networks”:
                         a host with CPU, memory,      A basic L2 network segment.
                         disk, and NICs.               “virtual ports”:
                                                       Attachment point for devices
                                                       connecting to virtual networks.
Interactions with other virtual servers use “virtual   virtual ports are linked to vNICs on
OpenStack services.     images” from Glance.           “virtual servers”.

Supports different       “virt-drivers” for KVM,       “plugins” for Open vSwitch Cisco
back-end technologies    XenServer, Hyper-V,           UCS, Linux Bridge, Nicira NVP, Ryu
                         VMWare ESX                    Controller.

API Extensibility for    keypairs, instance rescue,    quality-of-service, port statistics,
new or back-end          volumes, etc.                 security groups, etc.
specific features.
API Abstractions

             VM1                VM2           virtual server
Nova        10.0.0.2           10.0.0.3
                                          virtual interface (VIF)


                                            virtual port
Quantum             Net1
                                          virtual network
                 10.0.0.0/24
Quantum Rest API Abstraction Details

• Virtual Networks:
   – Equivalent to a “virtual VLAN”, a dedicated L2 segment.
   – Example: quantum.foo.com/<tenant-id>/network/<network-
     id>

• Virtual Ports:
   – Where a virtual interface (e.g., Nova vNIC) attaches to a
     network.
   – Ports expose configuration and monitoring state via extensions
     (e.g., ACLs, QoS policies, Packet Statistics)
   – Example: quantum.foo.com/<tenant-id>/network/<network-
     id>/port/<port-id>
Old Model: Static Nova Networking
       TenantA-VM1    TenantB-VM1     TenantA-VM2   TenantA-VM3
         88.0.0.2       88.0.0.3        88.0.0.4      88.0.0.5




                         Public Net
                        88.0.0.0/18




  • Single network exists (per-project or global).
  • VMs automatically get a vNIC on that single network on boot.
  • Tenants have no control over IP addressing.
Quantum Model: Dynamic Network
     Creation + Association
                           TenantA-VM2           TenantA-VM3
          TenantA-VM1
                             10.0.0.3               9.0.0.2
            10.0.0.2
                              9.0.0.3



                        Tenant-A Net1          Tenant-A Net2
                         10.0.0.0/24             9.0.0.0/24



 Public Net
88.0.0.0/18
                 • 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).
Demo!
  What could possibly go wrong?




Questions on Quantum Basics or Demo?
Quantum Architecture Basics
• At no time during demo did tenant see the technology
  used to implement L2 isolation (VLANs, tunneling,
  etc.).
• Key tenant: abstract logical API, “pluggable” back-end
  gives provider choice.
• Plugins will give operators choices in terms of:
   –   Advanced Features
   –   Cost
   –   Scale
   –   High Availability
   –   Hypervisor + Network HW Compatibility
   –   Manageability / Polish
Plugin Architecture
• Plugins perform two main tasks:
  – Process API calls: store the results of all network
    + port calls, while mapping abstract entities to a
    plugin-specific identifiers (e.g., map a network
    UUID to a VLAN)
  – Manage virtual switches: learn about VIFs when
    they are attached to the network and configure
    network switches accordingly (e.g., assign a
    vswitch port to a particular VLAN).
Quantum Architecture (simple)
API Clients                    Quantum Server
                                                                       Internal plugin
                              Quantum                                 communication.
            Uniform API
            for all clients     API            Quantum
                                                Plugin
  Tenant                      Create-net
  Scripts                          .            Create-net
                                                                                  virtual switch
                                                                             Nova Compute
                                   .                .
 Horizon                                                                      Nova Compute
                                   .                .                          Nova Compute
                              Create-port                                        Nova Compute
  Nova                                              .
                                               Create-port
                                                                                Interfaces from a service
                                  API                                             like Nova plug into a
                              Extensions                         DB              switch manages by the
                                                                                     Quantum plugin.

                                API + Plugin = Quantum Service
Quantum Architecture (adv.)
                                                                                     External
API Clients                    Quantum Server                                        Manager
                                                                                                    DB
                                                                       Internal plugin
            Uniform API       Quantum
                                                                      communication.
            for all clients     API            Quantum
                                                Plugin
  Tenant                      Create-net
  Scripts                          .            Create-net
                                                                                   virtual switch
                                                                              Nova Compute
                                   .                .
 Horizon                                                                       Nova Compute
                                   .                .                           Nova Compute
                              Create-port                                         Nova Compute
  Nova                                              .
                                               Create-port
                                                                                 Interfaces from a service
                                  API                                              like Nova plug into a
                              Extensions                         DB               switch manages by the
                                                                                      Quantum plugin.

                                API + Plugin = Quantum Service
Current Project Status
Project Status: Essex Cycle
•   Started at Diablo summit, “incubated” for Essex, “core” in Folsom.
•   Available at: http://launchpad.net/quantum
•   Docs at: http://docs.openstack.org/incubation/
•   Current Capabilities:
     –   v1.1 of the Quantum L2 API, with extension support.
     –   API client library and CLI
     –   Nova Integration via the QuantumManager
     –   Plugin framework & several publicly available plugins:
          •   Open vSwitch Plugin
          •   Cisco UCS/Nexus Plugin
          •   Linux Bridge Plugin
          •   Nicira Network Virtualization Platform (NVP)
          •   Ryu OpenFlow Controller
     – Integrated with “devstack” (see:
       http://wiki.openstack.org/QuantumDevstack)
     – Packaging for Ubuntu (Precise) / Fedora / Debian .
Project Status: Who should use Quantum?

• “Early adopters” already putting Quantum into
  trial & production OpenStack deployments.
• Caution: Deployments are by people at the
  cutting edge, require significant familiarity with
  Quantum.
• Folsom release will be first target for
  widespread adoption.
Future Directions
• More and more Plugins
  – Already have a pipeline of additional plugins...
• Merge with Melange IP Address Mgmt. Project
• Beyond L2: Advanced Network Services
  –   L3 routing + NAT/Floating IPs
  –   Firewall & Security Groups.
  –   QoS Guarantees
  –   VPN, DHCP, LB (may be part of Quantum, or separate
      projects that integrate with Quantum).
• Keystone: fine-grain API permissions
• Horizon: GUI for configuring networking.
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/
Bonus Slides
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
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
Common Question: Can I run multiple
        plugins at once?
•   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).

More Related Content

What's hot

DPDK in Containers Hands-on Lab
DPDK in Containers Hands-on LabDPDK in Containers Hands-on Lab
DPDK in Containers Hands-on LabMichelle Holley
 
OpenStack Architecture
OpenStack ArchitectureOpenStack Architecture
OpenStack ArchitectureMirantis
 
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
 
Introduction To OpenStack
Introduction To OpenStackIntroduction To OpenStack
Introduction To OpenStackHaim Ateya
 
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDNOpenStack Korea Community
 
Deep dive into Kubernetes Networking
Deep dive into Kubernetes NetworkingDeep dive into Kubernetes Networking
Deep dive into Kubernetes NetworkingSreenivas Makam
 
Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking ExplainedThomas Graf
 
LinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking WalkthroughLinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking WalkthroughThomas Graf
 
EBPF and Linux Networking
EBPF and Linux NetworkingEBPF and Linux Networking
EBPF and Linux NetworkingPLUMgrid
 
Openstack Neutron, interconnections with BGP/MPLS VPNs
Openstack Neutron, interconnections with BGP/MPLS VPNsOpenstack Neutron, interconnections with BGP/MPLS VPNs
Openstack Neutron, interconnections with BGP/MPLS VPNsThomas Morin
 
Deploying CloudStack and Ceph with flexible VXLAN and BGP networking
Deploying CloudStack and Ceph with flexible VXLAN and BGP networking Deploying CloudStack and Ceph with flexible VXLAN and BGP networking
Deploying CloudStack and Ceph with flexible VXLAN and BGP networking ShapeBlue
 
Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)
Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)
Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)Thomas Graf
 
Packet flow on openstack
Packet flow on openstackPacket flow on openstack
Packet flow on openstackAchhar Kalia
 
[2018] 오픈스택 5년 운영의 경험
[2018] 오픈스택 5년 운영의 경험[2018] 오픈스택 5년 운영의 경험
[2018] 오픈스택 5년 운영의 경험NHN FORWARD
 
Introduction to the Container Network Interface (CNI)
Introduction to the Container Network Interface (CNI)Introduction to the Container Network Interface (CNI)
Introduction to the Container Network Interface (CNI)Weaveworks
 
The TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelThe TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelDivye Kapoor
 
오픈스택: 구석구석 파헤쳐보기
오픈스택: 구석구석 파헤쳐보기오픈스택: 구석구석 파헤쳐보기
오픈스택: 구석구석 파헤쳐보기Jaehwa Park
 

What's hot (20)

DPDK in Containers Hands-on Lab
DPDK in Containers Hands-on LabDPDK in Containers Hands-on Lab
DPDK in Containers Hands-on Lab
 
Neutron packet logging framework
Neutron packet logging frameworkNeutron packet logging framework
Neutron packet logging framework
 
OpenStack Architecture
OpenStack ArchitectureOpenStack Architecture
OpenStack Architecture
 
CloudStack Networking
CloudStack NetworkingCloudStack Networking
CloudStack Networking
 
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
 
Introduction To OpenStack
Introduction To OpenStackIntroduction To OpenStack
Introduction To OpenStack
 
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
 
Deep dive into Kubernetes Networking
Deep dive into Kubernetes NetworkingDeep dive into Kubernetes Networking
Deep dive into Kubernetes Networking
 
Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking Explained
 
LinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking WalkthroughLinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking Walkthrough
 
EBPF and Linux Networking
EBPF and Linux NetworkingEBPF and Linux Networking
EBPF and Linux Networking
 
Openstack Neutron, interconnections with BGP/MPLS VPNs
Openstack Neutron, interconnections with BGP/MPLS VPNsOpenstack Neutron, interconnections with BGP/MPLS VPNs
Openstack Neutron, interconnections with BGP/MPLS VPNs
 
Deploying CloudStack and Ceph with flexible VXLAN and BGP networking
Deploying CloudStack and Ceph with flexible VXLAN and BGP networking Deploying CloudStack and Ceph with flexible VXLAN and BGP networking
Deploying CloudStack and Ceph with flexible VXLAN and BGP networking
 
Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)
Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)
Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)
 
Packet flow on openstack
Packet flow on openstackPacket flow on openstack
Packet flow on openstack
 
[2018] 오픈스택 5년 운영의 경험
[2018] 오픈스택 5년 운영의 경험[2018] 오픈스택 5년 운영의 경험
[2018] 오픈스택 5년 운영의 경험
 
Introduction to the Container Network Interface (CNI)
Introduction to the Container Network Interface (CNI)Introduction to the Container Network Interface (CNI)
Introduction to the Container Network Interface (CNI)
 
Openstack 101
Openstack 101Openstack 101
Openstack 101
 
The TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelThe TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux Kernel
 
오픈스택: 구석구석 파헤쳐보기
오픈스택: 구석구석 파헤쳐보기오픈스택: 구석구석 파헤쳐보기
오픈스택: 구석구석 파헤쳐보기
 

Similar to OpenStack Quantum Intro (OS Meetup 3-26-12)

Quantum Folsom Summit Developer Overview
Quantum Folsom Summit Developer OverviewQuantum Folsom Summit Developer Overview
Quantum Folsom Summit Developer OverviewDan 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
 
Quantum grizzly summit
Quantum   grizzly summitQuantum   grizzly summit
Quantum grizzly summitDan 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 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
 
Quantum (OpenStack Meetup Feb 9th, 2012)
Quantum (OpenStack Meetup Feb 9th, 2012)Quantum (OpenStack Meetup Feb 9th, 2012)
Quantum (OpenStack Meetup Feb 9th, 2012)Dan 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
 
Network virtualization with open stack quantum
Network virtualization with open stack quantumNetwork virtualization with open stack quantum
Network virtualization with open stack quantumMiguel Lavalle
 
OpenStack Quantum - Past, Present & Future
OpenStack Quantum - Past, Present & FutureOpenStack Quantum - Past, Present & Future
OpenStack Quantum - Past, Present & FutureSomik Behera
 
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 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
 
Quantum essex summary
Quantum essex summaryQuantum essex summary
Quantum essex summaryDan Wendlandt
 
Quantum - The Network Mechanics
Quantum - The Network MechanicsQuantum - The Network Mechanics
Quantum - The Network MechanicsKiran Murari
 
Openstack meetup-pune-aug22-overview
Openstack meetup-pune-aug22-overviewOpenstack meetup-pune-aug22-overview
Openstack meetup-pune-aug22-overviewrajdeep
 
Learn OpenStack from trystack.cn ——Folsom in practice
Learn OpenStack from trystack.cn  ——Folsom in practiceLearn OpenStack from trystack.cn  ——Folsom in practice
Learn OpenStack from trystack.cn ——Folsom in practiceOpenCity Community
 
Quantum - Virtual networks for Openstack
Quantum - Virtual networks for OpenstackQuantum - Virtual networks for Openstack
Quantum - Virtual networks for Openstacksalv_orlando
 
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
 
Open stack networking_101_update_2014-os-meetups
Open stack networking_101_update_2014-os-meetupsOpen stack networking_101_update_2014-os-meetups
Open stack networking_101_update_2014-os-meetupsyfauser
 
Open stack networking_101_update_2014
Open stack networking_101_update_2014Open stack networking_101_update_2014
Open stack networking_101_update_2014yfauser
 

Similar to OpenStack Quantum Intro (OS Meetup 3-26-12) (20)

Quantum Folsom Summit Developer Overview
Quantum Folsom Summit Developer OverviewQuantum Folsom Summit Developer Overview
Quantum Folsom Summit Developer Overview
 
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: Cloud Carrier Summit 2012
OpenStack Quantum: Cloud Carrier Summit 2012OpenStack Quantum: Cloud Carrier Summit 2012
OpenStack Quantum: Cloud Carrier Summit 2012
 
Quantum for Cloud Operators - Folsom Conference
Quantum for Cloud Operators  - Folsom Conference Quantum for Cloud Operators  - Folsom Conference
Quantum for Cloud Operators - Folsom Conference
 
Quantum (OpenStack Meetup Feb 9th, 2012)
Quantum (OpenStack Meetup Feb 9th, 2012)Quantum (OpenStack Meetup Feb 9th, 2012)
Quantum (OpenStack Meetup Feb 9th, 2012)
 
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
 
Network virtualization with open stack quantum
Network virtualization with open stack quantumNetwork virtualization with open stack quantum
Network virtualization with open stack quantum
 
OpenStack Quantum - Past, Present & Future
OpenStack Quantum - Past, Present & FutureOpenStack Quantum - Past, Present & Future
OpenStack Quantum - Past, Present & Future
 
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 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
 
Quantum essex summary
Quantum essex summaryQuantum essex summary
Quantum essex summary
 
Quantum - The Network Mechanics
Quantum - The Network MechanicsQuantum - The Network Mechanics
Quantum - The Network Mechanics
 
OpenStack Quantum
OpenStack QuantumOpenStack Quantum
OpenStack Quantum
 
Openstack meetup-pune-aug22-overview
Openstack meetup-pune-aug22-overviewOpenstack meetup-pune-aug22-overview
Openstack meetup-pune-aug22-overview
 
Learn OpenStack from trystack.cn ——Folsom in practice
Learn OpenStack from trystack.cn  ——Folsom in practiceLearn OpenStack from trystack.cn  ——Folsom in practice
Learn OpenStack from trystack.cn ——Folsom in practice
 
Quantum - Virtual networks for Openstack
Quantum - Virtual networks for OpenstackQuantum - Virtual networks for Openstack
Quantum - Virtual networks for Openstack
 
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
 
Open stack networking_101_update_2014-os-meetups
Open stack networking_101_update_2014-os-meetupsOpen stack networking_101_update_2014-os-meetups
Open stack networking_101_update_2014-os-meetups
 
Open stack networking_101_update_2014
Open stack networking_101_update_2014Open stack networking_101_update_2014
Open stack networking_101_update_2014
 

More from Dan Wendlandt

A First Look at vSphere Integrated Containers and Photon Platform
A First Look at vSphere Integrated Containers and Photon PlatformA First Look at vSphere Integrated Containers and Photon Platform
A First Look at vSphere Integrated Containers and Photon PlatformDan Wendlandt
 
OpenStack + VMware: Everything You Need to Know (Kilo-edition)
OpenStack + VMware: Everything You Need to Know (Kilo-edition)OpenStack + VMware: Everything You Need to Know (Kilo-edition)
OpenStack + VMware: Everything You Need to Know (Kilo-edition)Dan Wendlandt
 
OpenStack + VMware at the Hong Kong OpenStack Summit
OpenStack + VMware at the Hong Kong OpenStack SummitOpenStack + VMware at the Hong Kong OpenStack Summit
OpenStack + VMware at the Hong Kong OpenStack SummitDan Wendlandt
 
OpenStack Nova + Quantum Demo
OpenStack Nova + Quantum DemoOpenStack Nova + Quantum Demo
OpenStack Nova + Quantum DemoDan Wendlandt
 
Quantum diablo summary
Quantum diablo summaryQuantum diablo summary
Quantum diablo summaryDan Wendlandt
 
Bexar network blueprint
Bexar network blueprintBexar network blueprint
Bexar network blueprintDan Wendlandt
 

More from Dan Wendlandt (6)

A First Look at vSphere Integrated Containers and Photon Platform
A First Look at vSphere Integrated Containers and Photon PlatformA First Look at vSphere Integrated Containers and Photon Platform
A First Look at vSphere Integrated Containers and Photon Platform
 
OpenStack + VMware: Everything You Need to Know (Kilo-edition)
OpenStack + VMware: Everything You Need to Know (Kilo-edition)OpenStack + VMware: Everything You Need to Know (Kilo-edition)
OpenStack + VMware: Everything You Need to Know (Kilo-edition)
 
OpenStack + VMware at the Hong Kong OpenStack Summit
OpenStack + VMware at the Hong Kong OpenStack SummitOpenStack + VMware at the Hong Kong OpenStack Summit
OpenStack + VMware at the Hong Kong OpenStack Summit
 
OpenStack Nova + Quantum Demo
OpenStack Nova + Quantum DemoOpenStack Nova + Quantum Demo
OpenStack Nova + Quantum Demo
 
Quantum diablo summary
Quantum diablo summaryQuantum diablo summary
Quantum diablo summary
 
Bexar network blueprint
Bexar network blueprintBexar network blueprint
Bexar network blueprint
 

Recently uploaded

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
🐬 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
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
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
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 

Recently uploaded (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
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
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 

OpenStack Quantum Intro (OS Meetup 3-26-12)

  • 1. Intro to OpenStack Quantum Dan Wendlandt – Quantum Hacker & PTL dan@nicira.com twitter - danwendlandt
  • 2. Caveats • “Contents may shift in flight” – Quantum is a young and rapidly evolving project. My focus will be on big picture concepts, not on deploying it right now. • “Handwave, Handwave” – Target audience is future users of Quantum (cloud tenants, cloud operators). Not enough time to satisfy details of developers. • “One point of view” – Quantum is a community, and differences of opinion “sometimes” exist.
  • 3. Outline • Why Quantum? • What is Quantum? – Basic Concepts & Demo – High-level System Architecture • Current Project Status • Future Directions • Frequently Asked Questions
  • 5. What is OpenStack? • Open Source Cloud Software… • A collection of “cloud services” • Each service includes: – A tenant-facing API that exposes logical abstractions for consuming the service. – One or more backend implementations of that API
  • 6. In the beginning.. *-as-a-Service Capability OpenStack Service Compute Nova Swift (Objects) Storage Glance (Images) Network ?
  • 7. Why Quantum? • Networking was sub-component of Nova • Two Key Problems: #1: Limited technology “baked in” to design. #2: No tenant control of network topology and addressing, no way to insert advanced network services (e.g., firewall).
  • 8. Problem #1: Technology Limitations • Cloud stresses networks like never before: – High-density multi-tenancy, massive scale – Strict uptime requirements. – Integrate with legacy hosting environments / remote data centers. – Price pressure to use commodity gear. – VM mobility • Nova provides only basic technologies: – VLANs are only option for multitenancy – Used simple Linux Bridge (no advanced QoS, ACLs, or monitoring) VLANs are Great! – “network controller” node is centralized - Stone Age Man single-point of failure for large networks.
  • 9. Why Quantum? Reason #1 • New networking technologies are emerging to try and tackle these challenges. – Software-defined Networking (SDN) / OpenFlow – Overlay tunneling: VXLAN, NVGRE, STT – Fabric solutions: FabricPath, Qfabric, etc. – [ insert other solution here ] • Quantum provides a “plugin” mechanism to enable different technologies implement calls made via the Quantum API. • Choice is a good thing!
  • 10. Problem #2: No Tenant Control • Cloud tenants want to replicate rich enterprise network topologies: – Ability to create “multi-tier” networks (e.g., web tier, app tier, db tier) – Control over IP addressing. – Ability to insert and configure your own services (e.g., firewall, IPS) – VPN/Bridge to remote physical hosting or customer premises. • Nova provides no tenant control: “You can have any color as long – No way to control topology. as its black.“ - Henry Ford about the Model-T – Cloud assigns IP prefixes + addresses. – No generic service insertion.
  • 11. Why Quantum? Reason #2 • Base Quantum API lets tenants create multiple private networks, control IP addressing on them. • Quantum API extensions enable additional control: – Security & Compliance Policies – Quality-of-Service – Monitoring + Troubleshooting • “Advanced Network Services” such as firewall, intrusion detection, VPN, can be inserted either as VMs that route between networks, or as API extensions.
  • 12. All is Right with the World… *-as-a-Service Capability OpenStack Service Compute Nova Swift (Objects) Storage Glance (Images) Network Quantum
  • 15. Quantum Basics (by analogy to Nova) Nova Quantum *-as-a-service Compute Network Major API abstractions “virtual servers”: represents “virtual networks”: a host with CPU, memory, A basic L2 network segment. disk, and NICs. “virtual ports”: Attachment point for devices connecting to virtual networks. Interactions with other virtual servers use “virtual virtual ports are linked to vNICs on OpenStack services. images” from Glance. “virtual servers”. Supports different “virt-drivers” for KVM, “plugins” for Open vSwitch Cisco back-end technologies XenServer, Hyper-V, UCS, Linux Bridge, Nicira NVP, Ryu VMWare ESX Controller. API Extensibility for keypairs, instance rescue, quality-of-service, port statistics, new or back-end volumes, etc. security groups, etc. specific features.
  • 16. API Abstractions VM1 VM2 virtual server Nova 10.0.0.2 10.0.0.3 virtual interface (VIF) virtual port Quantum Net1 virtual network 10.0.0.0/24
  • 17. Quantum Rest API Abstraction Details • Virtual Networks: – Equivalent to a “virtual VLAN”, a dedicated L2 segment. – Example: quantum.foo.com/<tenant-id>/network/<network- id> • Virtual Ports: – Where a virtual interface (e.g., Nova vNIC) attaches to a network. – Ports expose configuration and monitoring state via extensions (e.g., ACLs, QoS policies, Packet Statistics) – Example: quantum.foo.com/<tenant-id>/network/<network- id>/port/<port-id>
  • 18. Old Model: Static Nova Networking TenantA-VM1 TenantB-VM1 TenantA-VM2 TenantA-VM3 88.0.0.2 88.0.0.3 88.0.0.4 88.0.0.5 Public Net 88.0.0.0/18 • Single network exists (per-project or global). • VMs automatically get a vNIC on that single network on boot. • Tenants have no control over IP addressing.
  • 19. Quantum Model: Dynamic Network Creation + Association TenantA-VM2 TenantA-VM3 TenantA-VM1 10.0.0.3 9.0.0.2 10.0.0.2 9.0.0.3 Tenant-A Net1 Tenant-A Net2 10.0.0.0/24 9.0.0.0/24 Public Net 88.0.0.0/18 • 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).
  • 20. Demo! What could possibly go wrong? Questions on Quantum Basics or Demo?
  • 21. Quantum Architecture Basics • At no time during demo did tenant see the technology used to implement L2 isolation (VLANs, tunneling, etc.). • Key tenant: abstract logical API, “pluggable” back-end gives provider choice. • Plugins will give operators choices in terms of: – Advanced Features – Cost – Scale – High Availability – Hypervisor + Network HW Compatibility – Manageability / Polish
  • 22. Plugin Architecture • Plugins perform two main tasks: – Process API calls: store the results of all network + port calls, while mapping abstract entities to a plugin-specific identifiers (e.g., map a network UUID to a VLAN) – Manage virtual switches: learn about VIFs when they are attached to the network and configure network switches accordingly (e.g., assign a vswitch port to a particular VLAN).
  • 23. Quantum Architecture (simple) API Clients Quantum Server Internal plugin Quantum communication. Uniform API for all clients API Quantum Plugin Tenant Create-net Scripts . Create-net virtual switch Nova Compute . . Horizon Nova Compute . . Nova Compute Create-port Nova Compute Nova . Create-port Interfaces from a service API like Nova plug into a Extensions DB switch manages by the Quantum plugin. API + Plugin = Quantum Service
  • 24. Quantum Architecture (adv.) External API Clients Quantum Server Manager DB Internal plugin Uniform API Quantum communication. for all clients API Quantum Plugin Tenant Create-net Scripts . Create-net virtual switch Nova Compute . . Horizon Nova Compute . . Nova Compute Create-port Nova Compute Nova . Create-port Interfaces from a service API like Nova plug into a Extensions DB switch manages by the Quantum plugin. API + Plugin = Quantum Service
  • 26. Project Status: Essex Cycle • Started at Diablo summit, “incubated” for Essex, “core” in Folsom. • Available at: http://launchpad.net/quantum • Docs at: http://docs.openstack.org/incubation/ • Current Capabilities: – v1.1 of the Quantum L2 API, with extension support. – API client library and CLI – Nova Integration via the QuantumManager – Plugin framework & several publicly available plugins: • Open vSwitch Plugin • Cisco UCS/Nexus Plugin • Linux Bridge Plugin • Nicira Network Virtualization Platform (NVP) • Ryu OpenFlow Controller – Integrated with “devstack” (see: http://wiki.openstack.org/QuantumDevstack) – Packaging for Ubuntu (Precise) / Fedora / Debian .
  • 27. Project Status: Who should use Quantum? • “Early adopters” already putting Quantum into trial & production OpenStack deployments. • Caution: Deployments are by people at the cutting edge, require significant familiarity with Quantum. • Folsom release will be first target for widespread adoption.
  • 28. Future Directions • More and more Plugins – Already have a pipeline of additional plugins... • Merge with Melange IP Address Mgmt. Project • Beyond L2: Advanced Network Services – L3 routing + NAT/Floating IPs – Firewall & Security Groups. – QoS Guarantees – VPN, DHCP, LB (may be part of Quantum, or separate projects that integrate with Quantum). • Keystone: fine-grain API permissions • Horizon: GUI for configuring networking.
  • 29. 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/
  • 30. 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.
  • 31. 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/
  • 33. 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
  • 34. 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.
  • 35. 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
  • 36. Common Question: Can I run multiple plugins at once? • 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….
  • 37. 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.
  • 38. 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).

Editor's Notes

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