Installer Ansible sur distribution Rocky

Installation et configuration d’ansible sur ma machine RockyAnsible

Je travaille sur la distribution linux depuis un moment avec une topologie créée GNS3
Après avoir démarré ma machine virtuelle, je configure son interface réseau pour pouvoir communiquer sur mon réseau. J’ai rajouté après coup une ligne après GATEWAY avec DNS1=172.16.30.3 (l’adresse de mon serveur DNS mais si vous n’en avez pas, ajouter un dns publique comme 1.1.1.1 ou 8.8.8.8)

Passons à la mise à jour et à l’upgrade :

yum update -y && yum upgrade -y
yum install epel-release -y && yum install ansible

fin de l’installation d’ansible

Premièrement, on va créer un fichier host.yml. Ce fichier va permettre d’indiquer les différentes machines à utiliser avec ansible. Pour l’instant, nous allons faire un fichier simple avec all (tous) et toutes les ips de mes machines

nano hosts.yml

nano play_user_ansible.yml

Nous allons tester notre première commande pour voir si tout fonctionne :

Ensuite, nous allons tester que tout fonctionne à l’aide d’un premier playbook (livre de lecture en français, mais franchement, c’est plus classe en anglais) :

Première erreur, après quelques recherches, il s’agit d’un problème avec le key fingerprint. Nous pouvons le désactiver le fait d’accepter ou non les key fingerprint mais je préfère les accepter, je me suis donc connecter à chaque machine en ssh à la main afin d’accepter les keys.

première commande de ping sur toutes les machines

Ensuite, on va créer un premier utilisateur spécial pour ansible qui n’existe sur aucune machine avec la commande suivante :

ansible all -i hosts.yml –user=billyit –ask-pass -m user -a ‘name=u_ansible / update_password=always password={{ « monpassword » | password_hash(\ »sha512\ ») }} »‘ -b -K

Alors la commande, elle demande :

all : sur tous les hôtes définis dans l’inventaire hosts.yml (-i hosts.yml)
–user=billyit –ask-pass: avec l’utilisateur billyit et en demandant de saisir le mot de passe
-m user : on utilise le module ansible « user »
-a : permet de donner les variables à utiliser
dans les variables à utiliser :
name=u_ansible : notre future utilisateur
update_password=always : mettra à jour le fichier /etc/passwd si les mots de passe diffèrent
password={{ « monpassword » | password_hash(\ »sha512\ ») }} : on passe « monpassword » dans la commande password_hash qui va le crypter

création réussie des utilisateurs u_ansible sur chaque machine
Test de connexion locale sur une machine

ansible all -i hosts.yml –user=billyit –ask-pass -m user -a ‘name=u_ansible / update_password=always password={{ « monpassword » | password_hash(\ »sha512\ ») }} » groups=wheel’ -b -K

J’ai refait ma commande afin d’inculre le groups=wheel
wheel est le groupe sudo de CentOS/Rocky !

Vous aimerez aussi...

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *