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