Skip to content

Releases: linkerd/linkerd2

edge-21.7.2

09 Jul 00:23
1462e7c

Choose a tag to compare

edge-21.7.2

This edge release focuses on dependency updates and has a couple of functional
changes. First, the Dockerfile used to build the proxy has been updated to use
the default distroless image, rather than the non-root variant. This change
is safe because the proxy already runs as non-root within the container. Second,
the ignoreInboundPorts parameter has been added in the linkerd2-cni helm
charts in order to enable tap support.

  • Updated several project dependencies
  • Updated the Dockerfile-proxy to use the default distroless image, because
    the proxy already runs as non-root within the container
  • Added ignoreInboundPorts parameter to the linkerd2-cni plugin helm chart

edge-21.7.1

01 Jul 18:13
d3cc21d

Choose a tag to compare

edge-21.7.1

This edge release adds support for emitting Kubernetes events in the identity
controller when issuing leaf certificates. The event includes the identity,
expiry date, and a hash of the certificate. Additionally, this release contains
many dependency updates for the control plane's components, and it includes a
fix for an issue with the clusterNetworks healthcheck.

  • Updated the identity controller to emit Kubernetes events when successfully
    issuing leaf certificates to injected pods.
  • Fixed an issue in linkerd check where the clusterNetworks healthcheck
    would fail if the podCIDR field is omitted from a node's spec.
  • Removed unnecessary controller port-forward logic from the bin/web script.

edge-21.6.5

24 Jun 23:47
edge-21.6.5
44e24ca

Choose a tag to compare

edge-21.6.5

This release contains a few improvements, from many contributors! Also under
the hood, the destination service has received updates in preparation to the
upcoming support for StatefulSets across multicluster.

  • Improved the linkerd check --proxy command to avoid hitting a timeout when
    dealing with large clusters
  • Fixed the web component permissions in order to properly run the podCIDR check
    (thanks @aryan9600!)
  • Avoid having the proxy-init container fail when the main container is
    configured to drop either the NET_RAW or NET_ADMIN capabilities (thanks
    @aryan9600!)
  • Upgraded the proxy-init image to improve the output in "simulate" mode (thanks
    @liuerfire!) and to log to stdout instead of stderr (thanks @mo4islona!)
  • Added test-coverage reports to PRs (thanks @akshitgrover!)

edge-21.6.3

17 Jun 21:32
edge-21.6.3
3705c25

Choose a tag to compare

edge-21.6.3

This release moves the Linkerd proxy to a more minimal Docker base image,
adds a check for detecting certain network misconfigurations, and replaces
the deprecated OpenCensus collector with the OpenTelemetry collector in the
jaeger extension.

  • Switched the Linkerd proxy's base docker image from Debian to a minimal
    distroless base image (thanks @tskinn!)
  • Added a check to verify that Linkerd's clusterNetworks settings match the
    cluster's pod CIDR networks (thanks @aryan9600!)
  • Replaced the deprecated OpenCensus collector with the OpenTelemetry
    collector in the jaeger extension (thanks @aatarasoff!)

edge-21.6.2

10 Jun 17:59
edge-21.6.2
db9f850

Choose a tag to compare

edge-21.6.2

This release fixes a problem with the HTTP body buffering that was added
to support gRPC retries. Now, only requests with a retry configuration
are buffered (and only when their bodies are less than 64KB).

Additionally, an issue with the outbound ingress-mode proxy where forwarded
HTTP clients could fail to detect when the target pod was deleted, causing
connections to retry forever has been fixed. This only impacted traffic
forwarded directly to pod IPs and not load balanced services.

Finally, this release also includes some fixes in the CLI and dashboard.

  • Added a new check that verifies if the opaque ports annotation is
    misconfigured on services or pods (thanks @migue!)
  • Added support for resource aware completion for core linkerd command
  • Fixed an issue where namespace resource was erroneously being shown
    in the dashboard's topology graph
  • Added uninstall command support for legacy extension installs
  • Updated the proxy to only buffer request bodies when a request can be retried
  • Updated the proxy to prevent buffering indefinitely on requests
    when endpoints are updated in ingress mode
  • Fixed spelling mistakes across various files in the project
    (thanks @jsoref!)

edge-21.6.1

04 Jun 00:09
4efcbf0

Choose a tag to compare

edge-21.6.1

This release adds support for retrying HTTP/2 requests with small (<64KB)
message bodies, allowing the proxy to properly buffer message bodies when
responses are classified as a failure. Documentation on how to configure
retries can be found here.

This release also modifies the proxy's identity subsystem to instantiate a
client on-demand so client connections are not retained continually. Also
included in this release are various bug fixes and improvements as well as
expanding support for resource-aware tab completion in the jaeger and
multicluster CLI extensions.

  • Added support for specifying a gateway-port flag for the multicluster link
    command (thanks @psmit!)
  • Added support for Kubernetes resource aware tab completion for jaeger and
    multicluster commands
  • Fixed an issue where viz, jaeger and multicluster extensions could not
    be installed on PodSecurityPolicy-enabled clusters
  • Fixed an issue where linkerd check --proxy could incorrectly report
    out-of-date proxy versions caused by incorrect regex (thanks @aryan9600!)
  • Added support for the proxy to retry HTTP/2 requests with message bodies
    <= 64KB
  • Modified the proxy's controller stack to create new client connections
    on-demand
  • Fixed Viz's uninstall command to remove viz installations that used the
    legacy linkerd.io/extension: linkerd-viz label (thanks @jsoref!)
  • Expanded the "linkerd-existence" health check to also check for the
    destination pod readiness

