From ebd9b043a5e1e030d663b2b8458656cff71833a3 Mon Sep 17 00:00:00 2001 From: nelet Date: Fri, 6 Dec 2024 02:43:07 +0100 Subject: [PATCH] oui --- .../terraform/environments/dev/variables.tf | 31 +++++------ tp-cloud/terraform/modules/network/main.tf | 53 ++++++++++++------- .../terraform/modules/network/variables.tf | 23 ++++---- 3 files changed, 63 insertions(+), 44 deletions(-) diff --git a/tp-cloud/terraform/environments/dev/variables.tf b/tp-cloud/terraform/environments/dev/variables.tf index eb2d358..624e93a 100644 --- a/tp-cloud/terraform/environments/dev/variables.tf +++ b/tp-cloud/terraform/environments/dev/variables.tf @@ -1,43 +1,44 @@ +#- project_name (string) variable "project_name" { - description = "nom du projet" + description = "Nom du projet" type = string - default = "tp-1-docker" + default = "but3-automatisation" } - +#- project_id (string) variable "project_id" { description = "ID du projet" type = string - default = "tp-1-docker" + default = "but3-automatisation" } - +# - region (string) variable "region" { - description = "region du projet" + description = "Région du projet" type = string default = "europe-west4" } - +# - frontend_cidr (string) variable "frontend_cidr" { - description = "frontend" + description = "cidr du frontend" type = string default = "10.0.1.0/24" } - +# - backend_cidr (string) variable "backend_cidr" { - description = "backend" + description = "cidr du backend" type = string default = "10.0.2.0/24" } - +# - database_cidr (string) variable "database_cidr" { - description = "database" + description = "cidr du database" type = string default = "10.0.3.0/24" } - +# - ssh_source_ranges (string) variable "ssh_source_ranges" { - description = "acces internet" + description = "Accès à internet" type = string - default = "0.0.0.0/24" + default = "0.0.0.0/0" } variable "cidr_range" { diff --git a/tp-cloud/terraform/modules/network/main.tf b/tp-cloud/terraform/modules/network/main.tf index 619ea46..cb2b5f9 100644 --- a/tp-cloud/terraform/modules/network/main.tf +++ b/tp-cloud/terraform/modules/network/main.tf @@ -1,43 +1,60 @@ +# VPC resource "google_compute_network" "vpc" { - name = "monvpc" + name = "myvpc" auto_create_subnetworks = false } -resource "google_compute_subnetwork" "frontend" { - name = "frontend" +# Sous-réseau +resource "google_compute_subnetwork" "frontend_subnet" { + name = "frontend-subnet" network = google_compute_network.vpc.id ip_cidr_range = var.frontend_cidr region = var.region } -resource "google_compute_subnetwork" "backend" { - name = "frontend" +# Sous-réseau +resource "google_compute_subnetwork" "backend_subnet" { + name = "backend-subnet" network = google_compute_network.vpc.id ip_cidr_range = var.backend_cidr region = var.region } -resource "google_compute_subnetwork" "database" { - name = "database" +# Sous-réseau +resource "google_compute_subnetwork" "database_subnet" { + name = "database-subnet" network = google_compute_network.vpc.id ip_cidr_range = var.database_cidr region = var.region } -resource "google_compute_firewall" "allow-http-https" { - name = "allow-http-https" +resource "google_compute_firewall" "allow_http" { + name = "allow-http" network = google_compute_network.vpc.id allow { protocol = "tcp" - ports = ["80", "443"] + ports = ["80"] } source_ranges = ["0.0.0.0/0"] target_tags = ["web"] } -resource "google_compute_firewall" "allow-ssh" { +resource "google_compute_firewall" "allow_https" { + name = "allow-https" + network = google_compute_network.vpc.id + + allow { + protocol = "tcp" + ports = ["443"] + } + + source_ranges = ["0.0.0.0/0"] + target_tags = ["web"] +} + +resource "google_compute_firewall" "allow_ssh" { name = "allow-ssh" network = google_compute_network.vpc.id @@ -47,11 +64,11 @@ resource "google_compute_firewall" "allow-ssh" { } source_ranges = [var.ssh_source_ranges] - target_tags = ["web"] + target_tags = ["ssh"] } -resource "google_compute_firewall" "front-to-back" { - name = "front-to-back" +resource "google_compute_firewall" "allow_frontend_to_backend" { + name = "allow-frontend-to-backend" network = google_compute_network.vpc.id allow { @@ -60,11 +77,11 @@ resource "google_compute_firewall" "front-to-back" { } source_ranges = [var.frontend_cidr] - target_tags = ["backend"] + target_tags = ["web"] } -resource "google_compute_firewall" "back-to-db" { - name = "back-to-db" +resource "google_compute_firewall" "allow-sql" { + name = "allow-sql" network = google_compute_network.vpc.id allow { @@ -73,5 +90,5 @@ resource "google_compute_firewall" "back-to-db" { } source_ranges = [var.backend_cidr] - target_tags = ["database"] + target_tags = ["web"] } \ No newline at end of file diff --git a/tp-cloud/terraform/modules/network/variables.tf b/tp-cloud/terraform/modules/network/variables.tf index 97e713d..e56ec80 100644 --- a/tp-cloud/terraform/modules/network/variables.tf +++ b/tp-cloud/terraform/modules/network/variables.tf @@ -1,30 +1,31 @@ +#- project_name (string) variable "project_name" { - description = "ID du projet" + description = "Nom du projet" type = string } - +# - region (string) variable "region" { - description = "region du projet" + description = "Région du projet" type = string } - +# - frontend_cidr (string) variable "frontend_cidr" { - description = "frontend" + description = "cidr du frontend" type = string } - +# - backend_cidr (string) variable "backend_cidr" { - description = "backend" + description = "cidr du backend" type = string } - +# - database_cidr (string) variable "database_cidr" { - description = "database" + description = "cidr du database" type = string } - +# - ssh_source_ranges (string) variable "ssh_source_ranges" { - description = "acces internet" + description = "Accès à internet" type = string }