Terraform: google_sql_database_instance not being created

Jie*_*eng 2 google-cloud-sql google-cloud-platform terraform

I am trying to create a CloudSQL instance using terraform but its not even trying to create it appears: The CloudSQL dashboard doesnt change

在此处输入图片说明

google_sql_database_instance.db-instance: Still creating... [9m41s elapsed]
google_sql_database_instance.db-instance: Still creating... [9m51s elapsed]
google_sql_database_instance.db-instance: Still creating... [10m1s elapsed]
Run Code Online (Sandbox Code Playgroud)

It eventually timesout. Why is that?

resource "google_sql_database_instance" "db-instance" {
  # depends_on = [google_service_networking_connection.private-vpc-connection]

  name = "sonarqube"
  database_version = "POSTGRES_9_6"
  region = "asia-southeast1"
  settings {
    tier = "db-f1-micro"
    # ip_configuration {
    #   private_network = google_compute_network.private-network.self_link
    # }
  }
}
Run Code Online (Sandbox Code Playgroud)

I even removed the private networking parts

Jie*_*eng 10

好的,所以我设置了 TF_LOG=DEBUG 并看到

2019-11-23T22:04:41.365+0800 [DEBUG] plugin.terraform-provider-google-beta_v3.0.0-beta.1_x4: 2019/11/23 22:04:41 [DEBUG] Dismissed an error as retryable. Waiting for other concurrent Cloud SQL operations to finish - googleapi: Error 409: The instance or operation is not in an appropriate state to handle the request., invalidState
Run Code Online (Sandbox Code Playgroud)

经过一番谷歌搜索,我找到了https://github.com/hashicorp/terraform/issues/20972

发生这种情况是因为实例名称在删除后最多一周内无法重复使用。

所以我想这个问题是因为我试图用最近使用的名称创建一个实例......

  • 事实上,为了能够重用新 CloudSQL 实例中已使用的名称,您必须[等待 7 天](https://cloud.google.com/sql/docs/mysql/delete-instance)。如果重复使用该名称对您来说确实很重要,并且您有 Google Cloud Platform 支持的支持包,则可以开具相关票证。 (2认同)