GCP: создание частного экземпляра Postgre в определенной подсети

Я хочу создать частный экземпляр postgresql, указывающий на определенную подсеть в моем VPC. У меня есть 2 ресурса:

      resource "google_compute_global_address" "private_ip_address_some_name" {
  name          = "private-ip-address-some-name"
  purpose       = "VPC_PEERING"
  address_type  = "INTERNAL"
  prefix_length = 16
  network       = module.vpc.vpc.id
}

resource "google_service_networking_connection" "some_other_name" {
  network                 = module.vpc.vpc.id
  service                 = "servicenetworking.googleapis.com"
  reserved_peering_ranges = [google_compute_global_address.private_ip_address_some_name.name]
}

И я понимаю, что это создаст IP-адрес в моем VPC, но я хочу, чтобы экземпляр postgres был создан внутри определенной подсети внутри моего VPC.

VPC выглядит примерно так:

      dev-01 : {
  vpc_cidr = "x.x.x.x/16"
  subnets = {
    "subnet-a" : ["10.2.1.0/24", "secondary_ip_range/20", "x.x.x.x/20"],
    "subnet-b" : ["10.2.2.0/24", "secondary_ip_range/20", "x.x.x.x/20"],

  }

И ip_configuration в моем модуле postgresql выглядит так:

        ip_configuration = {
    ipv4_enabled       = true                                # Disable public IP
    private_network    = module.vpc.vpc.id                   
    allocated_ip_range = var.network_map[local.env].vpc_cidr 
    require_ssl        = true                               
    authorized_networks = [
      {
        name  = "vpc"
        value = "10.2.1.0/24"
      }
    ]
  }

У меня есть подсеть, настроенная как выход:

      output "subnet-a" {
  value = google_compute_subnetwork.db_a
}

Я попытался ссылаться на это так:

       private_network    = module.vpc.subnet-a.id

но без всякой удачи.

Я как бы растерян, поскольку все попытки указать на подсеть терпели неудачу, и любая помощь будет оценена по достоинству.

0 ответов

Другие вопросы по тегам