Auto-upgrading nodes

This page shows you how to configure node auto-upgrades in Google Kubernetes Engine.

Overview

Node auto-upgrades help you keep the nodes in your cluster up to date with the cluster master version when your master is updated on your behalf. When you create a new cluster using Google Cloud Platform Console, node auto-upgrade is enabled by default. If you create a cluster using the non-beta version of the gcloud container clusters create command, node auto-upgrade is currently disabled by default.

You can learn more about cluster and node upgrades.

Node auto-upgrades provide several benefits:

  • Lower management overhead: You don't have to manually track and update your nodes when the master is upgraded on your behalf.
  • Better security: Sometimes new binaries are released to fix a security issue. With auto-upgrades, GKE automatically ensures that security updates are applied and kept up to date.
  • Ease of use: Provides a simple way to keep your nodes up to date with the latest Kubernetes features.

Node pools with auto-upgrades enabled are automatically scheduled for upgrades soon after a cluster's masters are upgraded. When the upgrade is performed, nodes are drained and re-created to match the current cluster master version. Modifications on the boot disk of a node VM do not persist across node re-creations. To preserve modifications across node re-creation, use a DaemonSet.

Node auto-upgrade is not available for Alpha Clusters.

Enabling node auto-upgrades for an existing node pool

When you create a new cluster using Google Cloud Platform Console, node auto-upgrade is enabled by default. If you create a cluster using the gcloud command, node auto-upgrade is currently disabled by default.

You can enable node auto-upgrade if it is currently disabled.

gcloud

To enable auto-upgrades for an existing node pool, run the following command:

gcloud container node-pools update [NODE_POOL] --cluster [CLUSTER_NAME] \
    --zone [COMPUTE_ZONE] --enable-autoupgrade

Console

To enable auto-upgrades for an existing node pool, perform the following steps:

  1. Visit the Google Kubernetes Engine menu in GCP Console.

    Visit the Google Kubernetes Engine menu

  2. Click the cluster's Edit button, which looks like a pencil.

  3. In the Node pools section, click the Advanced edit button for the node pool you want to modify.

  4. Select Enable auto-upgrade.

  5. Click Save to exit the Advanced edit overlay.

  6. Click Save again to modify the cluster.

For more control over when nodes can be auto-upgraded, consider configuring maintenance windows and exclusions.

Disabling node auto-upgrades for an existing node pool

You can disable node auto-upgrade for an existing node pool. If you do so, you are responsible for ensuring that the cluster's nodes run a version compatible the cluster's version.

gcloud

To disable auto-upgrades for an existing node pool, run the following command:

gcloud container node-pools update [NODE_POOL] --cluster [CLUSTER_NAME] \
    --zone [COMPUTE_ZONE] --no-enable-autoupgrade

Console

To disable auto-upgrades for an existing node pool, perform the following steps:

  1. Visit the Google Kubernetes Engine menu in GCP Console.

    Visit the Google Kubernetes Engine menu

  2. Click the cluster's Edit button, which looks like a pencil.

  3. In the Node pools section, click the Advanced edit button for the node pool you want to modify.

  4. Deselect Enable auto-upgrade.

  5. Click Save to exit the Advanced edit overlay.

  6. Click Save again to modify the cluster.

Creating a cluster or node pool with node auto-upgrades enabled

gcloud

To create a cluster with auto-upgrades enabled for the default node pool, specify the --enable-autoupgrade flag in the gcloud container clusters create command:

gcloud container clusters create [CLUSTER_NAME] --zone [COMPUTE_ZONE] \
    --enable-autoupgrade

To create a node pool with auto-upgrade enabled:

gcloud container node-pools create [NODE_POOL] --cluster [CLUSTER_NAME] \
    --zone [COMPUTE_ZONE] --enable-autoupgrade

Console

Clusters and node pools created with GCP Console have auto-upgrades enabled by default. Visit Creating a Cluster or the Adding and Managing Node Pools for instructions to create clusters and node pools.

You can disable auto-upgrades for new clusters or node pools. To do so, click Advanced edit, then deselect Enable auto-upgrade while configuring the cluster or node pool.

What's next

Var denne side nyttig? Giv os en anmeldelse af den:

Send feedback om...

Kubernetes Engine Documentation