Monday, September 13, 2021

Improved node pool support in AKS on Azure Stack HCI!

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.

  1. New-AksHciNodePool 
  2. Set-AksHciNodePool 
  3. Get-AksHciNodePool  
  4. Remove-AksHciNodePool 

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. 

jessicaguan_0-1631549430904.png

 

 

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

Posted at https://sl.advdat.com/2YHO9yz