Gcloud 创建节点池在自动修复过程中永远挂起,没有节点

Gcloud 创建节点池在自动修复过程中永远挂起,没有节点

向现有集群添加新节点池失败,且没有节点注册。

添加node-pool的命令如下(项目名称已更改):

gcloud container --project my-project node-pools create hm-pool --cluster ds-cluster-west4 --zone europe-west4-c --node-version 1.16.9-gke.2 --machine-type n1-highmem-4 --image-type COS --disk-type pd-standard --disk-size 100 --metadata disable-legacy-endpoints=true --scopes logging-write,monitoring,pubsub,service-control,service-management,storage-full,taskqueue,trace --num-nodes 2 --enable-autoupgrade --enable-autorepair --max-surge-upgrade 1 --max-unavailable-upgrade 0

我收到以下错误消息

This will enable the autorepair feature for nodes. Please see https://cloud.google.com/kubernetes-engine/docs/node-auto-repair for more information on node autorepairs.
Creating node pool hm-pool...done.
ERROR: (gcloud.container.node-pools.create) Operation [<Operation
 clusterConditions: [<StatusCondition
 message: 'All cluster resources were brought up, but: only 0 nodes out of 2 have registered; cluster may be unhealthy.'>]
 detail: 'All cluster resources were brought up, but: only 0 nodes out of 2 have registered; cluster may be unhealthy.'
 endTime: '2020-06-04T15:17:05.810921209Z'
 name: 'operation-1591282299021-26295b28'
 nodepoolConditions: []
 operationType: OperationTypeValueValuesEnum(CREATE_NODE_POOL, 7)
 selfLink: 'https://container.googleapis.com/v1/projects/473462597806/zones/europe-west4-c/operations/operation-1591282299021-26295b28'
 startTime: '2020-06-04T14:51:39.021046271Z'
 status: StatusValueValuesEnum(DONE, 3)
 statusMessage: 'All cluster resources were brought up, but: only 0 nodes out of 2 have registered; cluster may be unhealthy.'
 targetLink: 'https://container.googleapis.com/v1/projects/473462597806/zones/europe-west4-c/clusters/ds-cluster-west4/nodePools/hm-pool'
 zone: 'europe-west4-c'>] finished with error: All cluster resources were brought up, but: only 0 nodes out of 2 have registered; cluster may be unhealthy.

在控制台上,我看到消息“自动修复节点池 hm-pool 中的节点。”并且我看到hm-pool正在更新。池中有 0 个节点。

我究竟做错了什么?

答案1

问题是,新节点池的规范中缺少应用于集群的标签。我从现有节点之一中提取了标签信息,gcloud compute instances describe --format="value[delimiter=','](tags.items) INSTANCE-NAME并将输出用作--tagsnode-pools create 命令选项的参数。然后成功创建了节点池。

相关内容