Skip to content
Snippets Groups Projects
README.md 2.5 KiB
Newer Older
MUNIER Florian's avatar
MUNIER Florian committed
# Descriptif du projet

- Auteur : Florian MUNIER
- Contact : florian.munier@imt-atlantique.net
- Formation : MS Infrastructures Cloud et DevOps
MUNIER Florian's avatar
MUNIER Florian committed
- Date : 31/01/2023 - 27/02/2023
MUNIER Florian's avatar
MUNIER Florian committed
- Description : Ce projet a pour but de déployer l'application Vapormap sur une instance d'une infrastructure générée via le projet terraform
MUNIER Florian's avatar
MUNIER Florian committed
- projet_terraform : https://gitlab.imt-atlantique.fr/f21munie/projet_terraform.git

MUNIER Florian's avatar
MUNIER Florian committed
> A noter qu'il faut au préalable avoir créé l'infrastructure via Terraform (lien du GitLab ci-dessus).
MUNIER Florian's avatar
MUNIER Florian committed

# Clone du projet

```sh
git clone https://gitlab.imt-atlantique.fr/f21munie/projet_terraform.git
```

# Création d'un environnement virtuel

```sh
cd projet_ansible_vapormap
python3 -m venv ./venv/ansible
source ./venv/ansible/bin/activate
pip install ansible
deactivate
```
MUNIER Florian's avatar
MUNIER Florian committed
# Création des fichiers hosts.ini, .ssh et ssh.cfg
MUNIER Florian's avatar
MUNIER Florian committed

MUNIER Florian's avatar
MUNIER Florian committed
Le projet terraform a généré les fichiers "hosts.ini", ".ssh" et "ssh.cfg".
MUNIER Florian's avatar
MUNIER Florian committed
Copiez les dans le répertoire de travail.
MUNIER Florian's avatar
MUNIER Florian committed
Ajouter un chmod 600 aux clés.
MUNIER Florian's avatar
MUNIER Florian committed

```sh
cp ../projet_terraform/hosts.ini projet_ansible_vapormap/
MUNIER Florian's avatar
MUNIER Florian committed
cp ../projet_terraform/.ssh projet_ansible_vapormap/
cp ../projet_terraform/ssh.cfg projet_ansible_vapormap/
MUNIER Florian's avatar
MUNIER Florian committed
chmod 600 .ssh/*
MUNIER Florian's avatar
MUNIER Florian committed
```
MUNIER Florian's avatar
MUNIER Florian committed
# Vérifier que les instances sont joignables

```sh
ANSIBLE_HOST_KEY_CHECKING=False ansible -i hosts.ini all -m ping
```
MUNIER Florian's avatar
MUNIER Florian committed

# Déploiement de l'application Vapormap

MUNIER Florian's avatar
MUNIER Florian committed
Dans le playbook, vous pouvez modifier <hosts> pour choisir l'instance sur laquelle vous voulez déployer le playbook de déploiement. Par exemple hosts: node01.
MUNIER Florian's avatar
MUNIER Florian committed
Par défaut, hosts est prédéfinit sur bastion.
MUNIER Florian's avatar
MUNIER Florian committed

> Si vous choisissez de déployer le playbook sur node01, il vous faudra modifier le fichier "hosts.ini" en ajoutant à la fin de la ligne correspondante à node01 : PUB_API_IP=<ip_publique_node01>.
node01 ansible_host=192.168.1.183  PUB_API_IP=10.29.245.115

MUNIER Florian's avatar
MUNIER Florian committed
```sh
source ./venv/ansible/bin/activate
ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook -i hosts.ini deploy.yml
deactivate
```

MUNIER Florian's avatar
MUNIER Florian committed
# Accéder à l'application

Pour accéder à l'application Vapormap, rendez-vous sur les adresses suivantes :

- Frontend
```sh
http://<PUB_API_IP>:8081
```
- API
```sh
http://<PUB_API_IP>:8082/api/points/
```

MUNIER Florian's avatar
MUNIER Florian committed
# Suppression de l'application Vapormap

MUNIER Florian's avatar
MUNIER Florian committed
Dans le playbook, vous pouvez modifier <hosts> pour choisir l'instance sur laquelle vous voulez déployer le playbook de destruction. Par exemple hosts: node01.
MUNIER Florian's avatar
MUNIER Florian committed
Par défaut, hosts est prédéfinit sur bastion.
MUNIER Florian's avatar
MUNIER Florian committed

MUNIER Florian's avatar
MUNIER Florian committed
```sh
source ./venv/ansible/bin/activate
ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook -i hosts.ini destroy.yml
deactivate
```