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.

Recently, Calico 3 has been launched with a bang!

We will now check what’s there in new Calico version 3.

What’s in Calico 3 ?

Calico has now following features:

  • Calico now stores its data in etcd version 3
  • Felix now compiles and runs on Windows in policy-only mode.
  • This version of Calico easily supports migration and upgrade from Calico v2.6.5
  • calicoctl enhancements with new features.

Calico other changes:

  • Calico now assigns the host side of veth pairs a MAC address of ee:ee:ee:ee:ee:ee. If this fails, it uses a kernel-generated MAC address as before. For more information, refer to the Troubleshooting FAQ. cni-plugin
  • The CNI plugin now offers an optional environment variable called CNI_OLD_CONF_NAME. If set, the CNI plug-in cleans up old configuration data during an upgrade, making it easier to migrate to a new CNI_CONF_NAME value. cni-plugin
  • The CNI plugin no longer throws a file exists message when programming routes. cni-plugin

Calico other changes:

  • After a period of depreciation, this release removes support for the ETCD_AUTHORITY and ETCD_SCHEME environment variables. Calico no longer reads these values. If you have not transitioned to ETCD_ENDPOINTS, you must do so as of v3.0. Refer to Configuring calicoctl
  • etcdv3 datastore for more information.
  • A new node controller for Kubernetes deployments clears data associated with deleted nodes from the Calico datastore, preventing conflicts that can lead to crash loops.

Calico other changes:

  • Calico now works with Kubernetes network services proxy with IPVS/LVS. Calico enforces network policies with kubeproxy running in IPVS mode for Kubernetes clusters. Currently, only workload ingress policy is supported.
  • Rolling update is now enabled by default in the Kubernetes self-hosted manifests. calico
  • The CNI plugin now offers an optional environment variable called CNI_OLD_CONF_NAME.

Unfortunately, there are few limitations found as follows:

  • Currently, it is offered only for Kubernetes, OpenShift, and host endpoint integrations.
  • GoBGP is currently not supported.
  • Route reflectors cannot be clustered.

For more information visit

https://www.projectcalico.org/

https://docs.projectcalico.org/v2.6/introduction/

https://blog.tigera.io/tagged/calico