【问题标题】:Deploy Google Cloud Bigtable with deployment manager使用部署管理器部署 Google Cloud Bigtable
【发布时间】:2019-05-19 04:57:19
【问题描述】:

我正在尝试使用以下 YAML 配置文件部署 Bigtable 实例:

resources:
- name: foo-bigtable-instance
  type: bigtableadmin.v2.instance
  properties:
     name: foo
     displayName: Foo Bigtable Instance
     type: Development

当我调用 gcloud deployment-manager deployments create 时,我收到以下错误...

ERROR: (gcloud.deployment-manager.deployments.create) Error in Operation [operation-1545154324304-57d4f469f9081-51e37137-270e5638]: errors:
- code: MISSING_REQUIRED_FIELD
  location: /deployments/sam-poc-deployment/resources/foo-bigtable-instance->$.properties->$.parent
  message: |-
    Missing required field 'parent' with schema:
    {
      "type" : "string"
    }

什么是必需的“父”属性?该错误表明它是一个具有名为“type”的单个字段的对象。

但是“父母”代表什么? “类型”的允许值是多少? Documentation 中未提及“父”属性。

【问题讨论】:

    标签: google-cloud-bigtable google-deployment-manager


    【解决方案1】:

    这有点令人困惑,因为 parent 实际上是在该资源的 create operation 的路径中定义的。它代表拥有 Bigtable 实例的项目。请参阅Bigtable snippet 了解更好的用法。

    【讨论】:

      【解决方案2】:

      您的 yaml 文件中有一些错误。我相信这个修改可以解决你的问题:

      resources:
      - type: bigtableadmin.v2.instance
        name: foo-bigtable-instance
        properties:
          instanceId: [AN_INSTANCE_ID]
          parent: projects/[YOUR_PROJECT]
          instance:
            displayName: Foo Bigtable Instance
            type: DEVELOPMENT
          clusters:
            initial:
              defaultStorageType: HDD
              location: projects/[YOUR_PROJECT]/locations/[PREFERRED_LOCATION ]
      

      另外,我注意到您使用的是projects.instances 的文档,但在这种情况下,最好使用projects.instances.create 的文档。它包含有关实例创建和所需字段的更多信息。这种操作也可以参考GCP提供的various examples

      【讨论】:

      • 这确实很有帮助,但我发现我必须将资源类型更改为“gcp-types/pubsub-v1:projects.topics”
      猜你喜欢
      • 2023-03-16
      • 2019-06-10
      • 2016-05-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-05
      • 1970-01-01
      相关资源
      最近更新 更多