# Création d'une ressource de paire de clés SSH resource "openstack_compute_keypair_v2" "provision_keypair" { provider = openstack.ovh name = "provision_keypair" public_key = file(var.ssh_public_key) } resource "openstack_compute_instance_v2" "mongo_gateways" { count = var.mongo_groups_count name = "prod-gateway${count.index}" # Nom de l'instance provider = openstack.ovh # Nom du fournisseur image_name = "Debian 11" # Nom de l'image flavor_name = "s1-2" # Nom du type d'instance # flavor_name = "s1-8" # Nom du type d'instance # flavor_name = "d2-8" # Nom du type d'instance # Nom de la ressource openstack_compute_keypair_v2 nommée test_keypair key_pair = openstack_compute_keypair_v2.provision_keypair.name power_state = var.mongo_servers_enable ? "active" : "shutoff" metadata = { ansible_group = "gateways" mongo_group_id = count.index } # Ajoute le composant réseau pour atteindre votre instance network { name = "Ext-Net" } } # Création d'une instance resource "openstack_compute_instance_v2" "mongo_servers" { count = var.mongo_replicas_count * var.mongo_groups_count name = "prod-server${count.index}" # Nom de l'instance provider = openstack.ovh # Nom du fournisseur image_name = "Debian 11" # Nom de l'image flavor_name = "s1-2" # Nom du type d'instance # flavor_name = "s1-8" # Nom du type d'instance # flavor_name = "d2-8" # Nom du type d'instance # Nom de la ressource openstack_compute_keypair_v2 nommée test_keypair key_pair = openstack_compute_keypair_v2.provision_keypair.name power_state = var.mongo_servers_enable ? "active" : "shutoff" metadata = { ansible_group = "mongos" mongo_group_id = floor(count.index / var.mongo_replicas_count) mongo_group_index = count.index % var.mongo_replicas_count } # Ajoute le composant réseau pour atteindre votre instance network { name = "Ext-Net" } # provisioner "local-exec" { # command = "cd ../ansible && ansible-playbook -i inventories/terraform --private-key ${var.ssh_private_key} -e 'pub_key=${var.ssh_public_key}' playbook.yml --limit ${self.name}" # environment = { # ANSIBLE_HOST_KEY_CHECKING = "False" # } # } }