【问题标题】:Terraform gke node pool getting 403 on googleapi: Error 403: Required "container.clusters.update"Terraform gke 节点池在 googleapi 上得到 403:错误 403:需要“container.clusters.update”
【发布时间】:2019-07-13 10:54:41
【问题描述】:

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

完全错误:

google_container_node_pool.np:创建 NodePool 时出错:googleapi:错误 403:“projects//locations/us-central1/clusters/”需要“container.clusters.update”权限。请参阅https://cloud.google.com/kubernetes-engine/docs/troubleshooting#gke_service_account_deleted 了解更多信息。禁止

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

同时使用 google 和 google beta 提供程序 1.20 版本

【问题讨论】:

  • 我可以使用 gcloud cli 命令创建一个新的节点池,并使用 terraform 正在使用的服务帐户成功附加它。

标签: google-cloud-platform terraform google-kubernetes-engine


【解决方案1】:

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

【讨论】:

    【解决方案2】:

    所以根本原因是我使用了自定义模块,但将凭据传递给模块块中的自定义模块,但它仍在使用用于测试自定义模块的原始凭据。一旦我将自定义模块的凭据更改为它们应该工作的内容。

    【讨论】:

      【解决方案3】:

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

      【讨论】:

        猜你喜欢
        • 2021-06-16
        • 1970-01-01
        • 1970-01-01
        • 2021-12-01
        • 1970-01-01
        • 2019-11-01
        • 2021-08-11
        • 2011-07-17
        • 1970-01-01
        相关资源
        最近更新 更多