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

Support for setting taints per node pool that persist through scale up/down #1061

Closed
jnoller opened this issue Jun 17, 2019 · 16 comments
Closed

Comments

@jnoller
Copy link
Contributor

jnoller commented Jun 17, 2019

AKS recently added support for taints and tolerations. Taints are preserved/copied/applied through all operations (eg upgrade) except for scale up/down operations. This is a tracking issue for the in-progress work.

@jluk
Copy link
Contributor

jluk commented Jun 19, 2019

@jnoller isn't only taints in scope since tolerations are a pod property?

Taints to persist on scale out via node pool should be good though via the June API: https://github.com/Azure/azure-rest-api-specs/blob/master/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2019-06-01/managedClusters.json#L1418

Understandable if we want to wait until CLI support lands before closing though, just lmk.

@jnoller
Copy link
Contributor Author

jnoller commented Jun 20, 2019

@jluk removed tolerations (c/p error from the parent) - will wait until CLI landing to close.

@tmbgreaves
Copy link

Great to see this is imminent -- thank you, a greatly appreciated feature!

Do you know roughly when this is expected to land in the CLI?

@Pizzajongen
Copy link

Pizzajongen commented Aug 5, 2019

@jluk Creating new node pools with taints works great via the api but i can't seem to update or add taints on my existing node pools, is this a bug or this by design?

@jluk
Copy link
Contributor

jluk commented Aug 5, 2019

@tmbgreaves hopefully this month, but latest update will still be through this issue as we're working through the backlog.

@Pizzajongen great question, this is by design that node taints are a create-time property only. We'll update the documentation to clarify this!

@Benjiiim
Copy link

@jluk, would you mind to provide an update on this one? Thanks a lot.

@jluk jluk self-assigned this Sep 23, 2019
@jluk
Copy link
Contributor

jluk commented Sep 23, 2019

@Benjiiim taints should work for your agentpools, the only missing piece is the preview CLI which we're trying to close down in next 2 weeks. In the meantime though you can use ARM templates to deploy with taints defined, the multiple agent pool document has instructions too.

@jluk
Copy link
Contributor

jluk commented Sep 26, 2019

To provide an update, we have the taints support for the preview CLI in PR below:

Azure/azure-cli-extensions#962

@tmbgreaves
Copy link

tmbgreaves commented Sep 26, 2019

@jluk A word of appreciation for all your work and in particular for the regular updates. Thank you very much!

@ptemmer
Copy link

ptemmer commented Sep 30, 2019

Likewise here, thank you for the effort!
I've seen the PR was merged into master, however the latest version listed of the aks-preview extension is still 0.4.16, which doesn't include the taints support. As I'm not acquainted at all with the release procedure, I would appreciate if someone could shed some light on this.

@jluk
Copy link
Contributor

jluk commented Sep 30, 2019

@ptemmer @tmbgreaves thanks for kind words, it really is appreciated and happy to hear it's helpful.

As for CLI extension procedure, once the PR is merged we have to cut a release ourselves by doing some small updates so we'll be trying to get that done this week as v0.4.17.

@jluk
Copy link
Contributor

jluk commented Sep 30, 2019

This is the PR that will get us there, upon merge it should cut a new cli extension release enabling you to upgrade to it and get the functionality.

Azure/azure-cli-extensions#974

@jluk jluk added nodepools and removed bug labels Sep 30, 2019
@tmbgreaves
Copy link

@jluk In case the information is of interest/use to you our use case for this is for Jupyterhub instances where we're running a notebook service in education (university sector), needing to scale cluster size up and down in response to classes being in/out of session. We've been working with @leestott to develop our Azure use over the last year with a pilot class starting this week aiming to have all the teaching and student resources hosted on Azure. So hopefully this feature will be going into production use very soon!

@jluk jluk changed the title Support for taints/tolerations through scale up/down Support for setting taints per node pool that persist through scale up/down Oct 1, 2019
@jluk
Copy link
Contributor

jluk commented Oct 1, 2019

Thanks for the context @tmbgreaves that's awesome. Are you using any other preview features by chance?

The CLI preview released so you can upgrade and set taints per node pool from the preview CLI now.

I'll leave this ticket open until it goes GA production ready. We're closing down on it within the next month.

@Benjiiim
Copy link

Hi @jluk ! It seems that Azure/azure-cli#10809 did the trick, didn't it?
Shouldn't https://docs.microsoft.com/en-us/azure/aks/use-multiple-node-pools#schedule-pods-using-taints-and-tolerations be updated to add the taint with az aks nodepool add cmd and not with kubectl taint node cmd?
Thanks

@jluk
Copy link
Contributor

jluk commented Dec 12, 2019

Thanks for bumping this @Benjiiim you are correct! I am closing this issue as it is GA and I will open a PR on our docs to use this AKS native feature for setting taints. Thank you!

@jluk jluk closed this as completed Dec 12, 2019
@jluk jluk added this to Done (GA, Shipped) in Azure Kubernetes Service Roadmap (Public) Dec 12, 2019
@ghost ghost locked as resolved and limited conversation to collaborators Jul 23, 2020
@palma21 palma21 moved this from Generally Available (Done) to Archive in Azure Kubernetes Service Roadmap (Public) Aug 12, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
Azure Kubernetes Service Roadmap (Pub...
Archive (GA older than 1 month)
Development

No branches or pull requests

6 participants