79 lines
1.4 KiB
Markdown
79 lines
1.4 KiB
Markdown
# Terraform 101
|
|
|
|
## Install
|
|
Installer terraform: https://www.terraform.io/downloads
|
|
|
|
## Objectif
|
|
L'objectif de ce TP est de demarrer une instance Debian 10 sur OpenStack avec terraform.
|
|
|
|
## Connexion a openstack
|
|
|
|
Terraform a besoin de parler a OpenStack.
|
|
|
|
Si vous y arriver depuis votre terminal, il y arrivera aussi.
|
|
|
|
```bash
|
|
source 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 terraform d'utiliser `OpenStack` comme provider.
|
|
|
|
Il faut maintenant initier terraform:
|
|
```bash
|
|
terraform 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
|
|
terraform 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
|
|
terraform destroy
|
|
```
|