Skip to content

v1.2.0

Compare
Choose a tag to compare
@kubermatic-bot kubermatic-bot released this 18 Mar 10:36
v1.2.0
2254855

KubeOne v1.2.0

The latest KubeOne 1.2.0 release is focused on community driven improvements and paving the way for future releases that incorporate even more features. We have been adding quite some alpha level features that will be improved and graduated in the future releases.

Please work through the Attention Needed section carefully and for more details read the v1.2.0 changelog.

Major Highlights

Add support for Kubernetes 1.20

Ongoing support for the latest Kubernetes version will give users access to the latest features and improvements. The Kubernetes 1.20 brings many new features, improvements, and fixes. We recommend checking out the official announcement for more details about the latest release.

containerd support

As of Kubernetes 1.20, Dockershim — a component that connects Kubelet and Docker, is deprecated. Starting with Kubernetes 1.23, it’ll not be possible to use Docker on Kubernetes nodes. Instead, a Container Runtime Interface (CRI) compatible container runtime must be used.

Containerd is one of CRI-compatible runtimes, and starting with this KubeOne release, it’s possible to provision clusters using containerd. We’ll also provide a migration path for existing clusters created by KubeOne in one of the upcoming releases.

Please check the Attention Needed section for more details about the upcoming changes related to the container runtimes.

Attention Needed

  • [BREAKING/ACTION REQUIRED] Starting with the KubeOne 1.3 release, the kubeone reset command will require an explicit confirmation like the apply command
    • Running the reset command will require typing yes to confirm the intention to unprovision/reset the cluster
    • The command can be automatically approved by using the --auto-approve flag
    • The --auto-approve flag has been already implemented as a no-op flag in this release
    • Starting with this release, running kubeone reset will show a warning about this change each time the reset command is used
  • [BREAKING/ACTION REQUIRED] Disallow and deprecate the PodPresets feature
    • If you're upgrading a cluster that uses the PodPresets feature from Kubernetes 1.19 to 1.20, you have to disable the PodPresets feature in the KubeOne configuration manifest
    • The PodPresets feature has been removed from Kubernetes 1.20 with no built-in replacement
    • It's not possible to use the PodPresets feature starting with Kubernetes 1.20, however, it currently remains possible to use it for older Kubernetes versions
    • The PodPresets feature will be removed from the KubeOneCluster API once Kubernetes 1.19 reaches End-of-Life (EOL)
    • As an alternative to the PodPresets feature, Kubernetes recommends using the MutatingAdmissionWebhooks.
  • [BREAKING/ACTION REQUIRED] Support for CoreOS has been removed from KubeOne and machine-controller
    • CoreOS has reached End-of-Life on May 26, 2020
    • As an alternative to CoreOS, KubeOne supports Flatcar Linux
    • We recommend migrating your CoreOS clusters to the Flatcar Linux or other supported operating system
  • [BREAKING/ACTION REQUIRED] Default values for OpenIDConnect has been corrected to match what's advised by the example configuration
    • Previously, there were no default values for the OpenIDConnect fields
    • This might only affect users using the OpenIDConnect feature
  • Kubernetes has announced deprecation of the Docker (dockershim) support in the Kubernetes 1.20 release. It's expected that Docker support will be removed in Kubernetes 1.22 or 1.23
    • All newly created clusters running Kubernetes 1.21+ will be provisioned with containerd instead of Docker
    • Automated migration from Docker to containerd is currently not available, but is planned for one of the upcoming KubeOne releases
    • We highly recommend using containerd instead of Docker for all newly created clusters. You can opt-in to use containerd instead of Docker by adding containerRuntime configuration to your KubeOne configuration manifest:
      containerRuntime:
        containerd: {}
      For the configuration file reference, run kubeone config print --full.

Known Issues

  • Provisioning a Kubernetes or Amazon EKS-D cluster on Amazon Linux 2 will fail due to missing crictl binary. This bug has been fixed in the v1.2.1 release.
  • Upgrading an Amazon EKS-D cluster will fail due to kubeadm preflight checks failing. We're investigating the issue and you can follow the progress by checking the issue #1284.

Changelog since v1.2.0-rc.1

There have been no changes since the KubeOne v1.2.0-rc.1 release.

Changelog since v1.1.0

For the complete changelog since the KubeOne v1.1.0 release, please check the CHANGELOG document.

Checksums

SHA256 checksums can be found in the kubeone_1.2.0_checksums.txt file.