VM Runtime on GDC release notes

This document lists production updates to VM Runtime on Google Distributed Cloud. We recommend that VM Runtime on GDC developers periodically check this list for any new announcements

You can see the latest product updates for all of Google Cloud on the Google Cloud page, browse and filter all release notes in the Google Cloud console, or programmatically access release notes in BigQuery.

To get the latest product updates delivered to you, add the URL of this page to your feed reader, or add the feed URL directly: https://cloud.google.com/feeds/vmruntime-release-notes.xml

April 29, 2024


Release 1.29.0-gke.1449

A new release of VM Runtime on Google Distributed Cloud is available as part of the GKE on Bare Metal 1.29.0-gke.1449 release, which is now available for download. For a more information about what's new in this release, see the GKE on Bare Metal 1.29.0-gke.1449 release notes.

Added support for configuring the running state (Running or Stopped) of a GVM through the runningState field in the GVM resource spec.

Added support for applying real-time label patching to the vm Pod by adding labels to GVM resources.

Reduced the CPU and memory resource request settings for the macvtap DaemonSet.

Added vmruntime preflight check result to the output of kubectl get vmruntime.

Enabled the ability to override the pod network configuration through the virtSpec ConfigMap. Overrides are needed when the cluster CIDR conflicts with the default mock CIDR ( used by VMs that connect to the default pod network.

Changed the default VM high availability grace period from 90 seconds to 35 seconds. With this change, VMs fail over on node failure sooner than with previous releases. Included in this change is the addition of continuous retries on heartbeat failures.

Added ResponseReadTimeout for use when fetching images from an S3 repository. Now, the importer Pod disconnects and restarts when the object read can't get new data for more than 10 minutes.

Fixed the guest agent installation script.

Fixed the virt-launcher log container termination issues that sometimes caused VM statuses of not ready.

Fixed issues on the persistent non-volatile random access memory NVRAM feature, which caused the created PVC to get stuck in a pending state.

Fixed an issue with the virtctl create vm command that caused failures when os-type was set to windows.

December 15, 2023


Anthos clusters on bare metal 1.28.0 is now available for download. For a more information about what's new in this release, see the Anthos clusters on bare metal 1.28 release notes.

Added support for local image caching within the same namespace.

Upgraded CDI version to v1.57.0. With this upgrade, support for the qcow2 VM format is obsolete. This image format configuration is ignored silently.

Added ErrorConfiguration and Pending to the disk phase status.

Added an Enabled column for the VMRuntime custom resource so that you can see whether VMRuntime is enabled or not without printing the whole custom resource.

Added a check to see if the network controller is ready as part of overall VMRuntime readiness.

Increased the memory resource limit for CDI pods when importing or cloning images.

Removed the node patching access from the virt-handler DaemonSet to reduce security risk.

Added an error to catch attempts to create disks using a storage class (other than local-shared) with a storage profile that's missing access modes. In earlier versions of Anthos VM Runtime, the access mode defaults to ReadWriteOnce (RWO) for this case.

FIxed an issue to prevent VM annotations from triggering VMs to restart when the autoRestartOnConfigurationChange flag is enabled.

Increased the live migration Pod creation timeout to resolve cluster upgrade failures.

Enabled live migration auto-converge, by default. This fixes an issue where live migration wouldn't finish for some VMs.

Fixed an issue that caused nil pointer crashes when the KubeVirt custom resource is missing.

Enabled support for running a VM as a dynamic host configuration protocol (DHCP) server.

August 25, 2023


Anthos clusters on bare metal 1.16.0 is now available for download. For a more information about what's new in this release, see the Anthos clusters on bare metal 1.16 release notes.

Added support to persist states for Unified Extensible Firmware Interface (UEFI) and trusted platform module (TPM) across virtual machine (VM) restarts. This feature is enabled in the VMRuntime custom resource by setting spec.featureGates.VMPersistentState to Enabled.

Added support for inserting or ejecting CD-ROMs for live virtual machines (VMs) without interruptions. You can eject currently attached CD-ROMs and you can insert a CD-ROM into any open slot. You can also start with open slots and insert CD-ROMs at any time.

Added GPU support for Rocky Linux guest operating systems (OSes). Support is similar to what's provided for Ubuntu, but you must use the dnf package manager, instead of the Ubuntu apt.

Changed the default VM format from qCOW2 to RAW for file system storage. This change improves the underlying storage performance and is transparent to users.

Upgraded Kubevirt version from v0.58.0 to v0.59.0.

Added READY column in VMRuntime custom resource to tell you if VMRuntime is ready or not without printing the whole resource manifest.

Fixed a network disconnect issue that occurred during VM live migration.

Fixed the issue that prevented proper detection of GPU devices when the VM is booted with UEFI.

Fixed the issue that blocked VMs from starting when secure boot and Windows guest agent are both enabled.

Fixed the issue where cluster upgrades or credential rotation prevented new GPU workloads from running.

Fixed the issue where a daemon-reload for systemd on a worker node causes an existing GPU workload to fail.

April 27, 2023


Support for virtual machine disk resize When customers modify the size of a VM disk, the underlying persistent volume claim (PVC) and disk used by the VM are expanded if the storage provider supports it.

HA enhancement for Robin storage class When the Robin storage class is used, because Robin supports storage fencing, trigger Robin fencing to ensure no access to the storage from the failed node during HA failover. This allows HA to work with a block storage class with Robin.

Change eviction behavior during cluster upgrade VM live migration/restart is triggered after a node is put into maintenance mode instead of before as in earlier versions, and the operation is subject to the common enteringMaintenanceWindow timeout set by Anthos on Bare Metal. The VM will try to migrate or move to other nodes that are already upgraded in a best-effort way. Also changed the Kubevirt migration taints to soft taints to fix the single-control-node upgrade issue.

Windows guest HyperV optimization For windows guest OS on a physical server environment, automatically enable some advanced configurations for better performance.

Support configuration of the virtio-nontransitional driver for SLES11 Expose the Kubevirt knob on the virtio-nontransitional driver to the KubeVM layer.

VNC access improvement Use tablet mode to enhance VNC experience.

Make MIG controller resilient to K8s API server failure This change makes the GPU MIG component more resilient to short-time controller plane failures. For example, if there is a glitch on the API server, the MIG controller will retry connecting to the server multiple times till the API server returns to be responsive or it times out.

Base image upgrade to address vulnerabilities

Support Rocky 8 guest OS, SLES11, and Ubuntu 22.04

Guest agent V2 Previously, the guest agent connected to the control plane through the Kubernetes API server watching mechanism. In Anthos for Bare Metal 1.15, we changed the default communication mode for guest agents on Linux VMs to the push model through the vsock.

Detects generation difference between Kubevirt VM and Kubevirt VMI This ensures that when the autoResetartVMOnConfigurationChange flag is enabled, VM instances will always be in sync with VM configurations irrespective of whether the changes were made before the flag enablement or not.

Kubevirt version upgrade from v0.57.1 to v0.58.0 This most notably removes the root-user requirement on virt-launcher pods.

Qemu version upgrade from 5.2 to 7.2 This upgrade changse the default Qemu machine type for VM instances. We will restart all existing VMs during upgrade to switch to the new machine type.

Prevent multiple VMs from attaching to the same disk in non-read-only mode

Support ABM cluster proxy

Fix the OOM error for VM with large memory This fix adds memory overhead for VMs with large memory.