-
Notifications
You must be signed in to change notification settings - Fork 150
/
Copy pathvpc.tf
50 lines (44 loc) · 1.82 KB
/
vpc.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
resource "google_compute_network" "dbx_private_vpc" {
project = var.google_project
name = "${var.prefix}-${random_string.suffix.result}"
auto_create_subnetworks = false
}
resource "google_compute_subnetwork" "network-with-private-secondary-ip-ranges" {
name = var.subnet_name
ip_cidr_range = var.subnet_ip_cidr_range
region = var.google_region
network = google_compute_network.dbx_private_vpc.id
secondary_ip_range {
range_name = "pods"
ip_cidr_range = var.pod_ip_cidr_range
}
secondary_ip_range {
range_name = "svc"
ip_cidr_range = var.svc_ip_cidr_range
}
private_ip_google_access = true
}
resource "google_compute_router" "router" {
name = var.router_name
region = google_compute_subnetwork.network-with-private-secondary-ip-ranges.region
network = google_compute_network.dbx_private_vpc.id
}
resource "google_compute_router_nat" "nat" {
name = var.nat_name
router = google_compute_router.router.name
region = google_compute_router.router.region
nat_ip_allocate_option = "AUTO_ONLY"
source_subnetwork_ip_ranges_to_nat = "ALL_SUBNETWORKS_ALL_IP_RANGES"
}
resource "databricks_mws_networks" "databricks_network" {
account_id = var.databricks_account_id
network_name = "${var.prefix}-${random_string.suffix.result}"
gcp_network_info {
network_project_id = var.google_project
vpc_id = google_compute_network.dbx_private_vpc.name
subnet_id = google_compute_subnetwork.network-with-private-secondary-ip-ranges.name
subnet_region = google_compute_subnetwork.network-with-private-secondary-ip-ranges.region
pod_ip_range_name = "pods"
service_ip_range_name = "svc"
}
}