mirror of https://github.com/hashicorp/consul
80 lines
5.8 KiB
Markdown
80 lines
5.8 KiB
Markdown
---
|
|
layout: docs
|
|
page_title: Consul on Kubernetes Version Compatibility
|
|
description: >-
|
|
New releases require corresponding version updates to Consul on Kubernetes and its Helm chart. Review the compatibility matrix for Consul and consul-k8s and additional notes for integrating Vault and third-party platforms.
|
|
---
|
|
|
|
# Consul on Kubernetes Version Compatibility
|
|
|
|
For every release of Consul on Kubernetes, a Helm chart, `consul-k8s-control-plane` binary and a `consul-k8s` CLI binary is built and distributed through a single version. When deploying via Helm, the recommended best path for upgrading Consul on Kubernetes, is to upgrade using the same `consul-k8s-control-plane` version as the Helm Chart, as the Helm Chart and Control Plane binary are tightly coupled.
|
|
|
|
## Supported Consul and Kubernetes versions
|
|
|
|
Consul Kubernetes versions all of its components (`consul-k8s` CLI, `consul-k8s-control-plane`, and Helm chart) with a single semantic version. When installing or upgrading to a specific version, ensure that you are using the correct Consul version with the compatible Helm chart or `consul-k8s` CLI.
|
|
|
|
### Compatibility matrix
|
|
|
|
The following sections describe the compatibility matrix for
|
|
Consul Kubernetes components and dependencies.
|
|
Some releases of Consul Enterprise receive
|
|
[Long Term Support (LTS)](/consul/docs/enterprise/long-term-support)
|
|
and have an [extended compatibility window](#enterprise-long-term-support-releases)
|
|
compared to non-LTS Enterprise and community edition releases.
|
|
|
|
#### Standard releases
|
|
|
|
Unless otherwise noted, rows in the following compatibility table
|
|
apply to both Consul Enterprise and Consul community edition (CE).
|
|
|
|
| Consul version | Compatible `consul-k8s` versions | Compatible Kubernetes versions | Compatible OpenShift versions |
|
|
| -------------- | -------------------------------- | -------------------------------| ------------------------------|
|
|
| 1.20.x | 1.6.x | 1.28.x - 1.30.x | 4.13.x - 4.15.x |
|
|
| 1.19.x | 1.5.x | 1.27.x - 1.29.x | 4.13.x - 4.15.x |
|
|
| 1.18.x CE | 1.4.x | 1.26.x - 1.29.x | 4.13.x - 4.15.x |
|
|
| 1.17.x | 1.3.x | 1.25.x - 1.28.x | 4.12.x - 4.15.x |
|
|
|
|
#### Enterprise Long Term Support releases
|
|
|
|
Active Consul Enterprise
|
|
[Long Term Support (LTS)](/consul/docs/enterprise/long-term-support)
|
|
releases expand their Kubernetes version compatibility window
|
|
until the LTS release reaches its end of maintenance.
|
|
|
|
| Consul version | Compatible `consul-k8s` versions | Compatible Kubernetes versions | Compatible OpenShift versions |
|
|
| -------------- | -------------------------------- | -------------------------------| ------------------------------|
|
|
| 1.18.x Ent | 1.4.x | 1.26.x - 1.29.x | 4.13.x - 4.15.x |
|
|
| 1.15.x Ent | 1.1.x | 1.23.x - 1.28.x | 4.10.x - 4.15.x |
|
|
|
|
### Version-specific upgrade requirements
|
|
|
|
As of Consul v1.14.0, Kubernetes deployments use [Consul Dataplane](/consul/docs/connect/dataplane) instead of client agents. If you upgrade Consul from a version that uses client agents to a version that uses dataplanes, you must follow specific steps to update your Helm chart and remove client agents from the existing deployment. Refer to [Upgrading to Consul Dataplane](/consul/docs/k8s/upgrade#upgrading-to-consul-dataplane) for more information.
|
|
|
|
The v1.0.0 release of the Consul on Kubernetes Helm chart also introduced a change to the [`externalServers[].hosts` parameter](/consul/docs/k8s/helm#v-externalservers-hosts). Previously, you were able to enter a provider lookup as a string in this field. Now, you must include `exec=` at the start of a string containing a provider lookup. Otherwise, the string is treated as a DNS name. Refer to the [`go-netaddrs`](https://github.com/hashicorp/go-netaddrs) library and command line tool for more information.
|
|
|
|
## Supported Envoy versions
|
|
|
|
Supported versions of Envoy and `consul-dataplane` (for Consul K8s 1.0 and above) for Consul versions are also found in [Envoy - Supported Versions](/consul/docs/connect/proxies/envoy#supported-versions). Starting with `consul-k8s` 1.0, `consul-dataplane` will include a bundled version of Envoy. The recommended best practice is to use the default version of Envoy or `consul-dataplane` that is provided in the Helm `values.yaml` file, as that is the version that has been tested with the default Consul and Consul Kubernetes binaries for a given Helm chart.
|
|
|
|
## Vault as a Secrets Backend compatibility
|
|
|
|
Starting with Consul K8s 0.39.0 and Consul 1.11.x, Consul Kubernetes supports the ability to utilize Vault as the secrets backend for all the secrets utilized by Consul on Kubernetes.
|
|
|
|
| `consul-k8s` Versions | Compatible Vault Versions | Compatible `vault-k8s` Versions |
|
|
| ------------------------ | --------------------------| ----------------------------- |
|
|
| 0.39.0 - latest | 1.9.0 - latest | 0.14.0 - latest |
|
|
|
|
## Platform specific compatibility notes
|
|
|
|
### Red Hat OpenShift
|
|
|
|
You can enable support for Red Hat OpenShift by setting `enabled: true` in the `global.openshift` stanza. Refer to the [Deploy Consul on RedHat OpenShift tutorial](https://developer.hashicorp.com/consul/tutorials/kubernetes/kubernetes-openshift-red-hat) for instructions on deploying to OpenShift.
|
|
|
|
### VMware Tanzu Kubernetes Grid and Tanzu Kubernetes Grid Integrated Edition
|
|
|
|
Consul Kubernetes is [certified](https://marketplace.cloud.vmware.com/services/details/hashicorp-consul-1?slug=true) for both VMware Tanzu Kubernetes Grid, and VMware Tanzu Kubernetes Integrated Edition.
|
|
|
|
- Tanzu Kubernetes Grid is certified for version 1.3.0 and above. Only Calico is supported as the CNI Plugin.
|
|
|
|
|