簡體   English   中英

Terraform gke 節點池在 googleapi 上獲得 403:錯誤 403:需要“container.clusters.update”

[英]Terraform gke node pool getting 403 on googleapi: Error 403: Required "container.clusters.update"

當 terraform v0.11.11 應用於與 gke 集群創建分開管理的節點池時,我收到 403 錯誤。

完整錯誤:

google_container_node_pool.np:創建節點池時出錯: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

嘗試刪除默認的GKE服務帳戶,然后使用gcloud命令重新啟用該服務,該命令將重新創建默認的服務帳戶。 如果這不起作用,請嘗試將帳戶的角色更改為“編輯器”,或創建一個包含“ container.clusters.update”權限的自定義角色。

因此,根本原因是我正在使用自定義模塊,但是將憑據向下傳遞到模塊塊中的自定義模塊,但是它仍然使用用於測試自定義模塊的原始憑據。 一旦我將自定義模塊的憑據更改為應具有的功能,它就會起作用。

我也遇到了同樣的問題。 看起來問題在於google_container_node_pool資源正在嘗試更新 terraform google provider 塊中指定的項目中的集群,而不是實際集群退出的項目。 我能夠通過指定所提供的同一個項目來修復它google_container_node_pool相同google_container_cluster資源。

就我而言,這是區域問題。 我使用區域而不是區域。

google_container_node_pool.primary_nodes[0]: Creating...
╷
│ Error: error creating NodePool: googleapi: Error 404: Not found: projects/project/locations/europe-west6/clusters/myslodi-cluster., notFound
│
│   with google_container_node_pool.primary_nodes[0],
│   on main.tf line 17, in resource "google_container_node_pool" "primary_nodes":
│   17: resource "google_container_node_pool" "primary_nodes" {

我的環境看起來像這樣

region: "europe-west6"
zone: "europe-west6-b"

所以不得不用var.region替換var.zone

resource "google_container_node_pool" "primary_nodes" {
  count      = 1
  name       = "${google_container_cluster.primary.name}-node-pool"
  cluster    = google_container_cluster.primary.name
  node_count = var.node_count
  location   = var.zone

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM