Workspace per i vari laboratori.

This commit is contained in:
Andrea Dell'Amico 2024-02-02 16:29:25 +01:00
parent 62f2de4db9
commit cfdf06ffb7
Signed by: adellam
GPG Key ID: 147ABE6CEB9E20FF
15 changed files with 2319 additions and 93 deletions

View File

@ -0,0 +1,186 @@
# Define required providers
terraform {
required_version = ">= 0.14.0"
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "~> 1.53.0"
}
}
}
provider "openstack" {
cloud = "ISTI-Cloud"
}
module "labs_common_variables" {
source = "../../modules/labs_common_variables"
}
# Main module
module "main_private_net_and_dns_zone" {
source = "../../modules/labs_private_net_and_dns_zone"
dns_zone = {
zone_name = "aimh.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the AIMH project"
ttl = 8600
}
os_project_data = {
name = "aimh-lab-cloud"
id = "06348cbac43745af804d0a5ede6b1113"
}
main_private_network = {
name = "aimh-cloud-main"
description = "AIMH private network (use this as the main network)"
}
main_private_subnet = {
name = "aimh-cloud-main-subnet"
description = "AIMH main private subnet"
cidr = "10.14.0.0/21"
gateway_ip = "10.14.0.1"
allocation_start = "10.14.1.1"
allocation_end = "10.14.7.254"
}
external_router = {
name = "aimh-lab-cloud-external-router"
description = "AIMH main router"
}
default_firewall_rules_map = {
"ssh_from_isti_net" = {
description = "SSH from the ISTI network"
source = module.labs_common_variables.ssh_sources.isti_net_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_1" = {
description = "SSH from the S2I2S VPN 1"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_1_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_2" = {
description = "SSH from the S2I2S VPN 2"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_2_cidr
port_min = 22
port_max = 22
},
"http_from_everywhere" = {
description = "HTTP from everywhere"
source = "0.0.0.0/0"
port_min = 80
port_max = 80
},
"https_from_everywhere" = {
description = "HTTPS from everywhere"
source = "0.0.0.0/0"
port_min = 443
port_max = 443
}
}
}
output "os_project_data" {
value = module.main_private_net_and_dns_zone.os_project_data
}
output "dns_zone" {
value = module.main_private_net_and_dns_zone.dns_zone
}
output "dns_zone_id" {
value = module.main_private_net_and_dns_zone.dns_zone_id
}
output "main_private_network" {
value = module.main_private_net_and_dns_zone.main_private_network
}
output "main_private_network_id" {
value = module.main_private_net_and_dns_zone.main_private_network_id
}
output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network
}
output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id
}
output "external_gateway_ip" {
value = module.main_private_net_and_dns_zone.external_gateway_ip
}
output "main_region" {
value = module.labs_common_variables.main_region
}
output "external_network" {
value = module.labs_common_variables.external_network
}
output "external_network_id" {
value = module.labs_common_variables.external_network.id
}
output "floating_ip_pools" {
value = module.labs_common_variables.floating_ip_pools
}
output "resolvers_ip" {
value = module.labs_common_variables.resolvers_ip
}
output "mtu_size" {
value = module.labs_common_variables.mtu_size
}
output "availability_zones_names" {
value = module.labs_common_variables.availability_zones_names
}
output "availability_zone_no_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_no_gpu
}
output "availability_zone_with_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_with_gpu
}
output "ssh_sources" {
value = module.labs_common_variables.ssh_sources
}
output "ubuntu_2204" {
value = module.labs_common_variables.ubuntu_2204
}
output "centos_7" {
value = module.labs_common_variables.centos_7
}
output "almalinux_9" {
value = module.labs_common_variables.almalinux_9
}
output "ubuntu2204_data_file" {
value = module.labs_common_variables.ubuntu2204_data_file
}
output "el7_data_file" {
value = module.labs_common_variables.el7_data_file
}
output "policy_list" {
value = module.labs_common_variables.policy_list
}
output "flavor_list" {
value = module.labs_common_variables.flavor_list
}
output "default_security_group_name" {
value = module.labs_common_variables.default_security_group_name
}

View File

@ -0,0 +1,186 @@
# Define required providers
terraform {
required_version = ">= 0.14.0"
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "~> 1.53.0"
}
}
}
provider "openstack" {
cloud = "ISTI-Cloud"
}
module "labs_common_variables" {
source = "../../modules/labs_common_variables"
}
# Main module
module "main_private_net_and_dns_zone" {
source = "../../modules/labs_private_net_and_dns_zone"
dns_zone = {
zone_name = "mms.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the MMS project"
ttl = 8600
}
os_project_data = {
name = "mms-lab-cloud"
id = "a10b7a53a17a4f86a4601cbfeb7d7fdc"
}
main_private_network = {
name = "mms-cloud-main"
description = "MMS private network (use this as the main network)"
}
main_private_subnet = {
name = "mms-cloud-main-subnet"
description = "MMS main private subnet"
cidr = "10.21.0.0/21"
gateway_ip = "10.21.0.1"
allocation_start = "10.21.1.1"
allocation_end = "10.21.7.254"
}
external_router = {
name = "mms-lab-cloud-external-router"
description = "MMS main router"
}
default_firewall_rules_map = {
"ssh_from_isti_net" = {
description = "SSH from the ISTI network"
source = module.labs_common_variables.ssh_sources.isti_net_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_1" = {
description = "SSH from the S2I2S VPN 1"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_1_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_2" = {
description = "SSH from the S2I2S VPN 2"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_2_cidr
port_min = 22
port_max = 22
},
"http_from_everywhere" = {
description = "HTTP from everywhere"
source = "0.0.0.0/0"
port_min = 80
port_max = 80
},
"https_from_everywhere" = {
description = "HTTPS from everywhere"
source = "0.0.0.0/0"
port_min = 443
port_max = 443
}
}
}
output "os_project_data" {
value = module.main_private_net_and_dns_zone.os_project_data
}
output "dns_zone" {
value = module.main_private_net_and_dns_zone.dns_zone
}
output "dns_zone_id" {
value = module.main_private_net_and_dns_zone.dns_zone_id
}
output "main_private_network" {
value = module.main_private_net_and_dns_zone.main_private_network
}
output "main_private_network_id" {
value = module.main_private_net_and_dns_zone.main_private_network_id
}
output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network
}
output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id
}
output "external_gateway_ip" {
value = module.main_private_net_and_dns_zone.external_gateway_ip
}
output "main_region" {
value = module.labs_common_variables.main_region
}
output "external_network" {
value = module.labs_common_variables.external_network
}
output "external_network_id" {
value = module.labs_common_variables.external_network.id
}
output "floating_ip_pools" {
value = module.labs_common_variables.floating_ip_pools
}
output "resolvers_ip" {
value = module.labs_common_variables.resolvers_ip
}
output "mtu_size" {
value = module.labs_common_variables.mtu_size
}
output "availability_zones_names" {
value = module.labs_common_variables.availability_zones_names
}
output "availability_zone_no_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_no_gpu
}
output "availability_zone_with_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_with_gpu
}
output "ssh_sources" {
value = module.labs_common_variables.ssh_sources
}
output "ubuntu_2204" {
value = module.labs_common_variables.ubuntu_2204
}
output "centos_7" {
value = module.labs_common_variables.centos_7
}
output "almalinux_9" {
value = module.labs_common_variables.almalinux_9
}
output "ubuntu2204_data_file" {
value = module.labs_common_variables.ubuntu2204_data_file
}
output "el7_data_file" {
value = module.labs_common_variables.el7_data_file
}
output "policy_list" {
value = module.labs_common_variables.policy_list
}
output "flavor_list" {
value = module.labs_common_variables.flavor_list
}
output "default_security_group_name" {
value = module.labs_common_variables.default_security_group_name
}

