Releases: linkerd/linkerd2
edge-18.12.3
Upgrade notes: The control plane components have been renamed as of the
edge-18.12.1 release to reduce possible naming collisions. To upgrade an
older installation, see the Upgrade Guide.
- CLI
- Multiple improvements to the
linkerd install
config (thanks @codeman9!)- Use non-default service accounts for grafana and web deployments
- Use
emptyDir
volume mount for prometheus and grafana pods - Set security context on control plane components to not run as root
- Remove cluster-wide resources from single-namespace installs
- Disable service profiles in single-namespace mode
- Require that namespace already exist for single-namespace installs
- Fix resource requests for proxy-injector container in
--ha
installs
- Multiple improvements to the
- Controller
- Block controller initialization until caches have synced with kube API
- Fix proxy-api handling of named target ports in service configs
- Add parameter to stats API to skip retrieving prometheus stats (thanks,
@alpeb!)
- Web UI
- Adjust label for unknown routes in route tables, add tooltip
- Update Top Routes page to persist form settings in URL
- Add button to create new service profiles on Top Routes page
- Fix CLI commands displayed when linkerd is running in non-default namespace
- Proxy
- Proxies with TLS enabled now honor ports configured to skip protocol detection
stable-2.1.0
Announcing Linkerd 2.1 🎈
This stable release introduces several major improvements, including per-route
metrics, service profiles, and a vastly improved dashboard UI. It also adds
several significant experimental features, including proxy auto-injection,
single namespace installs, and a high-availability mode for the control plane.
For more details, see the announcement blog post:
https://blog.linkerd.io/2018/12/06/announcing-linkerd-2-1/
To install this release, run: curl https://run.linkerd.io/install | sh
Upgrade notes: The control plane components have been renamed in this
release to reduce possible naming collisions. Please make sure to read the
upgrade instructions if you are upgrading from the stable-2.0.0
release.
Special thanks to: @alenkacz, @alpeb, @benjdlambert, @fahrradflucht,
@ffd2subroutine, @hypnoglow, @ihcsim, @lucab, and @rochacon.
Full release notes:
- CLI
linkerd routes
command displays per-route stats for any resource- Service profiles are now supported for external authorities
linkerd profile --open-api
flag generates a service profile
based on an OpenAPI specification (swagger) filelinkerd routes
command displays per-route stats for services with
service profiles- Add
--ha
flag tolinkerd install
command, for HA
deployment of the control plane - Update stat command to accept multiple stat targets
- Fix authority stat filtering when the
--from
flag is present - Various improvements to check command, including:
- Emit warnings instead of errors when not running the latest version
- Add retries if control plane health check fails initially
- Run all pre-install RBAC checks, instead of stopping at first failure
- Fixed an issue with the
--registry
install flag not accepting
hosts with ports - Added an
--output
stat flag, for printing stats as JSON - Updated the
top
table to set column widths dynamically - Added a
--single-namespace
install flag for installing
the control plane with Role permissions instead of ClusterRole permissions - Added a
--proxy-auto-inject
flag to theinstall
command,
allowing for auto-injection of sidecar containers - Added
--proxy-cpu
and--proxy-memory
flags to theinstall
andinject
commands, giving the ability to configure CPU + Memory requests - Added a
--context
flag to specify the context to use to talk
to the Kubernetes apiserver - The namespace in which Linkerd is installed is configurable via the
LINKERD_NAMESPACE
env var, in addition to the--linkerd-namespace
flag - The wait time for the
check
anddashboard
commands is
configurable via the--wait
flag - The
top
command now aggregates by HTTP method as well
- Controller
- Rename snake case fields to camel case in service profile spec
- Controller components are now prefixed with
linkerd-
to
prevent name collisions with existing resources linkerd install --disable-h2-upgrade
flag has been added to
control automatic HTTP/2 upgrading- Fix auto injection issue on Kubernetes
v1.9.11
that would
merge, rather than append, the proxy container into the application - Fixed a few issues with auto injection via the proxy-injector webhook:
- Injected pods now execute the linkerd-init container last, to avoid
rerouting requests during pod init - Original pod labels and annotations are preserved when auto-injecting
- Injected pods now execute the linkerd-init container last, to avoid
- CLI health check now uses unified endpoint for data plane checks
- Include Licence files in all Docker images
- Proxy
- The proxy's
tap
subsystem has been reimplemented to be more
efficient and and reliable- The proxy now supports route metadata in tap queries and events
- A potential HTTP/2 window starvation bug has been fixed
- Prometheus counters now wrap properly for values greater than 2^53
- Add controller client metrics, scoped under
control_
- Canonicalize outbound names via DNS for inbound profiles
- Fix routing issue when a pod makes a request to itself
- Only include
classification
label onresponse_total
metric - Remove panic when failing to get remote address
- Better logging in TCP connect error messages
- The proxy's
- Web UI
- Top routes page, served at
/routes
- Route metrics are now available in the resource detail pages for
services with configured profiles - Service profiles can be created and downloaded from the Web UI
- Top Routes page, served at
/routes
- Fixed a smattering of small UI issues
- Added a new Grafana dashboard for authorities
- Revamped look and feel of the Linkerd dashboard by switching
component libraries from antd to material-ui - Added a Help section in the sidebar containing useful links
- Tap and Top pages
- Added clear button to query form
- Resource Detail pages
- Limit number of resources shown in the graph
- Resource Detail page
- Better rendering of the dependency graph at the top of the page
- Unmeshed sources are now populated in the Inbound traffic table
- Sources and destinations are aligned in the popover
- Tap and Top pages
- Additional validation and polish for the form controls
- The top table clears older results when a new top call is started
- The top table now aggregates by HTTP method as well
- Top routes page, served at
edge-18.12.2
Upgrade notes: The control plane components have been renamed as of the edge-18.12.1 release to reduce possible naming collisions. To upgrade an older installation, see the Upgrade Guide.
- Controller
- Rename snake case fields to camel case in service profile spec
edge-18.12.1
Upgrade notes: The control plane components have been renamed in this release to
reduce possible naming collisions. To upgrade an existing installation:
- Install new CLI:
curl https://run.linkerd.io/install-edge | sh
- Install new control plane:
linkerd install | kubectl apply -f -
- Remove old deploys/cms:
kubectl -n linkerd get deploy,cm -oname | grep -v linkerd | xargs kubectl -n linkerd delete
- Re-inject your applications:
linkerd inject my-app.yml | kubectl apply -f -
- Remove old services:
kubectl -n linkerd get svc -oname | grep -v linkerd | xargs kubectl -n linkerd delete
For more information, see the Upgrade Guide.
- CLI
- Improved
linkerd routes
command displays per-route stats for any resource! - New Service profiles are now supported for external authorities!
- New
linkerd routes --open-api
flag generates a service profile
based on an OpenAPI specification (swagger) file
- Improved
- Web UI
- New Top routes page, served at
/routes
- New Route metrics are now available in the resource detail pages for
services with configured profiles - New Service profiles can be created and downloaded from the Web UI
- New Top routes page, served at
- Controller
- Improved Controller components are now prefixed with
linkerd-
to
prevent name collisions with existing resources - New
linkerd install --disable-h2-upgrade
flag has been added to
control automatic HTTP/2 upgrading
- Improved Controller components are now prefixed with
- Proxy
- Improved The proxy's
tap
subsystem has been reimplemented to be more
efficient and and reliable- The proxy now supports route metadata in tap queries and events
- Fixed A potential HTTP/2 window starvation bug has been fixed
- Fixed Prometheus counters now wrap properly for values greater than
2^53 (thanks, @lucab!)
- Improved The proxy's
edge-18.11.3
- CLI
- New
linkerd routes
command displays per-route stats for services with service profiles - Experimental Add
--ha
flag tolinkerd install
command, for HA deployment of the control plane (thanks @benjdlambert!)
- New
- Web UI
- Experimental Top Routes page, served at
/routes
- Experimental Top Routes page, served at
- Controller
- Fixed Fix auto injection issue on Kubernetes
v1.9.11
that would merge, rather than append, the proxy container into the application
- Fixed Fix auto injection issue on Kubernetes
- Proxy
- Improved Add controller client metrics, scoped under
control_
- Improved Canonicalize outbound names via DNS for inbound profiles
- Improved Add controller client metrics, scoped under
edge-18.11.2
This is an edge release of Linkerd! The latest stable release is stable-2.0.0.
To install this edge release, run:
curl https://run.linkerd.io/install-edge | sh
- CLI
- Improved Update stat command to accept multiple stat targets
- Fixed Fix authority stat filtering when the
--from
flag is present - Various improvements to check command, including:
- Emit warnings instead of errors when not running the latest version
- Add retries if control plane health check fails initially
- Run all pre-install RBAC checks, instead of stopping at first failure
- Proxy / Proxy-Init
- Fixed Fix routing issue when a pod makes a request to itself (#1585)
- Only include
classification
label onresponse_total
metric
edge-18.11.1
This is an edge release of Linkerd! The latest stable release is stable-2.0.0.
To install this edge release, run:
curl https://run.linkerd.io/install-edge | sh
- Proxy
- Fixed Remove panic when failing to get remote address
- Improved Better logging in TCP connect error messages
- Web UI
- Improved Fixed a smattering of small UI issues
edge-18.10.4
This release includes a major redesign of the web frontend to make use of the
Material design system. Additional features that leverage the new design are
coming soon! This release also includes the following changes:
edge-18.10.3
This is an edge release of Linkerd! The latest stable release is stable-2.0.0.
To install this edge release, run: curl https://run.linkerd.io/install-edge | sh
- CLI
- New Added an
--output
stat flag, for printing stats as JSON - Improved Updated the
top
table to set column widths dynamically - Experimental Added a
--single-namespace
install flag for installing
the control plane with Role permissions instead of ClusterRole permissions
- New Added an
- Controller
- Fixed a few issues with auto injection via the proxy-injector webhook:
- Injected pods now execute the linkerd-init container last, to avoid
rerouting requests during pod init - Original pod labels and annotations are preserved when auto-injecting
- Injected pods now execute the linkerd-init container last, to avoid
- Fixed a few issues with auto injection via the proxy-injector webhook:
- Web UI
- New Added a Help section in the sidebar containing useful links
edge-18.10.2
This release brings major improvements to the CLI as described below, including
support for auto-injecting deployments via a Kubernetes Admission Controller.
Proxy auto-injection is experimental, and the implementation may change
going forward.
- CLI
- New Added a
--proxy-auto-inject
flag to theinstall
command,
allowing for auto-injection of sidecar containers (Thanks @ihcsim!) - Improved Added
--proxy-cpu
and--proxy-memory
flags to theinstall
andinject
commands, giving the ability to configure CPU + Memory requests
(Thanks @benjdlambert!) - Improved Added a
--context
flag to specify the context to use to talk
to the Kubernetes apiserver (Thanks @ffd2subroutine!)
- New Added a