Cilium 是一款基于 eBPF 的网络、可观测性和安全工具,适用于 Docker 和 Kubernetes 等 Linux 容器管理平台。Bitnami 提供的 Cilium Helm 图表经过精心设计和持续维护,可快速、轻松地在 Kubernetes 集群上部署容器,满足生产工作负载需求。
Cilium ***概述
商标说明:本软件列表由 Bitnami 打包。所提及的商标分属各自公司所有,使用这些商标并不意味着任何关联或背书。
自 2025 年 8 月 28 日起,Bitnami 将升级其公共镜像仓库,通过新的 Bitnami Secure Images 计划 提供精选的强化、安全聚焦镜像。此次变更包括:
有关详细信息,请访问 Bitnami Secure Images 公告。
consolehelm install my-release oci://registry-1.docker.io/bitnamicharts/cilium
指定仓库和发布名称安装:
consolehelm install my-release oci://REGISTRY_NAME/REPOSITORY_NAME/cilium
说明:需将
REGISTRY_NAME和REPOSITORY_NAME替换为实际仓库地址,例如 Bitnami ***仓库为registry-1.docker.io/bitnamicharts。
默认情况下,图表会安装内部 etcd。如需使用外部键值存储(如托管服务),需禁用内部 etcd 并配置外部端点:
consolehelm install my-release oci://registry-1.docker.io/bitnamicharts/cilium \ --set etcd.enabled=false \ --set externalKvstorehost.enabled=true \ --set externalKvstorehost.endpoints[0]=external-kvstore-host-0:2379 \ --set externalKvstorehost.endpoints[1]=external-kvstore-host-1:2379
图表默认在节点上安装 Cilium CNI 插件。如需自定义:
--set agent.cniPlugin.install=falseyamlagent: cniPlugin: hostCNIBinDir: "/opt/cni/bin" # CNI 二进制文件路径 hostCNINetDir: "/etc/cni/net.d" # CNI 配置文件路径
通过 Hubble 组件加密通信需启用 TLS 并配置证书:
consolekubectl create secret generic ca-tls-secret --from-file=./tls.crt --from-file=./tls.key
yamlhubble: tls: enabled: true existingCASecret: "ca-tls-secret" peers: existingSecret: "peers-tls-secret" relay: existingSecret: "relay-tls-secret" client: existingSecret: "client-tls-secret"
--set hubble.tls.autoGenerated.enabled=true --set hubble.tls.autoGenerated.engine=helmyamlhubble: tls: autoGenerated: enabled: true engine: cert-manager certManager: existingIssuer: "my-issuer" existingIssuerKind: "ClusterIssuer"
启用各组件指标采集并暴露给 Prometheus:
yamlagent: metrics: enabled: true # 启用 Cilium Agent 指标 service: annotations: prometheus.io/scrape: "true" prometheus.io/port: "9090" hubble: peers: metrics: enabled: true # 启用 Hubble Peers 指标 relay: metrics: enabled: true # 启用 Hubble Relay 指标 envoy: metrics: enabled: true # 启用 Envoy 指标 operator: metrics: enabled: true # 启用 Operator 指标
前提:集群需已安装 Prometheus 或 Prometheus Operator,推荐使用 Bitnami Prometheus Helm 图表。
通过 Ingress 暴露 Hubble UI(需集群已安装 Ingress 控制器,如 NGINX Ingress):
yamlhubble: ui: enabled: true ingress: enabled: true hostname: hubble.example.com # 自定义域名 tls: - hosts: - hubble.example.com secretName: hubble-tls-secret # TLS 密钥名称
yamlagent: extraEnvVars: - name: LOG_LEVEL value: "error" # 调整日志级别 # 或从 ConfigMap/Secret 导入 extraEnvVarsCM: "my-configmap" # 包含环境变量的 ConfigMap 名称 extraEnvVarsSecret: "my-secret" # 包含环境变量的 Secret 名称
yamlagent: sidecars: - name: "log-exporter" image: "busybox:latest" command: ["sh", "-c", "tail -f /var/log/cilium.log"] # 暴露 Sidecar 端口 service: extraPorts: - name: "log-port" port: 8080 targetPort: 8080
使用 Velero 工具备份和恢复 Helm 部署的持久化卷:
consolevelero backup create cilium-backup --include-resources pods,pv,pvc,configmaps,secrets --selector app.kubernetes.io/instance=my-release
consolevelero restore create --from-backup cilium-backup
详细指南:使用 Velero 备份和恢复 Kubernetes 部署
| 参数名 | 描述 | 默认值 |
|---|---|---|
global.imageRegistry | 全局 Docker 镜像仓库地址 | "" |
global.imagePullSecrets | 全局镜像拉取密钥数组 | [] |
global.defaultStorageClass | 持久化卷默认存储类 | "" |
global.security.allowInsecureImages | 是否允许跳过镜像验证 | false |
global.compatibility.openshift.adaptSecurityContext | 适配 OpenShift 安全上下文(auto/force/disabled) | auto |
| 参数名 | 描述 | 默认值 |
|---|---|---|
kubeVersion | 覆盖 Kubernetes 版本 | "" |
nameOverride | 部分覆盖资源名称前缀 | "" |
fullnameOverride | 完全覆盖资源全名 | "" |
commonLabels | 所有资源通用标签 | {} |
commonAnnotations | 所有资源通用注解 | {} |
clusterDomain | Kubernetes 集群域名 | cluster.local |
diagnosticMode.enabled | 启用诊断模式(禁用探针并覆盖命令) | false |
| 参数名 | 描述 | 默认值 |
|---|---|---|
agent.image.registry | Agent 镜像仓库 | REGISTRY_NAME |
agent.image.repository | Agent 镜像路径 | REPOSITORY_NAME/cilium |
agent.image.pullPolicy | 镜像拉取策略 | IfNotPresent |
agent.image.pullSecrets | 镜像拉取密钥 | [] |
agent.cniPlugin.install | 是否安装 CNI 插件 | true |
注意:完整参数列表请参见 Bitnami Cilium 图表 GitHub 文档。
卸载 Helm 发布:
consolehelm uninstall my-release
注意:卸载不会自动删除持久化卷和密钥,需手动清理:
consolekubectl delete pvc -l app.kubernetes.io/instance=my-release kubectl delete secret -l app.kubernetes.io/instance=my-release
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429