Skip to content

Conversation

@wdarko1
Copy link
Contributor

@wdarko1 wdarko1 commented Dec 3, 2025

Updated the blog post to enhance clarity and detail on Node Auto Provisioning and Virtual Machine Node Pools in AKS. Included new sections on capacity challenges, NAP features, and best practices.

Updated the blog post to enhance clarity and detail on Node Auto Provisioning and Virtual Machine Node Pools in AKS. Included new sections on capacity challenges, NAP features, and best practices.
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a new blog post about capacity management strategies in AKS, focusing on Node Auto Provisioning (NAP) and Virtual Machine node pools as solutions to capacity challenges during cluster scaling.

Key Changes

  • Added comprehensive blog post covering capacity constraints and solutions in AKS
  • Documented NAP features and how it handles capacity errors through intelligent VM SKU selection
  • Explained Virtual Machine node pools with multi-SKU support for flexible capacity management

- vm-node-pools
---

<!-- truncate -->
Copy link

Copilot AI Dec 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The <!-- truncate --> marker appears before any content. According to the blog post guidelines, the truncation marker should come after 2-3 introductory paragraphs that hook the reader and set context. Currently, line 11 has the marker immediately after the front matter with no introduction. Please add 2-3 paragraphs of introductory content before the truncate marker.

Copilot generated this review using guidance from repository custom instructions.

:::info