View File

@ -0,0 +1,186 @@
# Define required providers
terraform {
required_version = ">= 0.14.0"
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "~> 1.53.0"
}
}
}
provider "openstack" {
cloud = "ISTI-Cloud"
}
module "labs_common_variables" {
source = "../../modules/labs_common_variables"
}
# Main module
module "main_private_net_and_dns_zone" {
source = "../../modules/labs_private_net_and_dns_zone"
dns_zone = {
zone_name = "fmt.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the FMT project"
ttl = 8600
}
os_project_data = {
name = "fmt-lab-cloud"
id = "3100ec634ead45ec9301a57c55da1d91"
}
main_private_network = {
name = "fmt-cloud-main"
description = "FMT private network (use this as the main network)"
}
main_private_subnet = {
name = "fmt-cloud-main-subnet"
description = "FMT main private subnet"
cidr = "10.15.0.0/21"
gateway_ip = "10.15.0.1"
allocation_start = "10.15.1.1"
allocation_end = "10.15.7.254"
}
external_router = {
name = "fmt-lab-cloud-external-router"
description = "FMT main router"
}
default_firewall_rules_map = {
"ssh_from_isti_net" = {
description = "SSH from the ISTI network"
source = module.labs_common_variables.ssh_sources.isti_net_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_1" = {
description = "SSH from the S2I2S VPN 1"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_1_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_2" = {
description = "SSH from the S2I2S VPN 2"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_2_cidr
port_min = 22
port_max = 22
},
"http_from_everywhere" = {
description = "HTTP from everywhere"
source = "0.0.0.0/0"
port_min = 80
port_max = 80
},
"https_from_everywhere" = {
description = "HTTPS from everywhere"
source = "0.0.0.0/0"
port_min = 443
port_max = 443
}
}
}
output "os_project_data" {
value = module.main_private_net_and_dns_zone.os_project_data
}
output "dns_zone" {
value = module.main_private_net_and_dns_zone.dns_zone
}
output "dns_zone_id" {
value = module.main_private_net_and_dns_zone.dns_zone_id
}
output "main_private_network" {
value = module.main_private_net_and_dns_zone.main_private_network
}
output "main_private_network_id" {
value = module.main_private_net_and_dns_zone.main_private_network_id
}
output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network
}
output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id
}
output "external_gateway_ip" {
value = module.main_private_net_and_dns_zone.external_gateway_ip
}
output "main_region" {
value = module.labs_common_variables.main_region
}
output "external_network" {
value = module.labs_common_variables.external_network
}
output "external_network_id" {
value = module.labs_common_variables.external_network.id
}
output "floating_ip_pools" {
value = module.labs_common_variables.floating_ip_pools
}
output "resolvers_ip" {
value = module.labs_common_variables.resolvers_ip
}
output "mtu_size" {
value = module.labs_common_variables.mtu_size
}
output "availability_zones_names" {
value = module.labs_common_variables.availability_zones_names
}
output "availability_zone_no_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_no_gpu
}
output "availability_zone_with_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_with_gpu
}
output "ssh_sources" {
value = module.labs_common_variables.ssh_sources
}
output "ubuntu_2204" {
value = module.labs_common_variables.ubuntu_2204
}
output "centos_7" {
value = module.labs_common_variables.centos_7
}
output "almalinux_9" {
value = module.labs_common_variables.almalinux_9
}
output "ubuntu2204_data_file" {
value = module.labs_common_variables.ubuntu2204_data_file
}
output "el7_data_file" {
value = module.labs_common_variables.el7_data_file
}
output "policy_list" {
value = module.labs_common_variables.policy_list
}
output "flavor_list" {
value = module.labs_common_variables.flavor_list
}
output "default_security_group_name" {
value = module.labs_common_variables.default_security_group_name
}

View File

@ -0,0 +1,186 @@
# Define required providers
terraform {
required_version = ">= 0.14.0"
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "~> 1.53.0"
}
}
}
provider "openstack" {
cloud = "ISTI-Cloud"
}
module "labs_common_variables" {
source = "../../modules/labs_common_variables"
}
# Main module
module "main_private_net_and_dns_zone" {
source = "../../modules/labs_private_net_and_dns_zone"
dns_zone = {
zone_name = "hiis.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the HIIS project"
ttl = 8600
}
os_project_data = {
name = "hiis-lab-cloud"
id = "8d4049974a4649e8ab5f63636de261d8"
}
main_private_network = {
name = "hiis-lab-cloud-main"
description = "HIIS private network (use this as the main network)"
}
main_private_subnet = {
name = "hiis-lab-cloud-main-subnet"
description = "HIIS main private subnet"
cidr = "10.5.0.0/22"
gateway_ip = "10.5.0.1"
allocation_start = "10.5.1.1"
allocation_end = "10.5.7.254"
}
external_router = {
name = "hiis-lab-cloud-external-router"
description = "HIIS main router"
}
default_firewall_rules_map = {
"ssh_from_isti_net" = {
description = "SSH from the ISTI network"
source = module.labs_common_variables.ssh_sources.isti_net_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_1" = {
description = "SSH from the S2I2S VPN 1"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_1_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_2" = {
description = "SSH from the S2I2S VPN 2"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_2_cidr
port_min = 22
port_max = 22
},
"http_from_everywhere" = {
description = "HTTP from everywhere"
source = "0.0.0.0/0"
port_min = 80
port_max = 80
},
"https_from_everywhere" = {
description = "HTTPS from everywhere"
source = "0.0.0.0/0"
port_min = 443
port_max = 443
}
}
}
output "os_project_data" {
value = module.main_private_net_and_dns_zone.os_project_data
}
output "dns_zone" {
value = module.main_private_net_and_dns_zone.dns_zone
}
output "dns_zone_id" {
value = module.main_private_net_and_dns_zone.dns_zone_id
}
output "main_private_network" {
value = module.main_private_net_and_dns_zone.main_private_network
}
output "main_private_network_id" {
value = module.main_private_net_and_dns_zone.main_private_network_id
}
output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network
}
output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id
}
output "external_gateway_ip" {
value = module.main_private_net_and_dns_zone.external_gateway_ip
}
output "main_region" {
value = module.labs_common_variables.main_region
}
output "external_network" {
value = module.labs_common_variables.external_network
}
output "external_network_id" {
value = module.labs_common_variables.external_network.id
}
output "floating_ip_pools" {
value = module.labs_common_variables.floating_ip_pools
}
output "resolvers_ip" {
value = module.labs_common_variables.resolvers_ip
}
output "mtu_size" {
value = module.labs_common_variables.mtu_size
}
output "availability_zones_names" {
value = module.labs_common_variables.availability_zones_names
}
output "availability_zone_no_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_no_gpu
}
output "availability_zone_with_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_with_gpu
}
output "ssh_sources" {
value = module.labs_common_variables.ssh_sources
}
output "ubuntu_2204" {
value = module.labs_common_variables.ubuntu_2204
}
output "centos_7" {
value = module.labs_common_variables.centos_7
}
output "almalinux_9" {
value = module.labs_common_variables.almalinux_9
}
output "ubuntu2204_data_file" {
value = module.labs_common_variables.ubuntu2204_data_file
}
output "el7_data_file" {
value = module.labs_common_variables.el7_data_file
}
output "policy_list" {
value = module.labs_common_variables.policy_list
}
output "flavor_list" {
value = module.labs_common_variables.flavor_list
}
output "default_security_group_name" {
value = module.labs_common_variables.default_security_group_name
}

