Skip to content

Releases: linkerd/linkerd2

edge-20.9.3

17 Sep 22:03
edge-20.9.3
77a55be

Choose a tag to compare

edge-20.9.3

This edge release includes fixes and updates for the control plane and CLI.

  • Added --dest-cni-bin-dir flag to the linkerd install-cni command, to
    configure the directory on the host where the CNI binary will be placed
  • Removed collector.name and jaeger.name config fields from the tracing
    addon
  • Updated Jaeger to 1.19.2
  • Fixed a warning about deprecated Go packages in controller container logs

edge-20.9.2

11 Sep 06:01
8d1fb80

Choose a tag to compare

edge-20.9.2

This edge release continues the work of adding support for mTLS for all TCP
traffic and changes the default container registry to ghcr.io from gcr.io.

If you are upgrading from stable-2.8.x with the Linkerd CLI using the
linkerd upgrade command, you must add the --addon-overwrite flag to ensure
that the grafana image is properly set.

  • Removed the default timeout for ServiceProfiles so that ServiceProfile routes
    behave the same as when there is no ServiceProfile definition
  • Changed default docker image repository to ghcr.io from gcr.io. Users who
    pull the images into private repositories should take note of this change
  • Added endpoint labels to outbound TCP metrics to provide more context and
    detail for the metrics, add load balancing to TCP connections
    (bypassing kube-proxy), and secure the connection with mTLS when both
    endpoints are meshed
  • Made unnamed ServiceProfile discovery configurable using the
    proxy.destinationGetNetworks variable to set the
    LINKERD2_PROXY_DESTINATION_PROFILE_NETWORKS variable in the proxy chart
    template
  • Added TLS certificate validation for the Injector, SP Validator, and Tap
    webhooks to the linkerd check command

edge-20.9.1

04 Sep 00:48
edge-20.9.1
565b5e4

Choose a tag to compare

edge-20.9.1

This edge release contains an important proxy update that allows linkerd to
continue to operate normally in HA during node outages. We're also adding full
Kubernetes 1.19 support!

  • Improved the proxy's error handling for DNS errors encountered when
    discovering control plane addresses, which can be common during installation,
    before all components have been started
  • The destination and identity services had to be made headless in order to
    support that new controller discovery (which now can leverage SRV records)
  • Use SAN fields when generating the linkerd webhook configs; this completes the
    Kubernetes 1.19 support which enforces them
  • Fixed linkerd check for multicluster that was spuriously claiming the
    absence of some resources
  • Improved the injection test cleanup (thanks @zhouhao3!)
  • Added ability to run the integration test suite using a cluster in an ARM
    architecture (thanks @aliariff!)

edge-20.8.4

27 Aug 16:56
edge-20.8.4
d28044d

Choose a tag to compare

edge-20.8.4

  • Fixed a problem causing the enable-endpoint-slices flag to not be persisted
    when set via linkerd upgrade (thanks @Matei207!)
  • Removed SMI-Metrics templates and experimental sub-commands
  • Use --frozen-lockfile to avoid accidental update of dashboard JS
    dependencies in CI (thanks @tharun208!)

edge-20.8.3

21 Aug 21:14
edge-20.8.3
83d69be

Choose a tag to compare

edge-20.8.3

This edge release adds support for topology-aware service routing to
the Destination controller. When providing service discovery updates to proxies,
the Destination controller will now filter endpoints based on the service's
topology preferences. Additionally, this release includes bug fixes for the
linkerd check CLI command and web dashboard.

  • CLI
    • linkerd check will no longer warn about a looser webhook failure policy in
      HA mode
  • Controller
    • Added support for topology-aware service routing to the Destination
      controller (thanks @Matei207)
    • Changed the Destination controller to always return destination overrides
      for service profiles when no traffic split is present
  • Web UI
    • Fixed Tap Authority dropdown not being populated (thanks to @tharun208!)

edge-20.8.2

15 Aug 01:51
311a97a

Choose a tag to compare

edge-20.8.2

This edge release adds an internationalization framework to the dashboard,
Spanish translations to the dashboard UI, and a linkerd multicluster uninstall
command for graceful removal of the multicluster components.

  • Web UI
    • Added Spanish translations to the dashboard
    • Added a framework and documentation to simplify creation of new
      translations
  • Multicluster
    • Added a multicluster uninstall command
    • Added a warning from linkerd check --multicluster if the multicluster
      support is not installed

