Я пытаюсь установить пиринговое соединение между двумя сетями VPC.
Одна сеть (транзитная) настраивает статические маршруты, и я хотел бы, чтобы они распространялись в одноранговую сеть.
Вот пример:
...
data "google_compute_network" "transit-network" {
project = var.transit_project_id
name = var.transit_network
}
resource "google_compute_network_peering" "to-transit" {
name = "${var.project}-transit"
network = "${google_compute_network.vpc_network.self_link}"
peer_network = data.google_compute_network.transit-network.self_link
}
resource "google_compute_network_peering" "from-transit" {
name = "transit-${var.project}"
network = data.google_compute_network.transit-network.self_link
peer_network = "${google_compute_network.vpc_network.self_link}"
}
...
Я знаю, что это просто через консоль GCP, но я не могу найти способ сделать это через terraform.
Из API кажется, что с помощью поля peering.exchangeSubnetRoutes
РЕДАКТИРОВАТЬ: Я нашел решение, используя google-beta
провайдер:
resource "google_compute_network_peering" "to-transit" {
name = "${var.project}-transit"
provider = "google-beta"
network = "${google_compute_network.vpc_network.self_link}"
peer_network = data.google_compute_network.transit-network.self_link
import_custom_routes = true
}
resource "google_compute_network_peering" "from-transit" {
name = "transit-${var.project}"
provider = "google-beta"
network = data.google_compute_network.transit-network.self_link
peer_network = "${google_compute_network.vpc_network.self_link}"
export_custom_routes = true
}
Используя beta
провайдер я могу указать import_custom_routes
и export_custom_routes