Skip to content

Commit

Permalink
Update CAPI support and guarantees for v1.6
Browse files Browse the repository at this point in the history
  • Loading branch information
g-gaston committed Aug 9, 2023
1 parent e3ebb7f commit f67181c
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 32 deletions.
7 changes: 4 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -164,8 +164,9 @@ Cluster API maintains the most recent release/releases for all supported API and

| Minor Release | API Version | Supported Until |
|---------------|--------------|-----------------------------------------------------|
| v1.4.x | **v1beta1** | when v1.6.0 will be released |
| v1.3.x | **v1beta1** | when v1.5.0 will be released, tentatively July 2023 |
| v1.5.x | **v1beta1** | when v1.7.0 will be released |
| v1.4.x | **v1beta1** | when v1.6.0 will be released, tentatively Nov 2023 |
| v1.3.x | **v1beta1** | EOL since 2023-07-25 - v1.5.0 release date |
| v1.2.x | **v1beta1** | EOL since 2023-03-28 - v1.4.0 release date |
| v1.1.x | **v1beta1** | EOL since 2022-07-18 - v1.2.0 release date (*) |
| v1.0.x | **v1beta1** | EOL since 2022-02-02 - v1.1.0 release date (*) |
Expand All @@ -174,7 +175,7 @@ Cluster API maintains the most recent release/releases for all supported API and

(*) Previous support policy applies, older minor releases were immediately unsupported when a new major/minor release was available

- Exceptions can be filed with maintainers and taken into consideration on a case-by-case basis.
- Exceptions can be filed with maintainers and taken into consideration on a case-by-case basis.giu

### Removal of v1alpha3 & v1alpha4 apiVersions

Expand Down
58 changes: 29 additions & 29 deletions docs/book/src/reference/versions.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,18 +72,18 @@ These diagrams show the relationships between components in a Cluster API releas

#### Core Provider (`cluster-api-controller`)

| | v1.2 (v1beta1) (EOL) | v1.3 (v1beta1) | v1.4 (v1beta1) | v1.5 (v1beta1) |
| | v1.3 (v1beta1) (EOL) | v1.4 (v1beta1) | v1.5 (v1beta1) | v1.6 (v1beta1) |
|-------------------|----------------------|-------------------|-------------------|-------------------|
| Kubernetes v1.18 | ✓ (only workload) | ✓ (only workload) | | |
| Kubernetes v1.19 | ✓ (only workload) | ✓ (only workload) | | |
| Kubernetes v1.20 || | | |
| Kubernetes v1.21 || | ✓ (only workload) | |
| Kubernetes v1.22 || | ✓ (only workload) | ✓ (only workload) |
| Kubernetes v1.23* ||| | ✓ (only workload) |
| Kubernetes v1.18 | ✓ (only workload) | | | |
| Kubernetes v1.19 | ✓ (only workload) | | | |
| Kubernetes v1.20 || | | |
| Kubernetes v1.21 ||(only workload) | | |
| Kubernetes v1.22 ||(only workload) | ✓ (only workload) | ✓ (only workload) |
| Kubernetes v1.23* |||(only workload) | ✓ (only workload) |
| Kubernetes v1.24 |||||
| Kubernetes v1.25 |||||
| Kubernetes v1.26 |||||
| Kubernetes v1.27 | | |||
| Kubernetes v1.27 | | |||


