<?xml version="1.0" encoding="UTF-8"?>
<!-- AUTOGENERATED FILE. DO NOT EDIT. -->
<feed xmlns="http://www.w3.org/2005/Atom">
  <id>tag:google.com,2016:anthos-bare-metal-release-notes</id>
  <title>Google Distributed Cloud (software only) for bare metal - Release notes</title>
  <link rel="self" href="https://docs.cloud.google.com/feeds/anthos-bare-metal-release-notes.xml"/>
  <author>
    <name>Google Cloud Platform</name>
  </author>
  <updated>2026-08-25T00:00:00-07:00</updated>

  <entry>
    <title>August 25, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#August_25_2026</id>
    <updated>2026-08-25T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#August_25_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.36.0-gke.532 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.36.0-gke.532 runs on Kubernetes v1.36.0-gke.2800.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the listing of our
previously-qualified <a href="https://docs.cloud.google.com/kubernetes-engine/enterprise/docs/resources/partner-storage">storage partners</a>.</p>
<h3>Feature</h3>
<p>Google Distributed Cloud (software only) for bare metal includes the following feature
 enhancements:</p>
<ul>
<li>Upgraded the Ansible version to 2.18. This version requires Python 3.8+ on
target nodes. Because RHEL 8 defaults to Python 3.6, you must have
Python 3.9 installed on nodes using RHEL 8.10. RHEL 8.8 is no
longer supported.
</li>
<li>Updated the Kubernetes version to 1.36.
</li>
<li>Upgraded containerd from 2.1 to 2.2
</li>
<li>Containerd is required for new cluster installations and cluster migrations
to Node Agent mode.</li>
<li>Added support for the layer 4 gateway controller.
</li>
<li><code>bmctl backup cluster</code> in Node Agent mode requires at least 12 GB of free
space in <code>/tmp</code> on the admin workstation and all target nodes to buffer backup
archives. You can configure a custom temporary directory by setting <code>TMPDIR</code>.
</li>
<li>If you use Node Agent and receive an error that creating the backup fails to
create an archive file, you might need 12 GBs of free space in the <code>/tmp</code>
directory on the admin node and all target nodes. For more information,
see <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/how-to/bmctl-backup-restore.md#cant-create-na-backup%7D">Can't create a backup for a Node Agent node </a>.
</li>
<li>Removed the deprecated <code>anthos-metadata-agent</code> component that
<code>kubestore-collector</code> replaced.
</li>
<li>Removed the deprecated <code>csi-snapshot-validation-webhook</code> component.
Upstream Kubernetes validation is now handled natively via Common
Expression Language (CEL) rules within the deployed Custom Resource
Definitions (CRDs). For more information, see <a href="https://docs.cloud.google.com/kubernetes-engine/docs/how-to/persistent-volumes/volume-snapshots">Volume snapshots</a>.
</li>
<li>Vertical pod autoscaling is generally available. For more information, see
<a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/how-to/verticalpodautoscale">Configure vertical Pod autoscaling</a></li>
<li>Unified registry mirror and private registry update behavior across all
cluster types while preserving configurations.
</li>
</ul>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.36.0-gke.532:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
<li>Fixed an issue where CA certificate secrets with identical names across
different namespaces stalled cluster upgrades. In this release, the system
automatically prepends the target namespace prefix to all the CA certificate
secret names when forwarding them to the destination namespace. The prefix
makes sure each CA certificate secret name is unique so the
upgrade doesn't stall.
</li>
<li>Fixed an issue where Certificate Authority (CA) rotation failed for
self-managing clusters (admin, hybrid, and standalone). The failure occurs
during the final phase of the rotation when attempting to move management
resources back from the temporary bootstrap cluster to the self-managing
cluster, which can leave the cluster in an unmanageable state. You must
upgrade your clusters to version 1.33.1000-gke.59 before you rotate your CAs.
</li>
<li>Fixed an issue where the status for <code>Ingress</code> resources didn't update when
using bundled ingress.
</li>
<li>Fixed an issue where rolling back a node pool failed because stale Cluster API
(CAPI) bootstrap secrets retained deprecated <code>kubelet</code> flags.
</li>
<li>Updated <code>cluster-proportional-autoscaler</code> to address security vulnerabilities.
</li>
<li>Fixed an issue where <code>etcd-events</code> installation entered an infinite retry loop
during machine initialization due to incomplete cleanup of the data directory
after a learner promotion failure.
</li>
<li>Fixed an issue where the <code>NodePool</code> controller prematurely updated <code>Status.ManagedFields</code>
on partial reconciliation failures, causing removed taints and labels to remain
stranded on affected nodes.
</li>
<li>Fixed an issue where recreating a user cluster using a previously used name
caused cluster provisioning to stall indefinitely in the <code>PROVISIONING</code> state
because of a missing <code>k8s-health-check</code> Service account.
</li>
<li>Fixed an issue where restarting <code>kube-apiserver</code> during etcd encryption
updates abruptly terminates the container, causing stale service endpoints
and transient connection failures for in-cluster workloads.
</li>
<li>Fixed an issue where the installer stalled for three minutes per control
plane node during certificate rotation or etcd encryption updates because of
an incorrect <code>kube-apiserver</code> container termination check.
</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>August 19, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#August_19_2026</id>
    <updated>2026-08-19T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#August_19_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.34.800-gke.90 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.34.800-gke.90 runs on Kubernetes v1.34.7-gke.200.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the listing of our
