我想通过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的 Cloud 帐户是项目的所有者和相对权力,所以我预计权限没有问题 .
1 回答
通过
$ gcloud container clusters create
命令创建集群时,请记住隐藏了数百个操作 .如果您拥有所有者权限,那么您可以将初始"Kick"提供给流程以使一切都开始 . 此时Service accounts开始进入流程,他们会自动为您创建所有资源 .
这些服务帐户具有不同的权限和权限(可以自定义),以便在其中一个受到攻击并且保持某种顺序的情况下限制攻击面,您将拥有例如
****-compute@developer.gservuceaccount.com
这是一个默认计算引擎服务帐户 .当您启用不同的API时,可以创建其中一些服务帐户,以使组件按预期工作,但如果其中一个被删除或修改,您可能会遇到一个您遇到的错误 .
service-****@container-engine-robot-iam-gaservice account is created
时例如,在我的测试项目中,我修改了它们,删除了“Kubernetes Engine服务代理”权限,我修改了Google API服务帐户,将其设置为“项目查看器”,我面临创建和删除群集的权限问题 .
您可以浏览
IAM&Amin-->admin
以检查状态以及项目中授权的当前服务帐户 .Here您可以找到一些默认服务帐户的更深层次的解释 .
Here您可以找到有关如何重新启用Kubernetes Engine默认服务帐户的小指南: