Deploying a network addon in your Kubernetes cluster will enable communication between different components within the cluster. A network addon can route traffic between nodes, allowing pods in the cluster to send and receive traffic. Load balancing and service discovery are also made easier thanks to networking addons, but each addon comes with its own networking model and configuration. In this tutorial, we will go through a list of networking addons for Kubernetes to help you choose the best one for your needs.
In this tutorial you will learn:
- List of networking addons for Kubernetes
|Category||Requirements, Conventions or Software Version Used|
|System||Any Linux distro|
|Other||Privileged access to your Linux system as root or via the
# – requires given linux commands to be executed with root privileges either directly as a root user or by use of
$ – requires given linux commands to be executed as a regular non-privileged user
List of Network Addons for Kubernetes
The following list contains links and a summary of features for all of the most popular networking addons available for Kubernetes.
If you are just looking to quickly get started with deploying a network addon for your Kubernetes cluster, then Flannel is one of the easiest to use and most popular. Calico is also very popular but a little more complex. As with most things in Linux and tech, each choice has their pros and cons.
Cisco’s ACI (Application Centric Infrastructure) plugin is a networking and policy model that utilizes the Opflex protocol. It is capable of IP address management, L2/L3 networking, load balancing, and security functions for container workloads.
Antrea provides networking and security features for a Kubernetes cluster. It uses VXLAN or Geneve for encapsulation and can encrypt traffic between your nodes with IPSec packet encryption.
Calico Calico provides networking and network policies that give a range of options to select from, depending on the specific needs and requirements of your situation. These options include non-overlay and overlay networks, with or without BGP. Calico can also enforce network policies across hosts, pods, and applications at the service mesh layer, but only if Istio & Envoy are utilized.
Canal is a hybrid network addon that combines two of the most popular options: Canal and Flannel.
Cilium is a comprehensive solution for networking, security, and observability that utilizes a data plane based on eBPF. The platform offers a straightforward flat Layer 3 network that can extend across multiple clusters in either a native routing or overlay/encapsulation mode.
CNI-Genie works alongside other networking addons to help with seamless integration. It makes connections to Calico, Canal, Flannel, or Weave much easier in Kubernetes.
Contiv offers a range of adaptable networking options that cater to different use cases, including native L3 with BGP, overlay via vxlan, classic L2, and Cisco-SDN/ACI. It also features a sophisticated policy framework.
Contrail is a network virtualization and policy management platform that operates across multiple clouds in an open-source environment. With the ability to integrate seamlessly with Kubernetes, OpenShift, OpenStack, and Mesos orchestration systems, Contrail and Tungsten Fabric provide various isolation modes that cater to virtual machines, containers/pods, and bare metal workloads.
Flannel is a lightweight addon that allocates a preconfigured subnet for each host. It uses VXLAN to forward packets.
Knitter is a full network solution and CNI. It supports multiple network interfaces in Kubernetes.
Multus can work all popular CNI plugins such as Calico, Cilium, Contiv, Flannel and handle various types of workloads in Kubernetes.
OVN-Kubernetes is built on top of OVN (Open Virtual Network), a virtual networking solution that emerged from the Open vSwitch (OVS) initiative. This platform offers an overlay-based networking approach for Kubernetes, featuring an OVS-based implementation of load balancing and network policy management.
Nodus is another OVN based addon capable of multi OVN network support, multiple interfaces or IPs, load balancing, and other OVN adherent standards.
NSX-T facilitates the integration of VMware NSX-T with container orchestrators, like Kubernetes, and with container-based CaaS/PaaS platforms, such as Pivotal Container Service (PKS) and OpenShift.
Nuage is an SDN platform that offers policy-driven networking for communication between Kubernetes Pods and non-Kubernetes systems, with the added benefits of visibility and security monitoring.
Romana works at Layer 3 and connects pod networks by supporting a NetworkPolicy API.
Weave Net provides networking and network policy to connect containers across different hosts and cloud environments.
In this tutorial, we saw a list of available network addons for Kubernetes on a Linux system. There are plenty to choose from, and we only summarized some of the most obvious features of each one. You will need to navigate to the official page of each addon to learn about everyting they offer, but this should help you get started on choosing the best one for your Kubernetes environment.