It’s almost the end of summer (in the Northern hemisphere), and you might be trying to find ways to combat the last period of heat waves. Don’t have a swimming pool to cool down? Well, we have the second—maybe third—best thing: Azure Kubernetes Service (AKS) on Azure Stack HCI now has improved node pools!
Ready to take a dip and learn more?
Improved node pool support in AKS on Azure Stack HCI!
A node pool is a group of nodes, or virtual machines, with the same configuration that run your applications within a Kubernetes cluster, giving you more granular control over your clusters. Do you need multiple different VM sizes to meet the requirements of different workloads? Now, you can deploy multiple Windows and multiple Linux node pools of different sizes!
In the new experience with node pools, we introduce a new parameter set to the command New-AksHciCluster and new set of node pool commands that are listed blow.
After deploying a Kubernetes cluster with one node pool, you can then add additional node pools New-AksHciNodePool and scale with Set-AksHciNodePool. There are no changes to how control plane nodes are deployed or scaled, and they will remain their own separate entity apart from the that run your applications. The node pools in AKS-HCI are the equivalent of user node pools in AKS. The new set of node pool commands brings an experience that is more closely aligned with AKS in Azure. However, we will still be supporting the old experience and old parameter set for New-AksHciCluster so that current AKS on Azure Stack HCI customers can continue using their current deployments while planning for the incoming node pool experience. If you have an existing deployment on an older AKS on Azure Stack HCI version, we recommend updating. However, you can still add, delete, or scale node pools to old deployments as long as your PowerShell version is 1.1.0 or later.
Take a look at the diagram below for a visual representation of how AKS-HCI workload clusters are structured.
New experience example
Creating a Kubernetes cluster with one node pool
New-AksHciCluster -name mycluster
-controlPlaneNodeCount 1
-controlPlaneVmSize Standard_A4_V2
-nodePoolName linuxnodepool1
-nodeCount 2
-nodeVmSize Standard_A4_V2
-osType linux
Adding a Windows node pool
New-AksHciNodePool -clusterName mycluster
-name windowsnodepool1
-count 1
-nodeVmSize Standard_A4_V2
-osType windows
Adding a second Linux node pool
New-AksHciNodePool -clusterName mycluster
-name linuxnodepool2
-count 1
-nodeVmSize Standard_D2s_v3
-osType linux
Deleting a node pool
Remove-AksHciNodePool -clusterName mycluster
-name linuxnodepool2
Scaling a node pool
Set-AksHciNodePool -clusterName mycluster
-name linuxnodepool1
-count 3
Scaling the control plane nodes
Set-AksHciCluster -name mycluster
-controlPlaneNodeCount 3
Previous experience example
Creating a Kubernetes cluster
New-AksHciCluster -name mycluster
-controlPlaneNodeCount 1
-linuxNodeCount 2
-windowsNodeCount 2
-controlPlaneVmSize Standard_A4_V2
-linuxNodeVmSize Standard_A4_V2
-windowsNodeVmSize Standard_A4_V2
Scaling the worker nodes
Set-AksHciCluster -name mycluster
-linuxNodeCount 3
-windowsNodeCount 3
Scaling the control plane nodes
Set-AksHciCluster -name mycluster
-controlPlaneNodeCount 3
As you can see in the examples above, previously, Windows and Linux nodes were required to be of the same VM size. Now, you can use different sizes for Windows or Linux node pools! With the new addition of the node pool command set, you now have more granular control over your cluster.
So, while support for multiple node pools in AKS on Azure Stack HCI can’t keep you cool in the summer, it’s still pretty cool!
To learn more about node pools in AKS on Azure Stack HCI, please visit here.
To learn more about AKS on Azure Stack HCI in general, please start here.
Useful links:
Try for free: https://aka.ms/AKS-HCI-Evaluate
Tech Docs: https://aka.ms/AKS-HCI-Docs
Issues and Roadmap: https://github.com/azure/aks-hci
Evaluate on Azure: https://aka.ms/AKS-HCI-EvalOnAzure