previously-qualified <a href="https://docs.cloud.google.com/kubernetes-engine/enterprise/docs/resources/partner-storage">storage partners</a>.</p>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.34.800-gke.90:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
<li>Removed <code>csi-snapshot-validation-webhook</code>, the <a href="https://kubernetes-csi.github.io/docs/snapshot-validation-webhook.html#description">Snapshot validation webhook</a> component.</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>August 11, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#August_11_2026</id>
    <updated>2026-08-11T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#August_11_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.35.400-gke.81 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.35.400-gke.81 runs on Kubernetes v1.35.3-gke.400.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the listing of our
previously-qualified <a href="https://docs.cloud.google.com/kubernetes-engine/enterprise/docs/resources/partner-storage">storage partners</a>.</p>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.35.400-gke.81:</p>
<ul>
<li>Link to <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a> for the list of security vulnerabilities addressed in this release.</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>August 04, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#August_04_2026</id>
    <updated>2026-08-04T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#August_04_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.33.1100-gke.72 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.33.1100-gke.72 runs on Kubernetes v1.33.11-gke.100.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the listing of our
previously-qualified <a href="https://docs.cloud.google.com/kubernetes-engine/enterprise/docs/resources/partner-storage">storage partners</a>.</p>
<h3>Feature</h3>
<p>The following changes were added in 1.33.1100-gke.72:</p>
<ul>
<li>Removed the deprecated <code>csi-snapshot-validation-webhook</code> component.
Upstream Kubernetes validation is now handled natively via Common
Expression Language (CEL) rules within the deployed Custom Resource
Definitions (CRDs). For more information, see <a href="https://docs.cloud.google.com/kubernetes-engine/docs/how-to/persistent-volumes/volume-snapshots">Volume snapshots</a>.
</li>
</ul>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.33.1100-gke.72:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>July 24, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#July_24_2026</id>
    <updated>2026-07-24T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#July_24_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Fixed</h3>
<p>A release note published on <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#May_06_2025">May 6, 2025</a> stated that each Keepalived instance
virtual router redundancy protocol (VRRP) configuration is configured with a
<code>nopreempt</code> flag to avoid elections when a non-master instance is restarted.</p>
<p>The <code>nopreempt</code> flag was removed in release 1.32.200 and later. For more
information, see <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/troubleshooting/known-issues#keepalived-config-issue">Control plane VIP isn't moved when HAProxy is unavailable</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>July 22, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#July_22_2026</id>
    <updated>2026-07-22T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#July_22_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.34.700-gke.93 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.34.700-gke.93 runs on Kubernetes v1.34.7-gke.200.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the listing of our
previously-qualified <a href="https://docs.cloud.google.com/kubernetes-engine/enterprise/docs/resources/partner-storage">storage partners</a>.</p>
<h3>Feature</h3>
<p>The following change was added in 1.34.700-gke.93:</p>
<ul>
<li>Removed the deprecated <code>csi-snapshot-validation-webhook</code> component. Upstream Kubernetes validation is now handled natively via Common Expression Language (CEL) rules within the deployed Custom Resource Definitions (CRDs). For more information, see <a href="https://docs.cloud.google.com/kubernetes-engine/docs/how-to/persistent-volumes/volume-snapshots">Volume snapshots</a>.
</li>
</ul>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.34.700-gke.93:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>July 20, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#July_20_2026</id>
    <updated>2026-07-20T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#July_20_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.35.300-gke.87 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.35.300-gke.87 runs on Kubernetes v1.35.3-gke.400.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Feature</h3>
<p>The following change was added in 1.35.300-gke.87:</p>
<ul>
<li>Removed the deprecated <code>csi-snapshot-validation-webhook</code> component. Upstream Kubernetes validation is now handled natively via Common Expression Language (CEL) rules within the deployed Custom Resource Definitions (CRDs). For more information, see <a href="https://docs.cloud.google.com/kubernetes-engine/docs/how-to/persistent-volumes/volume-snapshots">Volume snapshots</a>.
</li>
</ul>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.35.300-gke.87:</p>
<ul>
<li>Link to <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a> for the list of security vulnerabilities addressed in this release.</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>July 10, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#July_10_2026</id>
    <updated>2026-07-10T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#July_10_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.33.1000-gke.59 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.33.1000-gke.59 runs on Kubernetes v1.33.11-gke.100.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the listing of our
