Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google cloud platform 无法通过Terraform创建云SQL实例_Google Cloud Platform_Terraform Provider Gcp_Google Vpc - Fatal编程技术网

Google cloud platform 无法通过Terraform创建云SQL实例

Google cloud platform 无法通过Terraform创建云SQL实例,google-cloud-platform,terraform-provider-gcp,google-vpc,Google Cloud Platform,Terraform Provider Gcp,Google Vpc,我想在项目中创建一个连接到主机VPC的云SQL实例。但是,在运行terraform apply时,每次都会得到相同的结果: google_sql_database_instance.default: Still creating... [1m20s elapsed] google_sql_database_instance.default: Still creating... [1m30s elapsed] google_sql_database_instance.default: Still

我想在项目中创建一个连接到主机VPC的云SQL实例。但是,在运行
terraform apply
时,每次都会得到相同的结果:

google_sql_database_instance.default: Still creating... [1m20s elapsed]
google_sql_database_instance.default: Still creating... [1m30s elapsed]
google_sql_database_instance.default: Still creating... [1m40s elapsed]
google_sql_database_instance.default: Still creating... [1m50s elapsed]

Error: Error waiting for Create Instance: 



Error: Process completed with exit code 1.
我在这里看到了这样一种说法,即通过配置私有服务访问来解决问题,但是这似乎并不能解决我的问题

这是我的地形文件,包括相关部分:

google_compute_global_address" "private_ip_address" {
  provider = google-beta

  project       = data.google_compute_subnetwork.subnet.project
  name          = "private-ip-address"
  purpose       = "VPC_PEERING"
  address_type  = "INTERNAL"
  prefix_length = 16
  network       = data.google_compute_network.shared-vpc.id
}

resource "google_service_networking_connection" "private_vpc_connection" {
  provider = google-beta

  network                 = data.google_compute_network.shared-vpc.id
  service                 = "servicenetworking.googleapis.com"
  reserved_peering_ranges = [google_compute_global_address.private_ip_address.name]
}

resource "google_sql_database_instance" "default" {
  provider            = google-beta
  project             = module.base_shared_vpc_project.project_id
  name                = var.db_name
  database_version    = "MYSQL_5_7"
  region              = "us-east1"

  settings {
    tier                        = "db-f1-micro"
    availability_type           = "ZONAL"

    location_preference {
      zone = "us-east1-b"
    }

    ip_configuration {
      ipv4_enabled    = false
      private_network = data.google_compute_network.shared-vpc.id
    }
  }
  depends_on = [google_service_networking_connection.private_vpc_connection]
}

最后一位信息,设置
TF_LOG=DEBUG
仅提供此附加消息:
重试传输:停止重试,最后一个请求失败,出现不可重试的错误
几种可能性:

  • 有可能已触发云SQL API超时,但该过程仍在继续。我在使用大型数据转储文件运行
    gcloud sql import sql
    命令时遇到了这种情况。我收到了一个“超时超过”错误,但进程继续进行,控制台中的磁盘使用情况监视就是明证
  • GCP对IAC来说,有一件事并没有什么大不了的,那就是对已删除的云SQL实例的重新使用有10天的暂停期。因此,如果您的IAC试图重新创建过去10天内存在的云SQL实例,这可能是问题的一部分。这个问题已经让我的团队翻了好几次桌子。尝试将datetimestamp作为变量放入“google\u sql\u database\u instance”资源名称中

  • 有两种可能性:

  • 有可能已触发云SQL API超时,但该过程仍在继续。我在使用大型数据转储文件运行
    gcloud sql import sql
    命令时遇到了这种情况。我收到了一个“超时超过”错误,但进程继续进行,控制台中的磁盘使用情况监视就是明证
  • GCP对IAC来说,有一件事并没有什么大不了的,那就是对已删除的云SQL实例的重新使用有10天的暂停期。因此,如果您的IAC试图重新创建过去10天内存在的云SQL实例,这可能是问题的一部分。这个问题已经让我的团队翻了好几次桌子。尝试将datetimestamp作为变量放入“google\u sql\u database\u instance”资源名称中

  • 你有没有找到答案?我有几个建议,但我很想听听解决方案是什么。你有没有找到答案?我有一些建议,但我很想听听解决方案是什么。我的terraform应用程序在我刚刚杀死它之前循环了20多分钟,看起来没有任何效果。我很感谢你的评论#2-它让我头脑清醒。我的terraform应用程序在我杀死它之前循环了20多分钟,看起来没有任何效果。我感谢你的评论#2-它让我头脑清醒。