专栏首页黑客下午茶Linkerd stable-2.11.0 稳定版发布:授权策略、gRPC 重试、性能改进等!

Linkerd stable-2.11.0 稳定版发布:授权策略、gRPC 重试、性能改进等!

中文原创整理,内容源自 Linkerd 官方博客

授权策略

Linkerd 的新服务器授权策略(server authorization policy)功能使您可以细粒度控制允许哪些服务相互通信。这些策略直接建立在 Linkerd 的自动 mTLS 功能提供的安全服务身份上。与 Linkerd 的设计原则保持一致,授权策略以可组合的 Kubernetes 原生方式表达,这种方式只需最少的配置,就可表达广泛的行为。

  • https://linkerd.io/2.11/features/automatic-mtls

为此,Linkerd 2.11 引入了一组默认授权策略,只需设置 Kubernetes annotation 即可应用于 clusternamespacepod 级别,包括:

  • all-authenticated(只允许来自 mTLS-validated 服务的请求);
  • all-unauthenticated(允许所有请求)
  • deny(拒绝所有请求)
  • … 和更多。

Linkerd 2.11 还引入了两个新的 CRD ServerServerAuthorization,它们一起允许在任意一组 pod 中应用细粒度的策略。例如,Server 可以选择 namespace 中所有 pod 上的所有管理端口(admin ports),ServerAuthorization 可以允许来自 kubelet 的健康检查连接,或用于指标收集(metrics collection)的 mTLS 连接。

这些 annotationCRD 一起使您可以轻松地为集群指定各种策略,从 “允许所有流量”“服务 Foo 上的端口 8080 只能从使用 Bar 服务帐户的服务接收 mTLS 流量”,更多。(请参阅完整的策略文档 »)

  • https://linkerd.io/2.11/features/server-policy/

重试带有正文的 HTTP 请求

重试失败的请求是 Linkerd 提高 Kubernetes 应用程序可靠性能力的关键部分。到目前为止,出于性能原因,Linkerd 只允许重试无正文请求,例如 HTTP GET。在 2.11 中,Linkerd 还可以重试带有 body 的失败请求,包括 gRPC 请求,最大 body 大小为 64KB

容器启动排序解决方法

Linkerd 2.11 现在默认确保 linkerd2-proxy 容器在 pod 中的任何其他容器初始化之前准备就绪。这是 Kubernetes 对容器启动顺序缺乏控制的一种解决方法,并解决了一大类棘手的竞争条件,即应用程序容器在代理准备就绪之前尝试连接。

更小、更快、更轻

像往常一样,Linkerd 2.11 继续让 Linkerd 成为 Kubernetes 最轻、最快的服务网格。2.11 中的相关变化包括:

  • 控制平面(control plane)减少到只有 3 个部署。
  • 由于高度活跃的 Rust 网络生态系统,Linkerd 的数据平面(data plane) “微代理(micro-proxy)” 更小、更快。
  • SMI 功能大部分已从核心控制平面中删除,并移至扩展中。
  • Linkerd 镜像现在使用最小的 “distroless” 基础镜像。

还有更多!

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

  • Kubernetes 资源的新 CLI tab completion(命令自动完成)
  • 现在可以在 Namespace 资源上设置所有 config.linkerd.io annotations,它们将作为在该命名空间中创建的 pod 的默认值。
  • 一个 linkerd check -o short 带有简短输出的新命令。
  • Dashboard 中的新 扩展(Extensions) 页面
  • 代理的模糊测试(Fuzz testing)!
    • https://linkerd.io/2021/05/07/fuzz-testing-for-linkerd/
  • 代理现在设置信息性的 l5d-client-idl5d-proxy-error header。
  • Helm 可配置性和 linkerd check 进行了大量改进。
  • 使用 linkerd-multiclusterStatefulSets 的实验支持
  • 还有更多!

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

  • https://github.com/linkerd/linkerd2/releases/tag/stable-2.11.0。

