github kubermatic/kubeone v1.4.0

latest releases: v1.9.0, v1.9.0-rc.1, v1.9.0-rc.0...
2 years ago

KubeOne v1.4.0

Today, we are pleased to announce that KubeOne 1.4 is now generally available. With this release, we introduce our new KubeOneCluster API version with many new features that simplify configuration management. Additionally, we have added support for Kubernetes 1.23 and Cilium CNI and facilitated CCM/CSI migration, among other features. KubeOne 1.4 also provides alpha-level support for Nutanix.

Major Highlights

We recommend checking out the Upgrading from KubeOne 1.3 to 1.4 tutorial, as well as, the changelog for more information about upgrading and the latest features and improvements.

Attention Needed

  • KubeOne 1.4.0-beta.0 introduces the new KubeOneCluster v1beta2 API
    • The existing KubeOneCluster v1beta1 manifests can be migrated by using the kubeone config migrate command
    • The kubeone config print command now uses the new v1beta2 API
    • The existing KubeOneCluster v1beta1 API is considered deprecated and will be removed in KubeOne 1.6+
    • Highlights:
      • The API group has been changed from kubeone.io to kubeone.k8c.io
      • The AssetConfiguration API has been removed from the v1beta2 API. The AssetConfiguration API can still be used with the v1beta1 API, but we highly recommend migrating away because the v1beta1 API is deprecated
      • The PodPresets feature has been removed from the v1beta2 API because Kubernetes removed support for PodPresets in Kubernetes 1.20
      • Packet (packet) cloud provider has been rebranded to Equinix Metal (equinixmetal). The existing Packet cluster will work with equinixmetal cloud provider, however, manual migration steps are required if you want to use new Terraform configs for Equinix Metal
      • A new ContainerRuntime API has been added to the v1beta2 API in order to support configuring mirror registries
  • kubeone install and kubeone upgrade commands are considered deprecated in favor of kubeone apply
    • install and upgrade commands will be removed in KubeOne 1.6+
    • We highly encourage switching to kubeone apply. The apply command has the same semantics and works in the same way as install/upgrade, with some additional checks to ensure each requested operation is safe for the cluster
  • Unconditionally deploy AWS, AzureDisk, AzureFile, and vSphere CSI drivers if the Kubernetes version is 1.23 or newer (#1831)
    • Those providers have the CSI migration enabled by default in Kubernetes 1.23, so the CSI driver will be used for all volumes operations
  • Unconditionally deploy DigitalOcean, Hetzner, Nutanix, and OpenStack Cinder CSI drivers (#1831)
    • OpenStack has the CSI migration enabled by default since Kubernetes 1.18, so the CSI driver will be used for all operations
  • CentOS 8 has reached End-Of-Life (EOL) on January 31st, 2022. It will no longer receive any updates (including security updates). Support for CentOS 8 in KubeOne is deprecated and will be removed in a future release. We strongly recommend migrating to another operating system or RHEL/CentOS distribution as soon as possible.

Breaking changes / Action Required

  • The default AMI for CentOS in Terraform configs for AWS has been changed to Rocky Linux. If you use the new Terraform configs with an existing cluster, make sure to bind the AMI as described in the production recommendations document (#1809)
  • The cloud-provider-credentials Secret is removed by KubeOne because KubeOne does not use it any longer. If you have any workloads NOT created by KubeOne that use this Secret, please migrate before upgrading KubeOne. Instead, KubeOne now creates kubeone-machine-controller-credentials and kubeone-ccm-credentials Secrets used by machine-controller and external CCM
  • Support for Amazon EKS-D clusters has been removed starting from this release
  • GCP: Default operating system for control plane instances is now Ubuntu 20.04 (#1576)
    • Make sure to bind control_plane_image_family to the image you're currently using or Terraform might recreate all your control plane instances
  • Azure: Default VM type is changed to Standard_F2 (#1528)
    • Make sure to bind control_plane_vm_size and worker_vm_size to the VM size you're currently using or Terraform might recreate all your instances

Known Issues

  • It's not possible to run kube-proxy in IPVS mode on Kubernetes 1.23 clusters using Canal/Calico CNI. Trying to upgrade existing 1.22 clusters using IPVS to 1.23 will result in a validation error from KubeOne

Checksums

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

Don't miss a new kubeone release

NewReleases is sending notifications on new releases.