previously-qualified <a href="https://docs.cloud.google.com/kubernetes-engine/enterprise/docs/resources/partner-storage">storage partners</a>.</p>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.33.1000-gke.59:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
<li>Fixed an issue where Certificate Authority (CA) rotation failed for
self-managing clusters (admin, hybrid, and standalone). The failure occurs
during the final phase of the rotation when attempting to move management
resources back from the temporary bootstrap cluster to the self-managing
cluster, which can leave the cluster in an unmanageable state. You must
upgrade your clusters to version 1.33.1000-gke.59 before you rotate your CAs.
</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>June 24, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#June_24_2026</id>
    <updated>2026-06-24T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#June_24_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.34.600-gke.53 is available. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>. Runs on Kubernetes v1.34.7-gke.200.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become available for installations or upgrades with the GKE On-Prem API clients: the Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready storage partners document to make sure the storage vendor has already passed the qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.34.600-gke.53:</p>
<ul>
<li>Link to <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a> for the list of security vulnerabilities addressed in this release.</li>
<li>Fixed an issue where Certificate Authority (CA) rotation failed for
self-managing clusters (admin, hybrid, and standalone). The failure occurs
during the final phase of the rotation when attempting to move management
resources back from the temporary bootstrap cluster to the self-managing
cluster, which can leave the cluster in an unmanageable state. You must
upgrade your clusters to version 1.34.600-gke.53 before you rotate your CAs.
Running a CA rotation on self-managing clusters in versions prior to
1.34.600-gke.53 triggers this issue and can disrupt your ability to manage
the cluster.
</li>
<li>Fixed an issue where a transient or partial failure during node pool updates
could cause node taints or labels to become permanently stuck (stranded) on
worker nodes, even after you removed them from the NodePool custom resource
specification.
</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>June 16, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#June_16_2026</id>
    <updated>2026-06-16T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#June_16_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.35.200-gke.66 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.35.200-gke.66 runs on Kubernetes v1.35.3-gke.400.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.35.200-gke.66:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
<li>Fixed an issue where a transient or partial failure during node pool updates
could cause node taints or labels to become permanently stuck (stranded) on
worker nodes, even after you removed them from the NodePool custom resource
specification.
</li>
<li>Fixed an issue where, during the machine initialization phase, the
<code>etcd-events</code> pod read the stale data directory when it started
and attempted to reuse the old member ID to rejoin the cluster instead of the
new one. Trying to use the old member ID to rejoin the cluster resulted in an
infinite retry loop and caused the cluster to reject the connection. The fix
ensures the <code>/var/lib/etcd-events</code> directory is
cleared upon failure, and adds retry logic to <code>kubeadm-reset</code> to improve resiliency against transient API errors.
</li>
<li>Fixed an issue where, when enabling or updating etcd encryption, the API
server was terminated abruptly, causing transient connection timeouts or
failures for in-cluster workloads for up to five minutes.
</li>
<li>Fixed an issue where, during control plane certificate rotation or etcd
encryption updates, the installer stalled for three minutes per control plane node
while waiting for the local API server to restart, causing nodes to temporarily
report an Unknown status and triggering transient routing disruptions (such as
503 Service Unavailable or ImagePullBackOff errors) for workloads scheduled on
those nodes.</li></ul>
]]>
    </content>
  </entry>

  <entry>
    <title>June 05, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#June_05_2026</id>
    <updated>2026-06-05T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#June_05_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.33.900-gke.90 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.33.900-gke.90 runs on Kubernetes v1.33.11-gke.100.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.33.900-gke.90:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
<li>Fixed an issue where a transient or partial failure during node pool updates
could cause node taints or labels to become permanently stuck (stranded) on
worker nodes, even after you removed them from the NodePool custom resource
specification.
</li>
<li>Fixed an issue where, if a new control plane node failed to join a cluster
during bootstrapping or scaling (associated with installer Ansible runner job
failures), orphaned etcd memberships were not cleaned up, causing the existing
control plane's API server to restart repeatedly (flap) and blocking subsequent
retry attempts. </li>
<li>Fixed an issue where, during control plane certificate rotation or etcd
encryption updates, the installer stalled for three minutes per control plane
node while waiting for the local API server to restart, causing nodes to
temporarily report an Unknown status and triggering transient routing
disruptions (such as 503 Service Unavailable or ImagePullBackOff errors) for
workloads scheduled on those nodes.
</li>
<li>Fixed an issue where, when enabling or updating etcd encryption, the API
server was terminated abruptly, causing transient connection timeouts or
failures for in-cluster workloads for up to five minutes.
</li>
<li>Fixed an issue where, when recreating a user cluster with a previously used
name (which commonly occurs during Terraform deployments or manual
reinstalls), cluster provisioning stalled indefinitely in the provisioning
state due to a missing k8s-health-check service account. The installer
ensures that the service account is created, eliminating the need to manually
create the service account as a workaround.</li></ul>
]]>
    </content>
  </entry>

  <entry>
    <title>May 27, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#May_27_2026</id>
    <updated>2026-05-27T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#May_27_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.34.500-gke.108 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.34.500-gke.108 runs on Kubernetes v1.34.7-gke.200.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.34.500-gke.108:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
