stable-2.8.0
This release introduces new a multi-cluster extension to Linkerd, allowing it
to establish connections across Kubernetes clusters that are secure,
transparent to the application, and work with any network topology.
- The CLI has a new set of
linkerd multicluster
sub-commands that provide
tooling to create the resources needed to discover services across
Kubernetes clusters. - The
linkerd multicluster gateways
command exposes gateway-specific
telemetry to supplement the existingstat
andtap
commands. - The Linkerd-provided Grafana instance remains enabled by default, but it can
now be disabled. When it is disabled, the Linkerd dashboard can be
configured to link to an alternate, externally-managed Grafana instance. - Jaeger & OpenCensus are configurable as an add-on; and the
proxy has been improved to emit spans with labels that reflect its pod's
metadata. - The
linkerd-cni
component has been promoted from experimental to
stable. linkerd profile --open-api
now honors thex-linkerd-retryable
and
x-linkerd-timeout
OpenAPI annotations.- The Helm chart continues to become more flexible and modular, with new
Prometheus configuration options. More information is available in the
Helm chart README. - gRPC stream error handling has been improved so that transport errors
are indicated to the client with agrpc-status: UNAVAILABLE
trailer. - The proxy's memory footprint could grow significantly when
server-speaks-first-protocol connections hit the proxy. Now, a timeout is
in place to prevent these connections from consuming resources. - After benchmarking the proxy in high-concurrency situations, the inbound
proxy has been improved to reduce contention, improving latency and
reducing spurious timeouts. - The proxy could fail requests to services that had only 1 request every 60
seconds. This race condition has been eliminated. - Finally, users reported that ingress misconfigurations could cause the proxy
to consume an entire CPU which could lead to timeouts. The proxy now
attempts to prevent the most common traffic-loop scenarios to protect against
this.
NOTE: Linkerd's multicluster
extension does not yet work on Amazon
EKS. We expect to follow this release with a stable-2.8.1 to address this
issue. Follow #4582 for updates.
This release includes changes from a massive list of contributors. A special
thank-you to everyone who helped make this release possible: @aliariff,
@amariampolskiy, @arminbuerkle, @ArthurSens, @christianhuening,
@christyjacob4, @cypherfox, @daxmc99, @dr0pdb, @drholmie, @hydeenoble,
@joakimr-axis, @jpresky, @kohsheen1234, @lewiscowper, @lundbird, @matei207,
@mayankshah1607, @mmiller1, @naseemkullah, @sannimichaelse, & @supra08.