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

Cannot modify AKS if nodepool is == 12 chars long #209

Closed
kkaempf opened this issue May 25, 2023 · 2 comments
Closed

Cannot modify AKS if nodepool is == 12 chars long #209

kkaempf opened this issue May 25, 2023 · 2 comments
Assignees
Labels
JIRA Must shout kind/bug Something isn't working

Comments

@kkaempf
Copy link

kkaempf commented May 25, 2023

SURE-6333

Issue description:

Microsoft describes as 1-12 characters long for it's linux nodepool as naming convention, whereas in Rancher the limit is 1-11 characters.

If you create a nodepool in Azure portal/Az cli (either system or user) 12 characters long, then the AKS configuration cannot be changed, due to triggering this Rancher nodepool naming limit.

Business impact:

The AKS cluster is stuck and cannot be configured. The nodepools, or kubernetes version or any other configuration cannot be applied as always the "Linux node pool names must be 1-11 characters." is shown in the Rancher UI.

Repro steps:

Create an AKS cluster from Rancher, and create an agent pool.
Create in the Azure portal a 2nd nodepool for the AKS cluster, with a name 12 characters long. Then, in Rancher console the cluster cannot be configured (change labels, upgrade the k8s version, add additional nodepools, change/remove current nodepools). 

Workaround:

Is a workaround available and implemented? yes
What is the workaround: Create an additional nodepool 11chars long, and then delete the previous Nodepool with the 12chars-long name. 

Actual behavior:

Nodepools created with a 12chars-long in AKS via Azure Portal (as Rancher does not allow it), provokes that the cluster configuration cannot be changed.

It can still be managed as a k8s cluster, deploy applications, storage, monitoring, create projects&namespaces, assign users as cluster Members / Cluster users / project Members / project Owners , and so on, but the Nodepools or any k8s version upgrade or cluster label update is not possible, all fail with the error "Linux node pool names must be 1-11 characters.")

Expected behavior:

Nodepools in Rancher can be created with a 12 chars-long-name. Even creating a nodepool outside of Rancher (Azure portal or Az cli), if it has 12 characters long, the cluster is still manageable through Rancher.

Files, logs, traces:
Attached are screenshots of the bug.

Additional notes:

https://learn.microsoft.com/en-us/azure/aks/use-multiple-node-pools#add-a-node-pool

https://learn.microsoft.com/en-us/azure/aks/use-system-pools?tabs=azure-cli#limitations

@kkaempf kkaempf added kind/bug Something isn't working JIRA Must shout labels May 25, 2023
@furkatgofurov7
Copy link
Contributor

furkatgofurov7 commented May 26, 2023

We were discussing this with @mjura offline, this is interesting and, I left a comment in the jira itself, and TL;DR is: this is a constraint coming from the Azure API itself and there is a low chance we can do something on either Rancher / AKS operator code, except fixing a warning message in rancher UI (it should not be 1-11 but 1-12 characters long as per Azure error output: "must be 12 or fewer characters")

@cpinjani
Copy link

Validated the fix on build:

Rancher- v2.7-58aede67b99fd5002cc44c2b36583834595acad2-head
Dashboard - master cb3162581

Nodepool validation is happening for 1-12 characters limit on UI. Also able to modify Nodepool configuration.
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
JIRA Must shout kind/bug Something isn't working
Development

No branches or pull requests

3 participants