Learn more in the official documentation: [Node Auto Provisioning](https://learn.microsoft.com/azure/aks/node-auto-provisioning) or [Virtual Machine Node Pool](https://learn.microsoft.com/azure/aks/virtual-machines-node-pools)
Copy link

Copilot AI Dec 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The URLs include the locale /en-us/ which should be removed per the blog post guidelines. Use generic links without locale paths. Update to:

  • https://learn.microsoft.com/azure/aks/node-auto-provisioning
  • https://learn.microsoft.com/azure/aks/virtual-machines-node-pools

Copilot generated this review using guidance from repository custom instructions.

This flexibility is key to avoiding hard failures during scale-out.

### Virtual Machine Node Pools: Flexibility at Scale
Copy link

Copilot AI Dec 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to the Microsoft Style Guide, use sentence-style capitalization for headings. "Virtual Machine Node Pools" should use lowercase after the first word. Update to: "### Virtual machine node pools: Flexibility at Scale"

Copilot generated this review using guidance from repository custom instructions.
---

## The Hidden Complexity Behind Capacity
Why does this happen? Because scaling in Kubernetes isn’t just horizontal—it’s logistical. Every node pool is tied to a VM SKU, region, and zone. When workloads diversify—GPU jobs, memory-heavy analytics, latency-sensitive microservices—the rigid structure of fixed node pools becomes a bottleneck. You’re left juggling trade-offs: Do you overprovision expensive SKUs “just in case”? Or risk underprovisioning and throttling growth? AKS offers to solutions that aim to address these capacity scaling challenges.
Copy link

Copilot AI Dec 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Spelling error: "to solutions" should be "two solutions".

Suggested change
Why does this happen? Because scaling in Kubernetes isn’t just horizontal—it’s logistical. Every node pool is tied to a VM SKU, region, and zone. When workloads diversify—GPU jobs, memory-heavy analytics, latency-sensitive microservices—the rigid structure of fixed node pools becomes a bottleneck. You’re left juggling trade-offs: Do you overprovision expensive SKUs “just in case”? Or risk underprovisioning and throttling growth? AKS offers to solutions that aim to address these capacity scaling challenges.
Why does this happen? Because scaling in Kubernetes isn’t just horizontal—it’s logistical. Every node pool is tied to a VM SKU, region, and zone. When workloads diversify—GPU jobs, memory-heavy analytics, latency-sensitive microservices—the rigid structure of fixed node pools becomes a bottleneck. You’re left juggling trade-offs: Do you overprovision expensive SKUs “just in case”? Or risk underprovisioning and throttling growth? AKS offers two solutions that aim to address these capacity scaling challenges.

Copilot uses AI. Check for mistakes.

This isn’t just flexibility - it’s versatility in capacity-constrained regions.

#### How Virtual Machine node pools handle capacity errors
Copy link

Copilot AI Dec 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to the Microsoft Style Guide, use sentence-style capitalization for headings. "How Virtual Machine node pools handle capacity errors" should have lowercase after the first word (except for proper nouns). Update to: "#### How virtual machine node pools handle capacity errors"

Copilot generated this review using guidance from repository custom instructions.
* Avoid overly restrictive affinity rules.
* Enable multiple NodePools with different priorities for fallback.

## What’s Next on the AKS Roadmap
Copy link

Copilot AI Dec 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to the Microsoft Style Guide, use sentence-style capitalization for headings. "What's Next on the AKS Roadmap" should have lowercase after the first word (except for proper nouns like AKS). Update to: "## What's next on the AKS roadmap"

Copilot generated this review using guidance from repository custom instructions.
Clarified error messages and improved explanations for capacity management. Enhanced guidance on node auto-provisioning and virtual machine node pools.
Updated formatting and improved clarity in the content regarding Node Auto Provisioning and Virtual Machine Node Pools. Added information on capacity management and best practices.
Corrected the link to the NAP documentation for enabling NAP on clusters.
Added guidance on enabling NAP and getting started with node auto provisioning and virtual machine node pools.
Copy link
Contributor

@abubinski abubinski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I love this -- customers really need this. Thank you for creating!

@abubinski abubinski self-requested a review December 4, 2025 22:04
Copy link
Contributor

@abubinski abubinski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a great doc, thanks for putting it together Wilson! Customers really need this.


To maximize NAP's ability to handle capacity errors:
* Define broad SKU families (e.g., D, E) in your NodePool requirements.
* Avoid overly restrictive affinity rules.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This does seem to cause capacity issues, but I don't think we AKS have clear detail on what this means in our docs. Can we add info here?

To maximize NAP's ability to handle capacity errors:
* Define broad SKU families (e.g., D, E) in your NodePool requirements.
* Avoid overly restrictive affinity rules.
* Enable multiple NodePools with different priorities for fallback.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think more detail would be helpful here too - what are the priority options and how should we do it? Maybe link to docs if it's already somewhere else.

wdarko1 and others added 3 commits December 12, 2025 15:40
Updated documentation for node auto-provisioning and virtual machine node pools, including links to relevant resources and clarifications on requirements and limitations.
Updated section title to include 'limitations' for clarity.
---

## The Hidden Complexity Behind Capacity
Why does this happen? Because scaling in Kubernetes isn’t just horizontal—it’s logistical. Every node pool is tied to a VM SKU, region, and zone. When workloads diversify (GPU jobs, memory-heavy analytics, latency-sensitive microservices), the rigid structure of fixed node pools becomes a bottleneck. You’re left juggling trade-offs: Do you overprovision expensive SKUs “just in case”? Or risk underprovisioning and throttling growth? AKS offers two solutions that aim to address these capacity scaling challenges.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This sounds a little too 🤖


This flexibility is key to avoiding hard failures during scale-out.

FOr more on enabling NAP on your cluster, visit our [NAP documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning) as well as our docs on configuring the [NodePool CRD](https://learn.microsoft.com/azure/aks/node-auto-provisioning-node-pools) and [AKSNodeClass CRD](https://learn.microsoft.com/azure/aks/node-auto-provisioning-aksnodeclass)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
FOr more on enabling NAP on your cluster, visit our [NAP documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning) as well as our docs on configuring the [NodePool CRD](https://learn.microsoft.com/azure/aks/node-auto-provisioning-node-pools) and [AKSNodeClass CRD](https://learn.microsoft.com/azure/aks/node-auto-provisioning-aksnodeclass)
For more on enabling NAP on your cluster, visit our [NAP documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning) as well as our docs on configuring the [NodePool CRD](https://learn.microsoft.com/azure/aks/node-auto-provisioning-node-pools) and [AKSNodeClass CRD](https://learn.microsoft.com/azure/aks/node-auto-provisioning-aksnodeclass)

Generally, using NAP or Virtual Machine node pools are mutually exclusive. You can use NAP to create standalone VMs which NAP manages instead of traditional node pools, which allows for **mixed SKU autoscaling**. Virtual Machine node pools uses traditional node pools, but allows for **mixed SKU manual scaling**.

* (Recommended) Choose NAP for dynamic environments where manual SKU planning is impractical.
* Choose Virtual Machine node pools when you need control—specific SKUs for compliance, predictable performance, or cost modeling.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can't you select and control the specific SKUs in NAP as well?


To maximize Virtual Machine node pool's ability to adapt to capacity errors:
* Be clear on a list of VM SKUs that can tolerate your workloads. Visit our [Azure VM Sizes documentation](https://learn.microsoft.com/azure/virtual-machines/sizes/overview#list-of-vm-size-families-by-type) for more details.
* Create mixed SKU node pools to offer resiliency to your workloads. Visit our [Virtual machine node pool documentation](https://learn.microsoft.com/azure/aks/virtual-machines-node-pools) on how to add a mixed SKU node pool.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* Create mixed SKU node pools to offer resiliency to your workloads. Visit our [Virtual machine node pool documentation](https://learn.microsoft.com/azure/aks/virtual-machines-node-pools) on how to add a mixed SKU node pool.
* Create virtual machine node pools to offer resiliency to your workloads. Visit our [Virtual machine node pool documentation](https://learn.microsoft.com/azure/aks/virtual-machines-node-pools) on how to add a mixed SKU node pool.

Also the sentence has too many repetitions.

Comment on lines 160 to 195
### Create a new AKS cluster with virtual machine node pools

The following example creates a new cluster named myAKSCluster with a Virtual Machines node pool containing two nodes with size "Standard_D4s_v3", and sets the Kubernetes version to 1.31.0:

```
az aks create --resource-group myResourceGroup --name myAKSCluster --vm-set-type "VirtualMachines" --vm-sizes "Standard_D4s_v3"
--node-count 2 --kubernetes-version 1.31.0
```

### Add a new virtual machine node pool to an existing cluster

The following example adds a Virtual Machines node pool named myvmpool to the myAKSCluster cluster. The node pool creates a ManualScaleProfile with --vm-sizes set to Standard_D4s_v3 and a --node-count of 3:

```
az aks nodepool add --resource-group myResourceGroup --cluster-name myAKSCluster --name myvmpool --vm-set-type "VirtualMachines" --vm-sizes "Standard_D4s_v3" --node-count 3
```

### Add another VM size in an existing node pool
You can add additional ManualSCaleProfiles to this existing node pool `myvmpool` to have multiple same-family sizes in the same node pool. The following example adds a manual scale profile to node pool myvmpool in cluster myAKSCluster. The node pool includes two nodes with a VM SKU of Standard_D2s_v3:

```
az aks nodepool manual-scale add --resource-group myResourceGroup --cluster-name myAKSCluster --name myvmpool --vm-sizes "Standard_D2s_v3" --node-count 2
```
With this, the example node pool `myvmpool` now has two VM sizes in the same nodepool:
- "Standard_D4s_v3" (3 nodes)
- "Standard_D2s_v3" (2 nodes)

### Update existing node pool size in a virtual machine node pool

You can also update the size and/or node count of existing node pools. The following example updates a manual scale profile in the `myvmpool` node pool in the `myAKSCluster` cluster. The command updates the number of nodes to five and changes the VM SKU from Standard_D4s_v3 to Standard_D8s_v3:

```
az aks nodepool manual-scale update --resource-group myResourceGroup --cluster-name myAKSCluster --name myvmpool --current-vm-sizes "Standard_D4s_v3" --vm-sizes "Standard_D8s_v3" --node-count 5
```

For more on managing Virtual Machine node pools, visit our [Virtual Machine node pools documentation](https://learn.microsoft.com/azure/aks/virtual-machines-node-pools).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similarly, these are too much details and duplicate of the docs. I'd rather the examples here just cover the bare minimum of how to get started and link to docs for more information.

Comment on lines 98 to 118
### NAP requirements + limitations

To use node auto-provisioning in AKS, you need the following prerequisites:

- An Azure subscription. If you don't have one, you can create a free account.
- Azure CLI version 2.76.0 or later. To find the version, run az --version. For more information about installing or upgrading the Azure CLI, see Install Azure CLI.

The following limitations and unsupported features apply to node auto-provisioning in AKS:

- You can't enable NAP on clusters enabled with the cluster autoscaler.
- Windows node pools aren't supported.
- IPv6 clusters aren't supported.
- Service principals aren't supported. You can use either a system-assigned or user-assigned managed identity.
- Disk Encryption Sets aren't supported yet (scheduled for early 2026).
- Custom certificate authority (CA) certificates aren't supported.
- You can't stop a cluster enabled with NAP yet.
- HTTP proxy isn't supported.
- You can't change the cluster egress outbound type after you create a cluster enabled with NAP.
- When creating a NAP cluster in a custom virtual network (VNet), you must use a Standard Load Balancer. The Basic Load Balancer isn't supported.

For more on NAP limitations, visit our [NAP documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning#limitations-and-unsupported-features).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we not have this here? Blog posts are fairly static and we'll forget to update them when the limitations are gone.

Comment on lines 150 to 158
### Virtual machine node pool requirements + limitations

- [InifiniBand](https://blog.aks.azure.com/2025/04/11/infiniband-on-aks) isn't available.
- [Node pool snapshot](https://learn.microsoft.com/azure/aks/node-pool-snapshot) isn't supported.
- All VM sizes selected in a node pool need to be from a similar virtual machine family. For example, you can't mix an N-Series virtual machine type with a D-Series virtual machine type in the same node pool.
- Virtual Machines node pools allow up to five different virtual machine sizes per node pool.
- An Azure subscription. If you don't have one, you can [create a free account](https://azure.microsoft.com/free).
- Azure CLI version 2.73.0 or later installed and configured. To find the version, run `az --version`.
- This feature requires kubernetes version 1.27 or greater.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similar comment, let's not list limitations in a static blog post.

## What’s next on the AKS roadmap

NAP: Expect deeper integration with cost optimization tools and advanced disruption policies for even smarter consolidation.
Virtual Machine node pools: Auto-scaling (general availability) is on the horizon, reducing manual configuration and enabling adaptive scaling across mixed SKUs.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did we mention that VM node pools actually support auto-scaling (in preview) in this blog post?

@sabbour sabbour requested a review from Copilot December 15, 2025 20:24
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 12 comments.


This flexibility is key to avoiding hard failures during scale-out.

FOr more on enabling NAP on your cluster, visit our [NAP documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning) as well as our docs on configuring the [NodePool CRD](https://learn.microsoft.com/azure/aks/node-auto-provisioning-node-pools) and [AKSNodeClass CRD](https://learn.microsoft.com/azure/aks/node-auto-provisioning-aksnodeclass)
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected capitalization of 'FOr' to 'For'.

Suggested change
FOr more on enabling NAP on your cluster, visit our [NAP documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning) as well as our docs on configuring the [NodePool CRD](https://learn.microsoft.com/azure/aks/node-auto-provisioning-node-pools) and [AKSNodeClass CRD](https://learn.microsoft.com/azure/aks/node-auto-provisioning-aksnodeclass)
For more on enabling NAP on your cluster, visit our [NAP documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning) as well as our docs on configuring the [NodePool CRD](https://learn.microsoft.com/azure/aks/node-auto-provisioning-node-pools) and [AKSNodeClass CRD](https://learn.microsoft.com/azure/aks/node-auto-provisioning-aksnodeclass)

Copilot uses AI. Check for mistakes.
To maximize NAP's ability to handle capacity errors:
* Define broad SKU families (e.g., D, E) in your NodePool requirements.
* Avoid overly restrictive affinity rules. Visit our [affinity rules documentation](https://learn.microsoft.com/azure/aks/operator-best-practices-advanced-scheduler#control-pod-scheduling-using-node-selectors-and-affinity) on best practices.
* Enable multiple NodePools with different priorities for fallback. Visist our [NAP Node Pool documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning-node-pools) for more on configuring the NodePool CRD.
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected spelling of 'Visist' to 'Visit'.

Suggested change
* Enable multiple NodePools with different priorities for fallback. Visist our [NAP Node Pool documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning-node-pools) for more on configuring the NodePool CRD.
* Enable multiple NodePools with different priorities for fallback. Visit our [NAP Node Pool documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning-node-pools) for more on configuring the NodePool CRD.

Copilot uses AI. Check for mistakes.
- NodePool - for setting rules around the range of VM sizes, capacity type (spot vs. on-demand), compute architecture, availability zones, etc.
- AKSNodeClass - for setting rules around certain Azure specific settings such as more detailed networking (virtual networks) setup, node image family type, operating system configurations, and other resource-related definitions.

Visit our [NAP NodePool Documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning-node-pools) and [NAP AKSNodeClass documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning-aksnodeclass) for more on configuration these files.
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected 'configuration these files' to 'configuring these files'.

Suggested change
Visit our [NAP NodePool Documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning-node-pools) and [NAP AKSNodeClass documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning-aksnodeclass) for more on configuration these files.
Visit our [NAP NodePool Documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning-node-pools) and [NAP AKSNodeClass documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning-aksnodeclass) for more on configuring these files.

Copilot uses AI. Check for mistakes.

### Virtual machine node pool requirements + limitations

- [InifiniBand](https://blog.aks.azure.com/2025/04/11/infiniband-on-aks) isn't available.
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected spelling of 'InifiniBand' to 'InfiniBand'.

Suggested change
- [InifiniBand](https://blog.aks.azure.com/2025/04/11/infiniband-on-aks) isn't available.
- [InfiniBand](https://blog.aks.azure.com/2025/04/11/infiniband-on-aks) isn't available.

Copilot uses AI. Check for mistakes.
```

### Add another VM size in an existing node pool
You can add additional ManualSCaleProfiles to this existing node pool `myvmpool` to have multiple same-family sizes in the same node pool. The following example adds a manual scale profile to node pool myvmpool in cluster myAKSCluster. The node pool includes two nodes with a VM SKU of Standard_D2s_v3:
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected capitalization in 'ManualSCaleProfiles' to 'ManualScaleProfiles'.

Suggested change
You can add additional ManualSCaleProfiles to this existing node pool `myvmpool` to have multiple same-family sizes in the same node pool. The following example adds a manual scale profile to node pool myvmpool in cluster myAKSCluster. The node pool includes two nodes with a VM SKU of Standard_D2s_v3:
You can add additional ManualScaleProfiles to this existing node pool `myvmpool` to have multiple same-family sizes in the same node pool. The following example adds a manual scale profile to node pool myvmpool in cluster myAKSCluster. The node pool includes two nodes with a VM SKU of Standard_D2s_v3:

Copilot uses AI. Check for mistakes.

### Add another VM size in an existing node pool
You can add additional ManualSCaleProfiles to this existing node pool `myvmpool` to have multiple same-family sizes in the same node pool. The following example adds a manual scale profile to node pool myvmpool in cluster myAKSCluster. The node pool includes two nodes with a VM SKU of Standard_D2s_v3:

Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code blocks must specify a language identifier for syntax highlighting. Add 'bash' or 'sh' after the opening triple backticks.

Copilot generated this review using guidance from repository custom instructions.
### Update existing node pool size in a virtual machine node pool

You can also update the size and/or node count of existing node pools. The following example updates a manual scale profile in the `myvmpool` node pool in the `myAKSCluster` cluster. The command updates the number of nodes to five and changes the VM SKU from Standard_D4s_v3 to Standard_D8s_v3:

Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code blocks must specify a language identifier for syntax highlighting. Add 'bash' or 'sh' after the opening triple backticks.

Copilot generated this review using guidance from repository custom instructions.

To use node auto-provisioning in AKS, you need the following prerequisites:

- An Azure subscription. If you don't have one, you can create a free account.
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This bullet point references creating a free account but doesn't provide a link. Consider adding the URL (https://azure.microsoft.com/free) for consistency, as this link is provided in line 156 for the same statement.

Suggested change
- An Azure subscription. If you don't have one, you can create a free account.
- An Azure subscription. If you don't have one, you can [create a free account](https://azure.microsoft.com/free).

Copilot uses AI. Check for mistakes.
@sabbour sabbour requested a review from Copilot December 15, 2025 20:29
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 1 comment.


Visit our [NAP NodePool Documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning-node-pools) and [NAP AKSNodeClass documentation](https://learn.microsoft.com/azure/aks/node-auto-provisioning-aksnodeclass) for more on configuration these files.

### Configure NAP Disruption
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent capitalization: 'Disruption' should be lowercase to match the style of other subsection headings in this document (e.g., 'Configure NAP custom resource definitions').

Suggested change
### Configure NAP Disruption
### Configure NAP disruption

Copilot uses AI. Check for mistakes.
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 9 comments.

Comment on lines 124 to 126
```
az aks create --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --node-provisioning-mode Auto --network-plugin azure --network-plugin-mode overlay --network-dataplane cilium
```
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing language specification in code block. According to the blog post guidelines, all code blocks must specify the language for syntax highlighting. Add "bash" after the opening backticks.

Copilot uses AI. Check for mistakes.
Comment on lines 180 to 182
```
az aks nodepool manual-scale add --resource-group myResourceGroup --cluster-name myAKSCluster --name myvmpool --vm-sizes "Standard_D2s_v3" --node-count 2
```
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing language specification in code block. According to the blog post guidelines, all code blocks must specify the language for syntax highlighting. Add "bash" after the opening backticks.

Copilot uses AI. Check for mistakes.
---
title: "Navigating Capacity Challenges on AKS with Node Auto Provisioning or Virtual Machine Node Pools"
description: "Learn how Node auto provisioning and Virtual Machine node pools can address capacity constraints when scaling an AKS cluster"
date: 2025-11-26
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The date field is set to 2025-11-26, which is in the past relative to the blog post directory name (2025-12-06). According to the AKS Blog Post Content Guidelines, the date can be future-dated for future publishing, but there should be consistency between the directory name date and the front matter date. Consider updating the date to match the directory name (2025-12-06) or vice versa to maintain consistency.

Suggested change
date: 2025-11-26
date: 2025-12-06

Copilot uses AI. Check for mistakes.
Comment on lines 132 to 134
```
az aks update --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --node-provisioning-mode Auto
```
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing language specification in code block. According to the blog post guidelines, all code blocks must specify the language for syntax highlighting. Add "bash" after the opening backticks.

Copilot uses AI. Check for mistakes.
Comment on lines 164 to 167
```
az aks create --resource-group myResourceGroup --name myAKSCluster --vm-set-type "VirtualMachines" --vm-sizes "Standard_D4s_v3"
--node-count 2 --kubernetes-version 1.31.0
```
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing language specification in code block. According to the blog post guidelines, all code blocks must specify the language for syntax highlighting. Add "bash" after the opening backticks.

Copilot uses AI. Check for mistakes.

### Virtual machine node pool requirements + limitations

- [InifiniBand](https://blog.aks.azure.com/2025/04/11/infiniband-on-aks) isn't available.
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Spelling error: "InifiniBand" should be "InfiniBand" with proper capitalization. The correct spelling has a capital "B" in "Band".

Suggested change
- [InifiniBand](https://blog.aks.azure.com/2025/04/11/infiniband-on-aks) isn't available.
- [InfiniBand](https://blog.aks.azure.com/2025/04/11/infiniband-on-aks) isn't available.

Copilot uses AI. Check for mistakes.
Comment on lines 191 to 193
```
az aks nodepool manual-scale update --resource-group myResourceGroup --cluster-name myAKSCluster --name myvmpool --current-vm-sizes "Standard_D4s_v3" --vm-sizes "Standard_D8s_v3" --node-count 5
```
Copy link

Copilot AI Dec 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing language specification in code block. According to the blog post guidelines, all code blocks must specify the language for syntax highlighting. Add "bash" after the opening backticks.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants