Terraform google_sql_数据库_实例使用私有IP创建多个实例时,等待创建实例时出错
好的,让我看看我是否能正确地解释这一点。我正在尝试创建多个云SQL实例,每个实例都具有专用IP地址: vpc.tfTerraform google_sql_数据库_实例使用私有IP创建多个实例时,等待创建实例时出错,terraform,terraform-provider-gcp,Terraform,Terraform Provider Gcp,好的,让我看看我是否能正确地解释这一点。我正在尝试创建多个云SQL实例,每个实例都具有专用IP地址: vpc.tf resource "google_compute_network" "vpc" { name = var.name # routing_mode = var.routing_mode # auto_create_subnetworks = true } resource "google_compu
resource "google_compute_network" "vpc" {
name = var.name
# routing_mode = var.routing_mode
# auto_create_subnetworks = true
}
resource "google_compute_global_address" "private_ip_block" {
name = google_compute_network.vpc.name
purpose = "VPC_PEERING"
address_type = "INTERNAL"
prefix_length = var.cidr
network = google_compute_network.vpc.name
}
resource "google_service_networking_connection" "vpc_connection" {
network = google_compute_network.vpc.self_link
service = "servicenetworking.googleapis.com"
reserved_peering_ranges = [
google_compute_global_address.private_ip_block.name
]
}
db.tf
这两个模块都是从main.tf
调用的,我使用对象映射创建实例,但只创建一个vpc
如果我将IP地址设置为public,则此操作将成功,但在将其中一个实例分配给私有网络时,将失败,并显示以下消息:
╷
│ Error: Error waiting for Create Instance:
│
│
│ with module.db["my_database"].google_sql_database_instance.instance,
│ on modules/db/db.tf line 13, in resource "google_sql_database_instance" "instance":
│ 13: resource "google_sql_database_instance" "instance" {
│
╵
失败发生在创建实例后大约一分钟。它们似乎都开始正常创建,大约一分钟后,其中一个停止登录到stdout,另一个完成后,出现错误。GCP控制台只是说发生了未知错误。就像我说的,当IPs是公共的时,这将很好地工作,所以它必须是我的私有网络配置,对吗?如果他们都试图分配相同的IP地址,是否存在竞争条件?我应该按顺序创建这些,而不是在每个
中创建,或者可能添加一个随机延迟?好的,如果有人偶然发现,这显然是一个已知的错误:
问题:
╷
│ Error: Error waiting for Create Instance:
│
│
│ with module.db["my_database"].google_sql_database_instance.instance,
│ on modules/db/db.tf line 13, in resource "google_sql_database_instance" "instance":
│ 13: resource "google_sql_database_instance" "instance" {
│
╵