Comment installer et configurer Ansible sur Debian 10

Comment installer et configurer Ansible sur Debian 10

ANSIBLE est un outil d'automatisation gratuit et facile à utiliser pour gérer plusieurs hôtes distants de la machine unique. Il vous fournit un facile à configurer pour un grand nombre d'hôtes distants. Par exemple, vous effectuez les mêmes tâches sur plusieurs machines, ANSIBLE vous offre la possibilité d'automatiser ces tâches.

ANSIBLE est une meilleure alternative des autres outils d'automatisation des infrastructures populaires disponibles comme Chef et Puppet. Vous n'avez pas besoin d'installer de logiciel client sur les nœuds pour gérer via un serveur ANSIBLE. Il utilise la connexion SSH pour exécuter des tâches sur les hôtes.

Ce tutoriel vous aidera à installer et à configurer ANSIBLE sur Debian 10 Linux Systems.

Conditions préalables

Pour ce tutoriel, j'ai les hôtes suivants:

  • Un nœud de contrôle - Pour construire votre infra avec ANSIBLE, vous avez besoin d'un nœud de contrôle où le serveur ANSIBLE fonctionnera. Ceci est connu comme un nœud de contrôle anible.
  • Un ou plusieurs hôtes - Nous avons trois hôtes en cours d'exécution avec des systèmes d'exploitation différents.
    • Deux hôtes avec Ubuntu 20.04 LTS
    • Un hôte avec centos 8

Étape 1 - Configurer les touches SSH

Le nœud de contrôle anable utilise la connexion SSH pour connecter les hôtes. Vous pouvez configurer ANSIBLE pour connecter des hôtes en utilisant le mot de passe ou l'accès SSH basé sur la clé. Dans ce tutoriel, nous utiliserons les deux types (mot de passe et SSH basés sur la clé) pour connecter les hôtes à partir du nœud de contrôle.

Connectez-vous au nœud de commande ANSIBLE et générez une paire de clés SSH (si elle n'est pas générée):

ssh-keygen -t rsa  

Appuyez simplement sur «Entrer» à toutes les entrées demandées par la commande.

Ensuite, copiez la clé publique aux hôtes distants, vous devez vous connecter via une clé basée sur la clé:

ssh-copy-id -i ~ /.ssh / id_rsa.Pub [Protégé par e-mail]  ssh-copy-id -i ~ /.ssh / id_rsa.Pub [Protégé par e-mail]  

Étape 2 - Installation Ansible sur Debian

Les forfaits Debian ANSible sont disponibles dans le cadre du référentiel APT officiel. Vous avez juste besoin d'ajouter le PPA à votre système. Utilisez la commande suivante pour ajouter un référentiel Debian Ansible à votre système:

Sudo apt-ADD-Repository PPA: ANSIBLE / ANSIBLE  

L'utilitaire de mise à jour logiciel mettra à jour le cache des packages sur votre système. Vous devez donc exécuter la commande suivante pour installer ou mettre à jour Ansible sur votre système Debian

Mise à jour Sudo Apt  sudo apt install anible  

Appuyez sur «y» pour toute la confirmation d'installation pour terminer le processus d'installation. Ensuite, vous devez configurer un serveur ANSIBLE

Étape 3 - Créer un fichier d'inventaire

Vous avez installé un serveur anible sur votre nœud de contrôle.

Maintenant, vous devez ajouter les hôtes au serveur ANSIBLE. ANSIBLE permet de gérer les hôtes sous la forme des hôtes et des groupes. Les groupes sont utilisés pour effectuer une tâche sur tous les hôtes éloignés définis en dessous.

Un seul hôte peut être ajouté à plusieurs groupes. Modifier le fichier de configuration des hôtes Ansible. Par exemple:

sudo nano / etc / anible / hôtes  

Ajoutez vos hôtes et organisez-les avec des groupes:

[webservers] web-host1 web-host2 [dbservers] db-host1 [ubuntu] web-host1 db-host1 [centos] web-host2 

L'image ci-dessous vous aidera à comprendre le groupe et les hôtes sous un groupe.

Par configuration de l'hôte

Vous pouvez créer des fichiers de configuration pour les hôtes individuels. Tout le fichier de configuration des hôtes réside sous / etc / anible / host_vars répertoire avec le même nom d'hôte.

sudo mkdir / etc / anible / host_vars /  sudo vi / etc / anible / host_vars / web-host1  
  • 1'st hôte - / etc / anible / host_vars / web-host1
    ANSIBLE_SSH_HOST: 10.0.1.101 ANSIBLE_SSH_PORT: 22 ANSIBLE_SSH_USER: ROOT 
  • 2'nd hôte - / etc / anible / host_vars / web-host2
    ANSIBLE_SSH_HOST: 10.0.1.102 ANSIBLE_SSH_PORT: 22 ANSIBLE_SSH_USER: ROOT 
  • 3'rd hôte - / etc / anible / host_vars / db-host1
    ANSIBLE_SSH_HOST: 10.0.1.103 ANSIBLE_SSH_PORT: 22 ANSIBLE_SSH_USER: ROOT 
  • Dans le cas où vous n'avez pas utilisé l'étape 1 pour la connexion SSH pour cet hôte. Vous pouvez également ajouter l'une des méthodes ci-dessous au fichier de configuration Web-Hôtes1 pour l'authentification.

    ANSIBLE_SSH_PASS: SECRET_PASSWORD ANSIBLE_SSH_PRIVATE_KEY_FILE: / HOME / RAHUL /.SSH / AWS.pem 

    Configuration du groupe VARS

    Vous pouvez configurer les paramètres de variables communes d'un groupe sous configurations de groupe. Le nom du fichier de groupe doit être le même que le nom du groupe (par exemple: les serveurs Web) sous groupe_vars annuaire.

    sudo mkdir / etc / anible / group_vars  Sudo VI / etc / ANSIBLE / GROUP_VARS / WEBSERVERS  

    Ajoutez les variables communes à ce fichier utilisé par tous les hôtes ajoutés dans ce groupe.

    ANSIBLE_SSH_PORT: 22 ANSIBLE_SSH_USER: ROOT 

    Étape 4 - Test de connexion anible

    Votre anible est prêt à l'emploi. Pour tester tous les nœuds Connectivité Utilisez le module Ping. Connectez-vous à votre serveur ANSIBLE et exécutez la commande suivante:

    anible -m ping  

    Vous pouvez également tester la connectivité pour l'hôte ou les groupes spécifiques.

    anible -m ping web-host1  ## hôte spécifique  ANSIBLE -M PING WEBSERVERS  ## Groupe spécifique  

    Vous pouvez également exécuter n'importe quelle commande Linux en utilisant le module Shell ANSIBLE. Par exemple, exécutez la commande ci-dessous pour tester la mémoire libre sur web-host1.

    anible -m shell -a 'free -m' web-host1  

    Vous pouvez également effectuer la même tâche pour un groupe. Utilisez simplement le nom du groupe au lieu du nom d'hôte.

    Conclusion

    Dans ce didacticiel, vous avez appris à installer et à configurer Ansible sur le système de Debian 10 Linux.