Terraform 在地形上使用舵图时的RBAC授权

Terraform 在地形上使用舵图时的RBAC授权,terraform,kubernetes-helm,nginx-ingress,rbac,Terraform,Kubernetes Helm,Nginx Ingress,Rbac,我正在尝试使用Terraform上的Helm图表创建nginx ingress服务器。我遇到了以下错误: 错误:无法创建资源:clusterroles.rbac.authorization.k8s.io被禁止:用户“id-00722-service-account@mucius-storm200722.iam.gserviceaccount.com“无法在群集作用域的API组“rbac.authorization.k8s.io”中创建资源“clusterroles”:需要[“container.

我正在尝试使用Terraform上的Helm图表创建nginx ingress服务器。我遇到了以下错误:

错误:无法创建资源:clusterroles.rbac.authorization.k8s.io被禁止:用户“id-00722-service-account@mucius-storm200722.iam.gserviceaccount.com“无法在群集作用域的API组“rbac.authorization.k8s.io”中创建资源“clusterroles”:需要[“container.clusterroles.create”]权限之一

我的问题似乎与这里的经历极为相似:

但在尝试在该线程中实现各种解决方案时,我遇到了一些问题。例如,Terraform的helm提供者不再接受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" 

} 

如果有人能告诉我如何才能绕过这个问题,我将非常感激

您是否尝试过使用kubernetes提供程序来创建集群角色绑定,然后在crb的依赖项中使用helm来完成其余的绑定?如果可能,您应该使用helm 3.x。它不使用Tiller,因此消除了该配置点。您是否尝试过使用kubernetes提供程序来创建集群角色绑定,然后在crb的依赖项中使用helm来完成其余部分?如果可能,您应该使用helm 3.x。它不使用舵柄,因此消除了该配置点。