Skip to content

Commit 2ac1dcd

Browse files
authored
Merge pull request kubernetes#1293 from rosti/kubeadm-v1beta3
kubeadm: Update config KEP for v1beta3
2 parents ef904ff + 161b310 commit 2ac1dcd

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

keps/sig-cluster-lifecycle/kubeadm/0023-kubeadm-config.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,15 @@ see-also:
3737
- [Use substructures instead of the old "single flat object"](#use-substructures-instead-of-the-old-single-flat-object)
3838
- [v1beta2](#v1beta2)
3939
- [Add config options for new and existing kubeadm features](#add-config-options-for-new-and-existing-kubeadm-features)
40+
- [v1beta3](#v1beta3)
41+
- [Make kubeadm's config format more CRD and third party friendly](#make-kubeadms-config-format-more-crd-and-third-party-friendly)
42+
- [Opt-in AddOns](#opt-in-addons)
4043
- [Risks and Mitigations](#risks-and-mitigations)
4144
- [Graduation Criteria](#graduation-criteria)
4245
- [Implementation History](#implementation-history)
4346
- [v1alpha3 released with Kubernetes 1.12](#v1alpha3-released-with-kubernetes-112)
4447
- [v1beta1 released with Kubernetes 1.13](#v1beta1-released-with-kubernetes-113)
48+
- [v1beta2 released with Kubernetes 1.15](#v1beta2-released-with-kubernetes-115)
4549
- [Drawbacks](#drawbacks)
4650
<!-- /toc -->
4751

@@ -212,6 +216,22 @@ active (a setting already introduced in `v1beta1`) and an ability to ignore some
212216
Nevertheless, SIG Cluster Lifecycle should be careful not to add fields that are needed for fairly
213217
limited use cases.
214218

219+
### v1beta3
220+
221+
This section outlines changes to be introduced in the third iteration of the kubeadm config format.
222+
223+
#### Make kubeadm's config format more CRD and third party friendly
224+
225+
With more and more external tools consuming and providing kubeadm configuration it is desirable to increase the compatibility with other tools.
226+
This includes:
227+
- Adding metadata fields to InitConfiguration, JoinConfiguration and ClusterConfiguration.
228+
- Marking omitempty fields as `+optional`.
229+
230+
#### Opt-in AddOns
231+
232+
In the past few releases users have been increasingly using the kubeadm phases feature to skip the installation of the Kube-Proxy and CoreDNS/Kube-DNS addons. This, however, causes some problems when joining new nodes to the cluster or upgrading existing ones, as there are no means of persisting the user wish to not install some of the addons.
233+
This, combined with recent developments in the Cluster AddOns sub-project of SIG Cluster Lifecycle, led us to believe, that the best way to tackle the problem at hand is to allow for users to specify precisely which addons should be installed by kubeadm and persist the choice in the ClusterConfiguration.
234+
215235
### Risks and Mitigations
216236

217237
This is a change mostly driven by kubeadm maintainers, without an explicit buy-in from customers
@@ -263,6 +283,11 @@ This risk will be mitigated by implementing the change according to following ap
263283
structures that deal with different kinds of settings.
264284
- Improved the config format with respect to HA.
265285

286+
### v1beta2 released with Kubernetes 1.15
287+
288+
- Added new fields for specifying the encryption key for certificates and for specifying which pre-flight errors to be ignored.
289+
- **omitempty** has a wider use, but is removed from the *taints* field of NodeRegistrationOptions.
290+
266291
## Drawbacks
267292

268293
The differences from the current kubeadm config are relevant and kubeadm users can get confused.

0 commit comments

Comments
 (0)