edge-20.8.1

11 Aug 20:05
edge-20.8.1
729abf7

Choose a tag to compare

edge-20.8.1

This edge adds multi-arch support to Linkerd! Our docker images and CLI now
support the amd64, arm64, and arm architectures.

  • Multicluster
    • Added a multicluster unlink command for removing multicluster links
    • Improved multicluster checks to be more informative when the remote API is
      not reachable
  • Proxy
    • Enabled a multi-threaded runtime to substantially improve latency especially
      when the proxy is serving requests for many concurrent connections
  • Other
    • Fixed an issue where the debug sidecar image was missing during upgrades
      (thanks @javaducky!)
    • Updated all control plane plane and proxy container images to be multi-arch
      to support amd64, arm64, and arm (thanks @aliariff!)
    • Fixed an issue where check was failing when DisableHeartBeat was set to true
      (thanks @mvaal!)

edge-20.7.5

30 Jul 23:09
edge-20.7.5
e62ff75

Choose a tag to compare

edge-20.7.5

This edge brings a new approach to multicluster service mirror controllers and
the way services in target clusters are selected for mirroring.

The long-awaited Bring-Your-Own-Prometheus case has been finally addressed.

Many other improvements from our great contributors are described below. Also
note progress is still being made under the covers for future support for Service
Topologies (by @Matei207) and delivering image builds in multiple platforms (by
@aliariff).

  • Multicluster
    • Replaced the single service-mirror controller, with separate controllers
      that will be installed per target cluster through linkerd multicluster link.
      More info here.
    • Changed the mechanism for mirroring services: instead of relying on
      annotations on the target services, now the source cluster should specify
      which services from the target cluster should be exported by using a label
      selector. More info here.
    • Added new section in the dashboard for exposing multicluster gateway metrics
      (thanks @tharun208!)
  • Prometheus
    • Added global.prometheusUrl to the Helm config to have linkerd use an
      external Prometheus instance instead of the one provided by default.
    • Added ability to declare sidecar containers in the Prometheus Helm config.
      This allows adding components for cases like exporting logs to services
      such as Cloudwatch, Stackdriver, Datadog, etc. (thanks @memory!)
    • Upgraded Prometheus to the latest version (v2.19.3), which should consume
      substantially less memory, among other benefits.
  • Other
    • Fixed bug in linkerd check that was failing to wait for Prometheus to be
      available right after having installed linkerd.
    • Added ability to set priorityClassName for CNI DaemonSet pods, and to
      install CNI in an existing namespace (both options provided through the CLI
      and as Helm configs) (thanks @alex-berger!)
    • Added support for overriding the proxy's inbound and outbout TCP connection
      timeouts (thanks @mmiller1!)
    • Added library support for dashboard i18n. Strings still need to be tagged
      and translations to be added. More info
      here.
    • In some Helm charts, replaced the non-standard
      linkerd.io/helm-release-version annotation with checksum/config for
      forcing restarting the component during upgrades (thanks @naseemkullah!)
    • Upgraded the proxy init-container to v1.3.4, which comes with an updated
      debian-buster distro and will provide cleaner logs listing the iptables
      rules applied.

edge-20.7.4

23 Jul 21:23
edge-20.7.4
76f73a2

Choose a tag to compare

edge-20.7.4

This edge release adds support for the new Kubernetes
EndpointSlice
resource to the Destination controller. Using the EndpointSlice API is more
efficient for the Kubernetes control plane than using the Endpoints API. If
the cluster supports EndpointSlices (a beta feature in Kubernetes 1.17),
Linkerd can be installed with --enable-endpoint-slices flag to use this
resource rather than the Endpoints API.

  • Added fish shell completions to the linkerd command (thanks @WLun001!)
  • Enabled the support for EndpointSlices (thanks @Matei207!)
  • Separated Prometheus checks and made them runnable only when the add-on
    is enabled

edge-20.7.3

17 Jul 22:55
edge-20.7.3
f9a8ed2

Choose a tag to compare

edge-20.7.3

  • Add preliminary support for EndpointSlices which will be usable in future
    releases (thanks @Matei207!)
  • Internal improvements to the CI process for testing Helm installations