Terraform gke节点池在googleapi上获取403:错误403:必需的“ container.clusters.update”

问题描述 投票:1回答:3

当terraform v0.11.11应用于与gke群集创建分开管理的节点池时,出现403错误。

完整错误:

google_container_node_pool.np:创建NodePool时出错:googleapi:错误403:“项目//位置/ us-central1 / clusters /”具有必需的“ container.clusters.update”权限。有关更多信息,请参见https://cloud.google.com/kubernetes-engine/docs/troubleshooting#gke_service_account_deleted

我浏览了故障排除指南,但它说的只是禁用然后再次启用该api,我确实尝试过,但仍然收到该错误。

还同时使用Google和Google Beta提供程序的两个版本1.20

当terraform v0.11.11应用于与gke群集创建分开管理的节点池时,出现403错误。完全错误:google_container_node_pool.np:错误...

google-cloud-platform terraform google-kubernetes-engine
3个回答
0
投票

尝试删除默认的GKE服务帐户,然后使用gcloud命令重新启用该服务,该命令将重新创建默认的服务帐户。如果这不起作用,请尝试将帐户的角色更改为“编辑器”,或创建一个包含“ container.clusters.update”权限的自定义角色。


0
投票

因此,根本原因是我正在使用自定义模块,但是将凭据向下传递到模块块中的自定义模块,但是它仍然使用用于测试自定义模块的原始凭据。一旦我将自定义模块凭据更改为应有的功能,就可以使用。


0
投票

我也遇到了同样的问题。看起来问题在于google_container_node_pool资源正在尝试更新terraform google provider块中指定的项目中的集群,而不是实际退出集群的项目。我可以通过指定google_container_node_pool中提供的与google_container_cluster资源same

© www.soinside.com 2019 - 2024. All rights reserved.