Calico and ubuntu

Anirban Sen Chowdhary

Transcript of Calico and ubuntu

Anirban Sen Chowdhary

“Ubuntu is the world's most popular operating system for OpenStack,” Andy Randall, general manager, Metaswitch Networks said, “Project Calico is the world's simplest, most scalable, open networking solution for OpenStack”.

Calico, a pure layer3 approach to Virtual Networking for highly scalable & flexible Data centers. It is a open-source technology, that implements large, standards-based cloud data center infrastructures

Calico supports rich and flexible network policy that enforces on every node in a cluster, to provide tenant isolation, security groups, and external reachability constraints.

In the blog we will see a short overview of steps taken on all machines being installed with Calico in Ubuntu.


1) We need to first install OpenStack with Neutron and ML2 networking. OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives administrators.


2) We need to configure APT to use the Calico PPA with recommendation of using it with OpenStack Liberty or later.We can configure APT to use the corresponding PPA as follows:

Calico also needs patched versions of Nova and Neutron that are provided by our ‘kilo’ PPA. We Kilo, we can follow:

 also edit /etc/apt/preferences a bit whose effect is to prefer the Calico-provided packages for Nova and Neutron.


3) We will also need to add the BIRD PPA which contains fixes to BIRD that are not yet available in Ubuntu:

Once this is done, then we need to update our package manager on each machine:


4) We needs to install etcd database on a single machine or on a cluster:

Once done, we then need to stop etcd the service, delete any existing etcd database on the system, and edit a bit in etcd.conf file:


5) We then needs to start etcd database service on a single machine or on a cluster:

6) Install etcd proxy on every node running OpenStack services that isn’t running the etcd database. We need to stop the etcd service and modify etcd.conf :

7) Start etcd database service again:


8) We then needs to install the calico-control package:

9) Need to edit the neutron.conf file and need to change core_plugin to core_plugin = calico

10) At the end, restart the Neutron server process :

11) Needs to install the calico-compute package:


12) We can create the /etc/calico/felix.cfg .13) At the end, restart the Felix service with service calico-felix restart.

Offcource, there are lots of steps, lots of other configuration changes involved in the middle. But based on the slide presentation I just presented an overview and an idea on the steps needs to configure.

You can go to the link to understand in details and follow each steps to configure Calico successfully in Ubuntu.

For more information visit