Linkerd 2.1正式发布


今天,我们非常高兴地宣布,Linkerd 2.1正式与大家见面了。这是我们对2.0版本进行的第一次稳定更新,也引入了不少新功能:包括每路由指标、服务配置文件(service profiles)以及经过大幅改进的仪表板UI等等。此外,我们还添加了一些令人兴奋的实验性功能:代理自动注入、单命名空间安装以及控制面板的高可用性模式等。

对于通过我们每周边缘版本发布信息定期关注2.x分支的朋友们来说,相信各位已经体验过这些功能的实际应用效果。如果您并没有关注,则可以通过运行以下命令下载2.1稳定版本:
curl https://run.linkerd.io/install

每路由指标

在2.1版本当中,Linkerd现在不仅能够立足服务层级提供指标,亦可在路由层级提供指标。这意味着Linkerd能够显示服务当中特定API调用的流量级故障、迟缓或变更情况。

举例来说,以下是具有多个API端点的“webapp”服务的每路由指标:
1.png

UI上部所示为传入与传出依赖关系的拓扑结构。下部则显示路由指标。从这一点可以看出,/books与/books/<id>/edit路由存在问题,因为其成功率远远低于50%。相比之上,服务上的其它路由则运转良好。这样细化的结论,显然要比只知道“webapp”服务的总体成功率为80%好得多!

每路由指标建立在Linkerd 2.1的另一大重要补充之上,即服务配置文件。

服务配置文件

Linkerd 2.1引入了服务配置文件这一概念,这是一种向Linkerd提供服务信息的简便快捷方法。其中的信息包括服务路由(即预期响应的API调用)以及Linkerd应如何处理这些路由。(顺带一提,服务配置文件是以Kubernetes CRD的形式实现的,其会将Linkerd所创建的Kubernetes CRD总数增加1。)

服务配置文件是一项非常令人兴奋的补充,因为其为各项目提供了新的基础构建块:能够立足于每项服务对Linkerd的行为进行配置。在即将发布的新版本当中,我们添加了一系列基于服务配置文件的功能,包括重试、断路、速率限制以及超时等等。

服务配置文件也是Linkerd 2.x背后设计理念的一大显示体现。通过在服务层级——而非全局层级——附加配置,我们得以确保Linkerd能够继续实现增量式采用——即一次一项服务。当然,即使没有指定服务配置文件,您仍然可以对Linkerd进行开箱即用。

漂亮的全新UI

在Linkerd 2.1当中,我们通过多种方式改进了Web仪表板,包括将其转换为Material UI。对于熟悉Kubernetes仪表板的朋友来说,这一全新外观应该会给您带来宾至如归的感觉:
2.png

Linkerd下一步有什么计划?

Linkerd 2.1是全球各地贡献者数月以来辛勤努力的成果,我们很高兴它的这次正式亮相。我们对Linkerd 2.1的服务配置文件机制感到非常兴奋,它也使我们长期以来一直渴望实现的一系列功能成为了现实。

在这个版本当中,我们只是略微探索了Linkerd能够实现的功能。在接下来的后续版本中,我们将在可靠性与安全性方面进一步完善Linkerd 2.x发展路线图。从中期角度来看,我们也将努力减少对Kubernetes项目的依赖。最后,Linkerd 1.x仍将得到积极开发,我们将继续致力于支持我们的1.x版本用户。

Linkerd是一个社区项目,由云原生计算基金会负责托管。如果您有功能要求、问题或者评论意见,我们热诚邀请您加入我们快速发展的社区中来!Linkerd项目托管在GitHub之上,我们也在SlackTwitter以及邮件列表的支持下建立起蓬勃发展的技术社区。快来加入吧!

原文链接:Announcing Linkerd 2.1

0 个评论

要回复文章请先登录注册