Announcing Linkerd 2.6: Distributed tracing, live request headers, faster dashboard, and more!
Today we’re happy to announce the release of Linkerd 2.6! This release adds
support for distributed tracing, brings request and response headers to
Linkerd’s live tap
output, adds traffic split visualizations to the
dashboard, dramatically improves the performance of the dashboard on large
clusters, adds a public Helm repo, and much, much more.
Linkerd’s new distributed tracing support means that Linkerd’s data plane proxy now emit trace spans, allowing proxy timing for individual requests to be captured with systems like Jaeger. Since distributed tracing is a complex topic that (unlike most of Linkerd’s features!) requires some investment to use, Linkerd maintainer Alex Leong has written a handy blog post describing how to assemble a functioning end-to-end distributed tracing system with Linkerd 2.6.
This release also adds live request and response headers to Linkerd’s tap
output. Linkerd’s tap feature provides a live sample of actual requests
flowing between any two pods, deployments, or namespaces. (Particularly useful
since Linkerd encrypts all meshed HTTP traffic by
default!) In Linkerd
2.5, we ensured that tap obeyed Kubernetes RBAC restrictions; the addition of
2.6 headers brings us one step closer to our vision of a complete “tcpdump for
microservices”–if tcpdump obeyed fine-grained access control, that is.
Linkerd 2.6 brings several improvements to Linkerd’s dashboard. First, we’ve dramatically reduced the Prometheus load generated by the dashboard—the dashboard should now be usable on large clusters, and cause significantly less load even on small ones. Second, the dashboard now includes a visualization of the traffic split feature for canary deployments, which is already causing some excitement in the community:
The @linkerd team did a terrific job with the traffic split dashboard. This is by far the best tool to monitor #Flagger orchestrating canary and blue/green deployments in real time. #KubernetesWeekends pic.twitter.com/pf9bOEXYHv
— Stefan Prodan (@stefanprodan) September 28, 2019
Finally, following up on our Helm work from the previous release, we’re happy to announce that Linkerd now has a public Helm repo! We’ve published a guide to installing Linkerd with Helm from this public repo.
Linkerd 2.6 additionally brings a tremendous list of other improvements, performance enhancements, and bug fixes, including:
- A new
--cluster-domain
flag tolinkerd install
for clusters that have a customized domain instead of “cluster.local”. - A new namespace-level Grafana dashboard.
- A new JSON output option to
linkerd tap
. - A new node selector constraint to Helm installation, allowing mixed-cluster installation.
- And lots, lots more. See the full release notes for details.
If you’ve been watching the clock, this release hits at just around 7 weeks since Linkerd 2.5. This high velocity release cycle is only possible thanks to the rapidly-growing Linkerd community of contributors, testers, and adopters. A special thanks to Alena Varkockova, Armin Bürkle, Bruno M. Custódio, Pascal Bourque, Brian Storti, Kevin Taylor, Eugene Glotov, pierDipi, and Tarun Pothulapati.
📣 We want to meet you! Next month many of the Linkerd maintainers and
contributors will be converging on Kubecon NA in San
Diego.
Alex Leong will be hosting a Linkerd in Production
Workshop,
and William and Oliver will be delivering introductory and deep-dive talks,
respectively. That’s not to mention the Linkerd talks by engineers from
Nordstorm, Microsoft, Paybase, OpenFaaS, Buoyant, and many more. If you’re
attending, please swing by the #kccnc19
channel in the Linkerd
Slack, and find us in the Linkerd booth in person!
Ready to try Linkerd? Those of you who have been tracking the 2.x branch via our weekly edge releases will already have seen these features in action. Either way, you can download the stable 2.6 release by running:
curl --proto '=https' --tlsv1.2 -sSfL https://run.linkerd.io/install | sh
Upgrading from a previous release? See our handy Linkerd upgrade
guide for how to use the linkerd upgrade
command.
Linkerd is a community project and is hosted by the Cloud Native Computing Foundation. If you have feature requests, questions, or comments, we’d love to have you join our rapidly-growing community! Linkerd is hosted on GitHub, and we have a thriving community on Slack, Twitter, and the mailing lists. Come and join the fun!
(Image credit: neonow)