Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Utiliser Ansible pour Configurer un Serveur Web Local | Automatisation de l'Infrastructure dans DevOps
Introduction à DevOps

bookUtiliser Ansible pour Configurer un Serveur Web Local

Vous apprendrez à vous connecter à un serveur Ubuntu distant et à le gérer à l'aide d'Ansible. Nous allons créer des fichiers de configuration permettant d'automatiser les tâches courantes. À titre d'exemple, nous mettrons à jour l'index des paquets et installerons Git — première étape dans la préparation d'un serveur pour des tâches de développement ou de DevOps.

Note
Remarque

Si vous utilisez Windows, exécutez ces commandes dans wsl. Si vous êtes sur macOS ou Linux, vous pouvez simplement utiliser le terminal.

Installation d'Ansible

Avant de commencer, assurez-vous qu'Ansible est installé sur votre machine :

sudo apt update
sudo apt install ansible -y

La première commande, sudo apt update, actualise la liste des paquets de votre système afin qu'il connaisse les dernières versions logicielles disponibles. Ensuite, sudo apt install ansible -y installe Ansible sur votre machine, en confirmant automatiquement l'installation sans vous demander de taper "yes".

Création des fichiers de configuration

Tout d'abord, il est nécessaire de définir une liste de serveurs auxquels Ansible se connectera. Pour cela, créez un fichier d'inventaire nommé hosts.ini :

Collez ce qui suit :

hosts.ini

hosts.ini

copy

[ubuntu_container] — le groupe d'hôtes que Ansible va gérer ;

localhost — l'adresse de l'hôte (dans ce cas, votre machine locale exécutant le conteneur Docker) ;

ansible_port=2222 — le port SSH pour la connexion ;

ansible_user=root et ansible_password=root — identifiants pour la connexion SSH ;

ansible_connection=ssh — indique à Ansible d'utiliser SSH pour exécuter les commandes.

Le fichier hosts.ini indique à Ansible où se connecter et quels paramètres utiliser. Sans ce fichier, un playbook ne peut pas localiser le serveur ni exécuter de tâches.

Playbook setup.yml

Ensuite, créez le script d'automatisation, ou playbook, setup.yml :

Collez ceci :

setup.yml

setup.yml

copy

Le fichier setup.yml définit les tâches que Ansible doit exécuter sur le serveur.

  • name: Configure Ubuntu container — le titre du playbook ;

  • hosts: ubuntu_container — le groupe d'hôtes issu de hosts.ini ;

  • become: true — exécuter les commandes en tant que superutilisateur (root) ;

  • tasks — une liste d'actions qui seront exécutées dans l'ordre.

Dans cet exemple, vous mettez à jour l'index des paquets et installez Git.

Configuration d'Ansible

Enfin, vous configurez Ansible lui-même. Le fichier ansible.cfg personnalise le comportement d'Ansible. Créez ansible.cfg :

Collez ceci :

ansible.cfg

ansible.cfg

copy

Dans ce cas, la vérification de la clé d’hôte SSH est désactivée. Normalement, Ansible vérifie l’empreinte du serveur afin de garantir une connexion sécurisée. Pour ce tutoriel, cela simplifie la procédure, car nous utilisons un conteneur Docker temporaire.

Vérification de la connexion

Une fois tous les fichiers de configuration créés, il est important de vérifier que tout est correctement configuré. Cela garantit que Ansible peut se connecter à votre serveur Ubuntu distant et exécuter les tâches comme prévu.

Lorsque vous exécutez cette commande, Ansible tente de se connecter à votre conteneur Ubuntu via SSH en utilisant les identifiants et le port spécifiés dans hosts.ini. Si tout est correctement configuré, vous verrez :

Il est maintenant temps d'exécuter le playbook pour de vrai, puisque la vérification de la connectivité a réussi et que vous pouvez être sûr que tout fonctionnera correctement.

Lorsque cette commande s'exécute, Ansible se connecte au serveur Ubuntu distant via SSH, élève les privilèges avec become: true, puis exécute toutes les tâches de manière séquentielle. Dans cet exemple, il commence par mettre à jour l'index des paquets afin que le système connaisse les dernières versions logicielles, puis il installe Git.

Après l'exécution du playbook, il est possible de vérifier que Git a bien été installé sur le serveur Ubuntu. Commencez par vous connecter au serveur via SSH :

Ensuite, vérifiez la version de Git installée :

Si tout a fonctionné correctement, la version de Git s'affichera, confirmant que le playbook s'est exécuté avec succès.

1. Quel est le but du fichier hosts.ini dans Ansible ?

2. Dans le playbook, pourquoi utilise-t-on become: true ?

question mark

Quel est le but du fichier hosts.ini dans Ansible ?

Select the correct answer

question mark

Dans le playbook, pourquoi utilise-t-on become: true ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 6

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Suggested prompts:

What should I do if the Ansible ping command fails?