View File

@ -10,7 +10,6 @@ terraform {
} }
provider "openstack" { provider "openstack" {
# cloud = "hpc-lab"
cloud = "ISTI-Cloud" cloud = "ISTI-Cloud"
} }
@ -23,28 +22,29 @@ module "main_private_net_and_dns_zone" {
dns_zone = { dns_zone = {
zone_name = "hpc.cloud.isti.cnr.it." zone_name = "hpc.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it" email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the hpc-lab project" description = "DNS primary zone for the HPC project"
ttl = 8600 ttl = 8600
} }
os_project_data = { os_project_data = {
name = "hpc-lab-cloud" name = "hpc-lab-cloud"
id = "adaf7e28a31e465795359fcde26398b7" id = "adaf7e28a31e465795359fcde26398b7"
} }
main_private_network = { main_private_network = {
name = "hpc-cloud-main" name = "hpc-cloud-main"
description = "HPC lab private network (use this as the main network)" description = "HPC private network (use this as the main network)"
} }
main_private_subnet = { main_private_subnet = {
name = "hpc-cloud-main-subnet" name = "hpc-cloud-main-subnet"
description = "HPC lab main private subnet" description = "HPC main private subnet"
cidr = "10.13.0.0/21" cidr = "10.13.0.0/21"
gateway_ip = "10.13.0.1" gateway_ip = "10.13.0.1"
allocation_start = "10.13.1.1" allocation_start = "10.13.1.1"
allocation_end = "10.13.7.254" allocation_end = "10.13.7.254"
} }
external_router = { external_router = {
name = "hpc-cloud-external-router" name = "hpc-lab-cloud-external-router"
description = "HPC lab main router" description = "HPC main router"
} }
default_firewall_rules_map = { default_firewall_rules_map = {
"ssh_from_isti_net" = { "ssh_from_isti_net" = {
@ -104,7 +104,6 @@ output "main_private_network_id" {
output "main_subnet_network" { output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network value = module.main_private_net_and_dns_zone.main_subnet_network
} }
output "main_subnet_network_id" { output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id value = module.main_private_net_and_dns_zone.main_subnet_network_id
} }

View File

@ -0,0 +1,186 @@
# Define required providers
terraform {
required_version = ">= 0.14.0"
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "~> 1.53.0"
}
}
}
provider "openstack" {
cloud = "ISTI-Cloud"
}
module "labs_common_variables" {
source = "../../modules/labs_common_variables"
}
# Main module
module "main_private_net_and_dns_zone" {
source = "../../modules/labs_private_net_and_dns_zone"
dns_zone = {
zone_name = "infrascience.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the InfraScience project"
ttl = 8600
}
os_project_data = {
name = "infrascience-lab-cloud"
id = "3511cd5293dc435ea421aeb0edcfab43"
}
main_private_network = {
name = "infrascience-cloud-main"
description = "InfraScience private network (use this as the main network)"
}
main_private_subnet = {
name = "infrascience-cloud-main-subnet"
description = "InfraScience main private subnet"
cidr = "10.16.0.0/21"
gateway_ip = "10.16.0.1"
allocation_start = "10.16.1.1"
allocation_end = "10.16.7.254"
}
external_router = {
name = "infrascience-lab-cloud-external-router"
description = "InfraScience main router"
}
default_firewall_rules_map = {
"ssh_from_isti_net" = {
description = "SSH from the ISTI network"
source = module.labs_common_variables.ssh_sources.isti_net_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_1" = {
description = "SSH from the S2I2S VPN 1"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_1_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_2" = {
description = "SSH from the S2I2S VPN 2"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_2_cidr
port_min = 22
port_max = 22
},
"http_from_everywhere" = {
description = "HTTP from everywhere"
source = "0.0.0.0/0"
port_min = 80
port_max = 80
},
"https_from_everywhere" = {
description = "HTTPS from everywhere"
source = "0.0.0.0/0"
port_min = 443
port_max = 443
}
}
}
output "os_project_data" {
value = module.main_private_net_and_dns_zone.os_project_data
}
output "dns_zone" {
value = module.main_private_net_and_dns_zone.dns_zone
}
output "dns_zone_id" {
value = module.main_private_net_and_dns_zone.dns_zone_id
}
output "main_private_network" {
value = module.main_private_net_and_dns_zone.main_private_network
}
output "main_private_network_id" {
value = module.main_private_net_and_dns_zone.main_private_network_id
}
output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network
}
output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id
}
output "external_gateway_ip" {
value = module.main_private_net_and_dns_zone.external_gateway_ip
}
output "main_region" {
value = module.labs_common_variables.main_region
}
output "external_network" {
value = module.labs_common_variables.external_network
}
output "external_network_id" {
value = module.labs_common_variables.external_network.id
}
output "floating_ip_pools" {
value = module.labs_common_variables.floating_ip_pools
}
output "resolvers_ip" {
value = module.labs_common_variables.resolvers_ip
}
output "mtu_size" {
value = module.labs_common_variables.mtu_size
}
output "availability_zones_names" {
value = module.labs_common_variables.availability_zones_names
}
output "availability_zone_no_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_no_gpu
}
output "availability_zone_with_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_with_gpu
}
output "ssh_sources" {
value = module.labs_common_variables.ssh_sources
}
output "ubuntu_2204" {
value = module.labs_common_variables.ubuntu_2204
}
output "centos_7" {
value = module.labs_common_variables.centos_7
}
output "almalinux_9" {
value = module.labs_common_variables.almalinux_9
}
output "ubuntu2204_data_file" {
value = module.labs_common_variables.ubuntu2204_data_file
}
output "el7_data_file" {
value = module.labs_common_variables.el7_data_file
}
output "policy_list" {
value = module.labs_common_variables.policy_list
}
output "flavor_list" {
value = module.labs_common_variables.flavor_list
}
output "default_security_group_name" {
value = module.labs_common_variables.default_security_group_name
}

View File