<li>Fixed an issue where, if a new control plane node failed to join a cluster
during bootstrapping or scaling (associated with installer Ansible runner job
failures), orphaned etcd memberships were not cleaned up, causing the existing
control plane's API server to restart repeatedly (flap) and blocking subsequent
retry attempts.
</li>
<li>Fixed an issue where, during control plane certificate rotation or etcd
encryption updates, the installer stalled for three minutes per control plane node
while waiting for the local API server to restart, causing nodes to temporarily
report an Unknown status and triggering transient routing disruptions (such as
503 Service Unavailable or ImagePullBackOff errors) for workloads scheduled on
those nodes.
</li>
<li>Fixed an issue where, when enabling or updating etcd encryption, the API
server was terminated abruptly, causing transient connection timeouts or
failures for in-cluster workloads for up to five minutes.
</li>
<li>Fixed an issue where, when recreating a user cluster with a previously used
name (which commonly occurs during Terraform deployments or manual
reinstalls), cluster provisioning stalled indefinitely in the provisioning
state due to a missing k8s-health-check service account. The installer
ensures that the service account is created, eliminating the need to manually
create the service account as a workaround.</li></ul>
]]>
    </content>
  </entry>

  <entry>
    <title>May 21, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#May_21_2026</id>
    <updated>2026-05-21T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#May_21_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.35.100-gke.72 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.35.100-gke.72 runs on Kubernetes v1.35.3-gke.400.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.35.100-gke.72:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li></ul>
]]>
    </content>
  </entry>

  <entry>
    <title>May 19, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#May_19_2026</id>
    <updated>2026-05-19T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#May_19_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.35.100-gke.72 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.35.100-gke.72 runs on Kubernetes v1.35.3-gke.400.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.35.100-gke.72:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li></ul>
]]>
    </content>
  </entry>

  <entry>
    <title>May 18, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#May_18_2026</id>
    <updated>2026-05-18T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#May_18_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.33.800-gke.75 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.33.800-gke.75 runs on Kubernetes v1.33.11-gke.100.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.33.800-gke.75:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li></ul>
]]>
    </content>
  </entry>

  <entry>
    <title>May 11, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#May_11_2026</id>
    <updated>2026-05-11T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#May_11_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.34.400-gke.88 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.34.400-gke.88 runs on Kubernetes v1.34.6-gke.200.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Announcement</h3>
<p>The following features were added in 1.34.400-gke.88:</p>
<ul>
<li>Added a periodic health check to detect stale mounts of Secrets and
ConfigMaps on pods. This helps identify rare scenarios where nodes serve
outdated secret data after a rotation, which can lead to authentication
failures. Currently enabled for GKE Identity Service pods, the check
runs on each node and compares the locally cached volume content with the
live data from the API server, reporting a mismatch only after a 5-minute
grace period to allow for normal update delays.</li></ul>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.34.400-gke.88:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
<li>Fixed an issue where, during the machine initialization phase, the
<code>etcd-events</code> pod read the stale data directory when it started
and attempted to reuse the old member ID to rejoin the cluster instead of the
new one. Trying to use the old member ID to rejoin the cluster resulted in an
infinite retry loop and caused the cluster to reject the connection. The fix
ensures the <code>/var/lib/etcd-events</code> directory is
cleared upon failure, and adds retry logic to <code>kubeadm-reset</code> to improve resiliency against transient API errors.
</li>
<li>Fixed an issue where concurrent tasks on the same node failed when
<code>containerd</code> restarts. After the fix, tasks are locked and run
sequentially to ensure each task completes successfully before the next
begins. Each lock is held for up to 20 minutes or until the task reaches
success or failure. To bypass this safety mechanism, you can run tasks
concurrently by adding <code>baremetal.cluster.gke.io/concurrent-machine-update: "true"</code>
to your cluster.
</li>
<li>Fixed an issue where node upgrades could hang indefinitely and bypass the
20-minute maintenance timeout. This issue occurred when a node contained
completed pods within a namespace that was in a <code>Terminating</code>
state. Because the Kubernetes Eviction API rejects operations in terminating
namespaces, the cluster controller entered an infinite retry loop. The fix
updates the drain process to skip eviction for pods in terminal phases,
allowing the upgrade to proceed normally.</li></ul>
]]>
    </content>
  </entry>

  <entry>
    <title>May 06, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#May_06_2026</id>
    <updated>2026-05-06T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#May_06_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.35.0-gke.525 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.35.0-gke.525 runs on Kubernetes v1.35.2-gke.300.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Announcement</h3>
