Update README.md
This commit is contained in:
parent
4dbb5ffeb2
commit
b70c3ca97e
4 changed files with 111 additions and 7 deletions
107
README.md
107
README.md
|
@ -1,15 +1,108 @@
|
||||||
# Ansible Project
|
# Ansible Project
|
||||||
> Florian Charlaix P1905458 | DevOps 1
|
> Florian Charlaix P1905458 | DevOps 1
|
||||||
|
|
||||||
## SSH Keys
|
|
||||||
### VM
|
|
||||||
|
|
||||||
### Git
|
|
||||||
|
|
||||||
## Roles
|
## Roles
|
||||||
*
|
### APT
|
||||||
|
Installe les dépendances générales avec APT
|
||||||
|
* zip
|
||||||
|
* unzip
|
||||||
|
* acl
|
||||||
|
|
||||||
|
### MariaDB
|
||||||
|
Install et configure MariaDB.
|
||||||
|
Crée une base de données, un utilisateur et mot de passe avec les variables :
|
||||||
|
* `db_name`: Nom de la base de données
|
||||||
|
* `db_user`: Nom de l'utilisateur
|
||||||
|
* `db_password`: Mot de passe de l'utilisateur
|
||||||
|
|
||||||
|
### PHP
|
||||||
|
Install, configure PHP et ses dépendances pour ProjectSend.
|
||||||
|
|
||||||
|
### NodeJS
|
||||||
|
Installe et met en place NodeJS et NPM.
|
||||||
|
Cela crée aussi le dossier npm pour l'utilisateur www-data
|
||||||
|
|
||||||
|
### Nginx
|
||||||
|
Install et configure Nginx. Met en place la configuration pour ProjectSend.
|
||||||
|
* `gzip`: Activer ou non gzip
|
||||||
|
|
||||||
|
### ansistrano.deploy
|
||||||
|
Ce rôle fourni par la communauté permet de gérer le déploiement atomique.
|
||||||
|
|
||||||
|
Il utilise les tags du GitHub afin de gérer la version.
|
||||||
|
|
||||||
|
Une fois installer, la configuration pour la base de données est effectué et les dépendances installer et/ou compiler grace aux taches dans `ansistrano_tasks`.
|
||||||
|
|
||||||
## Setup
|
## Setup
|
||||||
(Also makefile can be used)
|
* Mettre en place les bons hosts dans `hosts.yml` et les `host_vars` correspondents
|
||||||
|
* Exécuter le playbook principale
|
||||||
|
```bash
|
||||||
|
ansible-playbook playbook.yml
|
||||||
|
```
|
||||||
|
|
||||||
## Schema
|
## Schema
|
||||||
|
```mermaid
|
||||||
|
graph TB;
|
||||||
|
subgraph Playbook
|
||||||
|
playbook.yml --> playbook-server.yml;
|
||||||
|
playbook.yml --> playbook-app.yml;
|
||||||
|
end
|
||||||
|
subgraph Roles
|
||||||
|
playbook-server.yml --- apt(apt);
|
||||||
|
playbook-server.yml --- mariadb(mariadb);
|
||||||
|
playbook-server.yml --- php(php);
|
||||||
|
playbook-server.yml --- nodejs(nodejs);
|
||||||
|
playbook-server.yml --- nginx(nginx);
|
||||||
|
playbook-app.yml --- ansistrano.deploy(ansistrano.deploy);
|
||||||
|
end
|
||||||
|
subgraph Hooks
|
||||||
|
ansistrano.deploy --- after_update.yml([after_update.yml]);
|
||||||
|
after_update.yml --> configure.yml([configure.yml]);
|
||||||
|
after_update.yml --> dependencies.yml([dependencies.yml]);
|
||||||
|
end
|
||||||
|
```
|
||||||
|
|
||||||
|
## VM
|
||||||
|
* Ip: `192.168.140.142`
|
||||||
|
* Utilisateur: `ubuntu`
|
||||||
|
* Clé privée :
|
||||||
|
```
|
||||||
|
-----BEGIN OPENSSH PRIVATE KEY-----
|
||||||
|
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
|
||||||
|
-----END OPENSSH PRIVATE KEY-----
|
||||||
|
```
|
||||||
|
|
4
host_vars/ubuntu.yml
Normal file
4
host_vars/ubuntu.yml
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
ansible_host: 192.168.140.142
|
||||||
|
ansible_user: ubuntu
|
||||||
|
ansible_ssh_extra_args: "-o IdentitiesOnly=yes"
|
||||||
|
ansible_python_interpreter: /usr/bin/python3
|
4
host_vars/ubuntu1.yml
Normal file
4
host_vars/ubuntu1.yml
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
ansible_host: 192.168.140.96
|
||||||
|
ansible_user: ubuntu
|
||||||
|
ansible_ssh_extra_args: "-o IdentitiesOnly=yes"
|
||||||
|
ansible_python_interpreter: /usr/bin/python3
|
|
@ -1,2 +1,5 @@
|
||||||
---
|
---
|
||||||
scope: "prod"
|
scope: "prod"
|
||||||
|
db_name:
|
||||||
|
db_user:
|
||||||
|
db_password:
|
Reference in a new issue