@ -10,7 +10,6 @@ terraform {
} }
provider "openstack" { provider "openstack" {
# cloud = "kdd-lab"
cloud = "ISTI-Cloud" cloud = "ISTI-Cloud"
} }
@ -23,7 +22,7 @@ module "main_private_net_and_dns_zone" {
dns_zone = { dns_zone = {
zone_name = "kdd.cloud.isti.cnr.it." zone_name = "kdd.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it" email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the kdd-lab project" description = "DNS primary zone for the KDD project"
ttl = 8600 ttl = 8600
} }
os_project_data = { os_project_data = {
@ -37,14 +36,14 @@ module "main_private_net_and_dns_zone" {
} }
main_private_subnet = { main_private_subnet = {
name = "kdd-cloud-main-subnet" name = "kdd-cloud-main-subnet"
description = "kdd main private subnet" description = "KDD main private subnet"
cidr = "10.12.0.0/21" cidr = "10.12.0.0/21"
gateway_ip = "10.12.0.1" gateway_ip = "10.12.0.1"
allocation_start = "10.12.1.1" allocation_start = "10.12.1.1"
allocation_end = "10.12.7.254" allocation_end = "10.12.7.254"
} }
external_router = { external_router = {
name = "kdd-cloud-external-router" name = "kdd-lab-cloud-external-router"
description = "KDD main router" description = "KDD main router"
} }
default_firewall_rules_map = { default_firewall_rules_map = {

View File

@ -0,0 +1,186 @@
# Define required providers
terraform {
required_version = ">= 0.14.0"
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "~> 1.53.0"
}
}
}
provider "openstack" {
cloud = "ISTI-Cloud"
}
module "labs_common_variables" {
source = "../../modules/labs_common_variables"
}
# Main module
module "main_private_net_and_dns_zone" {
source = "../../modules/labs_private_net_and_dns_zone"
dns_zone = {
zone_name = "mms.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the MMS project"
ttl = 8600
}
os_project_data = {
name = "mms-lab-cloud"
id = "a10b7a53a17a4f86a4601cbfeb7d7fdc"
}
main_private_network = {
name = "mms-cloud-main"
description = "MMS private network (use this as the main network)"
}
main_private_subnet = {
name = "mms-cloud-main-subnet"
description = "MMS main private subnet"
cidr = "10.21.0.0/21"
gateway_ip = "10.21.0.1"
allocation_start = "10.21.1.1"
allocation_end = "10.21.7.254"
}
external_router = {
name = "mms-lab-cloud-external-router"
description = "MMS main router"
}
default_firewall_rules_map = {
"ssh_from_isti_net" = {
description = "SSH from the ISTI network"
source = module.labs_common_variables.ssh_sources.isti_net_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_1" = {
description = "SSH from the S2I2S VPN 1"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_1_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_2" = {
description = "SSH from the S2I2S VPN 2"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_2_cidr
port_min = 22
port_max = 22
},
"http_from_everywhere" = {
description = "HTTP from everywhere"
source = "0.0.0.0/0"
port_min = 80
port_max = 80
},
"https_from_everywhere" = {
description = "HTTPS from everywhere"
source = "0.0.0.0/0"
port_min = 443
port_max = 443
}
}
}
output "os_project_data" {
value = module.main_private_net_and_dns_zone.os_project_data
}
output "dns_zone" {
value = module.main_private_net_and_dns_zone.dns_zone
}
output "dns_zone_id" {
value = module.main_private_net_and_dns_zone.dns_zone_id
}
output "main_private_network" {
value = module.main_private_net_and_dns_zone.main_private_network
}
output "main_private_network_id" {
value = module.main_private_net_and_dns_zone.main_private_network_id
}
output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network
}
output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id
}
output "external_gateway_ip" {
value = module.main_private_net_and_dns_zone.external_gateway_ip
}
output "main_region" {
value = module.labs_common_variables.main_region
}
output "external_network" {
value = module.labs_common_variables.external_network
}
output "external_network_id" {
value = module.labs_common_variables.external_network.id
}
output "floating_ip_pools" {
value = module.labs_common_variables.floating_ip_pools
}
output "resolvers_ip" {
value = module.labs_common_variables.resolvers_ip
}
output "mtu_size" {
value = module.labs_common_variables.mtu_size
}
output "availability_zones_names" {
value = module.labs_common_variables.availability_zones_names
}
output "availability_zone_no_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_no_gpu
}
output "availability_zone_with_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_with_gpu
}
output "ssh_sources" {
value = module.labs_common_variables.ssh_sources
}
output "ubuntu_2204" {
value = module.labs_common_variables.ubuntu_2204
}
output "centos_7" {
value = module.labs_common_variables.centos_7
}
output "almalinux_9" {
value = module.labs_common_variables.almalinux_9
}
output "ubuntu2204_data_file" {
value = module.labs_common_variables.ubuntu2204_data_file
}
output "el7_data_file" {
value = module.labs_common_variables.el7_data_file
}
output "policy_list" {
value = module.labs_common_variables.policy_list
}
output "flavor_list" {
value = module.labs_common_variables.flavor_list
}
output "default_security_group_name" {
value = module.labs_common_variables.default_security_group_name
}

View File

