aks-hybrid icon indicating copy to clipboard operation
aks-hybrid copied to clipboard

Allow users to specify a node pool VM to delete (with or without scaling)

Open eponerine opened this issue 1 year ago • 1 comments

Title: Allow users to specify a node pool VM to delete (with or without scaling)

Description: In simple terms, it would be slick to provide the logic to target a specific VM to kill; whether independently or when scaling down a node pool.

For scaling, perhaps add a new parameter only validates and works if the -count parameter is less-than current count. Something like -targetVM or -targetNode

As an example, let's say you have the following:

  • AKS Cluster Name: k8scluster01
  • Pool Name: k8scluster01linuxpool01

And in that pool, you have 3 nodes with VM names:

  • k8scluster01linuxpool01-AAAAAAA
  • k8scluster01linuxpool01-BBBBBBBB
  • k8scluster01linuxpool01-CCCCCCC

And assume that k8scluster01linuxpool01-CCCCCCC has some kind of failure that has to be manually fixed by simply deleting the entire VM from the cluster.

If we had the ability to run Set-AksHciNodePool -clusterName "k8scluster01" -name "k8scluster01linuxpool01" -count 2 -targetNode "k8scluster01linuxpool01-CCCCCCC" , it would be smart enough to see that -count 2 is less than current value and we are targeting a specific VM to remove.

For non-scaling situations where you just want to kill a VM and have it respawn, make a new cmdlet called Remove-AksHciNodePoolVM or Remove-AksHciNodePoolNode that handles this logic.

eponerine avatar Jan 22 '24 14:01 eponerine

This would be useful for this very very old issue: https://github.com/Azure/aksArc/issues/8

eponerine avatar Jan 22 '24 14:01 eponerine