Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
terraform_bpg_proxmox [2024/01/05 23:36] – ps | terraform_bpg_proxmox [2024/01/08 00:07] (Version actuelle) – [6. Epilogue : on conclut avec un playbook ansible] ps | ||
---|---|---|---|
Ligne 5: | Ligne 5: | ||
**Terraform** est un outil **IAC** (Infrastructure As Code) développé par // | **Terraform** est un outil **IAC** (Infrastructure As Code) développé par // | ||
- | Il permet grâce à une syntaxe déclarative relativement simple de créer une infrastructure dans le //cloud// ou en // | + | Il permet grâce à une syntaxe déclarative relativement simple de créer une infrastructure dans le //cloud// ou en // |
Il est habituellement utilisé pour créer des VM ensuite configurées par des **playbooks** **Ansible** | Il est habituellement utilisé pour créer des VM ensuite configurées par des **playbooks** **Ansible** | ||
- | cf le site de Stéphane Robert : | + | Des changements de licence récents concernant Terraform ont conduit à la création de la fondation **Opentofu** (https:// |
- | * https:// | + | |
- | + | cf le site de //Stéphane Robert// : | |
+ | * https:// | ||
===== Installation de Terraform ===== | ===== Installation de Terraform ===== | ||
Ligne 28: | Ligne 30: | ||
</ | </ | ||
- | ===== Mise en oeuvre de Terraform avec le provider | + | ===== Mise en oeuvre de Terraform avec le provider |
L' | L' | ||
Ligne 179: | Ligne 181: | ||
# you may download this image locally on your workstation and then use the local path instead of the remote URL | # you may download this image locally on your workstation and then use the local path instead of the remote URL | ||
path = " | path = " | ||
+ | # | ||
file_name = " | file_name = " | ||
} | } | ||
Ligne 192: | Ligne 195: | ||
algorithm = " | algorithm = " | ||
rsa_bits | rsa_bits | ||
- | } | ||
- | |||
- | output " | ||
- | value = random_password.debian_vm_password.result | ||
- | sensitive = true | ||
- | } | ||
- | |||
- | output " | ||
- | value = tls_private_key.debian_vm_key.private_key_pem | ||
- | sensitive = true | ||
} | } | ||
Ligne 234: | Ligne 227: | ||
</ | </ | ||
- | On peut alors vérifier l' | + | On peut alors vérifier l' |
==== 4. Modification des ressources puis plan ==== | ==== 4. Modification des ressources puis plan ==== | ||
* éditer le fichier **main.tf** pour changer la mémoire allouée aux VMs : 1024 => 512 | * éditer le fichier **main.tf** pour changer la mémoire allouée aux VMs : 1024 => 512 | ||
- | * on | + | * on peut alors relancer '' |
+ | |||
+ | ==== 5. On termine par apply ==== | ||
+ | * la commande '' | ||
+ | ==== 6. Epilogue : on conclut avec un playbook ansible ==== | ||
+ | * on peut alors lancer un playbook **ansible** (pour installer Apache par exemple) pour terminer la configuration des VM ... |