I'm trying to upgrade my nodes to 1.7.6-gke.1
from 1.7.6
and I'm getting the following error:
The request contains invalid arguments: external: bad desired node version (1.7.6-gke.1). Error code: 7
My master nodes are presently on 1.7.6-gke.1
so it's puzzling that I cannot upgrade my node pools to the same version, despite the option being available in the UI.
So my cluster was version 1.7.3 and i was just now able to get it to version 1.7.6 (not 1.7.6-gke.1) I ran the command:
gcloud container clusters upgrade stg-k8s --zone=<your-zone>
It started updating my cluster nodes to the master version. The version of the master is 1.7.6-gke.1 however it updated the nodes only to 1.7.6
I think Google has a problem with their API somewhere. I have a cluster with the master on 1.7.6-gke.1 as well, and tried upgrading the nodes to that through the gcloud command, which resulted in this error:
ERROR: (gcloud.container.clusters.upgrade) ResponseError: code=400, message=bad desired node version (1.7.6-gke.1).
This is despite 1.7.6-gke.1 being a valid node version as seen here:
$ gcloud container get-server-config
Fetching server config for europe-west1-b
defaultClusterVersion: 1.7.6-gke.1
defaultImageType: COS
validImageTypes:
- COS
- UBUNTU
validMasterVersions:
- 1.7.6-gke.1
- 1.7.5-gke.1
- 1.6.10-gke.1
validNodeVersions:
- 1.7.6-gke.1
- 1.7.6
- 1.7.5
- 1.7.4
- 1.7.3
- 1.7.2
- 1.6.10
- 1.6.9
- 1.6.8
- 1.6.7
- 1.6.4
- 1.5.7
Got the same now with 1.8.7-gke.0 from CLI. The solution was to first run:
gcloud container clusters upgrade ... --master
After that the upgrade started just fine.