CNCF(Cloud Native Computing Foundation)是云原生技术的核心推动者。理解 CNCF 的项目分级和技术全景,有助于在技术选型时找到经过社区验证的可靠工具。
目录
1. CNCF 项目分级体系
CNCF 采用三级成熟度模型:
| 级别 | 要求 | 代表性项目 |
|---|---|---|
| Sandbox | 早期创新项目,社区初建 | 众多实验性项目 |
| Incubating | 生产使用案例,活跃社区 | Helm、etcd、Cilium |
| Graduated | 广泛采用,多组织贡献,成熟治理 | Kubernetes、Prometheus、Envoy |
项目从 Sandbox → Incubating → Graduated 需要满足严格的标准:代码规范、安全审计、治理文档、采用度证明等。
2. 毕业项目(Graduated)详解
截至 2025 年,CNCF 共有 20+ 毕业项目:
编排与运行时
| 项目 | 作用 | 采用度 |
|---|---|---|
| Kubernetes | 容器编排平台 | 行业标准 |
| containerd | 容器运行时 | K8s 默认 |
| Helm | K8s 包管理器 | 广泛使用 |
| etcd | 分布式键值存储 | K8s 核心依赖 |
服务通信
| 项目 | 作用 | 采用度 |
|---|---|---|
| Envoy | L7 代理和通信总线 | Istio、AWS App Mesh 基础 |
| Linkerd | 轻量级 Service Mesh | 生产级采用 |
| CoreDNS | 灵活 DNS 服务器 | K8s 默认 DNS |
可观测性
| 项目 | 作用 | 采用度 |
|---|---|---|
| Prometheus | 时序监控和告警 | 监控领域标准 |
| Fluentd | 统一日志采集层 | 日志采集主流 |
| Jaeger | 分布式追踪 | 追踪领域头部 |
| OpenTelemetry | 可观测性统一标准 | 快速增长 |
持续交付
| 项目 | 作用 | 采用度 |
|---|---|---|
| Argo | GitOps 持续交付 | K8s CD 首选 |
| Flux | GitOps 工具集 | 开源 GitOps |
| Keptn | 应用生命周期管理 | 渐进式采用 |
安全
| 项目 | 作用 | 采用度 |
|---|---|---|
| OPA | 通用策略引擎 | 策略即代码标准 |
| Falco | 运行时安全监控 | 安全监控主流 |
| Cert-manager | TLS 证书自动化 | K8s 标准方案 |
| TUF/Notary | 软件包安全更新/签名 | 供应链安全 |
存储与数据库
| 项目 | 作用 | 采用度 |
|---|---|---|
| Rook | 云原生存储编排 | Ceph on K8s |
| Vitess | MySQL 水平扩展 | YouTube 开源 |
| TiKV | 分布式事务键值存储 | TiDB 基础 |
3. 孵化项目(Incubating)精选
值得关注的孵化项目
| 项目 | 方向 | 亮点 |
|---|---|---|
| Cilium | 网络 | eBPF 原生 CNI,L7 策略 |
| Knative | Serverless | K8s 上的 Serverless 标准 |
| Dapr | 应用运行时 | 微服务构建块 |
| Backstage | 开发者平台 | Spotify 开源 IDP |
| Karmada | 多集群 | 多云多集群编排 |
| KubeEdge | 边缘计算 | K8s 延伸到边缘 |
| Volcano | 批处理调度 | 大数据/AI 批处理 |
| Chaos Mesh | 混沌工程 | 云原生混沌测试 |
| Kyverno | 策略引擎 | K8s 原生 YAML 策略 |
| Thanos | 监控扩展 | Prometheus 长期存储 |
| Strimzi | Kafka Operator | K8s 上运行 Kafka |
| Istio | Service Mesh(Sandbox→Incubating) | 从 Google 独立到 CNCF |
4. 技术方向全景
可观测性方向
Metrics → Prometheus / Thanos / VictoriaMetrics / Mimir
Logs → Loki / Fluentd / Fluent Bit / Vector
Traces → Jaeger / Tempo / Zipkin / SkyWalking
Profiling → Parca / Pyroscope / Pixie
Dashboard → Grafana
Alerting → Alertmanager / Cortex Ruler
Monitoring Stack → kube-prometheus-stack
安全方向
镜像扫描 → Trivy / Snyk / Clair / Grype
策略引擎 → OPA / Kyverno / jsPolicy
运行时安全 → Falco / Tetragon
Secret 管理 → External Secrets / Vault / Sealed Secrets
网络策略 → Cilium NetworkPolicy / Calico
零信任 → Istio mTLS / Linkerd / SPIFFE/SPIRE
供应链安全 → Sigstore/cosign / SLSA / in-toto
存储方向
块存储 → Rook / OpenEBS / TopoLVM / Longhorn
对象存储 → MinIO / Rook Ceph Object
文件存储 → NFS / CephFS / JuiceFS
db-operator → Zalando Postgres Operator / MongoDB Operator / MySQL Operator
数据迁移 → Velero / Kasten
服务网格与网络
Service Mesh → Istio / Linkerd / Consul Connect / Kuma / apisix
Ingress → Ingress NGINX / Traefik / HAProxy / Kong
API Gateway → Envoy Gateway / APISIX / Emissary
CNI → Cilium / Calico / Flannel / Weave / Antrea
持续交付
GitOps → ArgoCD / Flux / Rancher Fleet
CI → Tekton / Argo Workflows
GitOps Secret → External Secrets / Sealed Secrets / SOPS
Config Mgmt → Helm / Kustomize / CUE / jsonnet
边缘与 IoT
边缘 K8s → KubeEdge / K3s / MicroK8s / OpenYurt
设备管理 → Akri
边缘消息 → EMQ X / NATS
AI/ML on K8s
训练调度 → Volcano / Run:AI / Yunikorn
模型服务 → KServe / Seldon Core / BentoML
ML Pipeline → Kubeflow / MLflow / Flyte
特征存储 → Feast
5. 新兴趋势与前沿方向
WebAssembly (Wasm)
Wasm 作为比容器更轻量的运行时,正在云原生领域崛起:
| 项目 | 说明 |
|---|---|
| Wasmtime | Bytecode Alliance 的 Wasm 运行时 |
| WasmEdge | CNCF Sandbox,轻量级 Wasm runtime |
| Spin | 应用框架,简化 Wasm 微服务开发 |
| containerd-wasm-shims | 在 containerd 中运行 Wasm |
Wasm vs 容器:
- 启动时间:ms 级 vs 百 ms 级
- 体积:KB 级 vs MB 级
- 安全:能力模型沙箱 vs namespace/cgroup
- 生态:新兴 vs 成熟
eBPF
eBPF 正在重塑云原生基础设施:
| 应用 | 项目 |
|---|---|
| 网络 (CNI) | Cilium |
| 可观测性 | Tetragon, Pixie, Hubble |
| 安全 | Falco (部分), Tracee, Tetragon |
| 调度 | Sched_ext (Linux 6.6+ 新调度器) |
FinOps
云成本优化成为新焦点:
| 项目 | 方向 |
|---|---|
| OpenCost | K8s 成本监控 |
| Kubecost | 成本可视化与优化建议 |
| Vantage | 多云成本管理 |
Platform Engineering
内部开发者平台(IDP)兴起:
| 项目 | 说明 |
|---|---|
| Backstage | Spotify 开源 IDP,插件生态丰富 |
| Port | 商业化 IDP |
| Kratix | 声明式平台构建 |
6. 技术选型决策框架
评估维度
| 维度 | 问题 |
|---|---|
| 成熟度 | CNCF 级别?生产采用案例? |
| 社区活跃度 | GitHub stars、贡献者数量、commit 频率 |
| 安全性 | 安全审计?CVE 响应速度? |
| 可维护性 | 学习曲线?运维复杂度? |
| 兼容性 | 与现有技术栈的集成? |
| 厂商锁定 | 是否绑定特定云厂商? |
| 性能 | 基准测试结果?资源占用? |
选型建议
基础必选:
- 容器编排:Kubernetes(毕业)
- 监控:Prometheus + Grafana(毕业)
- 日志:Loki 或 Fluentd/Fluent Bit(毕业)
- 包管理:Helm(毕业)
- CNI:Cilium 或 Calico(毕业/孵化)
进阶选型:
- Service Mesh:Istio / Linkerd(根据团队能力)
- GitOps:ArgoCD(毕业)或 Flux(毕业)
- Secret:External Secrets(孵化)或 Vault
- 数据库 Operator:根据数据库类型选择
前沿探索:
- Wasm:关注 WasmEdge + containerd-wasm-shims
- eBPF:Cilium + Tetragon
- IDP:Backstage
总结
CNCF 技术全景覆盖从基础设施到应用交付的全栈。毕业项目代表了云原生的成熟基石,孵化项目展示了技术前沿,Sandbox 项目则是创新实验田。
技术选型遵循"毕业优先、孵化谨慎、Sandbox 观望"的原则。同时关注 eBPF、Wasm、Platform Engineering 等新兴方向,为技术演进做好准备。
继续阅读
探索更多技术文章
浏览归档,发现更多关于系统设计、工具链和工程实践的内容。