Multus Container Network Interface (CNI)
Amazon Elastic Kubernetes Service (Amazon EKS) now supports the Multus Container Networking Interface (CNI) plugin, enabling pods running in EKS clusters to attach multiple network interfaces in support of advanced networking configurations.
Multus is an open source CNI plugin for Kubernetes that enables attaching multiple network interfaces to pods. Multus acts as a meta plugin, invoking additional CNI plugins that can operate on multiple network interfaces attached to pods. Use cases that commonly require pods with multiple interfaces include running 5G core and RAN networks on Kubernetes.
Amazon EKS provides a highly available managed Kubernetes service that is available in all global AWS regions, and supported in edge locations like AWS Local Zones and AWS Outposts. Using Multus with Amazon EKS enables advanced networking across these environments to run containerized network functions that deliver high quality content to end users.
Here's an example of how multi-homed pods can work on AWS. The following image shows
two pods with two network interfaces, eth0
and net1
. In both cases,
the Amazon VPC CNI manages the pod eth0
(default Multus delegate). Interface
net1
is managed by Multus via the ipvlan
CNI plugin for pod1, which
handles the user plane (for example, voice, video) traffic separated from the Kubernetes control
plane traffic. Whereas pod2 net1
gets connected to the host elastic network
interface through the host-device CNI plugin, and enables DPDK to accelerate the packet
processing.