Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable Kubernetes Feature Gates / Switch Between Kubernetes Versions #2382

Open
frankgreco opened this issue Jan 9, 2018 · 10 comments
Open

Comments

@frankgreco
Copy link

frankgreco commented Jan 9, 2018

Expected behavior

I expect there to be a way to enable feature gates on the Kubernetes API server. I also expected to be able to switch between Kubernetes versions.

Actual behavior

Perhaps this is possible, just not documented, but I don't know if there is a way to enable feature gates on the API server or switch between Kubernetes versions.

Information

  • Full output of the diagnostics from "Diagnose & Feedback" in the menu
Docker for Mac: version: 17.12.0-ce-mac45 (a61e84b8bca06b1ae6ce058cdd7beab1520ad622)
macOS: version 10.13.2 (build: 17C88)
logs: /tmp/7F293033-1279-4E4C-A3FD-864540EA43DA/20180109-105457.tar.gz
[OK]     db.git
[OK]     vmnetd
[OK]     dns
[OK]     driver.amd64-linux
[OK]     virtualization VT-X
[OK]     app
[OK]     moby
[OK]     system
[OK]     moby-syslog
[OK]     kubernetes
[OK]     env
[OK]     virtualization kern.hv_support
[OK]     slirp
[OK]     osxfs
[OK]     moby-console
[OK]     logs
[OK]     docker-cli
[OK]     menubar
[OK]     disk
  • A reproducible case if this is a bug, Dockerfiles FTW N/A
  • Page URL if this is a docs issue or the name of a man page N/A

Steps to reproduce the behavior

N/A

@guillaumerose
Copy link
Contributor

Unfortunately not for the moment. We will update to 1.9 in the next release if everything goes well.

@frankgreco
Copy link
Author

@guillaumerose is there a somewhere I can track release dates (e.g. expected date the next release will occur). Also, which feature gates do you enabled on the apiserver by default

@guillaumerose
Copy link
Contributor

We follow the same release dates as docker-ce. Every rc goes to edge channel. You can expect 2-3 releases per month.

We use default feature gates of kubeadm. The list is here: https://github.com/kubernetes/kubernetes/blob/master/cmd/kubeadm/app/features/features.go#L49

@docker-robott
Copy link
Collaborator

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale comment.
Stale issues will be closed after an additional 30d of inactivity.

Prevent issues from auto-closing with an /lifecycle frozen comment.

If this issue is safe to close now please do so.

Send feedback to Docker Community Slack channels #docker-for-mac or #docker-for-windows.
/lifecycle stale

@frankgreco
Copy link
Author

/remove-lifecycle stale

@frankgreco
Copy link
Author

frankgreco commented Apr 16, 2018

@guillaumerose should this issue still be in triage mode? Is this a feature that is planning on being implemented in the future?

@guillaumerose
Copy link
Contributor

For the moment, we are focusing on the upgrade to 1.10.
I believe at some point you will be able to customize the kubeadm MasterConfiguration that we use. But not in a near future, sorry :/

/lifecycle frozen

@mohnishkodnani
Copy link

any updates on this, i wanted to enable a feature-gate for 1.10

@Venryx
Copy link

Venryx commented Aug 28, 2021

Any update or workaround for this a couple years later?

It'd be quite useful for enabling feature-gate flags, eg. for enabling Ephemeral Containers for easier pod debugging.

EDIT: Also noticed this issue, which seems related: #2771

@Venryx
Copy link

Venryx commented Aug 29, 2021

Several hours later, and I finally found a way to enable Kubernetes feature-gates in Docker Desktop.

See this stack-overflow answer for the painful story of my path toward finding out how.

TL;DR

Steps:

  1. Open the [...]/kubeadm/manifests folder, in the Docker filesystem. (on Windows, navigate Windows Explorer to: \\wsl$\docker-desktop-data\version-pack-data\community\kubeadm\manifests)
  2. Open the kube-controller-manager.yaml, kube-apiserver.yaml, and kube-scheduler.yaml files, adding the line below:
spec:
  containers:
  - command:
    [...]
    - --feature-gates=EphemeralContainers=true     <-- add this line (or whatever feature-gate flags you need)
  1. Restart Docker Desktop.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants