VMware Cloud Foundation Home Page Products

VKS – Announcing Support for Windows Container workloads

VMware vSphere Kubernetes Service (previously VMware Tanzu Kubernetes Grid Service) version 3.2 is now Generally Available, which supports the latest version of Kubernetes – 1.31. We are thrilled to introduce the support for Windows containers on Microsoft Windows Server 2022 enabling enterprises running Windows based container workloads to deploy using the VMware VKS on VMware Cloud Foundation (VCF).

With VKS 3.2, you can now configure Microsoft Windows Server 2022 node pool(s) for a TKG Service Cluster. To get started, you need to use the Image Builder tool to build your own custom Windows OS image. Please refer to our documentation for more information on deployment and prerequisites. 

Minimize System Initiated Rolling Updates of Kubernetes Clusters

We have been working to make the Kubernetes upgrade experience on vSphere Supervisor as seamless as possible. Cluster Class versioning is one step towards that direction. 

Historically, some upgrades of the Supervisor have included changes that caused a System Initiated Rolling Update for existing workload clusters. When changes were introduced, they were automatically propagated to existing clusters, sometimes requiring a replacement of all clusters’ nodes. For example, upgrading from vCenter 7.0 to 8.0 included changes to the way all Clusters were represented which caused a rolling update for all clusters, upgrading across 8.0.0b caused a rolling update for clusters using specific proxy settings or the embedded Harbor Registry Service, and upgrading across 8.0 Update 2 caused a rolling update due to changes related to STIG hardening. We heard your feedback that these rollouts are surprising and disruptive.

VKS 3.2 introduces a new pattern: instead of making an in-place change to the Cluster Class your clusters are already using and affecting those clusters immediately, we’ll create a new Cluster Class. This allows new clusters to default to the latest Cluster Class and provides control over when existing cluster classes undergo change. We call these “versioned Cluster Classes”: the “builtin-generic-v3.1.0” Cluster Class matches the behavior of the “tanzukubernetescluster” Cluster Class from v3.1.0, and a new “builtin-generic-v3.2.0” Cluster Class introduces new changes corresponding to the v3.2.0 release.

By default when you upgrade a Kubernetes cluster, we’ll automatically move it from an older versioned Cluster Class to the newest one, allowing changes that require a rolling update to be combined with the rolling update that occurs as a part of the Kubernetes upgrade.

When a change may be disruptive, we’ll “pin” existing clusters to the previous Cluster Class version. We’ve done so in this release to prevent Clusters from moving to “builtin-generic-v3.2.0” before you and your tooling are ready. “Unpinning” a cluster is as simple as removing an annotation. Refer to the release notes for more information.

Deprecations in this release

We are announcing the deprecation of TanzuKubernetesCluster, TanzuKubernetesRelease, and associated APIs. The TanzuKubernetesCluster API will be removed no sooner than June 2025.  We encourage you to use the Cluster v1beta1 API (available beginning in vSphere 8.0, since October 2022) to create Kubernetes Clusters. You can read more about the deprecation announcement in the release notes.

References

TKG Service  3.2 – Release Notes

TKr 1.31.1 Release Notes

Standard Packages compatible with TKR 1.31

Interoperability Matrix