Skip to content

Commit

Permalink
Merge pull request #238497 from MicrosoftDocs/release-build-aks-gen2-…
Browse files Browse the repository at this point in the history
…vm-windows

[Build 2023 Ship Room] Gen2 VMs
  • Loading branch information
SyntaxC4 authored May 17, 2023
2 parents f4c2cae + 73eac47 commit 4f5df56
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 3 deletions.
42 changes: 40 additions & 2 deletions articles/aks/cluster-configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,11 +56,49 @@ By using `containerd` for AKS nodes, pod startup latency improves and node resou

Azure supports [Generation 2 (Gen2) virtual machines (VMs)](../virtual-machines/generation-2.md). Generation 2 VMs support key features not supported in generation 1 VMs (Gen1). These features include increased memory, Intel Software Guard Extensions (Intel SGX), and virtualized persistent memory (vPMEM).

Generation 2 VMs use the new UEFI-based boot architecture rather than the BIOS-based architecture used by generation 1 VMs.
Only specific SKUs and sizes support Gen2 VMs. Check the [list of supported sizes](../virtual-machines/generation-2.md#generation-2-vm-sizes), to see if your SKU supports or requires Gen2.
Generation 2 VMs use the new UEFI-based boot architecture rather than the BIOS-based architecture used by generation 1 VMs. Only specific SKUs and sizes support Gen2 VMs. Check the [list of supported sizes](../virtual-machines/generation-2.md#generation-2-vm-sizes), to see if your SKU supports or requires Gen2.

Additionally, not all VM images support Gen2 VMs. On AKS, Gen2 VMs use [AKS Ubuntu 22.04 or 18.04 image](#os-configuration) or [AKS Windows Server 2022 image](#os-configuration). These images support all Gen2 SKUs and sizes.

Gen2 VMs are supported on Linux. Gen2 VMs on Windows are supported for WS2022 only.

### Generation 2 virtual machines on Windows (preview)

[!INCLUDE [preview features callout](includes/preview/preview-callout.md)]

* Generation 2 VMs are supported on Windows for WS2022 only.
* Generation 2 VMs are default for Windows clusters greater than or equal to Kubernetes 1.25.
* If your Kubernetes version is greater than 1.25, you only need to set the `vm_size` to get the generation 2 node pool. You can still use WS2019 generation 1 if you define that in the `os_sku`.
* If your Kubernetes version less than 1.25, you can set the `os_sku` to WS2022 and set the `vm_size` to generation 2 to get the generation 2 node pool.

Follow the Azure CLI commands to use generation 2 VMs on Windows:

```azurecli
# Sample command
az aks nodepool add --resource-group myResourceGroup --cluster-name myAKSCluster --name gen2np
--kubernetes-version 1.23.5 --node-vm-size Standard_D32_v4 --os-type Windows --os_sku Windows2022
# Default command
az aks nodepool add --resource-group myResourceGroup --cluster-name myAKSCluster --name gen2np --os-type Windows --kubernetes-version 1.23.5
```

To determine if you're on generation 1 or generation 2, run the following command from the nodepool level and check that the `nodeImageVersion` contains `gen2`:

```azurecli
az aks nodepool show
```

To determine available generation 2 VM sizes, run the following command:

```azurecli
az vm list -skus -l $region
```

For more information, see [Support for generation 2 VMs on Azure](../virtual-machines/generation-2.md).

## Default OS disk sizing

When you create a new cluster or add a new node pool to an existing cluster, by default the OS disk size is determined by the number for vCPUs. The number of vCPUs is based on the VM SKU, and in the following table we list the default values:
Expand Down
6 changes: 5 additions & 1 deletion articles/aks/windows-faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,10 @@ Historically, Kubernetes is Linux-focused. Many examples used in the upstream [K

Azure Disks and Azure Files are the supported volume types, and are accessed as NTFS volumes in the Windows Server container.

## Do Linux and Windows support generation 2 virtual machines (VMs)?

Generation 2 VMs are supported on Linux and Windows for WS2022 only. For more information, see [Support for generation 2 VMs on Azure](../virtual-machines/generation-2.md).

## Can I run Windows only clusters in AKS?

The master nodes (the control plane) in an AKS cluster are hosted by the AKS service. You won't be exposed to the operating system of the nodes hosting the master components. All AKS clusters are created with a default first node pool, which is Linux-based. This node pool contains system services that are needed for the cluster to function. We recommend that you run at least two nodes in the first node pool to ensure the reliability of your cluster and the ability to do cluster operations. The first Linux-based node pool can't be deleted unless the AKS cluster itself is deleted.
Expand Down Expand Up @@ -120,7 +124,7 @@ $cluster | Set-AzAksCluster

> [!IMPORTANT]
> Performing the `Set-AzAksCluster` operation upgrades only Windows Server node pools. Linux node pools are not affected.
>
>
> When you're changing the Windows administrator password, the new password must be at least 14 characters and meet [Windows Server password requirements][windows-server-password].
---
Expand Down

0 comments on commit 4f5df56

Please sign in to comment.