79 lines
1.4 KiB
Markdown
79 lines
1.4 KiB
Markdown
# OpenTofu 101
|
|
|
|
## Install
|
|
Installer `OpenTofu`: https://opentofu.org/docs/intro/install/deb
|
|
|
|
## Objectif
|
|
L'objectif de ce TP est de demarrer une instance Debian 12 sur OpenStack avec `OpenTofu`.
|
|
|
|
## Connexion a openstack
|
|
|
|
`OpenTofu` a besoin de parler a OpenStack.
|
|
|
|
Si vous y arriver depuis votre terminal, il y arrivera aussi.
|
|
|
|
```bash
|
|
source /root/openrc
|
|
```
|
|
|
|
## main.tf
|
|
|
|
Creer un dossier 101:
|
|
|
|
```bash
|
|
mkdir 101
|
|
cd 101
|
|
```
|
|
|
|
Creer ensuite ce fichier `main.tf`:
|
|
```
|
|
terraform {
|
|
required_providers {
|
|
openstack = {
|
|
source = "terraform-provider-openstack/openstack"
|
|
version = "1.46.0"
|
|
}
|
|
}
|
|
}
|
|
|
|
provider "openstack" {
|
|
}
|
|
|
|
```
|
|
|
|
Avec ce debut, vous specifiez a `OpenTofu` d'utiliser `OpenStack` comme provider.
|
|
|
|
Il faut maintenant initier `OpenTofu`:
|
|
```bash
|
|
tofu init
|
|
```
|
|
|
|
## server
|
|
|
|
A vous maintenant d'ajouter le necessaire dans votre fichier `main.tf` pour creer une resource de type `openstack_compute_instance_v2` que vous appelerez `server1`
|
|
|
|
Quand vous pensez avoir ecris le code correctement, utilisez:
|
|
|
|
```bash
|
|
tofu apply
|
|
```
|
|
|
|
Cela devrait creer un serveur sur `OpenStack`.
|
|
|
|
Verifiez que votre serveur ping.
|
|
|
|
Si vous avez besoin de la commande `openstack`, il faut d'abord sourcer l'environment openstack:
|
|
```bash
|
|
source /opt/oscli/bin/activate
|
|
```
|
|
|
|
Montrez au prof le resultat.
|
|
|
|
## destroy
|
|
|
|
Lorsque tout est bon, supprimer vos resources:
|
|
|
|
```bash
|
|
tofu destroy
|
|
```
|