diff --git a/proxmox/terraform/production/production.tf b/proxmox/terraform/production/production.tf index eecae0c..e38b247 100644 --- a/proxmox/terraform/production/production.tf +++ b/proxmox/terraform/production/production.tf @@ -1,55 +1,148 @@ locals { config = { dns = var.dns domain = "internal.softwareheritage.org" puppet_environment = "production" facter_deployment = "production" facter_subnet = "sesi_rocquencourt" puppet_master = var.puppet_master gateway_ip = "192.168.100.1" user_admin = var.user_admin user_admin_ssh_public_key = var.user_admin_ssh_public_key user_admin_ssh_private_key_path = var.user_admin_ssh_private_key_path } } module "kelvingrove" { source = "../modules/node" config = local.config hostname = "kelvingrove" description = "Keycloak server" hypervisor = "hypervisor3" vmid = 123 cores = "4" memory = "8192" numa = true balloon = 0 networks = [{ id = 0 ip = "192.168.100.106" gateway = local.config["gateway_ip"] macaddr = "72:55:5E:58:01:0B" bridge = "vmbr0" }] } module "webapp1" { source = "../modules/node" config = local.config hostname = "webapp1" description = "Webapp for swh-search tests" hypervisor = "branly" vmid = 125 cores = "2" memory = "8192" balloon = 1024 networks = [{ id = 0 ip = "192.168.100.71" gateway = local.config["gateway_ip"] macaddr = "06:FF:02:95:31:CF" bridge = "vmbr0" }] } + +module "search-esnode1" { + source = "../modules/node" + config = local.config + + hostname = "search-esnode1" + description = "Elasticsearch node for swh-search" + hypervisor = "branly" + vmid = 133 + cores = "4" + memory = "16384" + balloon = 9216 + networks = [{ + id = 0 + ip = "192.168.100.81" + gateway = local.config["gateway_ip"] + macaddr = "42:31:70:6A:D7:F9" + bridge = "vmbr0" + }] + storages = [{ + id = 0 + storage = "proxmox" + size = "32G" + storage_type = "cephfs" + }, { + id = 1 + storage = "proxmox" + size = "200G" + storage_type = "cephfs" + }] +} + +module "search-esnode2" { + source = "../modules/node" + config = local.config + + hostname = "search-esnode2" + description = "Elasticsearch node for swh-search" + hypervisor = "branly" + vmid = 134 + cores = "4" + memory = "16384" + balloon = 9216 + networks = [{ + id = 0 + ip = "192.168.100.82" + gateway = local.config["gateway_ip"] + macaddr = "AA:86:8C:84:59:B5" + bridge = "vmbr0" + }] + storages = [{ + id = 0 + storage = "proxmox" + size = "32G" + storage_type = "cephfs" + }, { + id = 1 + storage = "proxmox" + size = "200G" + storage_type = "cephfs" + }] +} + +module "search-esnode3" { + source = "../modules/node" + config = local.config + + hostname = "search-esnode3" + description = "Elasticsearch node for swh-search" + hypervisor = "beaubourg" + vmid = 135 + cores = "4" + memory = "16384" + balloon = 9216 + networks = [{ + id = 0 + ip = "192.168.100.83" + gateway = local.config["gateway_ip"] + macaddr = "36:E4:58:9B:EA:E4" + bridge = "vmbr0" + }] + storages = [{ + id = 0 + storage = "proxmox" + size = "32G" + storage_type = "cephfs" + }, { + id = 1 + storage = "proxmox" + size = "200G" + storage_type = "cephfs" + }] +} diff --git a/proxmox/terraform/production/terraform.tfstate b/proxmox/terraform/production/terraform.tfstate index fb3801c..46c0ce5 100644 --- a/proxmox/terraform/production/terraform.tfstate +++ b/proxmox/terraform/production/terraform.tfstate @@ -1,217 +1,586 @@ { "version": 4, "terraform_version": "0.13.5", - "serial": 107, + "serial": 120, "lineage": "e2912de8-415d-4c35-8ee5-757008306227", "outputs": {}, "resources": [ { "module": "module.kelvingrove", "mode": "managed", "type": "proxmox_vm_qemu", "name": "node", "provider": "module.kelvingrove.provider[\"local/telmate/proxmox\"]", "instances": [ { "schema_version": 0, "attributes": { "agent": 0, "balloon": 0, "bios": "seabios", "boot": "c", "bootdisk": "virtio0", "bridge": "", "ci_wait": null, "cicustom": "", "cipassword": "", "ciuser": "root", "clone": "template-debian-10", "clone_wait": 15, "cores": 4, "cpu": "host", "desc": "Keycloak server", "disk": [ { "backup": false, "cache": "none", "discard": "", "format": "raw", "id": 0, "iothread": false, "mbps": 0, "mbps_rd": 0, "mbps_rd_max": 0, "mbps_wr": 0, "mbps_wr_max": 0, "replicate": false, "size": "32G", "ssd": false, "storage": "proxmox", "storage_type": "cephfs", "type": "virtio" } ], "disk_gb": 0, "force_create": false, "full_clone": false, "hastate": "", "hotplug": "network,disk,usb", "id": "branly/qemu/123", "ipconfig0": "ip=192.168.100.106/24,gw=192.168.100.1", "ipconfig1": "", "ipconfig2": "", "iso": null, "kvm": true, "mac": "", "memory": 8192, "name": "kelvingrove", "nameserver": "192.168.100.29", "network": [ { "bridge": "vmbr0", "firewall": false, "id": 0, "link_down": false, "macaddr": "72:55:5E:58:01:0B", "model": "virtio", "queues": -1, "rate": -1, "tag": -1 } ], "nic": "", "numa": true, "onboot": true, "os_network_config": null, "os_type": "cloud-init", "pool": "", "preprovision": true, "qemu_os": "other", "scsihw": "virtio-scsi-pci", "searchdomain": "internal.softwareheritage.org", "serial": [], "sockets": 1, "ssh_forward_ip": null, "ssh_host": null, "ssh_port": null, "ssh_private_key": null, "ssh_user": "root", "sshkeys": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDVKCfpeIMg7GS3Pk03ZAcBWAeDZ+AvWk2k/pPY0z8MJ3YAbqZkRtSK7yaDgJV6Gro7nn/TxdJLo2jEzzWvlC8d8AEzhZPy5Z/qfVVjqBTBM4H5+e+TItAHFfaY5+0WvIahxcfsfaq70MWfpJhszAah3ThJ4mqzYaw+dkr42+a7Gx3Ygpb/m2dpnFnxvXdcuAJYStmHKU5AWGWWM+Fm50/fdMqUfNd8MbKhkJt5ihXQmZWMOt7ls4N8i5NZWnS9YSWow8X/ENOEqCRN9TyRkc+pPS0w9DNi0BCsWvSRJOkyvQ6caEnKWlNoywCmM1AlIQD3k4RUgRWe0vqg/UKPpH3Z root@terraform\n\n\n", "storage": "", "storage_type": "", "target_node": "branly", "vcpus": 0, "vga": [], "vlan": -1, "vmid": 123 }, "private": "eyJzY2hlbWFfdmVyc2lvbiI6IjAifQ==" } ] }, { - "module": "module.webapp1", + "module": "module.search-esnode1", "mode": "managed", "type": "proxmox_vm_qemu", "name": "node", - "provider": "module.webapp1.provider[\"local/telmate/proxmox\"]", + "provider": "module.search-esnode1.provider[\"local/telmate/proxmox\"]", "instances": [ { "schema_version": 0, "attributes": { "agent": 0, - "balloon": 1024, + "balloon": 9216, + "bios": "seabios", + "boot": "c", + "bootdisk": "", + "bridge": "", + "ci_wait": null, + "cicustom": "", + "cipassword": "", + "ciuser": "root", + "clone": "debian-buster-2020-11-06", + "clone_wait": 15, + "cores": 4, + "cpu": "host", + "desc": "Elasticsearch node for swh-search", + "disk": [ + { + "backup": false, + "cache": "none", + "discard": "", + "format": "raw", + "id": 0, + "iothread": false, + "mbps": 0, + "mbps_rd": 0, + "mbps_rd_max": 0, + "mbps_wr": 0, + "mbps_wr_max": 0, + "replicate": false, + "size": "32G", + "ssd": false, + "storage": "proxmox", + "storage_type": "cephfs", + "type": "virtio" + }, + { + "backup": false, + "cache": "none", + "discard": "", + "format": "raw", + "id": 1, + "iothread": false, + "mbps": 0, + "mbps_rd": 0, + "mbps_rd_max": 0, + "mbps_wr": 0, + "mbps_wr_max": 0, + "replicate": false, + "size": "200G", + "ssd": false, + "storage": "proxmox", + "storage_type": "cephfs", + "type": "virtio" + } + ], + "disk_gb": 0, + "force_create": false, + "full_clone": false, + "hastate": "", + "hotplug": "network,disk,usb", + "id": "branly/qemu/133", + "ipconfig0": "ip=192.168.100.81/24,gw=192.168.100.1", + "ipconfig1": "", + "ipconfig2": "", + "iso": null, + "kvm": true, + "mac": "", + "memory": 16384, + "name": "search-esnode1", + "nameserver": "192.168.100.29", + "network": [ + { + "bridge": "vmbr0", + "firewall": false, + "id": 0, + "link_down": false, + "macaddr": "42:31:70:6A:D7:F9", + "model": "virtio", + "queues": -1, + "rate": -1, + "tag": -1 + } + ], + "nic": "", + "numa": false, + "onboot": true, + "os_network_config": null, + "os_type": "cloud-init", + "pool": "", + "preprovision": true, + "qemu_os": "other", + "scsihw": "virtio-scsi-pci", + "searchdomain": "internal.softwareheritage.org", + "serial": [], + "sockets": 1, + "ssh_forward_ip": null, + "ssh_host": "192.168.100.81", + "ssh_port": "22", + "ssh_private_key": null, + "ssh_user": "root", + "sshkeys": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDVKCfpeIMg7GS3Pk03ZAcBWAeDZ+AvWk2k/pPY0z8MJ3YAbqZkRtSK7yaDgJV6Gro7nn/TxdJLo2jEzzWvlC8d8AEzhZPy5Z/qfVVjqBTBM4H5+e+TItAHFfaY5+0WvIahxcfsfaq70MWfpJhszAah3ThJ4mqzYaw+dkr42+a7Gx3Ygpb/m2dpnFnxvXdcuAJYStmHKU5AWGWWM+Fm50/fdMqUfNd8MbKhkJt5ihXQmZWMOt7ls4N8i5NZWnS9YSWow8X/ENOEqCRN9TyRkc+pPS0w9DNi0BCsWvSRJOkyvQ6caEnKWlNoywCmM1AlIQD3k4RUgRWe0vqg/UKPpH3Z root@terraform\n", + "storage": "", + "storage_type": "", + "target_node": "branly", + "vcpus": 0, + "vga": [], + "vlan": -1, + "vmid": 133 + }, + "private": "bnVsbA==" + } + ] + }, + { + "module": "module.search-esnode2", + "mode": "managed", + "type": "proxmox_vm_qemu", + "name": "node", + "provider": "module.search-esnode2.provider[\"local/telmate/proxmox\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "agent": 0, + "balloon": 9216, + "bios": "seabios", + "boot": "c", + "bootdisk": "", + "bridge": "", + "ci_wait": null, + "cicustom": "", + "cipassword": "", + "ciuser": "root", + "clone": "debian-buster-2020-11-06", + "clone_wait": 15, + "cores": 4, + "cpu": "host", + "desc": "Elasticsearch node for swh-search", + "disk": [ + { + "backup": false, + "cache": "none", + "discard": "", + "format": "raw", + "id": 0, + "iothread": false, + "mbps": 0, + "mbps_rd": 0, + "mbps_rd_max": 0, + "mbps_wr": 0, + "mbps_wr_max": 0, + "replicate": false, + "size": "32G", + "ssd": false, + "storage": "proxmox", + "storage_type": "cephfs", + "type": "virtio" + }, + { + "backup": false, + "cache": "none", + "discard": "", + "format": "raw", + "id": 1, + "iothread": false, + "mbps": 0, + "mbps_rd": 0, + "mbps_rd_max": 0, + "mbps_wr": 0, + "mbps_wr_max": 0, + "replicate": false, + "size": "200G", + "ssd": false, + "storage": "proxmox", + "storage_type": "cephfs", + "type": "virtio" + } + ], + "disk_gb": 0, + "force_create": false, + "full_clone": false, + "hastate": "", + "hotplug": "network,disk,usb", + "id": "branly/qemu/134", + "ipconfig0": "ip=192.168.100.82/24,gw=192.168.100.1", + "ipconfig1": "", + "ipconfig2": "", + "iso": null, + "kvm": true, + "mac": "", + "memory": 16384, + "name": "search-esnode2", + "nameserver": "192.168.100.29", + "network": [ + { + "bridge": "vmbr0", + "firewall": false, + "id": 0, + "link_down": false, + "macaddr": "AA:86:8C:84:59:B5", + "model": "virtio", + "queues": -1, + "rate": -1, + "tag": -1 + } + ], + "nic": "", + "numa": false, + "onboot": true, + "os_network_config": null, + "os_type": "cloud-init", + "pool": "", + "preprovision": true, + "qemu_os": "other", + "scsihw": "virtio-scsi-pci", + "searchdomain": "internal.softwareheritage.org", + "serial": [], + "sockets": 1, + "ssh_forward_ip": null, + "ssh_host": "192.168.100.82", + "ssh_port": "22", + "ssh_private_key": null, + "ssh_user": "root", + "sshkeys": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDVKCfpeIMg7GS3Pk03ZAcBWAeDZ+AvWk2k/pPY0z8MJ3YAbqZkRtSK7yaDgJV6Gro7nn/TxdJLo2jEzzWvlC8d8AEzhZPy5Z/qfVVjqBTBM4H5+e+TItAHFfaY5+0WvIahxcfsfaq70MWfpJhszAah3ThJ4mqzYaw+dkr42+a7Gx3Ygpb/m2dpnFnxvXdcuAJYStmHKU5AWGWWM+Fm50/fdMqUfNd8MbKhkJt5ihXQmZWMOt7ls4N8i5NZWnS9YSWow8X/ENOEqCRN9TyRkc+pPS0w9DNi0BCsWvSRJOkyvQ6caEnKWlNoywCmM1AlIQD3k4RUgRWe0vqg/UKPpH3Z root@terraform\n", + "storage": "", + "storage_type": "", + "target_node": "branly", + "vcpus": 0, + "vga": [], + "vlan": -1, + "vmid": 134 + }, + "private": "bnVsbA==" + } + ] + }, + { + "module": "module.search-esnode3", + "mode": "managed", + "type": "proxmox_vm_qemu", + "name": "node", + "provider": "module.search-esnode3.provider[\"local/telmate/proxmox\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "agent": 0, + "balloon": 9216, "bios": "seabios", "boot": "c", "bootdisk": null, "bridge": null, "ci_wait": null, "cicustom": null, "cipassword": null, "ciuser": "root", "clone": "debian-buster-2020-11-06", "clone_wait": 15, - "cores": 2, + "cores": 4, "cpu": "host", - "desc": "Webapp for swh-search tests", + "desc": "Elasticsearch node for swh-search", "disk": [ { "backup": false, "cache": "none", "discard": "", "format": "raw", "id": 0, "iothread": false, "mbps": 0, "mbps_rd": 0, "mbps_rd_max": 0, "mbps_wr": 0, "mbps_wr_max": 0, "replicate": false, "size": "32G", "ssd": null, "storage": "proxmox", "storage_type": "cephfs", "type": "virtio" + }, + { + "backup": false, + "cache": "none", + "discard": "", + "format": "raw", + "id": 1, + "iothread": false, + "mbps": 0, + "mbps_rd": 0, + "mbps_rd_max": 0, + "mbps_wr": 0, + "mbps_wr_max": 0, + "replicate": false, + "size": "200G", + "ssd": null, + "storage": "proxmox", + "storage_type": "cephfs", + "type": "virtio" } ], "disk_gb": null, "force_create": false, "full_clone": false, "hastate": null, "hotplug": "network,disk,usb", - "id": "branly/qemu/125", - "ipconfig0": "ip=192.168.100.71/24,gw=192.168.100.1", + "id": "beaubourg/qemu/135", + "ipconfig0": "ip=192.168.100.83/24,gw=192.168.100.1", "ipconfig1": "", "ipconfig2": null, "iso": null, "kvm": true, "mac": null, - "memory": 8192, - "name": "webapp1", + "memory": 16384, + "name": "search-esnode3", "nameserver": "192.168.100.29", "network": [ { "bridge": "vmbr0", "firewall": false, "id": 0, "link_down": false, - "macaddr": "06:FF:02:95:31:CF", + "macaddr": "36:E4:58:9B:EA:E4", "model": "virtio", "queues": -1, "rate": -1, "tag": -1 } ], "nic": null, "numa": false, "onboot": true, "os_network_config": null, "os_type": "cloud-init", "pool": null, "preprovision": true, "qemu_os": null, "scsihw": null, "searchdomain": "internal.softwareheritage.org", "serial": [], "sockets": 1, "ssh_forward_ip": null, - "ssh_host": "192.168.100.71", + "ssh_host": "192.168.100.83", "ssh_port": "22", "ssh_private_key": null, "ssh_user": "root", "sshkeys": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDVKCfpeIMg7GS3Pk03ZAcBWAeDZ+AvWk2k/pPY0z8MJ3YAbqZkRtSK7yaDgJV6Gro7nn/TxdJLo2jEzzWvlC8d8AEzhZPy5Z/qfVVjqBTBM4H5+e+TItAHFfaY5+0WvIahxcfsfaq70MWfpJhszAah3ThJ4mqzYaw+dkr42+a7Gx3Ygpb/m2dpnFnxvXdcuAJYStmHKU5AWGWWM+Fm50/fdMqUfNd8MbKhkJt5ihXQmZWMOt7ls4N8i5NZWnS9YSWow8X/ENOEqCRN9TyRkc+pPS0w9DNi0BCsWvSRJOkyvQ6caEnKWlNoywCmM1AlIQD3k4RUgRWe0vqg/UKPpH3Z root@terraform", "storage": null, "storage_type": null, + "target_node": "beaubourg", + "vcpus": 0, + "vga": [], + "vlan": -1, + "vmid": 135 + }, + "private": "bnVsbA==" + } + ] + }, + { + "module": "module.webapp1", + "mode": "managed", + "type": "proxmox_vm_qemu", + "name": "node", + "provider": "module.webapp1.provider[\"local/telmate/proxmox\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "agent": 0, + "balloon": 1024, + "bios": "seabios", + "boot": "c", + "bootdisk": "", + "bridge": "", + "ci_wait": null, + "cicustom": "", + "cipassword": "", + "ciuser": "root", + "clone": "debian-buster-2020-11-06", + "clone_wait": 15, + "cores": 2, + "cpu": "host", + "desc": "Webapp for swh-search tests", + "disk": [ + { + "backup": false, + "cache": "none", + "discard": "", + "format": "raw", + "id": 0, + "iothread": false, + "mbps": 0, + "mbps_rd": 0, + "mbps_rd_max": 0, + "mbps_wr": 0, + "mbps_wr_max": 0, + "replicate": false, + "size": "32G", + "ssd": false, + "storage": "proxmox", + "storage_type": "cephfs", + "type": "virtio" + } + ], + "disk_gb": 0, + "force_create": false, + "full_clone": false, + "hastate": "", + "hotplug": "network,disk,usb", + "id": "branly/qemu/125", + "ipconfig0": "ip=192.168.100.71/24,gw=192.168.100.1", + "ipconfig1": "", + "ipconfig2": "", + "iso": null, + "kvm": true, + "mac": "", + "memory": 8192, + "name": "webapp1", + "nameserver": "192.168.100.29", + "network": [ + { + "bridge": "vmbr0", + "firewall": false, + "id": 0, + "link_down": false, + "macaddr": "06:FF:02:95:31:CF", + "model": "virtio", + "queues": -1, + "rate": -1, + "tag": -1 + } + ], + "nic": "", + "numa": false, + "onboot": true, + "os_network_config": null, + "os_type": "cloud-init", + "pool": "", + "preprovision": true, + "qemu_os": "other", + "scsihw": "virtio-scsi-pci", + "searchdomain": "internal.softwareheritage.org", + "serial": [], + "sockets": 1, + "ssh_forward_ip": null, + "ssh_host": "192.168.100.71", + "ssh_port": "22", + "ssh_private_key": null, + "ssh_user": "root", + "sshkeys": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDVKCfpeIMg7GS3Pk03ZAcBWAeDZ+AvWk2k/pPY0z8MJ3YAbqZkRtSK7yaDgJV6Gro7nn/TxdJLo2jEzzWvlC8d8AEzhZPy5Z/qfVVjqBTBM4H5+e+TItAHFfaY5+0WvIahxcfsfaq70MWfpJhszAah3ThJ4mqzYaw+dkr42+a7Gx3Ygpb/m2dpnFnxvXdcuAJYStmHKU5AWGWWM+Fm50/fdMqUfNd8MbKhkJt5ihXQmZWMOt7ls4N8i5NZWnS9YSWow8X/ENOEqCRN9TyRkc+pPS0w9DNi0BCsWvSRJOkyvQ6caEnKWlNoywCmM1AlIQD3k4RUgRWe0vqg/UKPpH3Z root@terraform\n", + "storage": "", + "storage_type": "", "target_node": "branly", "vcpus": 0, "vga": [], "vlan": -1, "vmid": 125 }, "private": "bnVsbA==" } ] } ] }