我正在关注Google GKE and SQL with terraform教程 但是我无法创建 google_project.project 。 我既尝试作为项目的所有者,也尝试作为教程中描述的服务。两次尝试均以该错误结束:
Error: Error applying plan:
1 error(s) occurred:
* google_project.project: 1 error(s) occurred:
* google_project.project: error creating project terraform-dev-357aa670
(terraform-dev): googleapi: Error 403: User is not authorized., forbidden.
If you received a 403 error, make sure
you have the `roles/resourcemanager.projectCreator` permission
我认为我拥有项目所有者的正确权限,但显然没有。
这是我创建服务帐户的方式:
$ gcloud organizations add-iam-policy-binding ${TF_VAR_org_id} \ (gke_my-domain-218910_europe-west1-b_my-domain-vpc-native/default)
> --member serviceAccount:terraform@${TF_ADMIN}.iam.gserviceaccount.com \
> --role roles/resourcemanager.projectCreator
Updated IAM policy for organization [00000].
bindings:
- members:
- domain:my-domain.no
role: roles/billing.creator
- members:
- serviceAccount:terraform@my-domain-terraform-admin-3.iam.gserviceaccount.com
- serviceAccount:terraform@my-domain-terraform-admin.iam.gserviceaccount.com
role: roles/billing.user
- members:
- domain:min-familie.no
- serviceAccount:terraform@my-domain-terraform-admin-3.iam.gserviceaccount.com
- serviceAccount:terraform@my-domain-terraform-admin.iam.gserviceaccount.com
role: roles/resourcemanager.projectCreator
etag: BwWJxJTDnQs=
version: 19d
“手动”创建项目是可行的。
$ gcloud projects create ${TF_ADMIN}
。
任何想法可能有什么问题吗?
答案 0 :(得分:0)
我有完全相同的问题!
为我解决了这个问题的步骤:
将该服务帐户的密钥(使用GCP控制台)下载到:/Users/johndoe/sa.json
导出GOOGLE_APPLICATION_CREDENTIALS = / Users / johndoe / factory.json
应用地形
希望这对您有用。
在这里找到了Seth Fargo的解决方案: https://github.com/sethvargo/vault-on-gke/issues/16