This topic provides an overview of how to deploy Quantum, the SDN solution for OpenStack, using Juju Charms.

It also provides an explanation of how to get started with Quantum once you have it deployed

Juju Charms

Getting Started

The Juju charm set for OpenStack is broad and complex, so is not covered in full in this topic.

To deploy a base OpenStack deployment you will need:

  • nova-cloud-controller
  • glance
  • keystone
  • mysql
  • rabbitmq-server
  • nova-compute
  • cinder

The Quantum charms sit alongside these charms:

  • Quantum: provides
    • quantum-server (and plugin): API server for quantum
    • quantum-l3-agent: L3 routing agent
    • quantum-dhcp-agent:DHCP agent (provides DHCP to quantum networks).
  • Quantum Agent: this is a subordinate charm that should be deployed with nova-compute; it installs openvswitch and the quantum plugin agent required to manage the switch as part of a quantum deployment.

The quantum charms work with Quantum from Folsom onwards (i.e. not with Essex).

These charms and the required relations between then can all be deployed using the juju-deployer found here:


The openstack.cfg file contains references to all of the charm branches currently being tested for quantum support ~(this will form the openstack reference architecture for ubuntu for grizzly).

Note that you will need 10 spare nodes to deploy OpenStack in this configuration (ideally hardware). There is one outstanding know issue with the quantum-agent subordinate when deploying on OpenStack (the juju agent is unable to communicate with zookeeper until the unit is rebooted).

./deployer.py -c openstack.cfg openstack-quantal-quantum

OpenStack/Quantum (last edited 2012-11-15 15:10:55 by james-page)