<p>The following features were added in 1.35.0-gke.525:</p>
<ul>
<li><p>Platform update to Kubernetes 1.35: This release updates the underlying Kubernetes version to 1.35.</p>
<aside class="important">This release requires the use of `cgroupsv2`. Using
 `cgroupsv1` is no longer supported and cluster creation or upgrades will
 fail. A preflight check will actively block the operation if `cgroupsv1`
 is detected.</aside>
<ul>
<li>For customers using Red Hat Enterprise Linux (RHEL) 7 or 8, which default
to <code>cgroupsv1</code>, you must manually configure your operating system to
enable <code>cgroupsv2</code> before upgrading. For instructions, see the Red Hat
knowledge base article on <a href="https://access.redhat.com/articles/3735611">enabling cgroup v2</a>.</li>
<li>For more information on migrating to <code>cgroupsv2</code>, see the Kubernetes
documentation on <a href="https://kubernetes.io/docs/concepts/architecture/cgroups/#migrating-cgroupv2">migrating to cgroupv2</a>.</li>
<li>This release upgrades the container runtime, containerd, from version 2.0
to 2.1.
</li>
</ul></li>
<li><p>Added a periodic health check to detect stale secret and ConfigMap mounts on
Google Kubernetes Engine pods. To account for normal propagation delays, a
content mismatch is only reported as an error if the data remains stale for
more than 5 minutes.
</p></li>
<li><p>Upgraded the Ansible version to 2.18. This version requires
Python 3.9 on target nodes. For customers using Red Hat Enterprise Linux,
version 8.10 or later is required because the default Python version in
earlier Red Hat 8 releases (Python 3.6) is not supported by Ansible 2.18.</p></li>
<li><p>You can use the header section of the cluster configuration file to
specify registry mirrors for your clusters. This simplifies the management of
registry mirrors and provides a more consistent configuration experience. For
instructions on how to update or remove these settings, see the <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/installing/registry-mirror#header_section">Registry
Mirror documentation</a>.
</p></li>
<li><p><strong>Preview</strong> Added support for EgressDSCP tagging. With this feature, you can
mark IP headers with specific Differentiated Services Code Point (DSCP)
values on packets leaving the cluster to prioritize network traffic. To use
this feature, you must set <code>preview.baremetal.cluster.gke.io/traffic-selector:</code>
to <code>enable</code> in your cluster configuration and manage traffic selection using
the <code>EgressDSCP</code> and <code>TrafficSelector</code> custom resources. For more information,
see <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/how-to/configure-egress-dscp-tagging">Configure EgressDSCP tagging</a>.
</p></li>
<li><p><code>bmctl</code> prints the Operation ID and OperationType to the console after
cluster installation and upgrade operations.</p></li>
</ul>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.35.0-gke.525:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
<li>Fixed an issue where node upgrades could hang indefinitely and bypass the
20-minute maintenance timeout. This issue occurred when a node contained
completed pods within a namespace that was in a <code>Terminating</code> state. Because
the Kubernetes Eviction API rejects operations in terminating namespaces, the
cluster controller entered an infinite retry loop. The fix updates the drain
process to skip eviction for pods in terminal phases, allowing the upgrade to
proceed normally.
</li>
<li>Fixed an issue where concurrent tasks on the same node failed when containerd
restarts. After the fix, tasks are locked and run sequentially to ensure each
task completes successfully before the next begins. Each lock is held for up
to 20 minutes or until the task reaches success or failure.
To bypass this safety mechanismrun and run tasks concurrently, add the
following annotation to your cluster:
<code>baremetal.cluster.gke.io/concurrent-machine-update: "true"</code>.
</li>
<li>Fixed an issue where Metrics API operations—including <code>kubectl top</code>,
Horizontal Pod Autoscaling, and Vertical Pod Autoscaling could
fail with TLS verification errors during certificate authority rotation. This
occurred because the leaf certificate was not immediately renewed when the
certificate authority was rotated, causing a temporary mismatch between the
trusted certificate authority bundle and the certificate presented by the
metrics server.</li>
<li>Fixed an issue where Cluster CA rotation could hang indefinitely on
self-managed clusters, with the bmctl command hanging at the "Trust CA Bundle
completed in 0/X machines" stage. This occurred due to a state deadlock
during the resource pivot operation (moving resources between management and
bootstrap clusters). This fix resolves the deadlock, eliminating the need to
manually update cluster fields or remove lock ConfigMaps to recover.
</li>
<li>Fixed an issue where temporary API server connectivity failures (such as
network timeouts) caused the system to unnecessarily re-register and redeploy
the GKE Connect agent. This fix prevents these temporary errors from
resetting manual or system-applied customizations to the agent deployment,
improving cluster stability.
</li>
<li>Fixed an issue where bmctl could fail to capture the full log for
long-running operations, resulting in empty or incomplete job logs in the
workspace. This occurred because a strict internal timeout stopped log
streaming prematurely. The fix ensures that log streaming continues for the
full duration of the operation's pod lifecycle.
</li>
<li>Fixed an issue in the monitoring component of the cluster operator where
delete operations could cause the operator to crash if the resource had no
annotations. The fix ensures the system properly handles resources with empty
annotation maps, preventing the crash.
</li>
<li>Fixed an issue where the anet-operator could be scheduled to an unreachable
node and become stuck in a Pending state, eventually causing networking to
fail. This occurred due to overly permissive scheduling rules. The fix
restricts scheduling to prevent the operator from running on unreachable nodes
and explicitly places it on control plane nodes to ensure reliability.</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>April 23, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#April_23_2026</id>
    <updated>2026-04-23T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#April_23_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.32.1100-gke.84 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.32.1100-gke.84 runs on Kubernetes v1.32.13-gke.100.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Announcement</h3>
