We have seen a great deal of interest from the community around our September 1 announcement of the General Availability of Windows Server 2022. This blog will answer common questions as well as provide an update around a topic the community is talking about: Windows Server 2022 support on Azure Kubernetes Service (AKS) and Azure Kubernetes Service on Azure Stack HCI (AKS on Azure Stack HCI).
Why are AKS and AKS on Azure Stack HCI only supporting Windows Server 2022 with containerd?
Containerd is a popular container runtime widely used in Kubernetes. A container runtime is software that executes containers and manages container images on a node in a Kubernetes cluster. On each node, kubelet – the primary ‘node agent’ – uses the container runtime interface as an abstraction to orchestrate and schedule any pods made of containers.
As explained here, the Kubernetes community is aiming “at a deprecation and subsequent removal of dockershim from kubelet.” Dockershim is Container Runtime Interface (CRI) for docker. Currently the Kubernetes community aims to release kubelet without dockershim in Kubernetes version 1.24 around April 2022.
Both AKS and AKS on Azure Stack HCI are managed Kubernetes services. Hence one of the most important goals is to take care of the changes from the underlying platform, be it from the OS, Kubernetes, or other open-source software, so customers don’t have to deal with those and focus on their applications instead. This is the same case for handing this upcoming dockershim deprecation.
AKS and AKS on Azure Stack HCI today support Windows Server 2019. Rather than requiring customers to change infrastructure twice (from Windows Serer 2019 to Windows Server 2022, from docker to containerd – with the associated validation and conformance costs on the Kubernetes community), we are streamlining the experience by aligning the latest version of Windows Server, Windows Server 2022, with the latest and best container runtime for Kubernetes – containerd. For example, Kubernetes version 1.22 introduced a new alpha feature: HostProcess containers that are supported only on containerd. HostProcess containers aim to extend the Windows container model to enable a wider range of Kubernetes cluster management scenarios, such as deploying CNI and monitoring tool. We believe this containerd focus will help make sure we give the end users a great user experience.
This aligns with other containerd related efforts for AKS and AKS on Azure Stack HCI. For example, on the Windows side, AKS has started the Preview of Windows Server 2019 on containerd since July 2021. AKS on Azure Stack HCI is also actively working on containerd support for Windows. On the Linux side, AKS already uses containerd by default on Kubernetes version 1.19 and greater. In addition, AKS on Azure Stack HCI recently announced that, in the Aug 2021 update, containerd is now the default container runtime for Linux worker nodes.
What remains to be done for AKS and AKS on Azure Stack HCI to support Windows Server 2022?
AKS and AKS on Azure Stack HCI are certified distributors of Kubernetes. To support Windows Server 2022, there are two main steps: 1) Enable support in the upstream Kubernetes community; and 2) Integrate and validate the upstream Kubernetes support on AKS and AKS on Azure Stack HCI.
For the second, while working with upstream Kubernetes, we are integrating and validating the end-to-end customer experience with our own distributions on AKS and AKS on Azure Stack HCI.
While Microsoft is working to go above and beyond in bringing up Windows Server 2022 support in upstream Kubernetes, like any other Kubernetes distributor, we also rely on the collective effort of the community to get to the ready state. Kubernetes is an open-source project with many distributions. It’s great to see Windows Server 2022 customers benefiting from the broader ecosystem.
A sneak preview demo…
Below is a short demo using the simulated AKS cluster, created with AKS Engine for our private testing, to deploy a Windows Server 2022 based IIS workload.
It is a journey. It takes a village. We appreciate the interest and value the feedback from everyone in the community. Please feel free to post in our Windows Container GitHub community. If you have a Windows Server 2022 use case, please share them here. It will help us make sure we are doing the right validation and delivering to your needs. We look forward to hearing more from you.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.