Etude : Différence entre versions

De TARENTINO
Aller à la navigationAller à la recherche
(Contenu remplacé par « {{Navigationp}}{{Sidebaradm}}{{VideoAnsible}} = Etude Ansible = »)
Balise : Remplacé
Ligne 1 : Ligne 1 :
 
{{Navigationp}}{{Sidebaradm}}{{VideoAnsible}}
 
{{Navigationp}}{{Sidebaradm}}{{VideoAnsible}}
 
= Etude Ansible =
 
= Etude Ansible =
−
* Ref: [https://openclassrooms.com/fr/courses/2035796-utilisez-ansible-pour-automatiser-vos-taches-de-configuration/6371335-installez-ansible-dans-votre-environnement <font color=green>'''Openclassroom'''</font>]
 
−
== Automatisation et déploiement ==
 
−
Ansible est un outil d'automatisation informatique écrit en Python.
 
−
[[Fichier:15629187859594.png|cadre|gauche]]<br>
 
−
Il permet d'automatiser des taches d'installation et automatisation sur des serveurs distants appelés Nodes.
 
−
Il convient pour cela que chaque Node ait un service SSH installé.
 
−
Le serveur est appelé Node manager.
 
−
Afin de pousser les installations, le Node Manager utilise des scripts dans des fichiers de configuration en YAML.
 
−
Fonctionnement en mode Push, Ansible n'a pas besoin d'agent.
 
−
 
−
== Fichiers de configuration ==
 
−
* Chaque fichiers Yaml comportent une suite de tâches à effectuer qui utilisent un module qui effectuera une action
 
−
== Installation de Ansible ==
 
−
* Les Nodes ont besoin de SSH et Python
 
−
* Installation sur le Node Manager avec PIP (gestionnaire de paquets Python)
 
−
* Avant l'installation, créer le contexte d'exécution. Créer et utiliser un simple utilisateur Linux<br>pour lancer les commandes Ansible et mettre en place un environnement de travail virtuel (Paquet python virtualenv)
 
−
* Virtualenv sera dédié entièrement à l'exécution d'Ansible et fournira un environnement d'exécution cloisonné et un utilisateur dédié.
 
−
<font color=red>'''Node manager:'''</font>
 
−
<syntaxhighlight lang="shell" line='line'>
 
−
adduser user-ansible
 
−
apt install python-virtualenv sshpass
 
−
su - user-ansible
 
−
virtualenv ansible2.7.10
 
−
source ansible2.7.10/bin/activate
 
−
pip install ansible==2.7.10
 
−
ansible --version
 
−
</syntaxhighlight>
 
−
 
−
== Communication entre les Node-Managers et les Nodes ==
 
−
* Mettre en place les prérequis nécessaires pour établir la communication entre le node manager et les nodes.
 
−
=== Définir les Nodes ===
 
−
* Ansible travaille avec un fichier inventaire contenant la liste des nodes.
 
−
* Fichier inventaire.ini:
 
−
kali
 
−
ubuntu
 
−
=== Vérifier la connection SSH ===
 
−
* Effectuer une connexion ssh root sur les nodes
 
−
=== Installer Python ===
 
−
* Installer Python sur les nodes avec le module ROW
 
−
ansible -i inventaire.ini -m raw -a "aptitude install -y python3" http1 --user root --ask-pass
 
−
 
−
=== Créer un utilisateur sudo ===
 
−
* ansible -i inventaire.ini -m debug -a 'msg={{ 'passforce
 
−
 
−
=== Création des clés SSH ===
 
−
 
−
* A suivre.....
 

Version du 12 novembre 2020 à 13:31