Linkerd 2.15 推出,调整了发布方式

来源: OSCHINA
2024-02-27 11:06:11

Linkerd 2.15 现已发布,该版本增加了对 Kubernetes 以外工作负载的支持。新的“网格扩展(mesh expansion)”功能首次允许 Linkerd 用户将运行在虚拟机、物理机和其他非 Kubernetes 位置上的应用程序引入到网格中,为 Kubernetes 和非 Kubernetes 工作负载提供统一的安全、可靠和可观测的连接。

2.15 版本还引入了对 SPIFFE 的支持,SPIFFE 是一种工作负载身份标准,它使 Linkerd 能够为集群外的工作负载提供加密身份验证。此外,还新增了原生的 Sidecar 容器支持,这是 Kubernetes 的一个新特性,它简化了 Sidecar 模型在 Kubernetes 中的使用,特别是对于作业工作负载而言。

以及对 Linkerd 的发布方式进行了一些重要调整。公告指出,“尽管 Linkerd 将始终是开源的,但从 2.15 版开始,我们将不再发布开源的稳定版本工件”。如果你目前正在生产环境中使用 Linkerd,可查看"A new model for stable releases"部分进行了解。

与往常一样,2.15 版本还包含了大量的错误修复和改进。

网格扩展

Linkerd 2.15 引入了网格扩展功能:可以在 Kubernetes 之外的任何地方部署 Linkerd 的超轻量级 Rust 微代理,并将它们连接到运行在 Kubernetes 集群上的 Linkerd 控制平面。这使得 Linkerd 能够处理非 Kubernetes 工作负载,将所有 TCP 通信与这些工作负载之间的通信升级为安全、可靠和可观测的连接。非 Kubernetes 应用程序可以获得 Linkerd 的全部功能,包括互相 TLS、重试、超时、断路器、基于延迟的负载均衡、动态的每个请求路由、零信任授权策略等等。

网格扩展是实现 Linkerd 成为云原生组织的通用网络层目标的重要组成部分。官方认为,这一举措在很大程度上得益于 Linkerd 的核心设计,即用 Rust 编写的超轻量级微代理。Rust 语言具备"防止内存相关错误、管理并发、生成小型、高效的二进制文件"的能力,使得 Linkerd 不仅避免了 C 和 C++等语言普遍存在的内存漏洞,而且提供了最小的资源占用和最重要的是对用户的最小操作负担。

“Linkerd 的 Rust 微代理是其以简单为先的方法的关键所在,我们能够提供小型、静态的二进制文件,可以编译为各种架构和平台,这是解锁 Linkerd 新的网格扩展功能的关键所在。”

SPIFFE 支持

网格扩展的一个主要挑战是如何为非 Kubernetes 工作负载生成工作负载标识。为了解决这个问题,项目团队引入了对 SPIFFE 的支持。通过 Linkerd 2.15,用户现在可以默认加密所有与虚拟机工作负载的通信,并在特定客户端的每个 HTTP 路由和 gRPC 方法级别上添加零信任控制。

原生 sidecar 支持

Linkerd 2.15 添加了对原生 sidecar 容器的支持,这是 Kubernetes 1.28 引入的一个新的 Kubernetes 特性,并在 Kubernetes 1.29 中默认启用。使用原生 sidecar 容器部署 Linkerd 解决了在 Kubernetes 中使用 sidecar 容器时长期存在的一些烦恼,特别是在支持 Job 和容器启动过程中的 race conditions 问题。

稳定版本的新模式

从 Linkerd 2.15 开始对交付方式进行了一些重大更改。虽然 Linkerd 始终是开源的,但从 Linkerd 2.15 开始,稳定的 Linkerd 发布将由供应商社区负责。

这不仅包括 Linkerd 2.15.0,还包括即将推出的 Linkerd 2.15.1 这样的 point releases、即将推出的 2.16.0 这样的重大版本,以及即将推出的 Linkerd 2.14.11 这样的 backports 版本,所有这些都将由供应商社区处理。

“我们将一如既往地在 GitHub 代码库中发布 edge releases,其中包含最新的 Linkerd 代码,包括错误修复、新功能等。这些版本一直是社区进行早期测试和审查的重要机制,我们希望在新框架下能看到更多这样的版本。当然,Linkerd 的开发工作仍将照常进行,包括功能开发、我们的安全漏洞响应政策,以及其他所有让 Linkerd 变得更出色的活动。

需要明确的是:Linkerd 始终是开源的。这一改变只涉及 release artifacts,而不是关于代码、管理、社区或其他任何方面。早在创建 Linkerd 之前,我们就已经是开源用户、贡献者和倡导者,我们对健康、包容、协作和不断发展的开源 Linkerd 的承诺一如既往。”

下一步

项目团队计划在接下来的版本中:扩展对网格扩展的支持,以包括私有网络;使 Gateway API 和非 Gateway API 接口达到一致;支持 IPv6;致力于处理入口流量和增加对出口流量的控制;探索以其他方式提供 Linkerd,包括“ambient”和其他方法等等。

更多详情可查看官方公告

展开阅读全文
点击引领话题📣 发布并加入讨论🔥
0 评论
1 收藏
分享
返回顶部
顶部