@ -10,54 +10,100 @@ terraform {
} }
provider "openstack" { provider "openstack" {
# cloud = "s2i2s-proj"
cloud = "ISTI-Cloud" cloud = "ISTI-Cloud"
} }
module "common_variables" { module "labs_common_variables" {
source = "../../modules/common_variables" source = "../../modules/labs_common_variables"
} }
# Main module # Main module
module "main_private_net_and_dns_zone" { module "main_private_net_and_dns_zone" {
source = "../../modules/main_private_net_and_dns_zone" source = "../../modules/labs_private_net_and_dns_zone"
dns_zone = { dns_zone = {
zone_name = "s2i2s.cloud.isti.cnr.it." zone_name = "s2i2s.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it" email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the d4s-production-cloud project" description = "DNS primary zone for the S2I2S project"
ttl = 8600 ttl = 8600
} }
os_project_data = { os_project_data = {
id = "1b45adf388934758b56d0dfdb4bfacf3" name = "s2i2s-proj"
id = "d58ff441b31d4d0daf4a3e64d5332082"
} }
main_private_network = { main_private_network = {
name = "s2i2s-cloud-main" name = "s2i2s-proj-main"
description = "S2I2S private network (use this as the main network)" description = "S2I2S private network (use this as the main network)"
} }
main_private_subnet = { main_private_subnet = {
name = "s2i2s-production-cloud-main-subnet" name = "s2i2s-proj-main-subnet"
description = "S2I2S main private subnet" description = "S2I2S main private subnet"
cidr = "10.11.0.0/21" cidr = "10.10.0.0/21"
gateway_ip = "10.11.0.1" gateway_ip = "10.10.0.1"
allocation_start = "10.11.1.1" allocation_start = "10.10.1.1"
allocation_end = "10.11.7.254" allocation_end = "10.10.7.254"
} }
external_router = { external_router = {
name = "s2i2s-cloud-external-router" name = "s2i2s-proj-external-router"
description = "S2I2S main router" description = "S2I2S main router"
} }
default_firewall_rules_map = {
"ssh_from_isti_net" = {
description = "SSH from the ISTI network"
source = module.labs_common_variables.ssh_sources.isti_net_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_1" = {
description = "SSH from the S2I2S VPN 1"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_1_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_2" = {
description = "SSH from the S2I2S VPN 2"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_2_cidr
port_min = 22
port_max = 22
},
"http_from_everywhere" = {
description = "HTTP from everywhere"
source = "0.0.0.0/0"
port_min = 80
port_max = 80
},
"https_from_everywhere" = {
description = "HTTPS from everywhere"
source = "0.0.0.0/0"
port_min = 443
port_max = 443
}
}
} }
output "os_project_data" {
value = module.main_private_net_and_dns_zone.os_project_data
}
output "dns_zone" {
value = module.main_private_net_and_dns_zone.dns_zone
}
output "dns_zone_id" { output "dns_zone_id" {
value = module.main_private_net_and_dns_zone.dns_zone_id value = module.main_private_net_and_dns_zone.dns_zone_id
} }
output "main_private_network" {
value = module.main_private_net_and_dns_zone.main_private_network
}
output "main_private_network_id" { output "main_private_network_id" {
value = module.main_private_net_and_dns_zone.main_private_network_id value = module.main_private_net_and_dns_zone.main_private_network_id
} }
output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network
}
output "main_subnet_network_id" { output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id value = module.main_private_net_and_dns_zone.main_subnet_network_id
} }
@ -66,125 +112,75 @@ output "external_gateway_ip" {
value = module.main_private_net_and_dns_zone.external_gateway_ip value = module.main_private_net_and_dns_zone.external_gateway_ip
} }
# Module used
output "main_region" { output "main_region" {
value = module.common_variables.main_region value = module.labs_common_variables.main_region
} }
output "external_network" { output "external_network" {
value = module.common_variables.external_network value = module.labs_common_variables.external_network
} }
output "external_network_id" { output "external_network_id" {
value = module.common_variables.external_network.id value = module.labs_common_variables.external_network.id
} }
output "floating_ip_pools" { output "floating_ip_pools" {
value = module.common_variables.floating_ip_pools value = module.labs_common_variables.floating_ip_pools
} }
output "resolvers_ip" { output "resolvers_ip" {
value = module.common_variables.resolvers_ip value = module.labs_common_variables.resolvers_ip
} }
output "mtu_size" { output "mtu_size" {
value = module.common_variables.mtu_size value = module.labs_common_variables.mtu_size
} }
output "availability_zones_names" { output "availability_zones_names" {
value = module.common_variables.availability_zones_names value = module.labs_common_variables.availability_zones_names
} }
output "availability_zone_no_gpu_name" { output "availability_zone_no_gpu_name" {
value = module.common_variables.availability_zones_names.availability_zone_no_gpu value = module.labs_common_variables.availability_zones_names.availability_zone_no_gpu
} }
output "availability_zone_with_gpu_name" { output "availability_zone_with_gpu_name" {
value = module.common_variables.availability_zones_names.availability_zone_with_gpu value = module.labs_common_variables.availability_zones_names.availability_zone_with_gpu
} }
output "ssh_sources" { output "ssh_sources" {
value = module.common_variables.ssh_sources value = module.labs_common_variables.ssh_sources
}
output "networks_with_d4s_services" {
value = module.common_variables.networks_with_d4s_services
}
output "ubuntu_1804" {
value = module.common_variables.ubuntu_1804
} }
output "ubuntu_2204" { output "ubuntu_2204" {
value = module.common_variables.ubuntu_2204 value = module.labs_common_variables.ubuntu_2204
} }
output "centos_7" { output "centos_7" {
value = module.common_variables.centos_7 value = module.labs_common_variables.centos_7
} }
output "almalinux_9" { output "almalinux_9" {
value = module.common_variables.almalinux_9 value = module.labs_common_variables.almalinux_9
}
output "ubuntu1804_data_file" {
value = module.common_variables.ubuntu1804_data_file
} }
output "ubuntu2204_data_file" { output "ubuntu2204_data_file" {
value = module.common_variables.ubuntu2204_data_file value = module.labs_common_variables.ubuntu2204_data_file
} }
output "el7_data_file" { output "el7_data_file" {
value = module.common_variables.el7_data_file value = module.labs_common_variables.el7_data_file
} }
output "ssh_jump_proxy" {
value = module.common_variables.ssh_jump_proxy
}
output "internal_ca_data" {
value = module.common_variables.internal_ca_data
}
output "prometheus_server_data" {
value = module.common_variables.prometheus_server_data
}
output "shared_postgresql_server_data" {
value = module.common_variables.shared_postgresql_server_data
}
output "haproxy_l7_data" {
value = module.common_variables.haproxy_l7_data
}
output "resource_registry_addresses" {
value = module.common_variables.resource_registry_addresses
}
output "smartexecutor_addresses" {
value = module.common_variables.smartexecutor_addresses
}
#Added by Francesco
output "policy_list" { output "policy_list" {
value = module.common_variables.policy_list value = module.labs_common_variables.policy_list
} }
#Added by Francesco
output "flavor_list" { output "flavor_list" {
value = module.common_variables.flavor_list value = module.labs_common_variables.flavor_list
} }
#Added by Francesco output "default_security_group_name" {
output "security_group_list" { value = module.labs_common_variables.default_security_group_name
value = module.common_variables.security_group_list
}
#Added by Francesco
output "networks_list" {
value = module.common_variables.networks_list
} }

View File

