Cilium Cluster Mesh

With the rise of Kubernetes adoption, an increasing number of clusters is deployed for various needs, and it is becoming common for companies to have clusters running on multiple cloud providers, as well as on-premise.

Kubernetes Federation has for a few years brought the promise of connecting these clusters into multi-zone layers, but latency issues are more often than not preventing such architectures.

Cilium Cluster Mesh allows you to connect the networks of multiple clusters in such as way that pods in each cluster can discover and access services in all other clusters of the mesh, provided all the clusters run Cilium as their CNI.

This allows to effectively join multiple clusters into a large unified network, regardless of the Kubernetes distribution each of them is running.

In this lab, we will see how to set up Cilium Cluster Mesh, and the benefits from such an architecture.

DifficultyIntermediate
VersionOpen Source
TopicsNetworking
ProjectCilium

Main steps in the lab

01🏛 Setting up Kind clusters

Set up Kind clusters

02🤝 Mesh Clusters

Let's mesh the clusters we created

03🚀 Deploy application

Let's deploy global applications and make services global

04🛡️ Network Policies

Secure the service across clusters!