Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add supported-versions doc #1701

Merged
merged 7 commits into from
Nov 14, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions linkerd.io/content/2.14/getting-started/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,10 @@ You should see the CLI version, and also `Server version: unavailable`. This is
because you haven't installed the control plane on your cluster. Don't
worry—we'll fix that soon enough.

Make sure that your Linkerd version and Kubernetes version are compatible by
kflynn marked this conversation as resolved.
Show resolved Hide resolved
checking Linkerd's [supported Kubernetes
versions](../reference/k8s-versions/).

## Step 2: Validate your Kubernetes cluster

Kubernetes clusters can be configured in many different ways. Before we can
Expand Down
31 changes: 31 additions & 0 deletions linkerd.io/content/2.14/reference/k8s-versions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
+++
title = "Supported Kubernetes Versions"
description = "Reference documentation for which Linkerd version supports which Kubernetes version"
+++

Linkerd supports all versions of Kubernetes that were supported at the time
that a given Linkerd version ships. For example, at the time that Linkerd
stable-2.14.0 shipped, Kubernetes versions 1.26, 1.27, and 1.28 were
supported, so Linkerd stable-2.14.0 supports all of those Kubernetes versions.
(In many cases, as you'll see below, Linkerd versions will also support older
Kubernetes versions.)

Obviously, Linkerd stable-2.14.0 has no knowledge of what changes will come
_after_ Kubernetes 1.28. In some cases, later versions of Kubernetes end up
making changes that cause older versions of Linkerd to not work: we will
update the chart below as these situations arise.

| Linkerd Version | Minimum Kubernetes Version | Maximum Kubernetes Version |
|-----------------|----------------------------|----------------------------|
| `stable-2.10` | `1.16` | `1.23` |
| `stable-2.11` | `1.17` | `1.23` |
| `stable-2.12` | `1.21` | `1.24` |
| `stable-2.13` | `1.21` | `1.28` |
| `stable-2.14` | `1.21` | `1.28` |

Notes:

1. Linkerd will almost never change the supported Kubernetes version in a
minor release, which is why the table above only lists major versions. One
known exception: Linkerd 2.11.0 supported Kubernetes 1.16, but 2.11.1 and
later required Kubernetes 1.17 as shown in the table above.
4 changes: 4 additions & 0 deletions linkerd.io/content/2.14/tasks/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,10 @@ Linkerd requires a Kubernetes cluster on which to run. Where this cluster lives
is not important: it might be hosted on a cloud provider, may be running on your
local machine, or even somewhere else.

Make sure that your Linkerd version and Kubernetes version are compatible by
checking Linkerd's [supported Kubernetes
versions](../../reference/k8s-versions/).

Before installing the control plane, validate that this Kubernetes cluster is
configured appropriately for Linkerd by running:

Expand Down
8 changes: 6 additions & 2 deletions linkerd.io/content/2.14/tasks/upgrade.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ restrictions.
minor version within the same major version. In other words, if you are
currently running version *2.x.y*, upgrading to *2.x.z*, where *z* is the latest
minor version for major version *x*, is safe. This is true even if you would
skip intermediate intermediate minor versions, i.e. it is still safe even if *z
> y + 1*.
skip intermediate intermediate minor versions, i.e. it is still safe even if
*z* > *y + 1*.

**To the next major version**. It is usually safe to upgrade to the latest minor
version of the *next* major version. In other words, if you are currently
Expand Down Expand Up @@ -88,6 +88,10 @@ of Linkerd is healthy, e.g. by using `linkerd check`. For major version
upgrades, you should also ensure that your data plane is up-to-date, e.g.
with `linkerd check --proxy`, to avoid unintentional version skew.

Make sure that your Linkerd version and Kubernetes version are compatible by
checking Linkerd's [supported Kubernetes
versions](../../reference/k8s-versions/).

## Upgrading the CLI

The CLI can be used to validate whether Linkerd was installed correctly.
Expand Down
Loading