Skip to content

Commit 3911f01

Browse files
authored
Merge pull request #4985 from HirazawaUi/modify-4656
KEP-4656: Modify KEP based on implemented PR
2 parents 59dab40 + c262963 commit 3911f01

File tree

2 files changed

+11
-9
lines changed
  • keps/sig-cluster-lifecycle/kubeadm/4656-add-kubelet-instance-configuration

2 files changed

+11
-9
lines changed

keps/sig-cluster-lifecycle/kubeadm/4656-add-kubelet-instance-configuration/README.md

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -173,9 +173,9 @@ We will add a new file `/var/lib/kubelet/instance-config.yaml` to customize the
173173

174174
For different subcommands, there are the following changes:
175175

176-
* kubeadm init: If the CRI socket provided in the kubeadm configuration is set, it will take precedence and generate the `/var/lib/kubelet/instance-config.yaml` configuration file based on it; if the CRI socket is not specified, the container runtime endpoint will be automatically detected, uploaded to the global configuration, and `/var/lib/kubelet/instance-config.yaml` will be generated.
176+
* kubeadm init: If the CRI socket provided in the kubeadm configuration is set, it will take precedence and generate the `/var/lib/kubelet/instance-config.yaml` configuration file based on it; if the CRI socket is not specified, the container runtime endpoint will be automatically detected and generate the `/var/lib/kubelet/instance-config.yaml` file.
177177

178-
* kubeadm join: If the CRI socket provided in the kubeadm configuration is set, it will take precedence and generate the `/var/lib/kubelet/instance-config.yaml` configuration file based on it, overwriting the kubelet configuration downloaded from the global configuration(`kube-system/kubelet-config`). If no CRI socket is specified, the socket is automatically detected on the node and `/var/lib/kubelet/instance-config.yaml` is generated based on it.
178+
* kubeadm join: If the CRI socket provided in the kubeadm configuration is set, it will take precedence and generate the `/var/lib/kubelet/instance-config.yaml` configuration file based on it. If no CRI socket is specified, the socket is automatically detected on the node and `/var/lib/kubelet/instance-config.yaml` is generated based on it.
179179

180180
* kubeadm upgrade: future versions of `kubeadm upgrade apply/node` will only check `/var/lib/kubelet/instance-config.yaml`.
181181

@@ -189,26 +189,27 @@ kubeadm init:
189189

190190
* No longer need to write the `--container-runtime-endpoint` to `/var/lib/kubelet/kubeadm-flags.env`.
191191
* No longer need to add the `kubeadm.alpha.kubernetes.io/cri-socket` annotation.
192-
* If the CRI socket provided in the kubeadm configuration is set, it is used first and the `/var/lib/kubelet/instance-config.yaml` configuration file is generated based on it. If the CRI socket is not set, the container runtime endpoint is automatically detected uploaded to the global configuration, and `/var/lib/kubelet/instance-config.yaml` will be generated.
192+
* If the CRI socket provided in the kubeadm configuration is set, it is used first and the `/var/lib/kubelet/instance-config.yaml` configuration file is generated based on it. If the CRI socket is not set, the container runtime endpoint is automatically detected and generate the `/var/lib/kubelet/instance-config.yaml` file.
193193

194194
kubeadm join:
195195

196196
* No longer need to add the `kubeadm.alpha.kubernetes.io/cri-socket` annotation.
197-
* If the CRI socket provided in the kubeadm configuration is set, it is used first and the `/var/lib/kubelet/instance-config.yaml` configuration file is generated based on it, overwriting the kubelet configuration downloaded from the global configuration; If no CRI socket is specified, the socket is automatically detected on the node and `/var/lib/kubelet/instance-config.yaml` is generated based on it.
197+
* If the CRI socket provided in the kubeadm configuration is set, it is used first and the `/var/lib/kubelet/instance-config.yaml` configuration file is generated based on it. If no CRI socket is specified, the socket is automatically detected on the node and `/var/lib/kubelet/instance-config.yaml` is generated based on it.
198198

199199
kubeadm reset:
200200

201201
* There is no need to do anything, according to the existing process, we get CRISocketPath before deleting the /var/lib/kubelet directory, and after deleting the `/var/lib/kubelet` directory, `/var/lib/kubelet/instance-config.yaml` will also be cleaned up.
202202

203203
kubeadm upgrade:
204204

205-
* `kubeadm upgrade node/apply` will check the `--container-runtime-endpoint` args in the `/var/lib/kubelet/kubeadm-flags.env` file and generate `/var/lib/kubelet/instance-config.yaml` based on them, and override the `ContainerRuntimeEndpoint` field to `/var/lib/kubelet/config.yaml`.
205+
**In the Alpha phase, the feature gate is disabled by default. If feature gate is enabled, the kubeadm subcommands change as follows:**
206+
* `kubeadm upgrade node/apply` will check the `--container-runtime-endpoint` flag in the `/var/lib/kubelet/kubeadm-flags.env` file and generate `/var/lib/kubelet/instance-config.yaml` based on it. The flag `--container-runtime-endpoint` will be then removed from `/var/lib/kubelet/kubeadm-flags.env` .
206207

207208
**In the Beta phase, the feature gate is enabled by default. If feature gate is disabled, kubeadm subcommands will not be changed, when the feature gate is enabled, the kubeadm subcommands change as follows:**
208209

209210
* `kubeadm upgrade apply/node` will use `/var/lib/kubelet/instance-config.yaml`, and override the `ContainerRuntimeEndpoint` field to `/var/lib/kubelet/config.yaml`.
210211

211-
**In the Beta phase, the feature gate is enabled by default and cannot be disabled. the kubeadm subcommands change as follows:**
212+
**In the GA phase, the feature gate is enabled by default and cannot be disabled. the kubeadm subcommands change as follows:**
212213

213214
* `kubeadm upgrade apply/node` will use `/var/lib/kubelet/instance-config.yaml` override the `ContainerRuntimeEndpoint` field to `/var/lib/kubelet/config.yaml` only.
214215

@@ -278,8 +279,9 @@ kubeadm will continue to skew from kubelet for three versions. The `ContainerRun
278279

279280
## Implementation History
280281

281-
- 2024-05-23: Initial draft KEP
282-
- 2024-10-03: KEP marked as implementable
282+
- 2024-05-23: Initial draft KEP.
283+
- 2024-10-03: KEP marked as implementable.
284+
- 2024-11-30: Modify KEP based on implemented PR.
283285

284286
## Drawbacks
285287

keps/sig-cluster-lifecycle/kubeadm/4656-add-kubelet-instance-configuration/kep.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,5 @@ latest-milestone: "0.0"
2222
# The milestone at which this feature was, or is targeted to be, at each stage.
2323
milestone:
2424
alpha: "v1.32"
25-
beta: "v1.33"
25+
beta: "v1.34"
2626
stable: "v1.35"

0 commit comments

Comments
 (0)