edge-21.5.3

27 May 19:53
edge-21.5.3
a38fe31

Choose a tag to compare

edge-21.5.3

This edge release contains various improvements to the Viz and Jaeger install
charts, along with bug fixes in the CLI, and destination. This release also
adds kubernetes aware autocompletion to all viz commands, along with
ServiceProfiles to be part of the default viz install.

Finally, the proxy has been updated to continue supporting requests without
l5d-dst-override in ingress-mode proxies, to no longer include query parameters
in the OpenCensus trace spans, and to prevent timeouts with controller clients
of components with more than one replica.

  • Separated protocol hint setting from H2 upgrades in destination profile
    response, thus preventing hint.OpaqueTransport field from not being set when
    H2 upgrades are disabled
  • Updated OpenCensus trace spans for HTTP requests to no longer include query
    parameters (thanks @aatarasoff!)
  • Reverted linkerd/linkerd2-proxy#992
    to support requests without l5d-dst-override in ingress-mode proxies
  • Fixed an issue in the proxy to prevent timeouts with controller clients
    of components with more than one replica
  • Fixed linkerd check --proxy failure with pods that are part of Jobs
  • Updated viz install to also include ServiceProfiles of its components.
    As a side-effect, linkerd diagnostics install-sp cmd has been removed
  • Added support for Kubernetes resource aware tab completion for all
    viz commands
  • Updated destination to prefer ServiceProfile.dstOverrides over
    TrafficSplit when both are present for a service
  • Added toggle flags for collector and jaeger components in the
    jaeger extension (thanks @tarvip!)
  • Added support for setting nodeselector, toleration fields for components
    in the Viz extension (thanks @aatarasoff!)
  • Fixed a templating issue in Viz, making podAnnotations field
    work with prometheus
  • Updated Golang version to 1.16.4
  • Removed unnecessary --addon-overwrite flag in linkerd upgrade

edge-21.5.2

21 May 00:29
64b17aa

Choose a tag to compare

edge-21.5.2

This edge release updates the proxy-init container to check whether the iptables
rules have already been added, which prevents errors if the proxy-init container
is restarted. Also, the viz stat command now has tab completion for Kubernetes
resources, saving you precious keystrokes! Finally, the proxy has been updated
with several fixes and improvements.

  • Added instructions to build.md for using a locally built proxy
    (thanks @jroper!)
  • Added support for Kubernetes resource aware tab completion to the viz stat
    command
  • Updated proxy-init to skip configuring firewall if rules exists
  • Fixed viz uninstall to delete all RBAC objects (thanks @aryan9600!)
  • Improved diagnostics for rejected profile discovery
  • Added the l5d-client-id header on mutually-authenticated inbound requests so
    that applications can discover the client's identity.
  • Reduced proxy resource usage when there are no profiles
  • Changed the admin server to assume all meshed connections are HTTP/2 and fail
    connections when that is not the case
  • Updated the proxy to require the l5d-dst-override header on outbound
    requests when the proxy is in ingress-mode
  • Removed support for TCP-forwarding in ingress-mode

stable-2.10.2

18 May 00:52
stable-2.10.2
5535e9c

Choose a tag to compare

stable-2.10.2

This stable release fixes a proxy task leak that could be triggered when clients
disconnect when a service is in failfast. It also includes fixes for the fuzz
testing that was performed on the proxy and its dependencies; check out the
Introducing fuzz testing for
Linkerd
blog post for
a summary of that work!

  • Added versions to the the hint URLs output by the check command so that
    users are directed to the correct stable version documentation
  • Fixed an issue where the opaque ports annotation on a namespace would
    overwrite the annotations on services in that namespace

edge-21.5.1

17 May 22:48
edge-21.5.1
69bbf92

Choose a tag to compare

edge-21.5.1

This edge release adds support for versioned hint URLs in linkerd check and
support for traffic splitting through ServiceProfiles, among other fixes and
improvements. Additionally, more options have been added to the
linkerd-multicluster and linkerd-jaeger helm charts.

  • Added support for traffic splitting through a ServiceProfile's dstOverrides
    field.
  • Added nodePorts option to the multicluster helm chart (thanks @psmit!).
  • Added nodeSelector and toleration options to the linkerd-jaeger helm chart
    (thanks @aatarasoff!).
  • Added versioned hint URLs to the CLI check command when encountering an
    error; each major CLI version will now point to that version's relevant
    section in the Linkerd troubleshooting page.
  • Fixed an issue in the CLI check command where error messages for
    healthchecks that were being retried would be outputted repeatedly instead of
    just once.
  • Fixed an issue in the proxy injector where a namespace annotated with opaque
    ports would overwrite all service annotations.
  • Fixed a regression in the proxy that caused all logs to be output with ANSI
    control characters, by default logs are output in plaintext now.
  • Simplified proxy internals in order to distinguish endpoint-forwarding logic
    from the handling of load balanced services.
  • Simplified the ingress-mode outbound proxy by requiring the
    l5d-dst-override header and by failing non-HTTP communication. Proxies
    running in ingress-mode will not unexpectedly revert to insecure
    communication as a result.