Migrating to the KubeOneCluster v1beta2 API
Starting with v1.4.0, KubeOne comes with a new v1beta2 version of the
KubeOneCluster API. The new API is similar to the v1beta2 API, with
a couple of improvements.
This document shows how to migrate from the v1beta1 API to the v1beta2
API, as well as, what has been changed between two versions.
It remains possible to use all KubeOne commands with the v1beta1 manifest,
however, it’s strongly advised to migrate to the latest API version as soon
To migrate to the v1beta2 API, you must upgrade KubeOne to v1.4.0 or newer.
Migrating the manifest using the
config migrate command
config migrate command automatically migrates the v1beta1 manifests to
the new v1beta2 API. The command takes the path to the v1beta1 manifest
and prints the converted manifest to the standard output.
kubeone config migrate --manifest kubeone.yaml
It’s strongly advised to compare the old and new manifests to ensure that no
information is missing in the new manifest. If you see anything unexpected
and not covered by the The API Changelog portion of this document, please
file a new issue on GitHub.
The API Changelog
The API version of the new API is
v1beta2. The kind remains
The API group has been changed from
# v1beta1 API
# v1beta2 API
Addons path defaulting has been removed
The addons path has been defaulted to
./addons in the v1beta1 API.
Additionally, the addons path was required and the directory must have existed.
To better support the embedded addons, we don’t default the addons directory
./addons any longer. Instead, the addons path isn’t required as long as
you use only embedded addons.
The migration command will put set the addons path to
./addons to keep the
backwards compatibility. If you only use the embedded addons, you can remove
the addons path manually after migrating the config file.
The PodPresets feature has been removed
The PodPresets feature has been a no-op since Kubernetes 1.20 because the
feature was removed from Kubernetes. This feature is now removed from the
KubeOneCluster API as well.
The AssetConfiguration API has been removed
The AssetConfiguration API has been removed in the v1beta2 API, along with
support for Amazon EKS-D clusters.
If you are using the AssetConfiguration API to mitigate the issue with the
CoreDNS image when using the overwrite registry feature, you can use the latest
image loader script or the mirror registries feature.
Packet has got rebranded to Equinix Metal. We have changed the name of the
cloud provider from
# v1beta1 API
# v1beta2 API
Additionally, we also support
environment variables in addition to
which will be removed after the deprecation period.
The new API version also introduces many new features. We recommend checking
the KubeOne 1.4.0 release changelog for more information about the