使用Deployment Manager创建Cloud SQL-“前提条件检查失败”。错误

时间:2019-12-27 08:01:38

标签: google-cloud-platform google-cloud-sql google-deployment-manager

我正在使用gcp-types/sqladmin-v1beta4:instances资源类型通过Deployment Manager创建Cloud SQL实例,并且出现以下错误:

{
  "ResourceType":"gcp-types/sqladmin-v1beta4:instances",
  "ResourceErrorCode":"400",
  "ResourceErrorMessage":{
    "code":400,
    "message":"Precondition check failed.",
    "status":"FAILED_PRECONDITION",
    "statusMessage":"Bad Request",
    "requestPath":"https://www.googleapis.com/sql/v1beta4/projects/[PROJECT_NAME]/instances",
    "httpMethod":"POST"
  }
}

这是JINJA文件中的配置:

{% set deployment_name = env['deployment']  %}
{% set INSTANCE_NAME = deployment_name + '-instance'  %}

resources:
- name: {{ INSTANCE_NAME }}
  type: gcp-types/sqladmin-v1beta4:instances
  properties:
    region: us-central1
    rootPassword: root
    settings:
      tier: db-n1-standard-1
      backupConfiguration:
        binaryLogEnabled: true
        enabled: true

- name: demand_ml_db
  type: gcp-types/sqladmin-v1beta4:databases
  properties:
    name: demand_ml_db
    instance: $(ref.{{ INSTANCE_NAME }}.name)
    charset: utf8

1 个答案:

答案 0 :(得分:2)

FAILED_PRECONDITION错误-虽然描述性不强,但是当您尝试在最近删除的先前Cloud SQL实例上进行部署时,往往会抛出该错误;实际上,您选择删除的实例不会立即清除。关于此here,有一个问题跟踪器线程。

我也可以在我的一端进行验证。首先,使用您指定的JINJA文件进行部署可以很好地进行,但是当我删除它并重新部署时-我收到了相同的错误。

最简单的方法是尝试使用其他部署(或实例)名称。