3

我刚开始使用 Inferstracture 作为 Google 云中的代码。

  1. 安装的 Terraform
  2. 安装 Terraformer
  3. 创建了一个包含虚拟机的新 GCP 项目。

我的目标是将项目及其所有组件复制到一个新项目中。

为了做到这一点,我使用Terraformer对我现有的项目进行反向 terraform。命令:

$ terraformer import google --connect --projects=[project_id] --resources=autoscalers,backendBuckets,backendServices,bigQuery,cloudFunctions,cloudsql,dataProc,disks,dns,firewalls,forwardingRules,gcs,gke,globalAddresses,globalForwardingRules,healthChecks,httpHealthChecks,httpsHealthChecks,iam,images,instanceGroupManagers,instanceGroups,instanceTemplates,instances,interconnectAttachments,kms,memoryStore,monitoring,networkEndpointGroups,networks,nodeGroups,nodeTemplates,project,pubsub,regionAutoscalers,regionBackendServices,regionDisks,regionInstanceGroupManagers,routers,routes,schedulerJobs,securityPolicies,sslPolicies,subnetworks,targetHttpProxies,targetHttpsProxies,targetInstances,targetPools,targetSslProxies,targetTcpProxies,targetVpnGateways,urlMaps,vpnTunnels
2019/06/20 08:00:08 google importing project [project_id]
2019/06/20 08:00:08 google importing... autoscalers
2019/06/20 08:00:19 googleapi: got HTTP response code 404 with body: Not Found

自从 google-api 回复 Not-Found 错误代码以来,似乎我有某种权限问题。

我猜 Terraformer 正在访问的是使用 gcloud 权限来访问我的 gcp 环境,这是真的吗?

如果是真的,我登录的凭据就是这个项目的所有者。

我应该检查什么?如何解决这个问题?

4

1 回答 1

0

您可以使用对项目具有读取权限的服务帐户。并将 GOOGLE_CLOUD_KEYFILE_JSON 设置为指向该服务帐户的 credentials.json。

于 2019-07-04T13:56:25.527 回答