Version 1.8. This version is no longer supported. For information about how to upgrade to version 1.9, seeUpgrading Anthos on bare metalin the 1.9 documentation. For more information about supported and unsupported versions, see theVersion historypage in the latest documentation.
When you install a new version ofbmctl, you can upgrade your existing
clusters that were created with an earlier version. Upgrading a cluster to the
latest Google Distributed Cloud version brings added features and fixes to your
cluster. It also ensures that your cluster remainssupported.
You can upgrade admin, hybrid, standalone, or user
clusters with thebmctl upgrade clustercommand.
Enable SELinux
If you want to enable SELinux to secure your containers, you must make sure that
SELinux is enabled inEnforcedmode before upgrading your clusters. If you're
upgrading from Google Distributed Cloud 1.7.1 or later, SELinux is enabled by
default. If SELinux is disabled in your clusters or you aren't sure, seeSecuring your containers using SELinuxfor instructions on how to enable it.
Google Distributed Cloud supports SELinux in only RHEL and CentOS systems.
Upgrade admin, standalone, hybrid, or user clusters Google Distributed Cloud
When you download and install a new version ofbmctl, you can upgrade your
admin, hybrid, standalone, and user clusters created with an earlier version.
For a given version ofbmctl, clusters can be upgraded to the same version
only.
Preflight checks are run before a cluster upgrade to validate cluster status
and node health.
The following examples show the upgrade process from version 1.7.2 to
Google Distributed Cloud 1.8.9.
You can upgrade any given version to the next available version (for example,
1.8.0 to 1.8.1) in the same fashion. Skip upgrades, such as 1.7.1 to
1.8.9, are also supported.
Google Distributed Cloud supports the configuration of up to 250 maximum pods per
node. This configuration can only be done during cluster creation and cannot be
updated for existing clusters.
Upgrading admin, standalone, hybrid, or user clusters
When you download and install a new version ofbmctl, you can upgrade your
admin, hybrid, standalone, and user clusters created with an earlier version.
For a given version ofbmctl, clusters can be upgraded to the same version
only.
First, you download the latestbmctl, then modify the appropriate cluster
config files, and then you issue thebmctl upgrade clustercommand to complete
the upgrade.
Download the latestbmctlfrom theCloud Storagebucket and
usechmodto givebmctlexecute permissions to all users:
Modify the cluster config file to change the Google Distributed Cloud cluster
version from1.7.2to1.8.9. The following shows an example
from an admin cluster config:
---apiVersion:baremetal.cluster.gke.io/v1kind:Clustermetadata:name:cluster1namespace:cluster-cluster1spec:# Cluster type. This can be:# 1) admin: to create an admin cluster. This can later be used to create user clusters.# 2) user: to create a user cluster. Requires an existing admin cluster.# 3) hybrid: to create a hybrid cluster that runs admin cluster components and user workloads.# 4) standalone: to create a cluster that manages itself, runs user workloads, but does not manage other clusters.type:admin# Anthos cluster version.# Change the following line from 1.7.2 to 1.8.9, shown belowanthosBareMetalVersion:1.8.9
When upgrading clusters to 1.8.9, you must register the clusters with
Connect to your projectfleet, if they have not been already.
Reference the downloaded JSON keys in the associatedgkeConnectAgentServiceAccountKeyPathandgkeConnectRegisterServiceAccountKeyPathfields of the cluster config file.
Use thebmctl upgrade clustercommand to complete the upgrade:
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eUpgrading clusters to the latest Google Distributed Cloud version provides new features, fixes, and ensures continued support, using the \u003ccode\u003ebmctl upgrade cluster\u003c/code\u003e command for admin, hybrid, standalone, and user clusters.\u003c/p\u003e\n"],["\u003cp\u003eBefore upgrading, ensure SELinux is enabled in \u003ccode\u003eEnforced\u003c/code\u003e mode, as it is enabled by default for versions 1.7.1 and later to enhance container security.\u003c/p\u003e\n"],["\u003cp\u003eUpgrades should be done sequentially or skipping versions, but not to a lower patch version, and always review release notes for changes and security fixes.\u003c/p\u003e\n"],["\u003cp\u003eThe upgrade process involves downloading the latest \u003ccode\u003ebmctl\u003c/code\u003e, modifying cluster config files to reflect the new version, and then running the \u003ccode\u003ebmctl upgrade cluster\u003c/code\u003e command, which requires an admin cluster to be upgraded before its associated user clusters.\u003c/p\u003e\n"],["\u003cp\u003eClusters upgrading to version 1.8.9 must be registered with Connect to the project fleet, which involves creating service accounts and referencing their JSON key files in the cluster configuration.\u003c/p\u003e\n"]]],[],null,["# Upgrading Google Distributed Cloud\n\n\u003cbr /\u003e\n\nWhen you install a new version of `bmctl`, you can upgrade your existing\nclusters that were created with an earlier version. Upgrading a cluster to the\nlatest Google Distributed Cloud version brings added features and fixes to your\ncluster. It also ensures that your cluster remains\n[supported](/anthos/clusters/docs/bare-metal/1.8/getting-support#version-support).\nYou can upgrade admin, hybrid, standalone, or user\nclusters with the `bmctl upgrade cluster` command.\n| **Note:** When upgrading Google Distributed Cloud from a version with a security patch to the next minor release, we recommend you upgrade to the highest patch version available to ensure you have the latest security patches. Always review the release notes before upgrading so you are aware of what has changed, including security fixes and known issues. Upgrading to a lower patch version is not supported.\n\nEnable SELinux\n--------------\n\nIf you want to enable SELinux to secure your containers, you must make sure that\nSELinux is enabled in `Enforced` mode before upgrading your clusters. If you're\nupgrading from Google Distributed Cloud 1.7.1 or later, SELinux is enabled by\ndefault. If SELinux is disabled in your clusters or you aren't sure, see\n[Securing your containers using SELinux](/anthos/clusters/docs/bare-metal/1.8/installing/configure-selinux)\nfor instructions on how to enable it.\n| **Note:** 1.7.1 Clusters using SELinux with `containerd` can't upgrade to 1.8.0. For details, see [Known issues](/anthos/clusters/docs/bare-metal/1.8/troubleshooting/known-issues#containerd-upgrade).\n\nGoogle Distributed Cloud supports SELinux in only RHEL and CentOS systems.\n\nUpgrade admin, standalone, hybrid, or user clusters Google Distributed Cloud\n----------------------------------------------------------------------------\n\nWhen you download and install a new version of `bmctl`, you can upgrade your\nadmin, hybrid, standalone, and user clusters created with an earlier version.\nFor a given version of `bmctl`, clusters can be upgraded to the same version\nonly.\n\nPreflight checks are run before a cluster upgrade to validate cluster status\nand node health.\n\nThe following examples show the upgrade process from version 1.7.2 to\nGoogle Distributed Cloud 1.8.9.\n\nYou can upgrade any given version to the next available version (for example,\n1.8.0 to 1.8.1) in the same fashion. Skip upgrades, such as 1.7.1 to\n1.8.9, are also supported.\n\nGoogle Distributed Cloud supports the configuration of up to 250 maximum pods per\nnode. This configuration can only be done during cluster creation and cannot be\nupdated for existing clusters.\n\nUpgrading admin, standalone, hybrid, or user clusters\n-----------------------------------------------------\n\nWhen you download and install a new version of `bmctl`, you can upgrade your\nadmin, hybrid, standalone, and user clusters created with an earlier version.\nFor a given version of `bmctl`, clusters can be upgraded to the same version\nonly.\n\nFirst, you download the latest `bmctl`, then modify the appropriate cluster\nconfig files, and then you issue the `bmctl upgrade cluster` command to complete\nthe upgrade.\n| **Note:** You should upgrade an admin cluster before upgrading any associated user clusters. However, before upgrading the admin cluster to 1.8.9, make sure its associated user clusters are at version 1.7.0 or above. `bmctl` will emit an error if it finds any user cluster is below 1.7.0.\n\n1. Download the latest `bmctl` from the [Cloud Storage](/storage) bucket and\n use `chmod` to give `bmctl` execute permissions to all users:\n\n gcloud storage cp gs://anthos-baremetal-release/bmctl/1.8.9/linux-amd64/bmctl bmctl\n chmod a+x bmctl\n\n2. Modify the cluster config file to change the Google Distributed Cloud cluster\n version from `1.7.2` to `1.8.9`. The following shows an example\n from an admin cluster config:\n\n ---\n apiVersion: baremetal.cluster.gke.io/v1\n kind: Cluster\n metadata:\n name: cluster1\n namespace: cluster-cluster1\n spec:\n # Cluster type. This can be:\n # 1) admin: to create an admin cluster. This can later be used to create user clusters.\n # 2) user: to create a user cluster. Requires an existing admin cluster.\n # 3) hybrid: to create a hybrid cluster that runs admin cluster components and user workloads.\n # 4) standalone: to create a cluster that manages itself, runs user workloads, but does not manage other clusters.\n type: admin\n # Anthos cluster version.\n # Change the following line from 1.7.2 to 1.8.9, shown below\n anthosBareMetalVersion: 1.8.9\n\n3. When upgrading clusters to 1.8.9, you must register the clusters with\n Connect to your project [fleet](/anthos/multicluster-management/fleets), if they have not been already.\n\n 1. Manually create service accounts and retrieve the JSON key files as described in [Configuring service accounts for use with Connect](/anthos/clusters/docs/bare-metal/1.8/installing/configure-sa#connect-sa) on the Enabling Google services and service accounts page.\n 2. Reference the downloaded JSON keys in the associated `gkeConnectAgentServiceAccountKeyPath` and `gkeConnectRegisterServiceAccountKeyPath` fields of the cluster config file.\n4. Use the `bmctl upgrade cluster` command to complete the upgrade:\n\n bmctl upgrade cluster -c \u003cvar translate=\"no\"\u003eCLUSTER_NAME\u003c/var\u003e --kubeconfig \u003cvar translate=\"no\"\u003eADMIN_KUBECONFIG\u003c/var\u003e\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eCLUSTER_NAME\u003c/var\u003e: the name of the cluster to upgrade.\n - \u003cvar translate=\"no\"\u003eADMIN_KUBECONFIG\u003c/var\u003e: the path to the admin cluster kubeconfig file."]]