<p>The following features were added in 1.32.1100-gke.84:</p>
<ul>
<li>Added a periodic health check to detect stale mounts of Secrets and
ConfigMaps on pods. This helps identify rare scenarios where nodes serve
outdated secret data after a rotation, which can lead to authentication
failures. Currently enabled for GKE Identity Service pods, the check
runs on each node and compares the locally cached volume content with the
live data from the API server, reporting a mismatch only after a 5-minute
grace period to allow for normal update delays.</li></ul>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.32.1100-gke.84:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
<li>Fixed an issue where node upgrades could hang indefinitely and bypass the
20-minute maintenance timeout. This issue occurred when a node contained
completed pods within a namespace that was in a <code>Terminating</code> state. Because
the Kubernetes Eviction API rejects operations in terminating namespaces, the
cluster controller entered an infinite retry loop. The fix updates the drain
process to skip eviction for pods in terminal phases, allowing the upgrade to
proceed normally.
</li>
<li>Fixed an issue where, during the machine initialization phase, the
<code>etcd-events</code> pod read the stale data directory when it started and attempted
to reuse the old member ID to rejoin the cluster instead of the new one.
Trying to use the old member ID to rejoin the cluster resulted in an
infinite retry loop and caused the cluster to reject the connection. The fix
ensures the <code>/var/lib/etcd-events</code> directory is
cleared upon failure, and adds retry logic to <code>kubeadm-reset</code> to improve
resiliency against transient API errors.
</li>
<li>Fixed an issue where concurrent tasks on the same node failed when <code>containerd</code>
restarts. After the fix, tasks are locked and run sequentially to ensure each
task completes successfully before the next begins. Each lock is held for up
to 20 minutes or until the task reaches success or failure.
To bypass this safety mechanismrun and run tasks concurrently, add the
following annotation to your cluster: <code>baremetal.cluster.gke.io/
concurrent-machine-update: "true"</code>.
</li>
<li>Fixed an issue on clusters running Kubernetes 1.31 and later where running
<code>kubeadm-reset</code> during an upgrade or reset could crash and enter an infinite
retry loop, blocking the operation. This occurred because the tool failed to
read cluster configuration on newer Kubernetes versions.</li></ul>
]]>
    </content>
  </entry>

  <entry>
    <title>April 22, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#April_22_2026</id>
    <updated>2026-04-22T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#April_22_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.33.700-gke.71 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.33.700-gke.71 runs on Kubernetes v1.33.5-gke.2200.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Announcement</h3>
