【问题标题】:Terraform - Creating Google Cloud SQL instance not workingTerraform - 创建 Google Cloud SQL 实例不起作用
【发布时间】:2019-07-18 19:26:44
【问题描述】:

我使用以下 Terraform 配置尝试在 Google Cloud Platform 上创建子网和 Cloud SQL MySQL 5.6 实例。

resource "google_compute_network" "default" {
  name = "my-default-network"
  auto_create_subnetworks = "true"
  project = "${google_project.project.project_id}"
}

resource "google_sql_database_instance" "wordpress" {
  region = "${var.region}"
  database_version = "MYSQL_5_6"
  project = "${google_project.project.project_id}"

  settings {
    tier = "db-n1-standard-1"

    ip_configuration {
      private_network = "${google_compute_network.default.self_link}"
    }
  }
}

但是应用这个计划给了我以下模糊的错误。我也尝试破坏整个项目并尝试重新构建它,但我得到了同样的错误。

google_sql_database_instance.wordpress: Still creating... (20s elapsed)
google_sql_database_instance.wordpress: Still creating... (30s elapsed)
google_sql_database_instance.wordpress: Still creating... (40s elapsed)

Error: Error applying plan:

1 error(s) occurred:

* google_sql_database_instance.wordpress: 1 error(s) occurred:

* google_sql_database_instance.wordpress: Error waiting for Create Instance:


Terraform does not automatically rollback in the face of errors.
Instead, your Terraform state file has been partially updated with
any resources that successfully completed. Please address the error
above and apply again to incrementally change your infrastructure.

谁能看到我在这里做错了什么?

编辑:

TF_LOG=debug 添加到terraform apply-run 时,出现以下错误。

"error": {
  "kind": "sql#operationErrors",
  "errors": [{
    "kind": "sql#operationError",
    "code": "INTERNAL_ERROR"
  }]
}

编辑 2:简化了网络设置,但得到了完全相同的错误。

【问题讨论】:

  • 能否删除创建的数据库实例并尝试重新部署?这能解决问题吗?
  • 从未创建实例,但我确实尝试破坏整个环境并重新创建它。同样的事情。
  • 我在基于 terraform 的云控制台创建 PSQL 9.6 数据库时遇到了同样的问题。云控制台日志似乎也没有更多信息。

标签: google-cloud-platform terraform google-cloud-sql


【解决方案1】:

聚会有点晚了,但我刚刚遇到并克服了这个问题。就我而言,它与使用 private_networking 选项有关。我的建议是阅读documentation,注意“网络要求”并检查以下内容:

  • 您的项目中启用了servicenetworking.googleapis.com API
  • 使用 Terraform 运行的 ServiceAccount 具有“服务网络管理员”角色

我发现在一个临时实例中验证私有网络是问题(通过删除它并设置ipv4_enabled = "true")有助于我集中调试工作。

祝你好运!

【讨论】:

    猜你喜欢
    • 2021-01-15
    • 2022-01-26
    • 2018-10-17
    • 2020-09-16
    • 2017-02-14
    • 1970-01-01
    • 1970-01-01
    • 2023-01-12
    • 2021-08-23
    相关资源
    最近更新 更多