无法通过 UI 升级容器引擎节点

Cannot upgrade container enginer nodes via UI

我正在尝试将我的节点从 1.7.6 升级到 1.7.6-gke.1,但出现以下错误:

请求包含无效参数:外部:错误的所需节点版本 (1.7.6-gke.1)。错误代码:7

我的主节点目前在 1.7.6-gke.1 上,所以令人费解的是我无法将我的节点池升级到相同版本,尽管 UI.

中提供了该选项。

我认为 Google 的 API 某处有问题。我在 1.7.6-gke.1 上也有一个主节点的集群,并尝试通过 gcloud 命令将节点升级到那个节点,这导致了这个错误:

ERROR: (gcloud.container.clusters.upgrade) ResponseError: code=400, message=bad desired node version (1.7.6-gke.1).

尽管 1.7.6-gke.1 是有效的节点版本,如下所示:

$ 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

所以我的集群是 1.7.3 版,我现在才能够将它升级到 1.7.6 版(不是 1.7.6-gke.1) 我运行命令:

gcloud container clusters upgrade stg-k8s --zone=<your-zone>

它开始将我的集群节点更新到主版本。 master 的版本是 1.7.6-gke.1 但是它只将节点更新到 1.7.6

现在从 CLI 获得相同的 1.8.7-gke.0。解决方案是首先 运行:

gcloud container clusters upgrade ... --master

之后升级就开始了。