RBA C авторизация при использовании Helm-диаграмм на Terraform - PullRequest
1 голос
/ 03 августа 2020

Я пытаюсь создать сервер nginx -ingress, используя диаграммы Helm на Terraform. Я столкнулся с этой ошибкой:

Ошибка: не удалось создать ресурс: clusterroles.rba c .authorization.k8s.io запрещено: Пользователь «id-00722-service-account@mucius-storm200722.iam.gserviceaccount.com» не может создать ресурс «clusterroles» в группе API «rba c .authorization.k8s.io» в области кластера: требуется одно из разрешений [«container.clusterRoles.create»].

Моя проблема кажется очень похожей на те, что были здесь: https://github.com/hashicorp/terraform-provider-helm/issues/77.

Но при попытке реализовать различные решения в этом потоке я столкнулся с несколькими проблемами. Например, поставщик Helm Terraform больше не принимает аргумент service_account. Или когда я пытался реализовать привязку ролей кластера Tiller, у меня была такая же проблема с разрешениями. Теоретически мне хотелось бы, чтобы мой main.tf выглядел так:

provider "helm" { 

  alias = "my_cluster" 

  kubernetes { 

    config_context_cluster = google_container_cluster.default.name 

    load_config_file       = false 

    host                = "https://${data.google_container_cluster.my_cluster.endpoint}" 

    token                  = data.google_client_config.default.access_token 

    cluster_ca_certificate = base64decode(data.google_container_cluster.my_cluster.master_auth.0.cluster_ca_certificate) 

  } 

} 

  

resource "helm_release" "nginx-ingress" { 

  provider      = helm.my_cluster 

  name          = "nginx-ingress" 

  chart         = "./stable/nginx-ingress" 

} 

Если кто-нибудь сможет пролить свет на то, как я могу обойти эту проблему, я был бы очень признателен!

...