diff --git a/proxmox/terraform/production/cassandra.tf b/proxmox/terraform/production/cassandra.tf new file mode 100644 --- /dev/null +++ b/proxmox/terraform/production/cassandra.tf @@ -0,0 +1,157 @@ +# Provision the rancher cluster for the cassandra +# nodes in production +# +# Provision 3 vms in proxmox to manage the etcd cluster +# and the kubernetes control plane + +provider "rancher2" { + api_url = "https://rancher.euwest.azure.internal.softwareheritage.org/v3" + insecure = true +} + +resource "rancher2_cluster" "production_cassandra" { + name = "production-cassandra" + description = "Production - Cassandra cluster" + rke_config { + kubernetes_version = "v1.21.13-rancher1-1" + network { + plugin = "canal" + } + } +} + +output "production_cassandra_cluster_summary" { + sensitive = true + value = rancher2_cluster.production_cassandra.kube_config +} + +output "production_cassandra_cluster_command" { + sensitive = true + value = rancher2_cluster.production_cassandra.cluster_registration_token[0].node_command +} + +module "rancher_node_cassandra1" { + hostname = "rancher-node-cassandra1" + + source = "../modules/node" + template = "debian-bullseye-11.3-zfs-2022-04-21" + config = local.config + description = "Kubernetes management node for cassandra cluster" + hypervisor = "beaubourg" + vmid = 159 + sockets = "1" + cores = "4" + onboot = true + memory = "8192" + balloon = "4096" + + networks = [{ + id = 0 + ip = "192.168.100.178" + gateway = local.config["gateway_ip"] + macaddr = "" + bridge = "vmbr0" + }] + + storages = [{ + storage = "proxmox" + size = "20G" + }, { + storage = "proxmox" + size = "50G" + } + ] + + post_provision_steps = [ + "systemctl restart docker", # workaround + "${rancher2_cluster.production_cassandra.cluster_registration_token[0].node_command} --etcd --controlplane" + ] +} + +output "rancher_node_cassandra1_summary" { + value = module.rancher_node_cassandra1.summary +} + +module "rancher_node_cassandra2" { + hostname = "rancher-node-cassandra2" + + source = "../modules/node" + template = "debian-bullseye-11.3-zfs-2022-04-21" + config = local.config + description = "Kubernetes management node for cassandra cluster" + hypervisor = "branly" + vmid = 160 + sockets = "1" + cores = "4" + onboot = true + memory = "8192" + balloon = "4096" + + networks = [{ + id = 0 + ip = "192.168.100.179" + gateway = local.config["gateway_ip"] + macaddr = "" + bridge = "vmbr0" + }] + + storages = [{ + storage = "proxmox" + size = "20G" + }, { + storage = "proxmox" + size = "50G" + } + ] + + post_provision_steps = [ + "systemctl restart docker", # workaround + "${rancher2_cluster.production_cassandra.cluster_registration_token[0].node_command} --etcd --controlplane" + ] +} + +output "rancher_node_cassandra2_summary" { + value = module.rancher_node_cassandra2.summary +} + +module "rancher_node_cassandra3" { + hostname = "rancher-node-cassandra3" + + source = "../modules/node" + template = "debian-bullseye-11.3-zfs-2022-04-21" + config = local.config + description = "Kubernetes management node for cassandra cluster" + hypervisor = "hypervisor3" + vmid = 161 + sockets = "1" + cores = "4" + onboot = true + memory = "8192" + balloon = "4096" + + networks = [{ + id = 0 + ip = "192.168.100.180" + gateway = local.config["gateway_ip"] + macaddr = "" + bridge = "vmbr0" + }] + + storages = [{ + storage = "proxmox" + size = "20G" + }, { + storage = "proxmox" + size = "50G" + } + ] + + post_provision_steps = [ + "systemctl restart docker", # workaround + "${rancher2_cluster.production_cassandra.cluster_registration_token[0].node_command} --etcd --controlplane" + ] +} + +output "rancher_node_cassandra3_summary" { + value = module.rancher_node_cassandra3.summary +} diff --git a/proxmox/terraform/production/terraform.tfstate b/proxmox/terraform/production/terraform.tfstate --- a/proxmox/terraform/production/terraform.tfstate +++ b/proxmox/terraform/production/terraform.tfstate @@ -1,9 +1,31 @@ { "version": 4, - "terraform_version": "1.2.3", - "serial": 168, + "terraform_version": "1.2.4", + "serial": 203, "lineage": "e2912de8-415d-4c35-8ee5-757008306227", "outputs": { + "production_cassandra_cluster_command": { + "value": "sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.6.4 --server https://rancher.euwest.azure.internal.softwareheritage.org --token 4s5g6zqh5rdl8v9gzstr55sb5wxsh62hrz6gfgmh5sgnk5p8259n98 --ca-checksum 8850dd89eb7f29a70c0d50a2b389bf1950808a9dff4062c66ab806b80b988bac", + "type": "string", + "sensitive": true + }, + "production_cassandra_cluster_summary": { + "value": "apiVersion: v1\nkind: Config\nclusters:\n- name: \"production-cassandra\"\n cluster:\n server: \"https://rancher.euwest.azure.internal.softwareheritage.org/k8s/clusters/c-pcndd\"\n certificate-authority-data: \"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJwekNDQ\\\n VUyZ0F3SUJBZ0lCQURBS0JnZ3Foa2pPUFFRREFqQTdNUnd3R2dZRFZRUUtFeE5rZVc1aGJXbGoKY\\\n kdsemRHVnVaWEl0YjNKbk1Sc3dHUVlEVlFRREV4SmtlVzVoYldsamJHbHpkR1Z1WlhJdFkyRXdIa\\\n GNOTWpJdwpOREV5TWpJek56RTBXaGNOTXpJd05EQTVNakl6TnpFMFdqQTdNUnd3R2dZRFZRUUtFe\\\n E5rZVc1aGJXbGpiR2x6CmRHVnVaWEl0YjNKbk1Sc3dHUVlEVlFRREV4SmtlVzVoYldsamJHbHpkR\\\n 1Z1WlhJdFkyRXdXVEFUQmdjcWhrak8KUFFJQkJnZ3Foa2pPUFFNQkJ3TkNBQVMvTnRpTWV4NDY0K\\\n 0R3RytuQ2svQXdJM2VDSjNGOHdQNitUZytNTjFnaQo3OWJWeEIwd1RTYjZmL3ZXK3NRdEIzdEUrS\\\n k5iaU1mU2xuQUtaVlBjQjA0T28wSXdRREFPQmdOVkhROEJBZjhFCkJBTUNBcVF3RHdZRFZSMFRBU\\\n UgvQkFVd0F3RUIvekFkQmdOVkhRNEVGZ1FVeVUyT1lacnBkbCtWYkIzSkpUcHUKMktiVnF0NHdDZ\\\n 1lJS29aSXpqMEVBd0lEU0FBd1JRSWdRY25JcnJCSzdUbFBBdlRKb3EwNmp5QVplcURzTWI1LwpKZ\\\n Th4QVFnTnV5d0NJUURaWDA2NDJ4NXh2N1lFdmZ4eWJ0SnlRWVY3aTlJZ1llNzlKVG9SaVBQTkZBP\\\n T0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ==\"\n\nusers:\n- name: \"production-cassandra\"\n user:\n token: \"kubeconfig-u-rzh79fcvz9:h9spl2p692sjlsgsst58tw9l2k42v7z4s7zdxhpvlvcmz584gf8jjh\"\n\n\ncontexts:\n- name: \"production-cassandra\"\n context:\n user: \"production-cassandra\"\n cluster: \"production-cassandra\"\n\ncurrent-context: \"production-cassandra\"\n", + "type": "string", + "sensitive": true + }, + "rancher_node_cassandra1_summary": { + "value": "\nhostname: rancher-node-cassandra1\nfqdn: rancher-node-cassandra1.internal.softwareheritage.org\nnetwork: ip=192.168.100.178/24,gw=192.168.100.1\n", + "type": "string" + }, + "rancher_node_cassandra2_summary": { + "value": "\nhostname: rancher-node-cassandra2\nfqdn: rancher-node-cassandra2.internal.softwareheritage.org\nnetwork: ip=192.168.100.179/24,gw=192.168.100.1\n", + "type": "string" + }, + "rancher_node_cassandra3_summary": { + "value": "\nhostname: rancher-node-cassandra3\nfqdn: rancher-node-cassandra3.internal.softwareheritage.org\nnetwork: ip=192.168.100.180/24,gw=192.168.100.1\n", + "type": "string" + }, "scrubber1_summary": { "value": "\nhostname: scrubber1\nfqdn: scrubber1.internal.softwareheritage.org\nnetwork: ip=192.168.100.90/24,gw=192.168.100.1\n", "type": "string" @@ -14,6 +36,282 @@ } }, "resources": [ + { + "mode": "managed", + "type": "rancher2_cluster", + "name": "production_cassandra", + "provider": "provider[\"registry.terraform.io/rancher/rancher2\"]", + "instances": [ + { + "schema_version": 1, + "attributes": { + "agent_env_vars": [], + "aks_config": [], + "aks_config_v2": [], + "annotations": { + "authz.management.cattle.io/creator-role-bindings": "{\"created\":[\"cluster-owner\"],\"required\":[\"cluster-owner\"]}" + }, + "ca_cert": null, + "cluster_auth_endpoint": [ + { + "ca_certs": "", + "enabled": false, + "fqdn": "" + } + ], + "cluster_monitoring_input": [], + "cluster_registration_token": [ + { + "annotations": {}, + "cluster_id": "c-pcndd", + "command": "kubectl apply -f https://rancher.euwest.azure.internal.softwareheritage.org/v3/import/4s5g6zqh5rdl8v9gzstr55sb5wxsh62hrz6gfgmh5sgnk5p8259n98_c-pcndd.yaml", + "id": "c-pcndd:default-token", + "insecure_command": "curl --insecure -sfL https://rancher.euwest.azure.internal.softwareheritage.org/v3/import/4s5g6zqh5rdl8v9gzstr55sb5wxsh62hrz6gfgmh5sgnk5p8259n98_c-pcndd.yaml | kubectl apply -f -", + "insecure_node_command": "", + "insecure_windows_node_command": "", + "labels": { + "cattle.io/creator": "norman" + }, + "manifest_url": "https://rancher.euwest.azure.internal.softwareheritage.org/v3/import/4s5g6zqh5rdl8v9gzstr55sb5wxsh62hrz6gfgmh5sgnk5p8259n98_c-pcndd.yaml", + "name": "default-token", + "node_command": "sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.6.4 --server https://rancher.euwest.azure.internal.softwareheritage.org --token 4s5g6zqh5rdl8v9gzstr55sb5wxsh62hrz6gfgmh5sgnk5p8259n98 --ca-checksum 8850dd89eb7f29a70c0d50a2b389bf1950808a9dff4062c66ab806b80b988bac", + "token": "4s5g6zqh5rdl8v9gzstr55sb5wxsh62hrz6gfgmh5sgnk5p8259n98", + "windows_node_command": "PowerShell -NoLogo -NonInteractive -Command \"\u0026 {docker run -v c:\\:c:\\host rancher/rancher-agent:v2.6.4 bootstrap --server https://rancher.euwest.azure.internal.softwareheritage.org --token 4s5g6zqh5rdl8v9gzstr55sb5wxsh62hrz6gfgmh5sgnk5p8259n98 --ca-checksum 8850dd89eb7f29a70c0d50a2b389bf1950808a9dff4062c66ab806b80b988bac | iex}\"" + } + ], + "cluster_template_answers": null, + "cluster_template_id": null, + "cluster_template_questions": null, + "cluster_template_revision_id": null, + "default_pod_security_policy_template_id": null, + "default_project_id": "c-pcndd:p-qx9vf", + "description": "Production - Cassandra cluster", + "desired_agent_image": null, + "desired_auth_image": null, + "docker_root_dir": "/var/lib/docker", + "driver": "", + "eks_config": [], + "eks_config_v2": null, + "enable_cluster_alerting": false, + "enable_cluster_istio": null, + "enable_cluster_monitoring": false, + "enable_network_policy": false, + "fleet_workspace_name": null, + "gke_config": [], + "gke_config_v2": [], + "id": "c-pcndd", + "istio_enabled": false, + "k3s_config": [], + "kube_config": "apiVersion: v1\nkind: Config\nclusters:\n- name: \"production-cassandra\"\n cluster:\n server: \"https://rancher.euwest.azure.internal.softwareheritage.org/k8s/clusters/c-pcndd\"\n certificate-authority-data: \"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJwekNDQ\\\n VUyZ0F3SUJBZ0lCQURBS0JnZ3Foa2pPUFFRREFqQTdNUnd3R2dZRFZRUUtFeE5rZVc1aGJXbGoKY\\\n kdsemRHVnVaWEl0YjNKbk1Sc3dHUVlEVlFRREV4SmtlVzVoYldsamJHbHpkR1Z1WlhJdFkyRXdIa\\\n GNOTWpJdwpOREV5TWpJek56RTBXaGNOTXpJd05EQTVNakl6TnpFMFdqQTdNUnd3R2dZRFZRUUtFe\\\n E5rZVc1aGJXbGpiR2x6CmRHVnVaWEl0YjNKbk1Sc3dHUVlEVlFRREV4SmtlVzVoYldsamJHbHpkR\\\n 1Z1WlhJdFkyRXdXVEFUQmdjcWhrak8KUFFJQkJnZ3Foa2pPUFFNQkJ3TkNBQVMvTnRpTWV4NDY0K\\\n 0R3RytuQ2svQXdJM2VDSjNGOHdQNitUZytNTjFnaQo3OWJWeEIwd1RTYjZmL3ZXK3NRdEIzdEUrS\\\n k5iaU1mU2xuQUtaVlBjQjA0T28wSXdRREFPQmdOVkhROEJBZjhFCkJBTUNBcVF3RHdZRFZSMFRBU\\\n UgvQkFVd0F3RUIvekFkQmdOVkhRNEVGZ1FVeVUyT1lacnBkbCtWYkIzSkpUcHUKMktiVnF0NHdDZ\\\n 1lJS29aSXpqMEVBd0lEU0FBd1JRSWdRY25JcnJCSzdUbFBBdlRKb3EwNmp5QVplcURzTWI1LwpKZ\\\n Th4QVFnTnV5d0NJUURaWDA2NDJ4NXh2N1lFdmZ4eWJ0SnlRWVY3aTlJZ1llNzlKVG9SaVBQTkZBP\\\n T0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ==\"\n\nusers:\n- name: \"production-cassandra\"\n user:\n token: \"kubeconfig-u-rzh79fcvz9:h9spl2p692sjlsgsst58tw9l2k42v7z4s7zdxhpvlvcmz584gf8jjh\"\n\n\ncontexts:\n- name: \"production-cassandra\"\n context:\n user: \"production-cassandra\"\n cluster: \"production-cassandra\"\n\ncurrent-context: \"production-cassandra\"\n", + "labels": { + "cattle.io/creator": "norman" + }, + "name": "production-cassandra", + "oke_config": [], + "rke2_config": [], + "rke_config": [ + { + "addon_job_timeout": 45, + "addons": "", + "addons_include": null, + "authentication": [ + { + "sans": [], + "strategy": "x509" + } + ], + "authorization": [ + { + "mode": null, + "options": null + } + ], + "bastion_host": [ + { + "address": "", + "port": "", + "ssh_agent_auth": false, + "ssh_key": "", + "ssh_key_path": "", + "user": "" + } + ], + "cloud_provider": [ + { + "aws_cloud_provider": null, + "azure_cloud_provider": null, + "custom_cloud_provider": null, + "name": null, + "openstack_cloud_provider": null, + "vsphere_cloud_provider": null + } + ], + "dns": [], + "enable_cri_dockerd": false, + "ignore_docker_version": true, + "ingress": [ + { + "default_backend": true, + "dns_policy": "", + "extra_args": {}, + "http_port": 0, + "https_port": 0, + "network_mode": "", + "node_selector": {}, + "options": {}, + "provider": "nginx", + "tolerations": [], + "update_strategy": [] + } + ], + "kubernetes_version": "v1.21.13-rancher1-1", + "monitoring": [ + { + "node_selector": {}, + "options": {}, + "provider": "metrics-server", + "replicas": 1, + "tolerations": [], + "update_strategy": [] + } + ], + "network": [ + { + "calico_network_provider": [], + "canal_network_provider": [], + "flannel_network_provider": [], + "mtu": 0, + "options": {}, + "plugin": "canal", + "tolerations": [], + "weave_network_provider": [] + } + ], + "nodes": [], + "prefix_path": "", + "private_registries": [], + "services": [ + { + "etcd": [ + { + "backup_config": [ + { + "enabled": true, + "interval_hours": 12, + "retention": 6, + "s3_backup_config": [], + "safe_timestamp": false, + "timeout": 300 + } + ], + "ca_cert": "", + "cert": "", + "creation": "12h", + "external_urls": [], + "extra_args": { + "election-timeout": "5000", + "heartbeat-interval": "500" + }, + "extra_binds": [], + "extra_env": [], + "gid": 0, + "image": "", + "key": "", + "path": "", + "retention": "72h", + "snapshot": false, + "uid": 0 + } + ], + "kube_api": [ + { + "admission_configuration": {}, + "always_pull_images": false, + "audit_log": [], + "event_rate_limit": [], + "extra_args": {}, + "extra_binds": [], + "extra_env": [], + "image": "", + "pod_security_policy": false, + "secrets_encryption_config": [], + "service_cluster_ip_range": "", + "service_node_port_range": "30000-32767" + } + ], + "kube_controller": [ + { + "cluster_cidr": null, + "extra_args": null, + "extra_binds": null, + "extra_env": null, + "image": null, + "service_cluster_ip_range": null + } + ], + "kubelet": [ + { + "cluster_dns_server": "", + "cluster_domain": "", + "extra_args": {}, + "extra_binds": [], + "extra_env": [], + "fail_swap_on": false, + "generate_serving_certificate": false, + "image": "", + "infra_container_image": "" + } + ], + "kubeproxy": [ + { + "extra_args": null, + "extra_binds": null, + "extra_env": null, + "image": null + } + ], + "scheduler": [ + { + "extra_args": null, + "extra_binds": null, + "extra_env": null, + "image": null + } + ] + } + ], + "ssh_agent_auth": false, + "ssh_cert_path": "", + "ssh_key_path": "", + "upgrade_strategy": [ + { + "drain": false, + "drain_input": [ + { + "delete_local_data": false, + "force": false, + "grace_period": -1, + "ignore_daemon_sets": true, + "timeout": 120 + } + ], + "max_unavailable_controlplane": "1", + "max_unavailable_worker": "10%" + } + ], + "win_prefix_path": "" + } + ], + "scheduled_cluster_scan": null, + "system_project_id": "c-pcndd:p-nvptk", + "timeouts": null, + "windows_prefered_cluster": false + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjoxODAwMDAwMDAwMDAwLCJkZWxldGUiOjE4MDAwMDAwMDAwMDAsInVwZGF0ZSI6MTgwMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMSJ9" + } + ] + }, { "module": "module.counters1", "mode": "managed", @@ -407,6 +705,471 @@ } ] }, + { + "module": "module.rancher_node_cassandra1", + "mode": "managed", + "type": "proxmox_vm_qemu", + "name": "node", + "provider": "module.rancher_node_cassandra1.provider[\"registry.terraform.io/telmate/proxmox\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "additional_wait": 0, + "agent": 0, + "args": "", + "automatic_reboot": true, + "balloon": 4096, + "bios": "seabios", + "boot": "c", + "bootdisk": "", + "bridge": "", + "ci_wait": null, + "cicustom": "", + "cipassword": "", + "ciuser": "root", + "clone": "debian-bullseye-11.3-zfs-2022-04-21", + "clone_wait": 0, + "cloudinit_cdrom_storage": null, + "cores": 4, + "cpu": "kvm64", + "default_ipv4_address": null, + "define_connection_info": true, + "desc": "Kubernetes management node for cassandra cluster", + "disk": [ + { + "aio": "", + "backup": 0, + "cache": "none", + "discard": "", + "file": "base-10008-disk-0/vm-159-disk-0", + "format": "raw", + "iothread": 0, + "mbps": 0, + "mbps_rd": 0, + "mbps_rd_max": 0, + "mbps_wr": 0, + "mbps_wr_max": 0, + "media": "", + "replicate": 0, + "size": "20G", + "slot": 0, + "ssd": 0, + "storage": "proxmox", + "storage_type": "rbd", + "type": "virtio", + "volume": "proxmox:base-10008-disk-0/vm-159-disk-0" + }, + { + "aio": "", + "backup": 0, + "cache": "none", + "discard": "", + "file": "vm-159-disk-1", + "format": "raw", + "iothread": 0, + "mbps": 0, + "mbps_rd": 0, + "mbps_rd_max": 0, + "mbps_wr": 0, + "mbps_wr_max": 0, + "media": "", + "replicate": 0, + "size": "50G", + "slot": 1, + "ssd": 0, + "storage": "proxmox", + "storage_type": "rbd", + "type": "virtio", + "volume": "proxmox:vm-159-disk-1" + } + ], + "disk_gb": 0, + "force_create": false, + "force_recreate_on_change_of": null, + "full_clone": false, + "guest_agent_ready_timeout": 100, + "hagroup": "", + "hastate": "", + "hotplug": "network,disk,usb", + "id": "beaubourg/qemu/159", + "ipconfig0": "ip=192.168.100.178/24,gw=192.168.100.1", + "ipconfig1": "", + "ipconfig2": "", + "ipconfig3": "", + "ipconfig4": "", + "ipconfig5": "", + "iso": null, + "kvm": true, + "mac": "", + "memory": 8192, + "name": "rancher-node-cassandra1", + "nameserver": "192.168.100.29", + "network": [ + { + "bridge": "vmbr0", + "firewall": false, + "link_down": false, + "macaddr": "52:AB:54:BF:2C:56", + "model": "virtio", + "mtu": 0, + "queues": 0, + "rate": 0, + "tag": -1 + } + ], + "nic": "", + "numa": false, + "onboot": true, + "oncreate": true, + "os_network_config": null, + "os_type": "cloud-init", + "pool": "", + "preprovision": true, + "pxe": null, + "qemu_os": "other", + "reboot_required": false, + "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", + "storage": "", + "storage_type": "", + "tablet": true, + "tags": "", + "target_node": "beaubourg", + "timeouts": null, + "unused_disk": [], + "usb": [], + "vcpus": 0, + "vga": [], + "vlan": -1, + "vmid": 159 + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMDAsImRlZmF1bHQiOjMwMDAwMDAwMDAwMCwiZGVsZXRlIjoxODAwMDAwMDAwMDAsInJlYWQiOjE4MDAwMDAwMDAwMCwidXBkYXRlIjoxODAwMDAwMDAwMDB9fQ==", + "dependencies": [ + "rancher2_cluster.production_cassandra" + ] + } + ] + }, + { + "module": "module.rancher_node_cassandra2", + "mode": "managed", + "type": "proxmox_vm_qemu", + "name": "node", + "provider": "module.rancher_node_cassandra2.provider[\"registry.terraform.io/telmate/proxmox\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "additional_wait": 0, + "agent": 0, + "args": "", + "automatic_reboot": true, + "balloon": 4096, + "bios": "seabios", + "boot": "c", + "bootdisk": "", + "bridge": "", + "ci_wait": null, + "cicustom": "", + "cipassword": "", + "ciuser": "root", + "clone": "debian-bullseye-11.3-zfs-2022-04-21", + "clone_wait": 0, + "cloudinit_cdrom_storage": null, + "cores": 4, + "cpu": "kvm64", + "default_ipv4_address": null, + "define_connection_info": true, + "desc": "Kubernetes management node for cassandra cluster", + "disk": [ + { + "aio": "", + "backup": 0, + "cache": "none", + "discard": "", + "file": "base-10008-disk-0/vm-160-disk-0", + "format": "raw", + "iothread": 0, + "mbps": 0, + "mbps_rd": 0, + "mbps_rd_max": 0, + "mbps_wr": 0, + "mbps_wr_max": 0, + "media": "", + "replicate": 0, + "size": "20G", + "slot": 0, + "ssd": 0, + "storage": "proxmox", + "storage_type": "rbd", + "type": "virtio", + "volume": "proxmox:base-10008-disk-0/vm-160-disk-0" + }, + { + "aio": "", + "backup": 0, + "cache": "none", + "discard": "", + "file": "vm-160-disk-1", + "format": "raw", + "iothread": 0, + "mbps": 0, + "mbps_rd": 0, + "mbps_rd_max": 0, + "mbps_wr": 0, + "mbps_wr_max": 0, + "media": "", + "replicate": 0, + "size": "50G", + "slot": 1, + "ssd": 0, + "storage": "proxmox", + "storage_type": "rbd", + "type": "virtio", + "volume": "proxmox:vm-160-disk-1" + } + ], + "disk_gb": 0, + "force_create": false, + "force_recreate_on_change_of": null, + "full_clone": false, + "guest_agent_ready_timeout": 100, + "hagroup": "", + "hastate": "", + "hotplug": "network,disk,usb", + "id": "branly/qemu/160", + "ipconfig0": "ip=192.168.100.179/24,gw=192.168.100.1", + "ipconfig1": "", + "ipconfig2": "", + "ipconfig3": "", + "ipconfig4": "", + "ipconfig5": "", + "iso": null, + "kvm": true, + "mac": "", + "memory": 8192, + "name": "rancher-node-cassandra2", + "nameserver": "192.168.100.29", + "network": [ + { + "bridge": "vmbr0", + "firewall": false, + "link_down": false, + "macaddr": "5A:BE:36:AA:7A:78", + "model": "virtio", + "mtu": 0, + "queues": 0, + "rate": 0, + "tag": -1 + } + ], + "nic": "", + "numa": false, + "onboot": true, + "oncreate": true, + "os_network_config": null, + "os_type": "cloud-init", + "pool": "", + "preprovision": true, + "pxe": null, + "qemu_os": "other", + "reboot_required": false, + "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", + "storage": "", + "storage_type": "", + "tablet": true, + "tags": "", + "target_node": "branly", + "timeouts": null, + "unused_disk": [], + "usb": [], + "vcpus": 0, + "vga": [], + "vlan": -1, + "vmid": 160 + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMDAsImRlZmF1bHQiOjMwMDAwMDAwMDAwMCwiZGVsZXRlIjoxODAwMDAwMDAwMDAsInJlYWQiOjE4MDAwMDAwMDAwMCwidXBkYXRlIjoxODAwMDAwMDAwMDB9fQ==", + "dependencies": [ + "rancher2_cluster.production_cassandra" + ] + } + ] + }, + { + "module": "module.rancher_node_cassandra3", + "mode": "managed", + "type": "proxmox_vm_qemu", + "name": "node", + "provider": "module.rancher_node_cassandra3.provider[\"registry.terraform.io/telmate/proxmox\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "additional_wait": 0, + "agent": 0, + "args": "", + "automatic_reboot": true, + "balloon": 4096, + "bios": "seabios", + "boot": "c", + "bootdisk": "", + "bridge": "", + "ci_wait": null, + "cicustom": "", + "cipassword": "", + "ciuser": "root", + "clone": "debian-bullseye-11.3-zfs-2022-04-21", + "clone_wait": 0, + "cloudinit_cdrom_storage": null, + "cores": 4, + "cpu": "kvm64", + "default_ipv4_address": null, + "define_connection_info": true, + "desc": "Kubernetes management node for cassandra cluster", + "disk": [ + { + "aio": "", + "backup": 0, + "cache": "none", + "discard": "", + "file": "base-10008-disk-0/vm-161-disk-0", + "format": "raw", + "iothread": 0, + "mbps": 0, + "mbps_rd": 0, + "mbps_rd_max": 0, + "mbps_wr": 0, + "mbps_wr_max": 0, + "media": "", + "replicate": 0, + "size": "20G", + "slot": 0, + "ssd": 0, + "storage": "proxmox", + "storage_type": "rbd", + "type": "virtio", + "volume": "proxmox:base-10008-disk-0/vm-161-disk-0" + }, + { + "aio": "", + "backup": 0, + "cache": "none", + "discard": "", + "file": "vm-161-disk-1", + "format": "raw", + "iothread": 0, + "mbps": 0, + "mbps_rd": 0, + "mbps_rd_max": 0, + "mbps_wr": 0, + "mbps_wr_max": 0, + "media": "", + "replicate": 0, + "size": "50G", + "slot": 1, + "ssd": 0, + "storage": "proxmox", + "storage_type": "rbd", + "type": "virtio", + "volume": "proxmox:vm-161-disk-1" + } + ], + "disk_gb": 0, + "force_create": false, + "force_recreate_on_change_of": null, + "full_clone": false, + "guest_agent_ready_timeout": 100, + "hagroup": "", + "hastate": "", + "hotplug": "network,disk,usb", + "id": "hypervisor3/qemu/161", + "ipconfig0": "ip=192.168.100.180/24,gw=192.168.100.1", + "ipconfig1": "", + "ipconfig2": "", + "ipconfig3": "", + "ipconfig4": "", + "ipconfig5": "", + "iso": null, + "kvm": true, + "mac": "", + "memory": 8192, + "name": "rancher-node-cassandra3", + "nameserver": "192.168.100.29", + "network": [ + { + "bridge": "vmbr0", + "firewall": false, + "link_down": false, + "macaddr": "F6:47:01:43:DD:44", + "model": "virtio", + "mtu": 0, + "queues": 0, + "rate": 0, + "tag": -1 + } + ], + "nic": "", + "numa": false, + "onboot": true, + "oncreate": true, + "os_network_config": null, + "os_type": "cloud-init", + "pool": "", + "preprovision": true, + "pxe": null, + "qemu_os": "other", + "reboot_required": false, + "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", + "storage": "", + "storage_type": "", + "tablet": true, + "tags": "", + "target_node": "hypervisor3", + "timeouts": null, + "unused_disk": [], + "usb": [], + "vcpus": 0, + "vga": [], + "vlan": -1, + "vmid": 161 + }, + "sensitive_attributes": [], + "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMDAsImRlZmF1bHQiOjMwMDAwMDAwMDAwMCwiZGVsZXRlIjoxODAwMDAwMDAwMDAsInJlYWQiOjE4MDAwMDAwMDAwMCwidXBkYXRlIjoxODAwMDAwMDAwMDB9fQ==", + "dependencies": [ + "rancher2_cluster.production_cassandra" + ] + } + ] + }, { "module": "module.scrubber1", "mode": "managed", diff --git a/proxmox/terraform/versions.tf b/proxmox/terraform/versions.tf --- a/proxmox/terraform/versions.tf +++ b/proxmox/terraform/versions.tf @@ -8,7 +8,7 @@ } rancher2 = { source = "rancher/rancher2" - version = "1.23.0" + version = "1.24.0" } } }