Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
terraform google kubernetes引擎中的权限compute.regions.get错误_Kubernetes_Google Cloud Platform_Terraform_Google Kubernetes Engine - Fatal编程技术网

terraform google kubernetes引擎中的权限compute.regions.get错误

terraform google kubernetes引擎中的权限compute.regions.get错误,kubernetes,google-cloud-platform,terraform,google-kubernetes-engine,Kubernetes,Google Cloud Platform,Terraform,Google Kubernetes Engine,我正在尝试使用“~>7.3”版本的terraform谷歌模块/kubernetes引擎/google//modules/beta私有集群module在地区europe-west2创建集群。但我不断地犯错误: Error: googleapi: Error 403: Google Compute Engine: Required 'compute.regions.get' permission for 'projects/***/regions/europe-west2'., forbidden

我正在尝试使用“~>7.3”版本的
terraform谷歌模块/kubernetes引擎/google//modules/beta私有集群
module在地区
europe-west2
创建集群。但我不断地犯错误:

Error: googleapi: Error 403: Google Compute Engine: Required 'compute.regions.get' 
permission for 'projects/***/regions/europe-west2'., forbidden
奇怪的是,我正试图使用具有
Editor
角色的用户来实现这一点。所以,它应该具有读取区域的权限。我试图为用户添加更多角色(使其成为管理员),但结果仍然是一样的。
您能告诉我,我的错误在哪里吗?

请检查您的
[id]@cloudservices.gserviceaccount.com
服务帐户是否具有编辑角色

使用
gcloud projects get iam policy[project id]
命令列出所有服务帐户并查找该帐户。它应该类似于这样:

- members:
  - serviceAccount:67993345594-compute@developer.gserviceaccount.com
  - serviceAccount:679934532594@cloudservices.gserviceaccount.com
  - serviceAccount:service-674567382594@containerregistry.iam.gserviceaccount.com
  - serviceAccount:test2-468@asdf.iam.gserviceaccount.com
  - serviceAccount:asdf@appspot.gserviceaccount.com
  role: roles/editor
第二个是你要找的客户,底线是“角色/编辑”,这是正确的情况

如果此帐户没有此角色,您可以使用以下命令授予它:

gcloud projects add-iam-policy-binding [project] / 
--member serviceAccount:[id]@cloudservices.gserviceaccount.com --role roles/editor
这一切都在报告中描述过


StackOverflow和上讨论了非常类似的问题。

请检查您的
[id]@cloudservices.gserviceaccount.com
服务帐户是否具有编辑角色

使用
gcloud projects get iam policy[project id]
命令列出所有服务帐户并查找该帐户。它应该类似于这样:

- members:
  - serviceAccount:67993345594-compute@developer.gserviceaccount.com
  - serviceAccount:679934532594@cloudservices.gserviceaccount.com
  - serviceAccount:service-674567382594@containerregistry.iam.gserviceaccount.com
  - serviceAccount:test2-468@asdf.iam.gserviceaccount.com
  - serviceAccount:asdf@appspot.gserviceaccount.com
  role: roles/editor
第二个是你要找的客户,底线是“角色/编辑”,这是正确的情况

如果此帐户没有此角色,您可以使用以下命令授予它:

gcloud projects add-iam-policy-binding [project] / 
--member serviceAccount:[id]@cloudservices.gserviceaccount.com --role roles/editor
这一切都在报告中描述过


在StackOverflow上讨论了非常类似的问题,我设法解决了这个问题。似乎我的供应员删除了一些角色,这是GKE正常工作所必需的。特别是,

  • servicecomport:service-${project number}@compute system.iam.gserviceaccount.com
    必须是
    roles/compute.serviceAgent

  • servicecomport:service-${project number}@container engine robot.iam.gserviceaccount.com
    必须是
    roles/compute.serviceAgent


为了发现我禁用了Kubernetes引擎服务并重新启用了它,google cloud自动恢复了该服务帐户所需的角色。

我设法解决了这个问题。似乎我的供应员删除了一些角色,这是GKE正常工作所必需的。特别是,

  • servicecomport:service-${project number}@compute system.iam.gserviceaccount.com
    必须是
    roles/compute.serviceAgent

  • servicecomport:service-${project number}@container engine robot.iam.gserviceaccount.com
    必须是
    roles/compute.serviceAgent


发现我禁用了Kubernetes引擎服务并重新启用了它,google cloud自动恢复了该服务帐户所需的角色。

谢谢您的回复。但似乎有更多的服务账户参与GKE处理。我不小心取消了他们的角色。我发布了我的发现,这对我很有帮助。发现我禁用了Kubernetes引擎服务并重新启用,google cloud自动恢复了该服务帐户所需的角色。感谢您的回复。但似乎有更多的服务账户参与GKE处理。我不小心取消了他们的角色。我发布了我的发现,这对我很有帮助。为了发现我禁用了Kubernetes引擎服务并重新启用了它,google cloud自动恢复了该服务帐户所需的角色。