On February 3rd of this year, Cisco announced its membership in, and commitment to, the OpenStack community. OpenStack is an open source cloud computing software project founded in the spring of 2010 by Rackspace and NASA, and which provides compute, storage and image management services for cloud computing environments.
In his announcement, Lew Tucker, VP and CTO of Cloud Computing at Cisco, stated:
Since joining Cisco several months ago, you may have heard me talk about the importance of architecture, APIs, and open source in Cloud Computing. So today, I’m particularly proud to announce that Cisco has joined the OpenStack community. The effort here is being led by the CTO organization but also draws on other engineers throughout Cisco’s product groups to help with the design, specification and development of this open source cloud stack. And yes, that does mean code.
Fast forward to September 23rd, 2011. On this date, Cisco, along with an extremely dedicated group of developers from several fellow members, including Nicira and Citrix, delivered the first fruits of that labor. The first experimental release of OpenStack’s cloud network service, Quantum, is now available for download.
Details of Quantum’s functionality and architecture can be found on the OpenStack Quantum wiki page. The source code for the service can be downloaded from OpenStack’s Launchpad repository.
Quantum is a first step in an ambitious vision for making the network a peer to compute and storage in infrastructure services. Focused initially on providing a simple layer 2 network abstraction, Quantum allows developers to use its APIs or OpenStack’s Dashboard project to create networks, and connect virtual machine instances to that network.
The Wiki page describes Quantum as fulfilling three key needs:
- Support advanced network topologies beyond what is possible with nova’s FlatManager or VlanManager
- Example: create multi-tier web application topology
- Let anyone build advanced network services (open and closed source) that plug into Openstack networks.
- Examples: VPN-aaS, firewall-aaS, IDS-aaS, data-center-interconnect-aaS
- Enable innovation plugins (open and closed source) that introduce advanced network capabilities
- Example: use L2-in-L3 tunneling to avoid VLAN limits, provide end-to-end QoS guarantees, used monitoring protocols like NetFlow
Cisco’s contributions to Quantum cover a variety of key requirements:
- Cisco contributed to the Quantum service itself to enable a variety of use cases, including enabling plug-in extensions to the Quantum API and abstractions.
- Cisco contributed a framework for creating Quantum plug-ins which manage a variety of different devices under a single network model. Cisco also contributed drivers that enable Quantum to leverage key Cisco technologies, including UCS--via Cisco virtualized adapters, such as the M81KR (aka “Palo”) )--and the Cisco Nexus 7000. (In fact, the Nexus driver theoretically supports any NX-OS device, but we focused testing on the N7K for this release.)
In addition, Cisco made important contributions to the way in which the Nova compute service integrates with, and takes advantage of, the Quantum service:
- Cisco proposed the virtual interface model used by Nova compute instances to connect to Quantum networks
- Cisco guided support of interactive network provisioning processes from Nova, such as the Cisco plug-in uses for the 802.1Qbh Bridge Port Extension standard.
Tremendous effort went into these projects, and we want to congratulate the Cloud CTO engineering team for the work they completed on Quantum and the Cisco plug-in. Furthermore, work from our Systems Development Unit, Data Center Technology Group, and other engineering business units (including several Cisco sponsored college interns) has been invaluable, both to Cisco and the OpenStack community as a whole.
However, Cisco was but one cog in the OpenStack machine, and we were proud to work side-by-side with many other equally dedicated companies and individuals.
The latest release of the OpenStack core projects, Diablo, significantly advances both the capability and stability of this young project, and is available for download today. We encourage you to give it a try. Cisco engineers will be collaborating with other developers on the next generation of OpenStack services for the Essex release, to be delivered in the spring of 2012.
For another view of the importance of these contributions, please see Lew Tucker’s blog on the strategic importance of OpenStack.