当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版
答案 0 :(得分:0)
尝试删除默认的GKE服务帐户,然后使用gcloud命令重新启用该服务,该命令将重新创建默认服务帐户。 如果这不起作用,请尝试将帐户的角色更改为“编辑器”,或创建一个包含“ container.clusters.update”权限的自定义角色。
答案 1 :(得分:0)
因此,根本原因是我正在使用自定义模块,但是将凭据向下传递到模块块中的自定义模块,但是它仍在使用用于测试自定义模块的原始凭据。一旦将自定义模块的凭据更改为应有的功能,就可以使用。
答案 2 :(得分:0)
我也遇到了同样的问题。看起来问题在于google_container_node_pool
资源正在尝试更新terraform google provider块中指定的项目中的集群,而不是实际退出集群的项目。我可以通过指定google_container_node_pool
中提供的与google_container_cluster
资源相同相同的项目来修复它。