Terrafrom files refactored, docs improved, markup version of docs added.

This commit is contained in:
VakarisZ 2019-01-23 16:55:53 +02:00
parent 0e56a62e20
commit 321bbc1f9f
7 changed files with 1219 additions and 102 deletions

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,76 @@
resource "google_compute_firewall" "islands-in" {
name = "islands-in"
network = "${google_compute_network.monkeyzoo.name}"
allow {
protocol = "tcp"
ports = ["22", "443", "3389"]
}
direction = "INGRESS"
priority = "65534"
target_tags = ["island"]
}
resource "google_compute_firewall" "islands-out" {
name = "islands-out"
network = "${google_compute_network.monkeyzoo.name}"
allow {
protocol = "tcp"
}
direction = "EGRESS"
priority = "65534"
target_tags = ["island"]
}
resource "google_compute_firewall" "monkeyzoo-in" {
name = "monkeyzoo-in"
network = "${google_compute_network.monkeyzoo.name}"
allow {
protocol = "all"
}
direction = "INGRESS"
priority = "65534"
source_ranges = ["10.2.2.0/24"]
}
resource "google_compute_firewall" "monkeyzoo-out" {
name = "monkeyzoo-out"
network = "${google_compute_network.monkeyzoo.name}"
allow {
protocol = "all"
}
direction = "EGRESS"
priority = "65534"
destination_ranges = ["10.2.2.0/24"]
}
resource "google_compute_firewall" "tunneling-in" {
name = "tunneling-in"
network = "${google_compute_network.tunneling.name}"
allow {
protocol = "all"
}
direction = "INGRESS"
source_ranges = ["10.2.1.0/28"]
}
resource "google_compute_firewall" "tunneling-out" {
name = "tunneling-out"
network = "${google_compute_network.tunneling.name}"
allow {
protocol = "all"
}
direction = "EGRESS"
destination_ranges = ["10.2.1.0/28"]
}

View File

