forked from pierront/but3-iac
81 lines
1.6 KiB
HCL
81 lines
1.6 KiB
HCL
locals {
|
|
disk_config = {
|
|
frontend = 10
|
|
backend = 10
|
|
database = 20
|
|
}
|
|
}
|
|
|
|
resource "google_compute_instance" "frontend_instance" {
|
|
project = var.project_id
|
|
name = "frontend-instance"
|
|
machine_type = var.instance_type
|
|
zone = var.zone
|
|
tags = ["frontend", "ssh"]
|
|
|
|
boot_disk {
|
|
initialize_params {
|
|
image = var.image
|
|
size = local.disk_config.frontend
|
|
}
|
|
}
|
|
|
|
network_interface {
|
|
subnetwork = var.frontend_subnet_id
|
|
access_config {
|
|
# IP publique (éphémère)
|
|
}
|
|
}
|
|
|
|
metadata = {
|
|
enable-oslogin = "TRUE"
|
|
}
|
|
}
|
|
|
|
resource "google_compute_instance" "backend_instance" {
|
|
project = var.project_id
|
|
name = "backend-instance"
|
|
machine_type = var.instance_type
|
|
zone = var.zone
|
|
tags = ["backend", "ssh"]
|
|
|
|
boot_disk {
|
|
initialize_params {
|
|
image = var.image
|
|
size = local.disk_config.backend
|
|
}
|
|
}
|
|
|
|
network_interface {
|
|
subnetwork = var.backend_subnet_id
|
|
# Pas de bloc access_config pour IP interne seulement
|
|
}
|
|
|
|
metadata = {
|
|
enable-oslogin = "TRUE"
|
|
}
|
|
}
|
|
|
|
resource "google_compute_instance" "database_instance" {
|
|
project = var.project_id
|
|
name = "database-instance"
|
|
machine_type = var.instance_type
|
|
zone = var.zone
|
|
tags = ["database", "ssh"]
|
|
|
|
boot_disk {
|
|
initialize_params {
|
|
image = var.image
|
|
size = local.disk_config.database
|
|
}
|
|
}
|
|
|
|
network_interface {
|
|
subnetwork = var.database_subnet_id
|
|
# Pas de bloc access_config pour IP interne seulement
|
|
}
|
|
|
|
metadata = {
|
|
enable-oslogin = "TRUE"
|
|
}
|
|
} |