Releases: linkerd/linkerd2
edge-20.9.3
edge-20.9.3
This edge release includes fixes and updates for the control plane and CLI.
- Added
--dest-cni-bin-dirflag to thelinkerd install-cnicommand, to
configure the directory on the host where the CNI binary will be placed - Removed
collector.nameandjaeger.nameconfig 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
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.destinationGetNetworksvariable to set the
LINKERD2_PROXY_DESTINATION_PROFILE_NETWORKSvariable in the proxy chart
template - Added TLS certificate validation for the Injector, SP Validator, and Tap
webhooks to thelinkerd checkcommand
edge-20.9.1
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 checkfor 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
edge-20.8.4
- Fixed a problem causing the
enable-endpoint-slicesflag to not be persisted
when set vialinkerd upgrade(thanks @Matei207!) - Removed SMI-Metrics templates and experimental sub-commands
- Use
--frozen-lockfileto avoid accidental update of dashboard JS
dependencies in CI (thanks @tharun208!)
edge-20.8.3
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 checkwill 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
- Added support for topology-aware service routing to the Destination
- Web UI
- Fixed Tap
Authoritydropdown not being populated (thanks to @tharun208!)
- Fixed Tap
edge-20.8.2
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 --multiclusterif the multicluster
support is not installed
edge-20.8.1
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
- Enabled a multi-threaded runtime to substantially improve latency especially
- 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!)
- Fixed an issue where the debug sidecar image was missing during upgrades
edge-20.7.5
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-mirrorcontroller, with separate controllers
that will be installed per target cluster throughlinkerd 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!)
- Replaced the single
- Prometheus
- Added
global.prometheusUrlto 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.
- Added
- Other
- Fixed bug in
linkerd checkthat was failing to wait for Prometheus to be
available right after having installed linkerd. - Added ability to set
priorityClassNamefor 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-versionannotation withchecksum/configfor
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.
- Fixed bug in
edge-20.7.4
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
linkerdcommand (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
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