cert-manager 升级成为 CNCF 孵化项目

2022-11-28 17:08:25 浏览数 (1)

CNCF 技术监督委员会(TOC)已经投票接受cert-manager[1]作为 CNCF 孵化项目。

cert-manager 是 Kubernetes 的一个插件,用于自动管理和颁发来自各种颁发来源的 TLS 证书,适用于云原生 Kubernetes 或 OpenShift 环境。它将持续确保证书是有效的和最新的,并尝试在到期前的适当时间续订证书。该机器身份对于使用 TLS 进行高度安全的加密数据通信至关重要。

由于云原生环境高度分散且自动化程度高,cert-manager 作为开源工具非常受开发人员的欢迎,它可以通过 TLS 加密保护云原生工作负载,并为集群提供关键的安全性。

cert-manager 还与许多其他 CNCF 项目保持一致,包括 Cilium、Knative、SPIRE、Isitio 和 Linkerd。

“用户和社区对我们的信任和支持让我们倍感荣幸。我们同样对 CNCF 的支持和认可感到谦卑,并相信达到孵化阶段是该项目的一个重要里程碑。cert-manager 维护者期待与 CNCF 合作,实现我们的目标,让信任和证书管理在云原生环境中更易实现。”——Joakim Ahrlin,Venafi 公司 Jetstack 的工程团队负责人兼 cert-manager 维护者。

“cert-manager 可能是你在 Kubernetes 集群上安装的第一批应用程序之一。cert-manager 维护者的目标是尽可能平稳地体验第一次体验,同时通过我们的配套组件(如 csi-driver 和 approver-policy)支持高级用例。”——Tim Ramlot,Jetstack 软件工程师兼 cert-manager 维护者。

“cert-manager 是 Kubernetes 环境中 X.509 证书的事实上的标准,”波音公司开源和云原生首席工程师 Ricardo Rocha 说。“由于 cert-manager 的灵活性,开发团队可以利用同一工具,在开发环境中利用自签名证书和在生产环境中利用由可信 CA 签名的证书。”

“处理证书是大多数云原生部署需要处理的任务,不能掉以轻心。”CERN 计算工程师 Ricardo Rocha 和 cert-manager 的 TOC 赞助者说:“cert-manager 的受欢迎程度和庞大的用户群表明它已经赢得了用户的信任,并已成为生态系统中不可或缺的一部分。随着该项目进入孵化阶段,我期待看到社区继续发展,并看到该项目与其他云原生工具进一步集成。”

主要组件:

  • cert-manager 控制器:它允许用户创建由 K8s 秘密支持的证书,包含你的证书的密钥。它还允许你直接为入口资源创建这些秘密。
  • csi-driver:cert-manager 包括一个CSI 驱动程序库[2],使用户能够轻松地构建定制的 CSI 驱动程序,将证书密钥对传递到 Kubernetes 中的 pod。cert-manager 还实现了几个 CSI 驱动程序,如csi-driver-spiffe[3],以及通用的csi-driver[4]
  • 发行者:cert-manager 与第三方证书提供商有许多发行者集成,包括 Let's Encrypt、Amazon Route53 和 Venafi。
  • Approval API:该 API 是 cert-manager 中批准或拒绝证书请求的一种机制。这个 API 的决策可以自动化,就像approver-policy[5]的情况一样,它是一个基于 CRD 的策略控制器。
  • trust-manager:作为该团队改进 Kubernetes 中信任分布计划的一部分,trust-manager 是一个早期项目,旨在帮助用户跨集群分布 CA 包。

显著的里程碑:

  • GitHub Stars:9.4k
  • 合并的拉取请求:2057
  • 关闭的问题:2531
  • 贡献者:300 多名
  • 发布:136
  • Slack 成员:7k 名

“cert-manager 项目是一项了不起的工程,降低了 Kubernetes 和云原生生态系统获得安全证书的障碍。我们期待着支持不断增长的社区,并增加采用者的数量,”云计算原生计算基金会首席技术官 Chris Aniszczyk 说。

cert-manager 不断增加对上游 Kubernetes 增强功能的支持,包括网关 API、CSR API 和 Trust Anchor Sets,并且自 2020 年加入 CNCF 沙箱以来取得了重大进展,包括:

  • istio-csr[6]使用户能够使用 cert-manager 为 istiod 和 sidecars 颁发证书
  • 引进了带有漏洞报告说明的 cert-manager安全策略[7]
  • cert-manager 在 1.0 版进入沙箱阶段,从那时起,已经发布了 10 个次要版本,到 1.10 版
  • 增加了对Kubernetes Gateway API[8]的实验性 cert-manager 支持
  • 将 cert-manager 从 GitHub 发起组织迁移到 cert-manager 自己的组织
  • 参加了谷歌代码之夏[9]的一个项目[10],以简化 cert-manager 的安装
  • 供应链安全:为容器和 helm charts 添加签名[11]
  • 于 2022-04-13 启动https://cert-manager.io/网站更新
  • 维护者[12]的数量从 3 人增加到 9 人
  • 进入沙箱的时候,cert-manager 镜像的下载量约为 2M,目前已缓慢下降至约 1.7M,但我们认为这与镜像缓存和 docker hubs 定价模式的变化有关
  • 用户研究给这个项目 99%支持率
  • 自从进入沙箱以来,文档网站[13]的访问者已经翻了一番,从平均每天 1000 个网站访问者增加到 2000 个,这是一个比镜像下载更好的采纳率信号。

该团队还在改善 cert-manager 的可扩展性和用户 开发者体验,并致力于缩小 cert-manager 的核心,以降低部署复杂性、二进制文件大小、攻击面和镜像大小。

关于路线图的更多信息可以在这里[14]找到。

作为 CNCF 托管的项目,cert-manager 是与其技术利益一致的中立基金会的一部分,也是更大的 Linux 基金会的一部分,该基金会提供治理、营销支持和社区拓展。关于每个级别的成熟度要求的更多信息,请访问CNCF 毕业标准[15]

参考资料

[1]

cert-manager: https://cert-manager.io/

[2]

CSI 驱动程序库: https://github.com/cert-manager/csi-lib

[3]

csi-driver-spiffe: https://github.com/cert-manager/csi-driver-spiffe

[4]

csi-driver: https://github.com/cert-manager/csi-driver

[5]

approver-policy: https://github.com/cert-manager/approver-policy

[6]

istio-csr: https://github.com/cert-manager/istio-csr

[7]

安全策略: https://github.com/cert-manager/cert-manager/blob/master/SECURITY.md

[8]

Kubernetes Gateway API: https://gateway-api.sigs.k8s.io/

[9]

谷歌代码之夏: https://summerofcode.withgoogle.com/archive/2021/projects/5686178510012416

[10]

项目: https://gist.github.com/inteon/9dce2403c6946e423c9076b90b195c62

[11]

签名: https://github.com/cert-manager/cert-manager/issues/4473

[12]

维护者: https://github.com/cert-manager/cert-manager/blob/master/OWNERS

[13]

文档网站: https://cert-manager.io/docs/

[14]

路线图: https://github.com/cert-manager/cert-manager/blob/master/ROADMAP.md

[15]

CNCF 毕业标准: https://github.com/cncf/toc/blob/main/process/graduation_criteria.md

0 人点赞