Skip to main content
In this lesson we demonstrate how to install Cilium onto a Kubernetes cluster using Helm. The guide covers adding the Cilium Helm repository, inspecting and customizing chart values, enabling optional IPv6 support, installing the chart into the cluster, and verifying the installation and runtime status.
A presentation slide reading "Install Celium Helm" on the left with a large turquoise curved shape on the right containing the word "Demo." Small "© Copyright KodeKloud" text appears in the bottom-left.
Prerequisites
  • A Kubernetes cluster with sufficient privileges to install cluster-wide addons (RBAC/ClusterRole/ClusterRoleBinding privileges).
  • Helm installed locally (Helm v3+ recommended).
  • kubectl configured to target your cluster context.
If you need to install Helm locally, follow the official instructions at https://helm.sh. A common manual installation sequence:
Add the Cilium Helm repository Cilium publishes an official Helm chart. Add the repo and confirm it’s available to your Helm client:
Expected output (example):
Inspect chart default values Before installing, download the chart’s default values so you can review and override settings as required. This helps you understand tunables such as datapath mode, encryption, IPv6, Hubble, etc.
The generated values.yaml contains many configuration options with inline comments. Example excerpts:
Enable IPv6 (optional) If you want IPv6 support, edit values.yaml and enable the top-level IPv6 block for the Cilium agent. There are several IPv6-related settings across the file — ensure you edit the top-level agent configuration (not only example snippets).
Tip: Search values.yaml for the primary Cilium agent section (look for comments or headings around “Agent configuration”) to make sure you modify the intended top-level options. Install Cilium with Helm Install the chart into the kube-system namespace, supplying your modified values.yaml. Optionally pin a chart version with —version.
Example install output:
Verify the release Confirm the Helm release exists in the kube-system namespace:
View the rendered Kubernetes manifests that Helm applied To inspect the fully rendered manifest for auditing or troubleshooting:
Example snippet from the rendered manifest:
Check Cilium runtime status Verify pods, daemonsets, and deployments in kube-system to ensure agents and operator are running:
If you have the Cilium CLI installed, it provides a concise view of component health:
Typical status output shows agent and operator availability, Hubble status, Envoy proxy counts, and any health issues.
If you are deploying to a managed Kubernetes service (EKS, GKE, AKS), consult the Cilium documentation for platform-specific prerequisites and recommended settings (for example, node taints/labels, node groups, or specific annotations). These are documented in the Cilium installation guide: https://docs.cilium.io/en/v1.17/
Quick reference — common verification commands Wrapping up Summary of the Helm-based installation flow:
  1. Ensure Helm is installed and kubectl is configured for your cluster.
  2. Add and update the Cilium Helm repository.
  3. Inspect the chart defaults and adjust values.yaml for your needs (IPv6, datapath, Hubble, etc.).
  4. Install the chart into your target namespace with Helm.
  5. Verify the Helm release and inspect manifests; confirm runtime status with kubectl and cilium CLI.
For production deployments or cloud-managed clusters, follow the platform-specific guidance in the Cilium docs: https://docs.cilium.io/en/v1.17/

Watch Video