本文分享自微信公众号 - 黑客下午茶(hi-weishao),作者:为少

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-10-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 详细了解 Linkerd 2.10 基础功能,一起步入 Service Mesh 微服务架构时代

    Linkerd 提供了许多功能,如:自动 mTLS、自动代理注入、分布式追踪、故障注入、高可用性、HTTP/2 和 gRPC 代理、负载均衡、多集群通信、重试和...

    为少
  • Service Mesh 框架选型对比分析:Linkerd、Envoy、Istio、Conduit

    当前,业界主要有以下主要几种Service Mesh框架,下面进行详细的说明及对比。

    xcbeyond
  • Linkerd 2.10(Step by Step)—使用 Helm 安装 Linkerd

    Linkerd 可以选择通过 Helm 安装,而不是使用 linkerd install 命令。

    为少
  • Linkerd 2.10(Step by Step)—Linkerd 和 Pod 安全策略 (PSP)

    Linkerd 控制平面带有自己的最低特权 Pod Security Policy 和相关的 RBAC 资源。仅当启用 PodSecurityPolicy ad...

    为少
  • Kubernetes服务网格(第10部分):服务网格API

    作为我们上个月发布的Linkerd1.0的一部分,我们已经悄悄地看到了很少有人注意的东西——Linkerd的服务网格API。随着1.0版本的发布,我们认为我们需...

    lemoon1993
  • 《istio实战指南》第1章 服务网格

    yeedomliu
  • 交易系统架构演进之路(七):Service Mesh

    Service Mesh,也叫服务网格,号称是下一代微服务架构技术,能有效地解决当前微服务架构中关于服务治理的痛点问题,从 2016 年推出至今,一直都是架构领...

    Keegan小钢
  • CNCF云原生景观的初学者指南

    这个博客最初是由Ayrat Khayretdinov在CloudOps博客上发布

    CNCF
  • 使用Linkerd进行分布式跟踪的指南

    我们很高兴地宣布Linkerd 2.6增加了对分布式跟踪的支持!这意味着Linkerd数据平面代理,现在可以发出跟踪跨度(span),允许你查看请求在跟踪请求的...

    CNCF
  • A Kubernetes Service Mesh(第9部分):使用gRPC的乐趣和收益

    原文地址:https://dzone.com/articles/a-service-mesh-for-kubernetes-part-ix-grpc-for-f...

    Techeek
  • CNCF欢迎CRI-O加入孵化项目 - Kubernetes的轻量级容器运行时

    今天,CNCF(Cloud Native Computing Foundation,云原生计算基金会)技术监督委员会(TOC)投票决定接受CRI-O作为孵化级托...

    CNCF
  • Linkerd 2.10(Step by Step)—安装多集群组件

    Linkerd 中的多集群支持需要在默认控制平面安装之上进行额外的安装和配置。本指南将介绍此安装和配置以及您可能遇到的常见问题。

    为少
  • Kubernetes无痛作gRPC负载平衡

    许多gRPC的新用户惊讶地发现,Kubernetes的默认负载平衡常常无法在gRPC上正常工作。例如,下面是一个简单的gRPC Node.js微服务应用,部署在...

    CNCF
  • Service Mesh安全:当入侵者突破边界,如何抵御攻击?| CNBPS 2020演讲实录

    大家好,我是来自灵雀云的邢海涛,今天演讲的主题是Service Mesh安全,主要从四个方面来跟大家做一下分享。首先介绍Service Mesh 安全需求,然后...

    灵雀云
  • Envoy和类似的系统比较

    总的来说,我们相信Envoy为现代服务导向架构提供了独特且引人注目的功能。下面我们比较一下Envoy和其他相关的系统。尽管在任何特定的领域(边缘代理,软件负载平...

    首席架构师智库
  • Linkerd最先进的Rust代理|Linkerd2-proxy

    部分由于Linkerd的性能数字和一流的安全审计报告,最近对Linkerd2-proxy(Linkerd使用的底层代理)的兴趣激增。作为一名Linkerd2维护...

    CNCF
  • Linkerd 2:5 分种厘清 Service Mesh 相关术语

    API gateway 位于应用程序的前面,旨在解决身份验证和授权、速率限制以及为外部消费者提供公共访问点等业务问题。相比之下,service mesh 专注于...

    为少
  • 【从小白到专家】 Istio技术实践专题(一):Service Mesh/ Istio 基本概念和架构基础

    Istio被称作Kubernetes的最佳云原生拍档。从今天起,我们推出“Istio技术实践”系列专题,在本专题中,我们将通过技术文章+视频授课的方式,为大家详...

    灵雀云
  • 五分钟初识Gloo

    Gloo是一种基于Kubernetes原生设计的功能丰富的Ingress Controller,致力于成为下一代API网关标杆产品。Gloo在函数级路由等方面表...

    zouyee

扫码关注云+社区

领取腾讯云代金券