Passer au contenu principal

Les bases

Introduction

Dans cette procédure nous allons apprendre les bases d'ansible.
Nous suivons le cours linkedin suivant : https://www.linkedin.com/learning/l-essentiel-d-ansible
De Samir Lakhdari.

Pratique

Dans un premier temps nous allons créer un user ansible sur l'ensemble des serveurs, et le placer en sudo user.

cat > /etc/sudoers.d/ansible

ansible ALL=(ALL) NOPASSWD: ALL

Création de clé SSH pour se connecter sans mot de passe sur l'ensemble des serveurs.

ssh-keygen

Si nous utilisation la résolution de nom dans le fichier d'inventaire de ansible, les hôtes doivents être déclaré dans le fichiers hosts de la machine /etc/hosts. 

192.168.14.131 control
192.168.14.132 web1
192.168.14.133 web2
192.168.14.134 haproxy

Si FQDN déclarer dans le fichiers hosts alors vous pouvez mettre le FQDN de l'host. 
Permet de copier la clé SSH vers un serveur distant

ssh-copy-id @IP ou FQDN

Extra packet nécessaire pour ansible 

yum install -y python3
yum install -y epel-release

Mise à jour de Python avant l'installation de ansible

pip3 install --upgrade pip

Update de Python 3.6 vers 3.8 car déprécié pour ansible et remplacement de l'alias lors de l'utilisation de la commande 

dnf module enable python38 
dnf install python38
alias python3=python3.8
alternatives --set python3 /usr/bin/python3.8

Installation de ansible avec python3

pip3 install ansible

Vérification de l'installation

ansible --version

Permet de ping la machine local

ansible localhost -m ping

Permet de tester la connexion au hôte définis dans le fichier d'inventaire de ansible. L'argument ALL à la place de WEB, fait référence à l'ensemble des machines présentes dans les inventaires.

ansible web -m ping -i hosts