Terraform - Создание экземпляра Google Cloud SQL не работает - PullRequest
0 голосов
/ 25 февраля 2019

Я использую следующую конфигурацию Terraform, чтобы попытаться создать подсеть и экземпляр MySQL 5.6 Cloud SQL на Google Cloud Platform.

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: Упростил настройку сети, но получил точно такую ​​же ошибку.

1 Ответ

0 голосов
/ 24 апреля 2019

Немного опоздал на вечеринку, но я только что преодолел эту проблему.В моем случае это было связано с использованием опции private_networking.Я предлагаю прочитать документацию , обращая внимание на «Требования к сети», и проверить следующее:

  • В вашем проекте включен servicenetworking.googleapis.com API
  • Учетная запись ServiceAccount, которую вы используете с Terraform, имеет роль «Администратор сервисной сети»

Я обнаружил, что проверка частной сети была проблемой (путем ее удаления и установки ipv4_enabled = "true") во временном экземпляре помогласосредоточить мои усилия по отладке.

Удачи!

...