1.5 KiB
1.5 KiB
Cilium local profile
The standard k3d profile is the default quick start. This profile is for demonstrating Cilium with kube-proxy replacement.
Create it with:
k3d cluster create --config local-quickstart/k3d-cilium-cluster-config.yaml
Before installing Cilium, set the API server endpoint in a temporary values file. The endpoint must be reachable directly from every node. Do not use the Kubernetes service VIP because kube-proxy is disabled during bootstrap.
kubectl config current-context
kubectl get nodes -o wide
# The profile is composed from common settings and the k3d overlay.
# Replace the endpoint values in a temporary file if installing manually.
helm_values_dir=deployments/cilium/values
helm repo add cilium https://helm.cilium.io/
helm repo update
helm upgrade --install cilium cilium/cilium \
--namespace kube-system \
--version 1.20.0 \
--values "$helm_values_dir/common.yaml" \
--values "$helm_values_dir/profiles/k3d.yaml" \
--set k8sServiceHost=REPLACE_WITH_API_SERVER_DNS_OR_PRIVATE_IP \
--set k8sServicePort=REPLACE_WITH_API_SERVER_PORT
kubectl -n kube-system rollout status daemonset/cilium --timeout=300s
kubectl -n kube-system get pods -l k8s-app=cilium
Install ArgoCD only after Cilium is Ready. Apply
deployments/argocd/optional-apps/cilium-k3d.yaml manually only after the
endpoint is configured. It is intentionally outside the root app-of-apps
watched directory until the cluster has been bootstrapped without kube-proxy.
Delete the profile with:
k3d cluster delete security-baseline-cilium