@ -0,0 +1,186 @@
# Define required providers
terraform {
required_version = ">= 0.14.0"
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "~> 1.53.0"
}
}
}
provider "openstack" {
cloud = "ISTI-Cloud"
}
module "labs_common_variables" {
source = "../../modules/labs_common_variables"
}
# Main module
module "main_private_net_and_dns_zone" {
source = "../../modules/labs_private_net_and_dns_zone"
dns_zone = {
zone_name = "sedc.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the SEDC project"
ttl = 8600
}
os_project_data = {
name = "sedc-lab-cloud"
id = "609a5b292eef43f4853a31066a6264a9"
}
main_private_network = {
name = "sedc-cloud-main"
description = "SEDC private network (use this as the main network)"
}
main_private_subnet = {
name = "sedc-cloud-main-subnet"
description = "SEDC main private subnet"
cidr = "10.19.0.0/21"
gateway_ip = "10.19.0.1"
allocation_start = "10.19.1.1"
allocation_end = "10.19.7.254"
}
external_router = {
name = "sedc-lab-cloud-external-router"
description = "SEDC main router"
}
default_firewall_rules_map = {
"ssh_from_isti_net" = {
description = "SSH from the ISTI network"
source = module.labs_common_variables.ssh_sources.isti_net_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_1" = {
description = "SSH from the S2I2S VPN 1"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_1_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_2" = {
description = "SSH from the S2I2S VPN 2"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_2_cidr
port_min = 22
port_max = 22
},
"http_from_everywhere" = {
description = "HTTP from everywhere"
source = "0.0.0.0/0"
port_min = 80
port_max = 80
},
"https_from_everywhere" = {
description = "HTTPS from everywhere"
source = "0.0.0.0/0"
port_min = 443
port_max = 443
}
}
}
output "os_project_data" {
value = module.main_private_net_and_dns_zone.os_project_data
}
output "dns_zone" {
value = module.main_private_net_and_dns_zone.dns_zone
}
output "dns_zone_id" {
value = module.main_private_net_and_dns_zone.dns_zone_id
}
output "main_private_network" {
value = module.main_private_net_and_dns_zone.main_private_network
}
output "main_private_network_id" {
value = module.main_private_net_and_dns_zone.main_private_network_id
}
output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network
}
output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id
}
output "external_gateway_ip" {
value = module.main_private_net_and_dns_zone.external_gateway_ip
}
output "main_region" {
value = module.labs_common_variables.main_region
}
output "external_network" {
value = module.labs_common_variables.external_network
}
output "external_network_id" {
value = module.labs_common_variables.external_network.id
}
output "floating_ip_pools" {
value = module.labs_common_variables.floating_ip_pools
}
output "resolvers_ip" {
value = module.labs_common_variables.resolvers_ip
}
output "mtu_size" {
value = module.labs_common_variables.mtu_size
}
output "availability_zones_names" {
value = module.labs_common_variables.availability_zones_names
}
output "availability_zone_no_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_no_gpu
}
output "availability_zone_with_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_with_gpu
}
output "ssh_sources" {
value = module.labs_common_variables.ssh_sources
}
output "ubuntu_2204" {
value = module.labs_common_variables.ubuntu_2204
}
output "centos_7" {
value = module.labs_common_variables.centos_7
}
output "almalinux_9" {
value = module.labs_common_variables.almalinux_9
}
output "ubuntu2204_data_file" {
value = module.labs_common_variables.ubuntu2204_data_file
}
output "el7_data_file" {
value = module.labs_common_variables.el7_data_file
}
output "policy_list" {
value = module.labs_common_variables.policy_list
}
output "flavor_list" {
value = module.labs_common_variables.flavor_list
}
output "default_security_group_name" {
value = module.labs_common_variables.default_security_group_name
}

View File

@ -0,0 +1,186 @@
# Define required providers
terraform {
required_version = ">= 0.14.0"
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "~> 1.53.0"
}
}
}
provider "openstack" {
cloud = "ISTI-Cloud"
}
module "labs_common_variables" {
source = "../../modules/labs_common_variables"
}
# Main module
module "main_private_net_and_dns_zone" {
source = "../../modules/labs_private_net_and_dns_zone"
dns_zone = {
zone_name = "sfd.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the SFD project"
ttl = 8600
}
os_project_data = {
name = "sfd-lab-cloud"
id = "74694a66501540acaf45dedb0652de8b"
}
main_private_network = {
name = "sfd-cloud-main"
description = "SFD private network (use this as the main network)"
}
main_private_subnet = {
name = "sfd-cloud-main-subnet"
description = "SFD main private subnet"
cidr = "10.20.0.0/21"
gateway_ip = "10.20.0.1"
allocation_start = "10.20.1.1"
allocation_end = "10.20.7.254"
}
external_router = {
name = "sfd-lab-cloud-external-router"
description = "SFD main router"
}
default_firewall_rules_map = {
"ssh_from_isti_net" = {
description = "SSH from the ISTI network"
source = module.labs_common_variables.ssh_sources.isti_net_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_1" = {
description = "SSH from the S2I2S VPN 1"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_1_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_2" = {
description = "SSH from the S2I2S VPN 2"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_2_cidr
port_min = 22
port_max = 22
},
"http_from_everywhere" = {
description = "HTTP from everywhere"
source = "0.0.0.0/0"
port_min = 80
port_max = 80
},
"https_from_everywhere" = {
description = "HTTPS from everywhere"
source = "0.0.0.0/0"
port_min = 443
port_max = 443
}
}
}
output "os_project_data" {
value = module.main_private_net_and_dns_zone.os_project_data
}
output "dns_zone" {
value = module.main_private_net_and_dns_zone.dns_zone
}
output "dns_zone_id" {
value = module.main_private_net_and_dns_zone.dns_zone_id
}
output "main_private_network" {
value = module.main_private_net_and_dns_zone.main_private_network
}
output "main_private_network_id" {
value = module.main_private_net_and_dns_zone.main_private_network_id
}
output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network
}
output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id
}
output "external_gateway_ip" {
value = module.main_private_net_and_dns_zone.external_gateway_ip
}
output "main_region" {
value = module.labs_common_variables.main_region
}
output "external_network" {
value = module.labs_common_variables.external_network
}
output "external_network_id" {
value = module.labs_common_variables.external_network.id
}
output "floating_ip_pools" {
value = module.labs_common_variables.floating_ip_pools
}
output "resolvers_ip" {
value = module.labs_common_variables.resolvers_ip
}
output "mtu_size" {
value = module.labs_common_variables.mtu_size
}
output "availability_zones_names" {
value = module.labs_common_variables.availability_zones_names
}
output "availability_zone_no_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_no_gpu
}
output "availability_zone_with_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_with_gpu
}
output "ssh_sources" {
value = module.labs_common_variables.ssh_sources
}
output "ubuntu_2204" {
value = module.labs_common_variables.ubuntu_2204
}
output "centos_7" {
value = module.labs_common_variables.centos_7
}
output "almalinux_9" {
value = module.labs_common_variables.almalinux_9
}
output "ubuntu2204_data_file" {
value = module.labs_common_variables.ubuntu2204_data_file
}
output "el7_data_file" {
value = module.labs_common_variables.el7_data_file
}
output "policy_list" {
value = module.labs_common_variables.policy_list
}
output "flavor_list" {
value = module.labs_common_variables.flavor_list
}
output "default_security_group_name" {
value = module.labs_common_variables.default_security_group_name
}

View File

