Calico now works with vanilla OpenStack

Calico now works with vanilla OpenStack

No more patches!

We hit a nice milestone last week.  To use Calico with OpenStack it’s been the case until now that a few patches are needed against the vanilla code released by the upstream OpenStack project.  Specifically, running Calico with OpenStack Icehouse, Juno or Kilo needs some Calico-specific patches to the Nova and Neutron projects, and we keep and track those in our forks of the Nova and Neutron repositories at https://github.com/projectcalico.

We have been working for a while, with the Nova and Neutron teams, on how those patches could be incorporated into the upstream OpenStack code, and the great news is that last week the last of our patches was incorporated.  That means that when Liberty is released, in mid October, Calico will work with it out of the box, with no more need for users to install patches, or us to maintain separate forks.

Calico plug-in moving into OpenStack “Neutron Stadium”

Closely related, we are moving the Calico plug-in for Neutron into OpenStack as an official ‘networking-calico’ project, as part of what is known as the ‘Neutron stadium’.  The Neutron stadium is a set of networking service and backend implementation projects that add to the overall Neutron mission, so it’s great for Calico now to be an official part of that.

How can I get this?

If you’re familiar with DevStack – OpenStack’s system for bleeding edge source-based installs – you don’t need to wait for the Liberty release to see Calico connectivity in a vanilla OpenStack system.  networking-calico includes a DevStack plugin, and using that it just takes a handful of commands to install OpenStack and Calico on a fresh host, and then see Calico connectivity in action.  https://git.openstack.org/cgit/openstack/networking-calico/tree/devstack/README.rst has the details if you’d like to do that.

Looking forward

Of course, there will be lots of ongoing work, but we’re really pleased that we are increasingly doing that work within the OpenStack ecosystem, and that the community is recognizing our contributions, and the value of a flat, layer 3 routed model as a valid alternative for OpenStack networking.

Thank you!

I’d just like to add a final word of thanks to the maintainers and code reviewers who have given their time to give their guidance and provide us technical feedback, in particular Armando Migliaccio, Carl Baldwin, Cedric Brandily, Kyle Mestery and Oleg Bondarev.

Neil is a core developer at Project Calico and Tigera. Outside tech he mostly spends his time on choral singing.