Cilium

eBPF 数据面的 CNI:网络策略、kube-proxy 替换、Gateway API 与跨集群互联都在一套里。

用 eBPF 程序挂在内核网络路径上做转发与策略,因此能整体替掉 kube-proxy 的 iptables 规则表(`kubeProxyReplacement`)。除 CNI 本职外还带三块常被单独选型的能力:L3-L7 网络策略(L7 走内嵌 Envoy)、Gateway API 入口实现、以及 ClusterMesh —— 让两个集群的 Service 与 Pod 互相可达。Hubble 是它的流量可观测面,能看到「哪个 Pod 到哪个 Pod 被谁拒了」。CNCF 毕业项目。

License
Apache-2.0
语言
Go
自托管
Helm Chart · K8s 清单
上游托管版
无
分类
CNI入口
仓库
github.com/cilium/cilium
上游文档
文档官网

上游活跃度

2026-08-23 抓取 · 数据来自 cilium/cilium (github)
star24,997
最近提交2026-08-23
最新版本v1.20.12026-08-18

数字由构建期抓取,非实时;star 数不同代码托管平台之间不可直接比较。

运行依赖

  • 较新的内核(基础功能 4.19+,kube-proxy 替换与 host routing 等要 5.x 以上,逐特性不同)
  • 挂载 bpffs;K3s 上要在安装时关掉 flannel 与内置 ServiceLB

上手前注意

  • 能力越界带来的耦合:入口、策略、跨集群、流量可观测全压在同一个 DaemonSet 上 —— 它出问题不是「网络慢了」,是这四件事一起没了
  • ClusterMesh 要求各集群的 Pod/Service CIDR 不重叠、cluster name 与 id 全局唯一,这个约束在建第二个集群之前就得定下来
  • Hubble 全量流日志是额外的内存与 CPU 开销,小内存节点上要按需开、别默认全开
  • 它用 fwmark 做策略路由 —— 和同机的 Tailscale、WireGuard 等同样用 fwmark 的组件可能撞车,症状是部分流量间歇性走错路径

同类工具(CNI)