发布 Linkerd 2.10:扩展、不透明端口、多集群 TCP 等等!

来源: 投稿
作者: weir2016
2021-07-12

我们很高兴地宣布发布 Linkerd 2.10,这是迄今为止最好的 Linkerd 版本!此版本为 Linkerd添加了可插入扩展,并通过将非关键组件移动到可选扩展中来显着减少默认控制平面的大小。2.10 版本还将 Linkerd 的无缝、安全多集群支持扩展到所有 TCP 连接,而不仅仅是 HTTP。最后,Linkerd 2.10 添加了不透明端口,作为将 Linkerd 的覆盖范围扩展到与协议检测不兼容的某些情况的一种方式。

扩展

在 Linkerd 2.10 中,Linkerd 控制平面现在是模块化和可扩展的,引入了扩展。扩展是作为 Linkerd 控制平面的一部分运行的可选软件组件。2.10 中的默认控制平面现在仅包含运行所需的最低限度,以及打包为viz扩展的Prometheus、Grafana、仪表板和其他非关键遥测组件 。这种变化降低默认Linkerd控制平面到 200MB在启动时,由〜500MB的Linkerd 2.9!

2.10 版本默认提供三个扩展:

  • viz,其中包含集群上的指标堆栈:Prometheus、Grafana、仪表板等;
  • multicluster,包含跨集群通信的机制;和
  • jaeger,其中包含 Jaeger 分布式跟踪收集器和 UI。

迁移到扩展有两个目的:首先,它允许 Linkerd 采用者准确选择他们想要在集群上安装 Linkerd 的哪些部分和部分——这是一个常见的要求,特别是对于已经拥有集群外指标管道的用户。

其次,扩展允许 Linkerd 社区构建特定于 Linkerd 的运算符和控制器,而无需修改核心 Linkerd CLI。扩展可以来自任何地方,因为这些扩展适合 Linkerd 的 CLI,所以它们“感觉”就像 Linkerd 的其余部分。

在 Linkerd Extensions的完整博客文章中阅读更多内容。

适用于所有 TCP 连接的无缝、安全的多集群

Linkerd 2.8 中引入的多集群支持允许 Linkerd 以安全、对应用程序完全透明且独立于底层网络拓扑的方式跨集群边界连接 Kubernetes 服务。但是,直到现在,此功能仅限于 HTTP 连接。在 Linkerd 2.10 中,Linkerd 的多集群功能现在扩展到所有 TCP 连接,与 Linkerd 为 pod-to-pod 通信提供的安全性和透明性保证相同。

想试试吗?只需安装multicluster扩展程序!

不透明端口

2.10 版本添加了一个新的不透明端口功能,扩展了 Linkerd 处理某些类型流量的能力。不透明端口只是 Linkerd 将代理的端口,而不执行协议检测。虽然协议检测是 Linkerd 大部分简单性的关键,但某些类型的流量与它不兼容,包括最常见的使用非 TLS 的 MySQL 连接。在 Linkerd 2.9 及更早版本中,通过在代理级别简单地跳过它们来处理这些情况。在 Linkerd 2.10 中,用户可以明确地将这些连接标记为不透明端口,Linkerd 将代理它们而不尝试协议检测。这允许 Linkerd 在以前无法处理的情况下应用透明 mTLS 和检测等功能。

阅读有关Linkerd 中不透明端口的完整博客文章了解更多信息。

还有更多!

Linkerd 2.10 还包含大量其他改进、性能增强和错误修复,包括:

  • 更新了代理以使用 TLS 1.3 版(仍启用对 TLS 1.2 的支持以与之前的代理版本兼容)
  • 修复了可能导致入站代理无法从旧代理(来自 stable-2.8.x 版本)的网状 HTTP/1 请求失败的问题
  • 添加了一个新的 /shutdown 管理端点,该端点只能通过环回网络访问,允许批处理作业在完成时优雅地终止代理
  • 向控制平面组件添加了 PodDisruptionBudgets,以便在中断期间它们不能同时终止
  • 修复了代理注入器、sp-validator 和 Tap APIServer 在外部提供时不会自动刷新其证​​书的问题 - 例如通过 cert-manager
  • 引入linkerd identity命令,用于为注入的 pod 获取 TLS 证书
  • 添加了一个linkerd viz list命令来列出启用了点击的 pod
  • 添加了对 LoadBalancer 以外类型的多集群网关的支持
  • 将 Docker 镜像托管移动到cr.l5d.io注册表
  • 还有很多很多。

有关详细信息,请参阅完整的发行说明

展开阅读全文
3 收藏
分享
加载中
更多评论
0 评论
3 收藏
分享
返回顶部
顶部