kubernetes-sigs / kind

Kubernetes IN Docker - local clusters for testing Kubernetes
https://kind.sigs.k8s.io/
Apache License 2.0
13.43k stars 1.55k forks source link

Enable ephemeral containers feature by default #1480

Closed gh67uyyghj closed 4 years ago

gh67uyyghj commented 4 years ago

KIND is used mainly for development, it would be great and very sensible if you enable this valuable feature by default instead of having to it maunally like in https://github.com/kubernetes-sigs/kind/issues/1210#issuecomment-570399316

BenTheElder commented 4 years ago

Sorry, we don't deviate from upstream on alpha features out of the box unless it blocks us from implementing a different default enabled feature properly. When this is enabled upstream in kubeadm / Kubernetes by default it will be on by default in kind.

This is important for testing Kubernetes.

You can however write a much smaller kind cluster config if you install kind from head or wait for the next release #1475

kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
featureGates:
 EphemeralContainers: true

pass this to kind create cluster as the --config=/path/to/this/file.yaml (or via stdin with --config=-)

BenTheElder commented 4 years ago

regarding usage: https://kind.sigs.k8s.io/docs/contributing/project-scope/

As for using this particular feature for development: imho there's a good reason for the alpha => beta => ga system in kubernetes. while we do need adventurous users to try these things out, Kubernetes doesn't take enabling things by default lightly.

I would not recommend depending on things that are not at least beta, they can be removed by kubernetes virtually anytime.

gh67uyyghj commented 4 years ago

Thank you for the quick and detailed response. I am not really that acquainted with the k8s dev process. But it seems that the "ephemeral containers"/"kubectl debug" feature is a big one and will be stabilized. But I respect your decision anyway.

BenTheElder commented 4 years ago

https://kubernetes.io/docs/reference/using-api/deprecation-policy/ is probably the most relevant bit here :sweat_smile: