Version 1.6. This version is no longer supported. For information about how to upgrade to version 1.7, see Upgrading Anthos on bare metal in the 1.7 documentation. For more information about supported and unsupported versions, see the Version history page in the latest documentation.
You must configure the base operating system of your node machines to use Google Distributed Cloud. This page contains the steps you need to take to complete the needed configuration.
For more information about troubleshooting Google Distributed Cloud requirements, see the troubleshooting guides.
Before you begin
Ensure you are using a supported version of your operating system. Google Distributed Cloud supports the following versions for Ubuntu:
18.04
20.04
Validate package manager:
sudo apt-get check
The output should show no errors and look similar to the following example:
[[["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-08-29 UTC."],[[["\u003cp\u003eGoogle Distributed Cloud requires specific configurations on Ubuntu node machines, supporting versions 18.04 and 20.04.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eAppArmor\u003c/code\u003e security module must be stopped and disabled on Ubuntu nodes, using \u003ccode\u003esystemctl\u003c/code\u003e commands.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eufw\u003c/code\u003e firewall needs to be disabled by using \u003ccode\u003esudo ufw disable\u003c/code\u003e to ensure compatibility with Google Distributed Cloud.\u003c/p\u003e\n"],["\u003cp\u003eDocker version 19.03.13 or later is required for Google Distributed Cloud, and the \u003ccode\u003ebmctl\u003c/code\u003e tool will install or upgrade it if necessary.\u003c/p\u003e\n"],["\u003cp\u003eWorkstations running \u003ccode\u003ebmctl\u003c/code\u003e must have non-root user access to Docker, with instructions available for configuration.\u003c/p\u003e\n"]]],[],null,["# Configuring Ubuntu\n\n\u003cbr /\u003e\n\nConfiguring Ubuntu\n------------------\n\nYou must configure the base operating system of your node machines to use Google Distributed Cloud. This page contains the steps you need to take to complete the needed configuration.\nFor more information about troubleshooting Google Distributed Cloud requirements, see the [troubleshooting guides](/anthos/clusters/docs/bare-metal/1.6/troubleshooting/known-issues).\n\n### Before you begin\n\nEnsure you are using a supported version of your operating system. Google Distributed Cloud supports the following versions for Ubuntu:\n\n- 18.04\n- 20.04\n\nValidate package manager: \n\n sudo apt-get check\n\nThe output should show no errors and look similar to the following example: \n\n # Reading package lists... Done\n # Building dependency tree\n # Reading state information... Done\n\nDisabling `AppArmor`\n--------------------\n\n1. Stop `AppArmor`:\n\n sudo systemctl stop apparmor\n\n2. Disable `AppArmor`:\n\n sudo systemctl disable apparmor\n\n3. Check that `AppArmor` appears as inactive:\n\n sudo systemctl status apparmor | grep \"Active\"\n\nFor example: \n\n # Active: inactive (dead) ...\n\nDisabling `ufw`\n---------------\n\n1. Disable `ufw`:\n\n sudo ufw disable\n\n2. Check that `ufw` is disabled:\n\n sudo ufw status\n # Status: inactive\n\nConfiguring Docker 19.03+ on your workstation\n---------------------------------------------\n\nGoogle Distributed Cloud helps you install Docker on your bare metal machines in the\nfollowing scenarios:\n\n- If your bare metal machines don't have Docker installed, `bmctl` installs 19.03.13 or later.\n- If your bare metal machines have Docker 19.03.5 or earlier installed, `bmctl` upgrades Docker to version 19.03.13 or later.\n\n| **Note:** The workstation running `bmctl` needs non-root user access to Docker to start the temporary bootstrap (kind) cluster during installation. To enable non-root user access to Docker, go to [Manage Docker as a non-root user](https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user).\n\nFollow these steps to manually install Docker:\n\n1. Remove any previous Docker version:\n\n sudo apt-get remove docker docker-engine docker.io containerd runc\n\n2. Update your package manager:\n\n sudo apt-get update\n\n3. Install Docker 19.03+:\n\n sudo apt-get install \\\n apt-transport-https \\\n ca-certificates \\\n curl \\\n gnupg-agent \\\n software-properties-common \\\n docker.io\n\n4. Verify you are now running version 19.03+:\n\n sudo docker version\n\n5. Compare your output with the following example to ensure the Client and Server versions are 19.03+ :\n\n Client: Docker Engine - Community\n Version: 19.03.13\n ...\n Server: Docker Engine - Community\n Engine:\n Version: 19.03.13"]]