1
0
Bifurcation 0
miroir de https://github.com/PAPAMICA/Wiki-Tech.io.git synchronisé 2024-07-03 00:28:55 +02:00

docs: update Configuration/Ansible/Introduction

Cette révision appartient à :
Mickael Asseline 2021-07-08 16:54:04 +00:00 révisé par Mickael Asseline
Parent e483ea838d
révision ad448fbb8d

Voir le fichier

@ -2,7 +2,7 @@
title: Ansible - Introduction
description: Présentation et définitions de cette solution
published: true
date: 2021-07-08T16:48:12.037Z
date: 2021-07-08T16:54:02.644Z
tags: ansible, configuration
editor: markdown
dateCreated: 2021-07-08T16:16:25.971Z
@ -57,3 +57,74 @@ dateCreated: 2021-07-08T16:16:25.971Z
* postgresql
* mysql
...
# Notions et définitions
<div class="video-responsive">
<iframe width="560" height="315" src="https://www.youtube.com/embed/tirjpYSMkkM" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
## Control node
* noeud disposant de ansible et permettant de déployer
* accès ssh aux autres machines (bastions...)
* password ou clef ssh
* sécurité importante
## Managed nodes
* serveurs cibles
* permet la connexion ssh
* élévation de privilèges via le user
## Inventory
* inventaires des machines (ip, dns)
* format ini (plat) ou format yaml
* et les variables (host_vars et group_vars)
* statique (fichiers) ou dynamique (api via script)
* utilisation de patterns possible (srv-pg93-0[0-2])
## Groups
* dans un inventaire les machines peuvent être regroupées (serveur web, databases...)
* possibilité de créer différents niveaux > arbre (parents/enfants)
* groupe racine = all
## Groups Vars
* variables d'un même groupe
* définie dans le fichier central d'inventory
* ou dans un répertoire spécifique (reconnu par ansible)
## Host Vars
* variables spécifiques à un serveur en particulier
* surcharge d'autres variables définies plus haut dans l'arbre - ex - groupe
## Tasks
* actions variées (user, group, command, module)
* format yaml
## Modules
* ensemble d'actions ciblées sur une utilisation commune
* pour un outil donnée : ex. postgres, mysql, vmware...
* chacune de ses actions est utilisable via une task
* chaque action prend des options
* les actions peuvent fournir un retour (id, résultat...)
* fournis par ansible pour l'essentiel
* peuvent être chargés spécifiquement
* contribution possible auprès des mainteneurs
## Rôles
* ensemble d'actions coordonnées pour réaliser un ensemble cohérent (installer nginx et le configurer etc)
* organisé en différents outils (tasks, templates, handlers, variables (default ou non), meta)
* peuvent être partagés sur le hub ansible galaxy
* il vaut mieux les versionner
## Playbooks
* un fichier (et rien d'autres...)
* applique des rôles à un inventory
* partie cruciale inventory > playbook < rôles
* peut contenir des variables (à éviter)
* peut contenir des tasks (à éviter)
* peut contenir des conditions (à éviter)
##Plugins
* modifie ou augmente les capacités de ansible
* de différentes manières : output, inventory dynamique, strategy, tests...