Rancher supports the most recent three minor releases of kubernetes that are still active. As an example, below are the highest k8s minor versions supported by the respective Rancher 2.x product versions (on January 20, 2020):
- Rancher v2.1.14 => k8s 1.11, 1.12, 1.13
- Rancher v2.2.10 => k8s 1.13, 1.14, 1.15
- Rancher v2.3.4 => k8s 1.15, 1.16, 1.17
Whilst the above seems to indicate an arithmetic pattern, it is purely coincidental and should not be used to extrapolate the k8s versions that a future version of Rancher such as v2.4 would support. Also, for the most up to date information, please visit the All Supported Versions page.
Generally speaking, the following should help understand the Rancher approach to supporting k8s versions:
Rancher Labs strives to certify the latest GA release of k8s roughly in a month's timeframe from its availability. For example, k8s v1.16 became generally available in September 2019. The Rancher roadmap consideration would then be to certify and support k8s v1.16 in a release vehicle targeted for no later than October 2019.
The ability to certify a new GA release of k8s, per above, could however be impacted by any unplanned-for CVEs that Rancher Labs needs to react to. This turned out to be the case for Rancher v2.3.1 that shipped on 16 Oct 2019.
The focus of v2.3.1 shifted to addressing on priority a new k8s CVE (CVE-2019-11253) announced by upstream kubernetes. And, hence the support for k8s v1.16 got moved to the release vehicle after v2.3.1. And, when v1.16 is supported in that release, v1.13 shall be dropped in our support matrix from that version forward.
This is to also keep up with the k8s version maintenance policy that you can see here: https://kubernetes.io/docs/setup/release/version-skew-policy/#supported-versions
The Kubernetes project maintains release branches for the most recent three minor releases.
Minor releases occur approximately every 3 months, so each minor release branch is maintained for approximately 9 months.
As of this FAQ's initial communication date in September 2019, k8s v1.16 is only experimental on Rancher v2.3.0. And the release after v2.3.1 that aims to add support for k8s v1.16 is still targeted for October 2019. EDIT: Support for k8s v1.16 became available with Rancher v2.3.2 that released on October 28, 2019.