我想通过gcloud命令创建GKE集群。但我无法解决这个错误:
$ gcloud container clusters create myproject --machine-type=n1-standard1# --zone=asia-northeast1-a
ERROR: (gcloud.container.clusters.create) ResponseError: code=403, message=Google
Compute Engine: Required 'compute.networks.get' permission for
'projects/myproject/global/networks/default'
链接到我的Gmail的云帐户是项目的所有者和相对权力,因此我预计权限没有问题。
答案 0 :(得分:3)
通过$ gcloud container clusters create
命令创建群集时,请记住隐藏了数百个操作。
如果您拥有所有者权利,那么您可以提供最初的"踢"让一切都开始的过程。此时Service accounts开始进入流程,他们会自动为您创建所有资源。
这些服务帐户具有不同的权限和权限(可以自定义)以限制攻击面,以防其中一个遭到攻击并保持一种顺序,例如****-compute@developer.gservuceaccount.com
这是一个默认的计算引擎服务帐户。
当您启用不同的API时,可以创建其中一些服务帐户,以使组件按预期工作,但如果其中一个被删除或修改,您可能会面临您遇到的错误之一。
通常,解决问题的最简单方法是重新创建服务帐户,例如删除它并禁用启用相应的API。
service-****@container-engine-robot-iam-gaservice account is created
在我的测试项目中,例如我修改了他们删除" Kubernetes Engine服务代理"权限和我修改了Google API服务帐户,将其设置为"项目查看器"我面临着创建和删除集群的权限问题。
您可以浏览IAM&Amin-->admin
以检查状态以及项目当前授权的服务帐户。
"如果从服务帐户中删除此角色绑定,则默认服务帐户将从项目中解除绑定,这可能会阻止您部署应用程序并执行其他群集操作。"