Ansible

Comment installer Ansible sur Ubuntu 20.04 LTS

Comment installer Ansible sur Ubuntu 20.04 LTS
Dans cet article, je vais vous montrer comment installer Ansible sur Ubuntu 20.04 LTS et configurer Ubuntu 20.04 hôtes LTS pour l'automatisation Ansible. Alors, commençons.

Topologie du réseau :

Ici le linuxhint-711ea est un Ubuntu 20.04 Machine LTS où je vais installer Ansible.

Ensuite, je vais configurer les hôtes hôte1 (adresse IP 192.168.20.162) et hôte2 (adresse IP 192.168.20.153) pour l'automatisation Ansible et exécutez des commandes dessus à l'aide d'Ansible à partir du linuxhint-711ea machine.

je vais simplement appeler hôte1 et hôte2 en tant qu'hôtes Ansible dans cet article.

Installation d'Ansible :

Vous pouvez facilement installer Ansible sur Ubuntu 20.04 LTS du référentiel de packages officiel d'Ubuntu.

Tout d'abord, mettez à jour le cache du référentiel de packages APT avec la commande suivante :

$ sudo apt mise à jour

Le cache du référentiel de packages APT doit être mis à jour.

Maintenant, installez Ansible avec la commande suivante :

$ sudo apt installer ansible

Pour confirmer l'installation, appuyez sur Oui puis appuyez sur .

Ansible doit être installé.

Maintenant, exécutez la commande suivante pour vérifier si ansible fonctionne correctement.

$ ansible --version

Comme vous pouvez le voir, la commande ansible est disponible et fonctionne correctement.

Génération de la clé SSH :

Maintenant, vous devez générer une clé SSH sur l'ordinateur où vous avez installé Ansible.

Pour générer une clé SSH, exécutez la commande suivante :

$ ssh-keygen

Maintenant, appuyez sur .

presse .

presse .

Une clé SSH doit être générée.

Configuration des hôtes Ubuntu pour Ansible Automation :

Dans cette section, je vais vous montrer comment configurer un hôte Ubuntu (hôte1) pour l'automatisation Ansible. Si vous avez plusieurs hôtes que vous souhaitez automatiser à l'aide d'Ansible, répétez le même processus sur chacun des hôtes.

Les hôtes Ubuntu Ansible (que vous souhaitez configurer pour l'automatisation Ansible) doivent avoir un package de serveur SSH installé.

Tout d'abord, mettez à jour le cache du référentiel de packages APT avec la commande suivante :

$ sudo apt mise à jour

Ensuite, installez le serveur OpenSSH avec la commande suivante :

$ sudo apt install openssh-server -y

Dans mon cas, le package du serveur OpenSSH est déjà installé. S'il n'est pas installé dans votre cas, il devrait être installé.

Maintenant, vérifiez si le sshd le service s'exécute avec la commande suivante :

$ sudo systemctl status sshd

Comme vous pouvez le voir, le sshd le service est actif (courir) et activée (démarre automatiquement au démarrage du système).

Si la sshd le service n'est pas actif (en cours d'exécution) dans votre cas, démarrez-le manuellement avec la commande suivante :

$ sudo systemctl démarrer sshd

Si la sshd le service n'est pas activée (non ajouté au démarrage du système) dans votre cas, ajoutez-le manuellement au démarrage du système avec la commande suivante :

$ sudo systemctl activer sshd

Maintenant, configurez le pare-feu pour autoriser l'accès SSH avec la commande suivante :

$ sudo ufw autoriser ssh

Vous devez également créer un ansible utilisateur et autoriser l'accès sudo sans mot de passe au ansible utilisateur.

Pour créer un ansible utilisateur, exécutez la commande suivante :

$ sudo adduser ansible

Maintenant, saisissez un mot de passe pour le ansible utilisateur et appuyez sur .

Maintenant, retapez le mot de passe et appuyez sur .

Maintenant, appuyez sur .

Maintenant, appuyez sur .

Maintenant, appuyez sur .

Maintenant, appuyez sur .

Maintenant, appuyez sur .

Maintenant, tapez oui puis appuyez sur .

Un ansible l'utilisateur doit être créé.

Maintenant, configurez l'accès sudo sans mot de passe au ansible utilisateur avec la commande suivante :

$ echo "ansible ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/anible

Maintenant, trouvez l'adresse IP de l'hôte Ansible (hôte1) avec la commande suivante :

$ nom d'hôte -I

Ici, l'adresse IP dans mon cas est 192.168.20.162. Ce sera différent pour toi. Alors, assurez-vous de le remplacer par le vôtre maintenant sur.