@ -0,0 +1,186 @@
# Define required providers
terraform {
required_version = ">= 0.14.0"
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "~> 1.53.0"
}
}
}
provider "openstack" {
cloud = "ISTI-Cloud"
}
module "labs_common_variables" {
source = "../../modules/labs_common_variables"
}
# Main module
module "main_private_net_and_dns_zone" {
source = "../../modules/labs_private_net_and_dns_zone"
dns_zone = {
zone_name = "si.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the SI project"
ttl = 8600
}
os_project_data = {
name = "si-lab-cloud"
id = "440ec15cc48f412f8b42438d05a52dc1"
}
main_private_network = {
name = "si-cloud-main"
description = "SI private network (use this as the main network)"
}
main_private_subnet = {
name = "si-cloud-main-subnet"
description = "SI main private subnet"
cidr = "10.18.0.0/21"
gateway_ip = "10.18.0.1"
allocation_start = "10.18.1.1"
allocation_end = "10.18.7.254"
}
external_router = {
name = "si-lab-cloud-external-router"
description = "SI main router"
}
default_firewall_rules_map = {
"ssh_from_isti_net" = {
description = "SSH from the ISTI network"
source = module.labs_common_variables.ssh_sources.isti_net_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_1" = {
description = "SSH from the S2I2S VPN 1"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_1_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_2" = {
description = "SSH from the S2I2S VPN 2"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_2_cidr
port_min = 22
port_max = 22
},
"http_from_everywhere" = {
description = "HTTP from everywhere"
source = "0.0.0.0/0"
port_min = 80
port_max = 80
},
"https_from_everywhere" = {
description = "HTTPS from everywhere"
source = "0.0.0.0/0"
port_min = 443
port_max = 443
}
}
}
output "os_project_data" {
value = module.main_private_net_and_dns_zone.os_project_data
}
output "dns_zone" {
value = module.main_private_net_and_dns_zone.dns_zone
}
output "dns_zone_id" {
value = module.main_private_net_and_dns_zone.dns_zone_id
}
output "main_private_network" {
value = module.main_private_net_and_dns_zone.main_private_network
}
output "main_private_network_id" {
value = module.main_private_net_and_dns_zone.main_private_network_id
}
output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network
}
output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id
}
output "external_gateway_ip" {
value = module.main_private_net_and_dns_zone.external_gateway_ip
}
output "main_region" {
value = module.labs_common_variables.main_region
}
output "external_network" {
value = module.labs_common_variables.external_network
}
output "external_network_id" {
value = module.labs_common_variables.external_network.id
}
output "floating_ip_pools" {
value = module.labs_common_variables.floating_ip_pools
}
output "resolvers_ip" {
value = module.labs_common_variables.resolvers_ip
}
output "mtu_size" {
value = module.labs_common_variables.mtu_size
}
output "availability_zones_names" {
value = module.labs_common_variables.availability_zones_names
}
output "availability_zone_no_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_no_gpu
}
output "availability_zone_with_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_with_gpu
}
output "ssh_sources" {
value = module.labs_common_variables.ssh_sources
}
output "ubuntu_2204" {
value = module.labs_common_variables.ubuntu_2204
}
output "centos_7" {
value = module.labs_common_variables.centos_7
}
output "almalinux_9" {
value = module.labs_common_variables.almalinux_9
}
output "ubuntu2204_data_file" {
value = module.labs_common_variables.ubuntu2204_data_file
}
output "el7_data_file" {
value = module.labs_common_variables.el7_data_file
}
output "policy_list" {
value = module.labs_common_variables.policy_list
}
output "flavor_list" {
value = module.labs_common_variables.flavor_list
}
output "default_security_group_name" {
value = module.labs_common_variables.default_security_group_name
}

View File

@ -0,0 +1,186 @@
# Define required providers
terraform {
required_version = ">= 0.14.0"
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "~> 1.53.0"
}
}
}
provider "openstack" {
cloud = "ISTI-Cloud"
}
module "labs_common_variables" {
source = "../../modules/labs_common_variables"
}
# Main module
module "main_private_net_and_dns_zone" {
source = "../../modules/labs_private_net_and_dns_zone"
dns_zone = {
zone_name = "sse.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the SSE project"
ttl = 8600
}
os_project_data = {
name = "sse-lab-cloud"
id = "dcf2a765db574ba4a4a1b307eac8c6ae"
}
main_private_network = {
name = "sse-cloud-main"
description = "SSE private network (use this as the main network)"
}
main_private_subnet = {
name = "sse-cloud-main-subnet"
description = "SSE main private subnet"
cidr = "10.22.0.0/21"
gateway_ip = "10.22.0.1"
allocation_start = "10.22.1.1"
allocation_end = "10.22.7.254"
}
external_router = {
name = "sse-lab-cloud-external-router"
description = "SSE main router"
}
default_firewall_rules_map = {
"ssh_from_isti_net" = {
description = "SSH from the ISTI network"
source = module.labs_common_variables.ssh_sources.isti_net_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_1" = {
description = "SSH from the S2I2S VPN 1"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_1_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_2" = {
description = "SSH from the S2I2S VPN 2"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_2_cidr
port_min = 22
port_max = 22
},
"http_from_everywhere" = {
description = "HTTP from everywhere"
source = "0.0.0.0/0"
port_min = 80
port_max = 80
},
"https_from_everywhere" = {
description = "HTTPS from everywhere"
source = "0.0.0.0/0"
port_min = 443
port_max = 443
}
}
}
output "os_project_data" {
value = module.main_private_net_and_dns_zone.os_project_data
}
output "dns_zone" {
value = module.main_private_net_and_dns_zone.dns_zone
}
output "dns_zone_id" {
value = module.main_private_net_and_dns_zone.dns_zone_id
}
output "main_private_network" {
value = module.main_private_net_and_dns_zone.main_private_network
}
output "main_private_network_id" {
value = module.main_private_net_and_dns_zone.main_private_network_id
}
output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network
}
output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id
}
output "external_gateway_ip" {
value = module.main_private_net_and_dns_zone.external_gateway_ip
}
output "main_region" {
value = module.labs_common_variables.main_region
}
output "external_network" {
value = module.labs_common_variables.external_network
}
output "external_network_id" {
value = module.labs_common_variables.external_network.id
}
output "floating_ip_pools" {
value = module.labs_common_variables.floating_ip_pools
}
output "resolvers_ip" {
value = module.labs_common_variables.resolvers_ip
}
output "mtu_size" {
value = module.labs_common_variables.mtu_size
}
output "availability_zones_names" {
value = module.labs_common_variables.availability_zones_names
}
output "availability_zone_no_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_no_gpu
}
output "availability_zone_with_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_with_gpu
}
output "ssh_sources" {
value = module.labs_common_variables.ssh_sources
}
output "ubuntu_2204" {
value = module.labs_common_variables.ubuntu_2204
}
output "centos_7" {
value = module.labs_common_variables.centos_7
}
output "almalinux_9" {
value = module.labs_common_variables.almalinux_9
}
output "ubuntu2204_data_file" {
value = module.labs_common_variables.ubuntu2204_data_file
}
output "el7_data_file" {
value = module.labs_common_variables.el7_data_file
}
output "policy_list" {
value = module.labs_common_variables.policy_list
}
output "flavor_list" {
value = module.labs_common_variables.flavor_list
}
output "default_security_group_name" {
value = module.labs_common_variables.default_security_group_name
}

View File

