GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer et configurer Ansible sur Ubuntu 18.04 LTS

Ansible est un logiciel libre et open source qui peut être utilisé pour automatiser le provisionnement des logiciels, la gestion de la configuration et le déploiement des applications. Contrairement à Puppet ou Chef, vous n'avez pas besoin de configurer un environnement client-serveur avant d'utiliser Ansible. Vous pouvez gérer plusieurs hôtes à partir d'un emplacement central. Cet outil est très simple mais puissant pour automatiser des environnements d'applications informatiques complexes à plusieurs niveaux. Ansible communique via des canaux SSH normaux pour récupérer des informations à partir de machines distantes et effectuer des tâches.

Dans ce tutoriel, nous apprendrons comment installer et utiliser Ansible sur le serveur Ubuntu 18.04.

Exigences

  • Deux systèmes de serveur Ubuntu 18.04 avec serveur OpenSSH installé.
  • Une adresse IP statique 192.168.0.101 est configurée sur le système serveur et 192.168.0.104 est configurée sur le système client.
  • Un utilisateur non root avec des privilèges sudo est configuré sur les deux systèmes.

Mise en route

Avant de commencer, mettez à jour votre système avec la dernière version avec la commande suivante :

sudo apt-get update -y
sudo apt-get upgrade -y

Une fois que votre système est à jour, redémarrez votre système pour appliquer les modifications.

Installer et configurer Ansible

Par défaut, la dernière version d'Ansible n'est pas disponible dans le référentiel par défaut d'Ubuntu 18.04. Vous devrez donc ajouter Ansible PPA à votre serveur. Vous pouvez le faire en exécutant la commande suivante :

sudo apt-add-repository ppa:ansible/ansible

Ensuite, mettez à jour le référentiel et installez Ansible avec la commande suivante :

sudo apt-get update -y
sudo apt-get install ansible -y

Une fois l'installation terminée, vous pouvez vérifier la version d'Ansible avec la commande suivante :

sudo ansible --version

Sortie :

ansible 2.7.1
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/dist-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.15rc1 (default, Nov 12 2018, 14:31:15) [GCC 7.3.0]

Ensuite, vous devrez définir votre système client que vous souhaitez gérer dans le fichier d'hôtes Ansible. Vous pouvez le faire en éditant le fichier /etc/ansible/hosts :

sudo nano /etc/ansible/hosts

Ajoutez les lignes suivantes :

[Client]
node1 ansible_ssh_host=192.168.0.104

Enregistrez et fermez le fichier lorsque vous avez terminé.

Configurer les clés SSH pour le système client

Ansible utilise SSH pour communiquer avec l'hôte client. Vous devrez donc configurer l'authentification ssh basée sur une clé pour l'hôte client.

Tout d'abord, générez une paire de clés SSH avec la commande suivante :

ssh-keygen

Sortie :

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:bTVjTCKqxD8rnIw7/6mB6ZH9cnhzzOFg+/+x4clSOow [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|        . . .    |
|   .   . . +     |
|    o .     *    |
|   . o   . o o   |
|    . o S o      |
|   O .oo..  .    |
|  * Bo.* + oo    |
| ..oo+=.E =o =   |
|  ooo*++...+*    |
+----[SHA256]-----+

Ensuite, copiez cette clé publique sur le système client avec la commande suivante :

ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

Sortie :

/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

Travailler avec Ansible

Ansible est maintenant installé et configuré. Il est temps de tester Ansible.

Sur le serveur Ansible, essayez d'envoyer un ping à votre système client à l'aide d'Ansible avec la commande suivante.

ansible -m ping Client

Sortie :

node1 | SUCCESS => {
    "changed": false, 
    "ping": "pong"
}

Si vous avez plusieurs clients configurés dans votre fichier d'hôtes Ansible. Ensuite, vous pouvez envoyer un ping à tout le système Client avec la commande suivante :

ansible -m ping all

Vous pouvez vérifier l'état du serveur Web Apache sur le système client avec la commande suivante :

ansible -m shell -a 'service apache2 status' Client

Sortie :

node1 | CHANGED | rc=0 >>
 * apache2 is running

Pour vérifier la taille de la partition du système Client, exécutez la commande suivante :

ansible -m shell -a 'df -h' Client

Sortie :

node1 | CHANGED | rc=0 >>
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       138G   48G   83G  37% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
udev            1.9G  4.0K  1.9G   1% /dev
tmpfs           384M  1.2M  383M   1% /run
none            5.0M     0  5.0M   0% /run/lock
none            1.9G   67M  1.9G   4% /run/shm
none            100M   36K  100M   1% /run/user
/dev/sda5       225G   35G  180G  16% /Data

Toutes nos félicitations! vous avez installé et configuré avec succès Ansible sur le serveur Ubuntu 18.04. Vous pouvez désormais utiliser facilement Ansible pour exécuter des tâches simples à distance.


Ubuntu
  1. Comment installer et configurer Ansible sous Windows

  2. Comment installer et configurer Ansible sur Ubuntu 20.04

  3. Comment installer et configurer Redis sur Ubuntu 18.04

  4. Comment installer Ansible sur Ubuntu 18.04 LTS

  5. Comment installer et configurer Fail2ban sur Ubuntu 20.04 LTS

Comment installer et configurer GitLab CE sur Ubuntu 18.04 LTS

Comment installer et configurer Docker-CE sur Ubuntu 18.04 LTS

Comment installer et configurer Odoo ERP sur Ubuntu 20.04 LTS

Comment installer et configurer MySQL dans Ubuntu 20.04 LTS

Comment installer et configurer Ansible sur Ubuntu

Comment installer et configurer le serveur DNS sur Ubuntu 16.04 LTS