This commit is contained in:
2024-12-06 16:31:12 +01:00
commit 3d47fdf0e5
12 changed files with 391 additions and 0 deletions

View File

@@ -0,0 +1,73 @@
resource "google_compute_instance" "vm-front" {
name = "vm-front"
machine_type = var.instance_type
zone = var.zone
boot_disk {
initialize_params {
image = "debian-cloud/debian-11"
size = 10
}
}
network_interface {
subnetwork = var.sub1
access_config {} # IP publique
}
tags = ["web", "ssh"]
metadata = {
enable-oslogin = "TRUE"
}
}
resource "google_compute_instance" "vm-back" {
name = "vm-back"
machine_type = var.instance_type
zone = var.zone
boot_disk {
initialize_params {
image = "debian-cloud/debian-11"
size = 10
}
}
network_interface {
subnetwork = var.sub2
access_config {} # IP publique
}
tags = ["backend", "ssh"]
metadata = {
enable-oslogin = "TRUE"
}
}
resource "google_compute_instance" "vm-database" {
name = "vm-database"
machine_type = var.instance_type
zone = var.zone
boot_disk {
initialize_params {
image = "debian-cloud/debian-11"
size = 20
}
}
network_interface {
subnetwork = var.sub3
access_config {} # IP publique
}
tags = ["database", "ssh"]
metadata = {
enable-oslogin = "TRUE"
}
}

View File

@@ -0,0 +1,18 @@
output "Intern"{
value = {
ip_front = google_compute_instance.vm-front.network_interface[0].network_ip,
ip_back = google_compute_instance.vm-back.network_interface[0].network_ip,
ip_db = google_compute_instance.vm-database.network_interface[0].network_ip
}
}
output "frontend_public_ip" {
value = google_compute_instance.vm-front.network_interface[0].access_config[0].nat_ip
}
output "name"{
value = {
name_frontend = google_compute_instance.vm-front.name
name_backend = google_compute_instance.vm-back.name
name_database = google_compute_instance.vm-database.name
}
}

View File

@@ -0,0 +1,25 @@
variable "instance_type" {
description = "type d'instance"
type = string
}
variable "zone" {
description = "zone"
type = string
}
variable "sub1"{
description = "subnet1 frontend"
type = string
}
variable "sub2"{
description = "subnet2 backend"
type = string
}
variable "sub3"{
description = "subnet3 database"
type = string
}