Use this file to discover all available pages before exploring further.
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.
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:
# Example: extract and move helm binary (adjust filename for the version you downloaded)tar -zxvf helm-v3.0.0-linux-amd64.tar.gzmv linux-amd64/helm /usr/local/bin/helmhelm help
Add the Cilium Helm repository
Cilium publishes an official Helm chart. Add the repo and confirm it’s available to your Helm client:
helm repo add cilium https://helm.cilium.io/helm repo updatehelm repo list
Expected output (example):
NAME URLcilium https://helm.cilium.io/
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.
helm show values cilium/cilium > values.yaml
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).
ipv4: enabled: trueipv6: enabled: true
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.
NAME: ciliumLAST DEPLOYED: Tue Mar 25 21:26:25 2025NAMESPACE: kube-systemSTATUS: deployedREVISION: 1TEST SUITE: NoneNOTES:You have successfully installed Cilium with Hubble.Your release version is 1.17.2.For any further help, visit https://docs.cilium.io/en/v1.17/gettinghelp
Verify the release
Confirm the Helm release exists in the kube-system namespace:
helm list -n kube-system
View the rendered Kubernetes manifests that Helm applied
To inspect the fully rendered manifest for auditing or troubleshooting:
Check Cilium runtime status
Verify pods, daemonsets, and deployments in kube-system to ensure agents and operator are running:
kubectl -n kube-system get pods -l k8s-app=ciliumkubectl -n kube-system get daemonsets,deployments -l k8s-app=cilium
If you have the Cilium CLI installed, it provides a concise view of component health:
cilium status
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
Command
Purpose
kubectl -n kube-system get pods -l k8s-app=cilium
List Cilium pods and their status
kubectl -n kube-system get daemonsets,deployments
Check daemonsets & deployments in kube-system
helm list -n kube-system
Confirm Helm release presence and status
helm get manifest cilium -n kube-system
View rendered manifest applied by Helm
cilium status
High-level Cilium component health (if cilium CLI installed)
Wrapping up
Summary of the Helm-based installation flow:
Ensure Helm is installed and kubectl is configured for your cluster.
Add and update the Cilium Helm repository.
Inspect the chart defaults and adjust values.yaml for your needs (IPv6, datapath, Hubble, etc.).
Install the chart into your target namespace with Helm.
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/