<p>The following features were added in 1.33.700-gke.71:</p>
<p>A health check was added to detect when secrets or config maps mounted in pods become "stale," or out-of-sync with the Kubernetes API server. This feature addresses scenarios where the Kubelet's local cache fails to update with the latest versions of configuration data. The check performs the following actions:</p>
<ul>
<li>Iterates through all running pods on the node to verify their mounts.</li>
<li>Compares the local data in the Kubelet's atomic update symlink structure
against the live objects and update timestamps in the API server.</li>
<li>Uses a 5-minute threshold to prevent false positives caused by normal
propagation delays. A mismatch is only reported as an error if the staleness
persists for more than 5 minutes.</li>
</ul>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.33.700-gke.71:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
<li>Fixed an issue where concurrent tasks on the same node failed when <code>containerd</code>
restarts. After the fix, tasks are locked and run sequentially to ensure each
task completes successfully before the next begins. Each lock is held for up
to 20 minutes or until the task reaches success or failure.
To bypass this safety mechanismrun and run tasks concurrently, add the
following annotation to your cluster: <code>baremetal.cluster.gke.io/concurrent-machine-update: "true"</code>.
</li>
<li>Fixed an issue where, during the machine initialization phase, the
<code>etcd-events</code> pod read the stale data directory when it started and attempted
to reuse the old member ID to rejoin the cluster instead of the new one.
Trying to use the old member ID to rejoin the cluster resulted in an
infinite retry loop and caused the cluster to reject the connection. The fix
ensures that the system clears the <code>/var/lib/etcd-events</code> directory upon
failure, and adds retry logic to <code>kubeadm-reset</code> to improve
resiliency against transient API errors.</li>
<li>Fixed an issue where node upgrades could hang indefinitely and bypass the
20-minute maintenance timeout. This issue occurred when a node contained
completed pods within a namespace that was in a <code>Terminating</code> state. Because
the Kubernetes Eviction API rejects operations in terminating namespaces, the
cluster controller entered an infinite retry loop. The fix updates the drain
process to skip eviction for pods in terminal phases, allowing the upgrade to
proceed normally.</li>
<li>Fixed an issue where Metrics API operations—including <code>kubectl top</code>,
Horizontal Pod Autoscaling, and Vertical Pod Autoscaling could
fail with TLS verification errors during certificate authority rotation. This
occurred because the leaf certificate was not immediately renewed when the
certificate authority was rotated, causing a temporary mismatch between the
trusted certificate authority bundle and the certificate presented by the
metrics server.</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>April 15, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#April_15_2026</id>
    <updated>2026-04-15T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#April_15_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.34.300-gke.59 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.34.300-gke.59 runs on Kubernetes v1.34.3-gke.400.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.34.300-gke.59:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a></li>
<li>Cluster and node pool failures are now surfaced in the <code>RecentFailures</code> field
in the cluster status. This change provides a centralized location for viewing
errors from both worker node pools and control plane nodes, improving the
troubleshooting and debugging experience.
</li>
<li>Fixed an issue where Metrics API operations—including
<code>kubectl top</code>, Horizontal Pod Autoscaling (HPA), and Vertical Pod Autoscaling
(VPA)—could fail with TLS verification errors during CA rotation.
</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>March 27, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#March_27_2026</id>
    <updated>2026-03-27T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#March_27_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.32.1000-gke.57:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
<li>Cluster and node pool failures are now surfaced in the <code>RecentFailures</code> field
in the cluster status. This change provides a centralized location for viewing
errors from both worker node pools and control plane nodes, improving the
troubleshooting and debugging experience.
</li>
<li>Fixed an issue where Metrics API operations—including
<code>kubectl top</code>, Horizontal Pod Autoscaling (HPA), and Vertical Pod Autoscaling
(VPA)—could fail with TLS verification errors during CA rotation.
</li>
<li>Resolved an issue where Certificate Authority (CA) rotation became stuck
on self-managed clusters (admin, hybrid, or standalone). This fix resolves an
internal resource synchronization error that previously prevented the rotation
process from completing successfully.
</li>
</ul>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.32.1000-gke.57 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.32.1000-gke.57 runs on Kubernetes v1.32.13-gke.1000.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>March 23, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#March_23_2026</id>
    <updated>2026-03-23T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#March_23_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.33.600-gke.39 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.33.600-gke.39 runs on Kubernetes v1.33.5-gke.2200.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.33.600-gke.39:</p>
<ul>
<li>Resolved an issue where Certificate Authority (CA) rotation became stuck
on self-managed clusters (admin, hybrid, or standalone). This fix resolves an
internal resource synchronization error that previously prevented the rotation
process from completing successfully.
</li>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>March 18, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#March_18_2026</id>
    <updated>2026-03-18T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#March_18_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.34.200-gke.68 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.34.200-gke.68 runs on Kubernetes v1.34.3-gke.400.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.34.200-gke.68:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>March 05, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#March_05_2026</id>
    <updated>2026-03-05T00:00:00-08:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#March_05_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.32.900-gke.60:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
</ul>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.32.900-gke.60 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.32.900-gke.60 runs on Kubernetes v1.32.11-gke.200.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>March 03, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#March_03_2026</id>
    <updated>2026-03-03T00:00:00-08:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#March_03_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Security</h3>