@ -15,58 +15,6 @@ resource "google_compute_network" "tunneling" {
auto_create_subnetworks = false auto_create_subnetworks = false
} }
resource "google_compute_firewall" "monkeyzoo-in" {
name = "monkeyzoo-in"
network = "${google_compute_network.monkeyzoo.name}"
allow {
protocol = "all"
}
direction = "INGRESS"
priority = "65534"
source_ranges = ["10.2.2.0/24"]
}
resource "google_compute_firewall" "monkeyzoo-out" {
name = "monkeyzoo-out"
network = "${google_compute_network.monkeyzoo.name}"
allow {
protocol = "all"
}
direction = "EGRESS"
priority = "65534"
destination_ranges = ["10.2.2.0/24"]
}
resource "google_compute_firewall" "tunneling-in" {
name = "tunneling-in"
network = "${google_compute_network.tunneling.name}"
allow {
protocol = "all"
}
direction = "INGRESS"
source_ranges = ["10.2.1.0/28"]
}
resource "google_compute_firewall" "tunneling-out" {
name = "tunneling-out"
network = "${google_compute_network.tunneling.name}"
allow {
protocol = "all"
}
direction = "EGRESS"
destination_ranges = ["10.2.1.0/28"]
}
resource "google_compute_subnetwork" "monkeyzoo-main" { resource "google_compute_subnetwork" "monkeyzoo-main" {
name = "monkeyzoo-main" name = "monkeyzoo-main"
ip_cidr_range = "10.2.2.0/24" ip_cidr_range = "10.2.2.0/24"
@ -79,54 +27,6 @@ resource "google_compute_subnetwork" "tunneling-main" {
network = "${google_compute_network.tunneling.self_link}" network = "${google_compute_network.tunneling.self_link}"
} }
resource "google_compute_instance_template" "ubuntu16" {
name = "ubuntu16"
description = "Creates ubuntu 16.04 LTS servers."
tags = ["test-machine", "ubuntu16", "linux"]
machine_type = "n1-standard-1"
can_ip_forward = false
disk {
source_image = "ubuntu-os-cloud/ubuntu-1604-lts"
auto_delete = true
}
network_interface {
subnetwork="monkeyzoo-main"
access_config {
// Cheaper, non-premium routing
network_tier = "STANDARD"
}
}
service_account {
email ="${local.service_account_email}"
scopes=["cloud-platform"]
}
}
resource "google_compute_instance_template" "windows2016" {
name = "windows2016"
description = "Creates windows 2016 core servers."
tags = ["test-machine", "windows2016core", "windows"]
machine_type = "n1-standard-1"
can_ip_forward = false
disk {
source_image = "windows-cloud/windows-2016"
auto_delete = true
}
network_interface {
subnetwork="monkeyzoo-main"
}
service_account {
email="${local.service_account_email}"
scopes=["cloud-platform"]
}
}
resource "google_compute_instance_from_template" "hadoop-2" { resource "google_compute_instance_from_template" "hadoop-2" {
name = "hadoop-2" name = "hadoop-2"
source_instance_template = "${local.default_ubuntu}" source_instance_template = "${local.default_ubuntu}"
@ -143,6 +43,7 @@ resource "google_compute_instance_from_template" "hadoop-2" {
// Add required ssh keys for hadoop service and restart it // Add required ssh keys for hadoop service and restart it
metadata_startup_script = "[ ! -f /home/vakaris_zilius/.ssh/authorized_keys ] && sudo cat /home/vakaris_zilius/.ssh/id_rsa.pub >> /home/vakaris_zilius/.ssh/authorized_keys && sudo reboot" metadata_startup_script = "[ ! -f /home/vakaris_zilius/.ssh/authorized_keys ] && sudo cat /home/vakaris_zilius/.ssh/id_rsa.pub >> /home/vakaris_zilius/.ssh/authorized_keys && sudo reboot"
} }
resource "google_compute_instance_from_template" "hadoop-3" { resource "google_compute_instance_from_template" "hadoop-3" {
name = "hadoop-3" name = "hadoop-3"
source_instance_template = "${local.default_windows}" source_instance_template = "${local.default_windows}"
@ -157,6 +58,7 @@ resource "google_compute_instance_from_template" "hadoop-3" {
network_ip="10.2.2.3" network_ip="10.2.2.3"
} }
} }
resource "google_compute_instance_from_template" "elastic-4" { resource "google_compute_instance_from_template" "elastic-4" {
name = "elastic-4" name = "elastic-4"
source_instance_template = "${local.default_ubuntu}" source_instance_template = "${local.default_ubuntu}"
@ -171,6 +73,7 @@ resource "google_compute_instance_from_template" "elastic-4" {
network_ip="10.2.2.4" network_ip="10.2.2.4"
} }
} }
resource "google_compute_instance_from_template" "elastic-5" { resource "google_compute_instance_from_template" "elastic-5" {
name = "elastic-5" name = "elastic-5"
source_instance_template = "${local.default_windows}" source_instance_template = "${local.default_windows}"
@ -185,6 +88,7 @@ resource "google_compute_instance_from_template" "elastic-5" {
network_ip="10.2.2.5" network_ip="10.2.2.5"
} }
} }
/* Couldn't find ubuntu packages for required samba version (too old). /* Couldn't find ubuntu packages for required samba version (too old).
resource "google_compute_instance_from_template" "sambacry-6" { resource "google_compute_instance_from_template" "sambacry-6" {
name = "sambacry-6" name = "sambacry-6"
@ -200,6 +104,7 @@ resource "google_compute_instance_from_template" "sambacry-6" {
} }
} }
*/ */
/* We need custom 32 bit Ubuntu machine for this (there are no 32 bit ubuntu machines in GCP). /* We need custom 32 bit Ubuntu machine for this (there are no 32 bit ubuntu machines in GCP).
resource "google_compute_instance_from_template" "sambacry-7" { resource "google_compute_instance_from_template" "sambacry-7" {
name = "sambacry-7" name = "sambacry-7"
@ -216,6 +121,7 @@ resource "google_compute_instance_from_template" "sambacry-7" {
} }
} }
*/ */
resource "google_compute_instance_from_template" "shellshock-8" { resource "google_compute_instance_from_template" "shellshock-8" {
name = "shellshock-8" name = "shellshock-8"
source_instance_template = "${local.default_ubuntu}" source_instance_template = "${local.default_ubuntu}"
@ -230,6 +136,7 @@ resource "google_compute_instance_from_template" "shellshock-8" {
network_ip="10.2.2.8" network_ip="10.2.2.8"
} }
} }
resource "google_compute_instance_from_template" "tunneling-9" { resource "google_compute_instance_from_template" "tunneling-9" {
name = "tunneling-9" name = "tunneling-9"
source_instance_template = "${local.default_ubuntu}" source_instance_template = "${local.default_ubuntu}"
@ -242,7 +149,7 @@ resource "google_compute_instance_from_template" "tunneling-9" {
network_interface{ network_interface{
subnetwork="tunneling-main" subnetwork="tunneling-main"
network_ip="10.2.1.9" network_ip="10.2.1.9"
} }
network_interface{ network_interface{
subnetwork="monkeyzoo-main" subnetwork="monkeyzoo-main"
@ -265,7 +172,6 @@ resource "google_compute_instance_from_template" "tunneling-10" {
} }
} }
resource "google_compute_instance_from_template" "sshkeys-11" { resource "google_compute_instance_from_template" "sshkeys-11" {
name = "sshkeys-11" name = "sshkeys-11"
source_instance_template = "${local.default_ubuntu}" source_instance_template = "${local.default_ubuntu}"
@ -295,6 +201,7 @@ resource "google_compute_instance_from_template" "sshkeys-12" {
network_ip="10.2.2.12" network_ip="10.2.2.12"
} }
} }
/* /*
resource "google_compute_instance_from_template" "rdpgrinder-13" { resource "google_compute_instance_from_template" "rdpgrinder-13" {
name = "rdpgrinder-13" name = "rdpgrinder-13"
@ -355,6 +262,7 @@ resource "google_compute_instance_from_template" "mssql-16" {
network_ip="10.2.2.16" network_ip="10.2.2.16"
} }
} }
/* We need to alter monkey's behavior for this to upload 32-bit monkey instead of 64-bit (not yet developed) /* We need to alter monkey's behavior for this to upload 32-bit monkey instead of 64-bit (not yet developed)
resource "google_compute_instance_from_template" "upgrader-17" { resource "google_compute_instance_from_template" "upgrader-17" {
name = "upgrader-17" name = "upgrader-17"
@ -374,6 +282,7 @@ resource "google_compute_instance_from_template" "upgrader-17" {
} }
} }
*/ */
resource "google_compute_instance_from_template" "weblogic-18" { resource "google_compute_instance_from_template" "weblogic-18" {
name = "weblogic-18" name = "weblogic-18"
source_instance_template = "${local.default_ubuntu}" source_instance_template = "${local.default_ubuntu}"
@ -448,6 +357,7 @@ resource "google_compute_instance_from_template" "scan-22" {
network_ip="10.2.2.22" network_ip="10.2.2.22"
} }
} }
resource "google_compute_instance_from_template" "struts2-23" { resource "google_compute_instance_from_template" "struts2-23" {
name = "struts2-23" name = "struts2-23"
source_instance_template = "${local.default_ubuntu}" source_instance_template = "${local.default_ubuntu}"
@ -481,6 +391,7 @@ resource "google_compute_instance_from_template" "struts2-24" {
resource "google_compute_instance_from_template" "island-linux-250" { resource "google_compute_instance_from_template" "island-linux-250" {
name = "island-linux-250" name = "island-linux-250"
machine_type = "n1-standard-2" machine_type = "n1-standard-2"
tags = ["island", "linux", "ubuntu16"]
source_instance_template = "${local.default_ubuntu}" source_instance_template = "${local.default_ubuntu}"
boot_disk{ boot_disk{
initialize_params { initialize_params {
@ -501,6 +412,7 @@ resource "google_compute_instance_from_template" "island-linux-250" {
resource "google_compute_instance_from_template" "island-windows-251" { resource "google_compute_instance_from_template" "island-windows-251" {
name = "island-windows-251" name = "island-windows-251"
machine_type = "n1-standard-2" machine_type = "n1-standard-2"
tags = ["island", "windows", "windowsserver2016"]
source_instance_template = "${local.default_windows}" source_instance_template = "${local.default_windows}"
boot_disk{ boot_disk{
initialize_params { initialize_params {

View File

@ -0,0 +1,45 @@
resource "google_compute_instance_template" "ubuntu16" {
name = "ubuntu16"
description = "Creates ubuntu 16.04 LTS servers at europe-west3-a."
tags = ["test-machine", "ubuntu16", "linux"]
machine_type = "n1-standard-1"
can_ip_forward = false
disk {
source_image = "ubuntu-os-cloud/ubuntu-1604-lts"
}
network_interface {
subnetwork="monkeyzoo-main"
access_config {
// Cheaper, non-premium routing
network_tier = "STANDARD"
}
}
service_account {
email ="${local.service_account_email}"
scopes=["cloud-platform"]
}
}
resource "google_compute_instance_template" "windows2016" {
name = "windows2016"
description = "Creates windows 2016 core servers at europe-west3-a."
tags = ["test-machine", "windowsserver2016", "windows"]
machine_type = "n1-standard-1"
can_ip_forward = false
disk {
source_image = "windows-cloud/windows-2016"
}
network_interface {
subnetwork="monkeyzoo-main"
}
service_account {
email="${local.service_account_email}"
scopes=["cloud-platform"]
}
}