@ -0,0 +1,186 @@
# Define required providers
terraform {
required_version = ">= 0.14.0"
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "~> 1.53.0"
}
}
}
provider "openstack" {
cloud = "ISTI-Cloud"
}
module "labs_common_variables" {
source = "../../modules/labs_common_variables"
}
# Main module
module "main_private_net_and_dns_zone" {
source = "../../modules/labs_private_net_and_dns_zone"
dns_zone = {
zone_name = "vc.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the VC project"
ttl = 8600
}
os_project_data = {
name = "vc-lab-cloud"
id = "fa2c4f8e02be4a2b90758b60837cd719"
}
main_private_network = {
name = "vc-cloud-main"
description = "VC private network (use this as the main network)"
}
main_private_subnet = {
name = "vc-cloud-main-subnet"
description = "VC main private subnet"
cidr = "10.23.0.0/21"
gateway_ip = "10.23.0.1"
allocation_start = "10.23.1.1"
allocation_end = "10.23.7.254"
}
external_router = {
name = "vc-lab-cloud-external-router"
description = "VC main router"
}
default_firewall_rules_map = {
"ssh_from_isti_net" = {
description = "SSH from the ISTI network"
source = module.labs_common_variables.ssh_sources.isti_net_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_1" = {
description = "SSH from the S2I2S VPN 1"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_1_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_2" = {
description = "SSH from the S2I2S VPN 2"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_2_cidr
port_min = 22
port_max = 22
},
"http_from_everywhere" = {
description = "HTTP from everywhere"
source = "0.0.0.0/0"
port_min = 80
port_max = 80
},
"https_from_everywhere" = {
description = "HTTPS from everywhere"
source = "0.0.0.0/0"
port_min = 443
port_max = 443
}
}
}
output "os_project_data" {
value = module.main_private_net_and_dns_zone.os_project_data
}
output "dns_zone" {
value = module.main_private_net_and_dns_zone.dns_zone
}
output "dns_zone_id" {
value = module.main_private_net_and_dns_zone.dns_zone_id
}
output "main_private_network" {
value = module.main_private_net_and_dns_zone.main_private_network
}
output "main_private_network_id" {
value = module.main_private_net_and_dns_zone.main_private_network_id
}
output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network
}
output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id
}
output "external_gateway_ip" {
value = module.main_private_net_and_dns_zone.external_gateway_ip
}
output "main_region" {
value = module.labs_common_variables.main_region
}
output "external_network" {
value = module.labs_common_variables.external_network
}
output "external_network_id" {
value = module.labs_common_variables.external_network.id
}
output "floating_ip_pools" {
value = module.labs_common_variables.floating_ip_pools
}
output "resolvers_ip" {
value = module.labs_common_variables.resolvers_ip
}
output "mtu_size" {
value = module.labs_common_variables.mtu_size
}
output "availability_zones_names" {
value = module.labs_common_variables.availability_zones_names
}
output "availability_zone_no_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_no_gpu
}
output "availability_zone_with_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_with_gpu
}
output "ssh_sources" {
value = module.labs_common_variables.ssh_sources
}
output "ubuntu_2204" {
value = module.labs_common_variables.ubuntu_2204
}
output "centos_7" {
value = module.labs_common_variables.centos_7
}
output "almalinux_9" {
value = module.labs_common_variables.almalinux_9
}
output "ubuntu2204_data_file" {
value = module.labs_common_variables.ubuntu2204_data_file
}
output "el7_data_file" {
value = module.labs_common_variables.el7_data_file
}
output "policy_list" {
value = module.labs_common_variables.policy_list
}
output "flavor_list" {
value = module.labs_common_variables.flavor_list
}
output "default_security_group_name" {
value = module.labs_common_variables.default_security_group_name
}

View File

@ -0,0 +1,186 @@
# Define required providers
terraform {
required_version = ">= 0.14.0"
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "~> 1.53.0"
}
}
}
provider "openstack" {
cloud = "ISTI-Cloud"
}
module "labs_common_variables" {
source = "../../modules/labs_common_variables"
}
# Main module
module "main_private_net_and_dns_zone" {
source = "../../modules/labs_private_net_and_dns_zone"
dns_zone = {
zone_name = "wn.cloud.isti.cnr.it."
email = "postmaster@isti.cnr.it"
description = "DNS primary zone for the WN project"
ttl = 8600
}
os_project_data = {
name = "wn-lab-cloud"
id = "3dbab8216c914cda82e677cde415e36b"
}
main_private_network = {
name = "wn-cloud-main"
description = "WN private network (use this as the main network)"
}
main_private_subnet = {
name = "wn-cloud-main-subnet"
description = "WN main private subnet"
cidr = "10.17.0.0/21"
gateway_ip = "10.17.0.1"
allocation_start = "10.17.1.1"
allocation_end = "10.17.7.254"
}
external_router = {
name = "wn-lab-cloud-external-router"
description = "WN main router"
}
default_firewall_rules_map = {
"ssh_from_isti_net" = {
description = "SSH from the ISTI network"
source = module.labs_common_variables.ssh_sources.isti_net_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_1" = {
description = "SSH from the S2I2S VPN 1"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_1_cidr
port_min = 22
port_max = 22
},
"ssh_from_s2i2s_vpn_2" = {
description = "SSH from the S2I2S VPN 2"
source = module.labs_common_variables.ssh_sources.s2i2s_vpn_2_cidr
port_min = 22
port_max = 22
},
"http_from_everywhere" = {
description = "HTTP from everywhere"
source = "0.0.0.0/0"
port_min = 80
port_max = 80
},
"https_from_everywhere" = {
description = "HTTPS from everywhere"
source = "0.0.0.0/0"
port_min = 443
port_max = 443
}
}
}
output "os_project_data" {
value = module.main_private_net_and_dns_zone.os_project_data
}
output "dns_zone" {
value = module.main_private_net_and_dns_zone.dns_zone
}
output "dns_zone_id" {
value = module.main_private_net_and_dns_zone.dns_zone_id
}
output "main_private_network" {
value = module.main_private_net_and_dns_zone.main_private_network
}
output "main_private_network_id" {
value = module.main_private_net_and_dns_zone.main_private_network_id
}
output "main_subnet_network" {
value = module.main_private_net_and_dns_zone.main_subnet_network
}
output "main_subnet_network_id" {
value = module.main_private_net_and_dns_zone.main_subnet_network_id
}
output "external_gateway_ip" {
value = module.main_private_net_and_dns_zone.external_gateway_ip
}
output "main_region" {
value = module.labs_common_variables.main_region
}
output "external_network" {
value = module.labs_common_variables.external_network
}
output "external_network_id" {
value = module.labs_common_variables.external_network.id
}
output "floating_ip_pools" {
value = module.labs_common_variables.floating_ip_pools
}
output "resolvers_ip" {
value = module.labs_common_variables.resolvers_ip
}
output "mtu_size" {
value = module.labs_common_variables.mtu_size
}
output "availability_zones_names" {
value = module.labs_common_variables.availability_zones_names
}
output "availability_zone_no_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_no_gpu
}
output "availability_zone_with_gpu_name" {
value = module.labs_common_variables.availability_zones_names.availability_zone_with_gpu
}
output "ssh_sources" {
value = module.labs_common_variables.ssh_sources
}
output "ubuntu_2204" {
value = module.labs_common_variables.ubuntu_2204
}
output "centos_7" {
value = module.labs_common_variables.centos_7
}
output "almalinux_9" {
value = module.labs_common_variables.almalinux_9
}
output "ubuntu2204_data_file" {
value = module.labs_common_variables.ubuntu2204_data_file
}
output "el7_data_file" {
value = module.labs_common_variables.el7_data_file
}
output "policy_list" {
value = module.labs_common_variables.policy_list
}
output "flavor_list" {
value = module.labs_common_variables.flavor_list
}
output "default_security_group_name" {
value = module.labs_common_variables.default_security_group_name
}