Can I add more tasks to the setup.yml playbook?

How do I manage multiple servers with this setup?

Awesome!

Completion rate improved to 3.7

bookUtiliser Ansible pour Configurer un Serveur Web Local

Glissez pour afficher le menu

Vous apprendrez à vous connecter à un serveur Ubuntu distant et à le gérer à l'aide d'Ansible. Nous allons créer des fichiers de configuration permettant d'automatiser les tâches courantes. À titre d'exemple, nous mettrons à jour l'index des paquets et installerons Git — première étape dans la préparation d'un serveur pour des tâches de développement ou de DevOps.

Note
Remarque

Si vous utilisez Windows, exécutez ces commandes dans wsl. Si vous êtes sur macOS ou Linux, vous pouvez simplement utiliser le terminal.

Installation d'Ansible

Avant de commencer, assurez-vous qu'Ansible est installé sur votre machine :

sudo apt update
sudo apt install ansible -y

La première commande, sudo apt update, actualise la liste des paquets de votre système afin qu'il connaisse les dernières versions logicielles disponibles. Ensuite, sudo apt install ansible -y installe Ansible sur votre machine, en confirmant automatiquement l'installation sans vous demander de taper "yes".

Création des fichiers de configuration

Tout d'abord, il est nécessaire de définir une liste de serveurs auxquels Ansible se connectera. Pour cela, créez un fichier d'inventaire nommé hosts.ini :

Collez ce qui suit :

hosts.ini

hosts.ini

copy

[ubuntu_container] — le groupe d'hôtes que Ansible va gérer ;

localhost — l'adresse de l'hôte (dans ce cas, votre machine locale exécutant le conteneur Docker) ;

ansible_port=2222 — le port SSH pour la connexion ;

ansible_user=root et ansible_password=root — identifiants pour la connexion SSH ;

ansible_connection=ssh — indique à Ansible d'utiliser SSH pour exécuter les commandes.

Le fichier hosts.ini indique à Ansible où se connecter et quels paramètres utiliser. Sans ce fichier, un playbook ne peut pas localiser le serveur ni exécuter de tâches.

Playbook setup.yml

Ensuite, créez le script d'automatisation, ou playbook, setup.yml :

Collez ceci :

setup.yml

setup.yml

copy

Le fichier setup.yml définit les tâches que Ansible doit exécuter sur le serveur.

  • name: Configure Ubuntu container — le titre du playbook ;

  • hosts: ubuntu_container — le groupe d'hôtes issu de hosts.ini ;

  • become: true — exécuter les commandes en tant que superutilisateur (root) ;

  • tasks — une liste d'actions qui seront exécutées dans l'ordre.

Dans cet exemple, vous mettez à jour l'index des paquets et installez Git.

Configuration d'Ansible

Enfin, vous configurez Ansible lui-même. Le fichier ansible.cfg personnalise le comportement d'Ansible. Créez ansible.cfg :

Collez ceci :

ansible.cfg

ansible.cfg

copy

Dans ce cas, la vérification de la clé d’hôte SSH est désactivée. Normalement, Ansible vérifie l’empreinte du serveur afin de garantir une connexion sécurisée. Pour ce tutoriel, cela simplifie la procédure, car nous utilisons un conteneur Docker temporaire.

Vérification de la connexion

Une fois tous les fichiers de configuration créés, il est important de vérifier que tout est correctement configuré. Cela garantit que Ansible peut se connecter à votre serveur Ubuntu distant et exécuter les tâches comme prévu.

Lorsque vous exécutez cette commande, Ansible tente de se connecter à votre conteneur Ubuntu via SSH en utilisant les identifiants et le port spécifiés dans hosts.ini. Si tout est correctement configuré, vous verrez :

Il est maintenant temps d'exécuter le playbook pour de vrai, puisque la vérification de la connectivité a réussi et que vous pouvez être sûr que tout fonctionnera correctement.

Lorsque cette commande s'exécute, Ansible se connecte au serveur Ubuntu distant via SSH, élève les privilèges avec become: true, puis exécute toutes les tâches de manière séquentielle. Dans cet exemple, il commence par mettre à jour l'index des paquets afin que le système connaisse les dernières versions logicielles, puis il installe Git.

Après l'exécution du playbook, il est possible de vérifier que Git a bien été installé sur le serveur Ubuntu. Commencez par vous connecter au serveur via SSH :

Ensuite, vérifiez la version de Git installée :

Si tout a fonctionné correctement, la version de Git s'affichera, confirmant que le playbook s'est exécuté avec succès.

1. Quel est le but du fichier hosts.ini dans Ansible ?

2. Dans le playbook, pourquoi utilise-t-on become: true ?

question mark

Quel est le but du fichier hosts.ini dans Ansible ?

Select the correct answer

question mark

Dans le playbook, pourquoi utilise-t-on become: true ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 6
some-alt