
Description
Enhancement Description
- One-line enhancement description (can be used as a release note): Kubeadm Config versioning
- Kubernetes Enhancement Proposal:
Kubeadm uses MasterConfiguraton for two distinct but similar operations: Initialising a new cluster and upgrading an existing cluster.
The former is typically created by hand by an administrator.
It is stored on disk and passed to kubeadm init
via command line flag.
The latter is produced by kubeadm using supplied configuration files, command line options, and internal defaults.
It will be stored in a ConfigMap so upgrade operations can find.
Right now the configuration format is unversioned.
This means configuration file formats can change between kubeadm versions and there's no safe way to update the configuration format.
We propose a stable versioning of this configuration, v1alpha2
and eventually v1beta1
.
Version information will be mandatory going forward, both for user-generated configuration files and machine-generated configuration maps.
There as an existing document describing current Kubernetes best practices around component configuration.
- Discussion Link:
- Primary contact (assignee): @liztio
- Responsible SIGs: sig-cluster-lifecycle
- Enhancement target (which target equals to which milestone):
- Alpha release target (x.y):
- Beta release target (x.y):
- Stable release target (x.y):
- Alpha
- KEP (
k/enhancements
) update PR(s): - Code (
k/k
) update PR(s): - Docs (
k/website
) update PR(s):
- KEP (
Please keep this description up to date. This will help the Enhancement Team to track the evolution of the enhancement efficiently.