<p>The following issues were fixed in 1.33.500-gke.63:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
</ul>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.33.500-gke.63 is now available for
download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal
1.33.500-gke.63 runs on Kubernetes v1.33.5-gke.2200.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Announcement</h3>
<p>In Google Distributed Cloud (software only) for bare metal versions 1.33.0 and later,
 <code>bmctl</code> operations can fail to stream logs from pods to the local workspace,
 causing empty or incomplete logs in <code>bmctl-workspace/{CLUSTER NAME}/log directory</code>.</p>
<p>This issue occurred because a recent Kubernetes library upgrade introduced a
required context parameter for pod log streaming. The bmctl tool was
incorrectly passing a context with a 10-second timeout, causing the log streamer
to terminate prematurely for pods with long lifecycles, such as Ansible runner
jobs.</p>
<p>This issue is resolved in the following versions:</p>
<ul>
<li>1.33.500 and later</li>
<li>1.34.100 and later</li>
<li>1.35.0 and later</li>
</ul>
<p>If you use an affected version and require the logs for a failed or ongoing
operation, check logs using <code>kubectl</code>. If the cluster is accessible, you can
manually retrieve logs directly from the relevant pods using the <code>kubectl logs</code>
command.</p>
<p>It is recommended to upgrade to a fixed version to ensure that all <code>bmctl</code>
operation logs are correctly captured in your local workspace for troubleshooting
and auditing purposes</p>
]]>
    </content>
  </entry>

  <entry>
    <title>February 13, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#February_13_2026</id>
    <updated>2026-02-13T00:00:00-08:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#February_13_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.34.100-gke.93 is now available for
download. To upgrade, see Upgrade clusters. Google Distributed Cloud for bare metal
1.34.100-gke.93 runs on Kubernetes v1.34.1-gke.4700.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed the
qualification for this release of Google Distributed Cloud for bare metal.</p>
<h3>Feature</h3>
<p>The following feature was added in 1.34.100-gke.93:</p>
<p>The <code>spec.taints</code> field in the <code>NodePoolClaim</code> resource is mutable. You can
add or remove taints on existing node pools without recreating the
<code>NodePoolClaim</code>. You can use this field to manage GPU nodes.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>February 05, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#February_05_2026</id>
    <updated>2026-02-05T00:00:00-08:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#February_05_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Fixed</h3>
<p>The following issues were fixed in 1.32.800-gke.126:</p>
<ul>
<li>Fixed vulnerabilities listed in <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/vulnerabilities">Vulnerability fixes</a>.</li>
</ul>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.32.800-gke.126 is now
available for download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>.
Google Distributed Cloud for bare metal 1.32.800-gke.126 runs on Kubernetes
v1.32.11-gke.200.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed
the qualification for this release of Google Distributed Cloud for bare metal.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>February 04, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#February_04_2026</id>
    <updated>2026-02-04T00:00:00-08:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#February_04_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Announcement</h3>
<p>Google Distributed Cloud (software only) for bare metal 1.33.400-gke.113 is now
available for download. To upgrade, see <a href="how-to/upgrade">Upgrade clusters</a>. Google Distributed Cloud for
bare metal 1.33.400-gke.113 runs on Kubernetes v1.33.5-gke.1900.</p>
<p>After a release, it takes approximately 7 to 14 days for the version to become
available for installations or upgrades with the GKE On-Prem API clients: the
Google Cloud console, the gcloud CLI, and Terraform.</p>
<p>If you use a third-party storage vendor, check the Google Distributed Cloud-ready
storage partners document to make sure the storage vendor has already passed
the qualification for this release of Google Distributed Cloud for bare metal.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>January 30, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#January_30_2026</id>
    <updated>2026-01-30T00:00:00-08:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#January_30_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Security</h3>
<p>Multiple security vulnerabilities have been identified in the OpenSSL library.
The most significant finding is CVE-2025-15467, a critical vulnerability that
might allow for remote code execution (RCE) or denial of service (DoS) attacks
via network-based vectors.</p>
<p>For more details, see the <a href="https://docs.cloud.google.com/kubernetes-engine/security-bulletins#gcp-2026-006-gdcbm">GCP-2026-006 security bulletin</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>January 16, 2026</title>
    <id>tag:google.com,2016:anthos-bare-metal-release-notes#January_16_2026</id>
    <updated>2026-01-16T00:00:00-08:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/release-notes#January_16_2026"/>
    <content type="html"><![CDATA[<strong class="release-note-product-version-title">1.32</strong>
<h3>Change</h3>
<p>Updated the <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/how-to/multi-nic">multiple network interfaces for Pods</a>
and <a href="https://docs.cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/how-to/lb-bundled-bgp">bundled load balancing with BGP</a>
features to support admin clusters for version 1.34 or higher. Admin cluster
support for these features has also been added to the GKE On-Prem API, so you
can specify these features with clients like <a href="https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/gkeonprem_bare_metal_admin_cluster">Terraform</a>.</p>
]]>
    </content>
  </entry>

</feed>