Maintenant, à partir de l'ordinateur sur lequel vous avez installé Ansible, copiez la clé publique SSH sur l'hôte Ansible (hôte1) comme suit:

$ ssh-copy-id [email protected]

Tapez Oui et appuyez sur .

Maintenant, tapez le mot de passe pour le ansible utilisateur et appuyez sur .

La clé publique SSH doit être copiée dans hôte1.

Maintenant, désactivez la connexion par mot de passe pour le ansible utilisateur avec la commande suivante :

$ sudo usermod -L ansible

Désormais, vous ne pouvez vous connecter qu'en SSH à l'hôte Ansible (hôte1) comme ansible utilisateur sans mot de passe de l'ordinateur à partir duquel vous avez copié la clé publique SSH (dans ce cas, l'ordinateur sur lequel vous avez installé Ansible). Mais vous ne pourrez pas vous connecter en SSH à l'hôte Ansible (hôte1) comme ansible utilisateur depuis n'importe quel autre ordinateur. J'ai configuré les hôtes Ansible de cette façon pour des raisons de sécurité. Comme le ansible l'utilisateur n'a pas besoin de mot de passe pour exécuter les commandes administratives, il est risqué d'autoriser la connexion par mot de passe pour le ansible utilisateur.

Maintenant, vous devriez pouvoir vous connecter en SSH à l'hôte ansible hôte1 depuis l'ordinateur sur lequel vous avez installé Ansible comme suit :

$ ssh [email protected]

Comme vous pouvez le voir, je peux accéder à l'hébergeur Ansible (hôte1) en tant qu'utilisateur ansible sans aucun mot de passe. Ainsi, l'hôte Ansible (hôte1) est prêt pour l'automatisation Ansible.

Si, pour une raison quelconque, vous souhaitez autoriser la connexion par mot de passe pour le ansible utilisateur à nouveau, exécutez la commande suivante dans l'hôte Ansible (hôte1):

$ sudo usermod -U ansible

Vous pouvez configurer autant d'hôtes que vous le souhaitez pour l'automatisation Ansible de la même manière.

Dans cet article, je n'ai configuré que 2 hôtes, hôte1 et hôte2 pour la démonstration.

Test d'Ansible :

Maintenant, créez un nouveau répertoire de projet ~/ansible-demo/ sur l'ordinateur sur lequel vous avez installé Ansible comme suit :

$ mkdir ~/ansible-demo

Maintenant, naviguez jusqu'au ~/ansible-demo/ répertoire comme suit :

$ cd ~/ansible-demo/

Maintenant, créez un nouveau hôtes fichier dans le répertoire du projet comme suit :

$ nano hôtes

Maintenant, saisissez les adresses IP ou les noms DNS des hôtes Ansible (hôte1 et hôte2 dans mon cas) dans le hôtes fichier comme suit :

192.168.20.162
192.168.20.153

Maintenant, enregistrez le fichier en appuyant sur + X suivie par Oui et alors .

Maintenant, essayez de pinger tous les hôtes à l'aide d'Ansible comme suit :

$ ansible tout -i ./hosts -u ansible -m ping

REMARQUE: Ici, l'option -u est utilisée pour spécifier le nom d'utilisateur (ansible dans ce cas) qu'Ansible utilisera pour SSH dans les hôtes.

Comme vous pouvez le voir, tous les hôtes peuvent être cinglés. Ainsi, les hôtes sont prêts pour l'automatisation Ansible.

De la même manière, vous pouvez exécuter n'importe quelle commande dans les hôtes à l'aide d'Ansible comme suit :

$ ansible all -i ./hosts -u ansible -m shell -a 'echo "$(hostname) - $(hostname -I)"'

Comme vous pouvez le voir, la commande s'est exécutée avec succès dans chacun des hôtes et la sortie est affichée.

Alors, voici comment installer Ansible sur Ubuntu 20.04 LTS et configurer Ubuntu 20.04 hôtes LTS pour l'automatisation Ansible. Merci d'avoir lu cet article.

Meilleurs jeux de laboratoire d'applications Oculus
Si vous êtes propriétaire d'un casque Oculus, vous devez être au courant du chargement latéral. Le chargement latéral est le processus d'installation ...
Top 10 des jeux à jouer sur Ubuntu
La plate-forme Windows a été l'une des plates-formes dominantes pour les jeux en raison du pourcentage énorme de jeux qui se développent aujourd'hui p...
5 meilleurs jeux d'arcade pour Linux
De nos jours, les ordinateurs sont des machines sérieuses utilisées pour les jeux. Si vous ne pouvez pas obtenir le nouveau score élevé, vous saurez c...