\* There is an issue with CRDs in Kubernetes v1.23.{0-2}. ClusterClass with patches is affected by that (for more details please see [this issue](https://github.com/kubernetes-sigs/cluster-api/issues/5990)). Therefore we recommend to use Kubernetes v1.23.3+ with ClusterClass.
Expand All @@ -95,35 +95,35 @@ The Core Provider also talks to API server of every Workload Cluster. Therefore,

#### Kubeadm Bootstrap Provider (`kubeadm-bootstrap-controller`)

| | v1.2 (v1beta1) (EOL) | v1.3 (v1beta1) | v1.4 (v1beta1) | v1.5 (v1beta1) |
|------------------------------------|----------------------|-------------------|--------------------|--------------------|
| Kubernetes v1.18 + kubeadm/v1beta2 | ✓ (only workload) | ✓ (only workload) | | |
| Kubernetes v1.19 + kubeadm/v1beta2 | ✓ (only workload) | ✓ (only workload) | | |
| Kubernetes v1.20 + kubeadm/v1beta2 || | | |
| Kubernetes v1.21 + kubeadm/v1beta2 || | ✓ (only workload) | |
| Kubernetes v1.22 + kubeadm/v1beta3 || | ✓ (only workload) | ✓ (only workload) |
| Kubernetes v1.23 + kubeadm/v1beta3 ||| | ✓ (only workload) |
| Kubernetes v1.24 + kubeadm/v1beta3 |||||
| Kubernetes v1.25 + kubeadm/v1beta3 |||||
| Kubernetes v1.26 + kubeadm/v1beta3 |||||
| Kubernetes v1.27 + kubeadm/v1beta3 | | |||
| | v1.3 (v1beta1) (EOL) | v1.4 (v1beta1) | v1.5 (v1beta1) | v1.6 (v1beta1) |
|------------------------------------|----------------------|--------------------|--------------------|--------------------|
| Kubernetes v1.18 + kubeadm/v1beta2 | ✓ (only workload) | | | |
| Kubernetes v1.19 + kubeadm/v1beta2 | ✓ (only workload) | | | |
| Kubernetes v1.20 + kubeadm/v1beta2 || | | |
| Kubernetes v1.21 + kubeadm/v1beta2 ||(only workload) | | |
| Kubernetes v1.22 + kubeadm/v1beta3 ||(only workload) | ✓ (only workload) | ✓ (only workload) |
| Kubernetes v1.23 + kubeadm/v1beta3 || |(only workload) | ✓ (only workload) |
| Kubernetes v1.24 + kubeadm/v1beta3 || |||
| Kubernetes v1.25 + kubeadm/v1beta3 || |||
| Kubernetes v1.26 + kubeadm/v1beta3 || |||
| Kubernetes v1.27 + kubeadm/v1beta3 | | |||

The Kubeadm Bootstrap Provider generates kubeadm configuration using the API version recommended for the target Kubernetes version.

#### Kubeadm Control Plane Provider (`kubeadm-control-plane-controller`)

| | v1.2 (v1beta1) (EOL) | v1.3 (v1beta1) | v1.4 (v1beta1) | v1.5 (v1beta1) |
| | v1.3 (v1beta1) (EOL) | v1.4 (v1beta1) | v1.5 (v1beta1) | v1.6 (v1beta1) |
|----------------------------|----------------------|-------------------|-------------------|-------------------|
| Kubernetes v1.18 + etcd/v3 | ✓ (only workload) | ✓ (only workload) | | |
| Kubernetes v1.19 + etcd/v3 | ✓ (only workload) | ✓ (only workload) | | |
| Kubernetes v1.20 + etcd/v3 || | | |
| Kubernetes v1.21 + etcd/v3 || | ✓ (only workload) | |
| Kubernetes v1.22 + etcd/v3 || | ✓ (only workload) | ✓ (only workload) |
| Kubernetes v1.23 + etcd/v3 ||| | ✓ (only workload) |
| Kubernetes v1.18 + etcd/v3 | ✓ (only workload) | | | |
| Kubernetes v1.19 + etcd/v3 | ✓ (only workload) | | | |
| Kubernetes v1.20 + etcd/v3 || | | |
| Kubernetes v1.21 + etcd/v3 ||(only workload) | | |
| Kubernetes v1.22 + etcd/v3 ||(only workload) | ✓ (only workload) | ✓ (only workload) |
| Kubernetes v1.23 + etcd/v3 |||(only workload) | ✓ (only workload) |
| Kubernetes v1.24 + etcd/v3 |||||
| Kubernetes v1.25 + etcd/v3 |||||
| Kubernetes v1.26 + etcd/v3 |||||
| Kubernetes v1.27 + etcd/v3 | | |||
| Kubernetes v1.27 + etcd/v3 | | |||

The Kubeadm Control Plane Provider talks to the API server and etcd members of every Workload Cluster whose control plane it owns. It uses the etcd v3 API.

Expand All @@ -135,12 +135,12 @@ The Kubeadm Control Plane requires the Kubeadm Bootstrap Provider.

| CAPI Version | Max CoreDNS Version for Upgrade |
|----------------------|---------------------------------|
| v1.2 (v1beta1) | v1.9.3 |
| >= v1.2.7 (v1beta1) | v1.10.0 |
| >= v1.2.11 (v1beta1) | v1.10.1 |
| v1.3 (v1beta1) | v1.10.0 |
| >= v1.3.4 (v1beta1) | v1.10.1 |
| v1.4 (v1beta1) | v1.10.1 |
| v1.5 (v1beta1) | v1.10.1 |

#### Kubernetes version specific notes

Expand Down

0 comments on commit f67181c

Please sign in to comment.