Création d’un laboratoire
Quels outils vous faut-il ?
Le chapitre Déploiement présentera Ansible et ses constituants puis comment effectuer son installation. Du chapitre Déploiement à Dépannage, vous aborderez :
-
la conception d’inventaires aux formats INI et YAML ;
-
l’utilisation de modules Ansible par le biais de commandes ad hoc et de playbooks ;
-
la gestion des variables et leurs préséances ;
-
le contrôle des tâches avec des itérations ou des conditions ;
-
la manipulation de faits Ansible ou de faits personnalisés ;
-
la création de modèles Jinja2 ;
-
l’utilisation de rôles systèmes ou communautaires et la création de rôles personnalisées.
Nous finirons par l’utilisation d’outils de dépannage qui vous permettront de corriger la syntaxe du langage YAML et de déboguer les tâches dans les playbooks.
1. Machines nécessaires
Vous devez répondre à ces prérequis matériels :
-
Un PC portable ou de bureau, dédié idéalement, à la préparation de la certification. Il doit être doté d’un processeur Intel ou AMD capable de virtualiser avec un hyperviseur de type 1. Dans le cas contraire, consultez les solutions alternatives évoquées plus bas.
-
8 Go de RAM minimum.
-
Un espace disque total de 200 Go...
Le système d’hôte et l’hyperviseur
Sur le PC, il faut installer dans cet ordre :
-
Le système d’exploitation RHEL/CentOS 8 qui sera le système d’hôte.
-
L’hyperviseur KVM qui virtualisera les machines invitées.
Le système d’exploitation choisi tout au long du livre est CentOS 8.
1. Installation du système d’hôte
Pour installer le système d’hôte, il faut suivre plusieurs étapes :
-
obtenir l’image ISO ;
-
générer une clé USB amorçable ;
-
bouter le PC sur la clé USB ;
-
effectuer le processus d’installation ;
-
réaliser des tâches post-installation.
a. Obtenir l’image ISO
Le téléchargement de l’image ISO de CentOS 8 s’effectue sur le site http://isoredirect.centos.org/centos/8/isos/x86_64/ où vous disposez de plusieurs serveurs miroirs.
Sur une station de travail Linux, vous pouvez utiliser la commande wget dans un terminal :
[phil@tux ~]$ wget http://ftp.pasteur.fr/mirrors/CentOS/8.0.1905/
isos/x86_64/CentOS-8-x86_64-1905-dvd1.iso
--2020-03-21 12:54:37-- http://ftp.pasteur.fr/mirrors/CentOS/8.0.1905/
isos/x86_64/CentOS-8-x86_64-1905-dvd1.iso
Résolution de ftp.pasteur.fr (ftp.pasteur.fr)... 157.99.21.38
Connexion à ftp.pasteur.fr (ftp.pasteur.fr)|157.99.21.38|:80... connecté.
requête HTTP transmise, en attente de la réponse... 200 OK
Taille : 7135559680 (6,6G) [application/octet-stream]
Sauvegarde en : « CentOS-8-x86_64-1905-dvd1.iso »
**** sortie tronquée ****
Vous pouvez aussi télécharger l’image depuis un navigateur.
Le nom de l’image ISO peut différer avec le temps, mais le principe reste le même.
b. Générer une clé USB amorçable
Générer une clé USB vous permettra d’amorcer (booter) le système CentOS sur le PC afin de réaliser son installation.
Pour cela, vous avez besoin d’une clé USB vierge de 8 Go et d’une station de travail tierce pour générer la clé USB.
Un logiciel est nécessaire pour réaliser cette tâche :
-
Rufus (https://rufus.ie/) pour Microsoft Windows
-
Etcher...
Machine virtuelle modèle
La conception d’une machine virtuelle modèle va permettre de créer trois machines virtuelles qui seront utilisées pour accomplir les différents travaux pratiques.
1. Création de la machine virtuelle modèle
Le tableau ci-dessous résume les caractéristiques de la machine virtuelle modèle :
Composant |
Paramètre |
CPU |
1 |
RAM |
2048 Mio |
Disque dur 1 |
10 Gio |
Disque dur 2 |
10 Gio |
Disque dur 3 |
10 Gio |
Maintenant, procédez à l’installation :
Lancez le Gestionnaire de machines virtuelles :
Faites un clic droit sur QEMU/KVM et choisissez l’option nouveau :
Le média d’installation est local :
Cliquez sur le bouton Suivant.
Cliquez sur le bouton Parcourir et choisissez l’image ISO placée dans le pool ISO :
Cliquez sur Choisir le volume.
Définissez le système d’exploitation à installer. Si la détection n’est pas automatique, décochez la case Détecter automatiquement depuis la source/média d’installation. Mettez dans la zone de texte : Generic default :
Cliquez sur Suivant.
Définissez la mémoire à 2048 Mio.
Le nombre de CPU reste à 1 :
Vous allez créer un stockage personnalisé :
Cliquez sur le bouton Gérer et sélectionnez le pool base-centos8 :
Cliquez sur le bouton + pour créer un nouveau volume.
Le nom du volume est base-disk1. Le format demeure qcow2. La capacité est de 10 Gio.
Créez un second volume de 10 Gio nommé base-disk2.qcow2.
Puis un troisième de 10 Gio : base-disk3.qcow2.
Le pool base-centos8 se présente ainsi :
Sélectionnez le premier disque puis cliquez sur Choisir le volume.
Cliquez sur Suivant.
Le nom de la VM est base-centos8.
Cochez la case Personnaliser la configuration avant l’installation.
Sélectionnez le réseau NAT virtuel staff.local.
Cliquez sur Terminer.
Vous constatez qu’un seul disque est présent dans la configuration de la machine virtuelle : SATA Disque 1.
Cliquez sur le bouton Ajouter un matériel.
Choisissez Sélectionner ou créer un stockage personnalisé...
Machines virtuelles de travail
À partir de la machine virtuelle modèle, vous allez créer trois machines virtuelles.
Les paramètres des machines virtuelles sont les suivants :
FQDN |
Alias |
Adresse IPv4 |
Pool de stockage KVM |
server1.staff.local |
server1 |
10.14.8.0/16 |
server1 /var/lib/libvirt/images/server1 |
server2.staff.local |
server2 |
10.14.8.1/16 |
server2 /var/lib/libvirt/images/server2 |
server3.staff.local |
server3 |
10.14.8.2/16 |
server3 /var/lib/libvirt/images/server3 |
La passerelle par défaut est 10.14.0.1.
Le serveur DNS est 8.8.8.8.
1. Clonage manuel
Pour cloner la machine virtuelle modèle, vous pouvez vous rendre dans l’interface graphique avec l’application Gestionnaire de machines virtuelles.
Néanmoins, vous allez ici effectuer le clonage en ligne de commande dans un terminal avec virt-clone avec les options décrites dans le tableau :
Commutateur |
Description |
--connect |
Permet de se connecter à l’URI (Uniform Resource Identifier) mentionné. Exemple : qemu:///system |
-o |
Spécifie la machine virtuelle d’origine. |
-n |
Spécifie le nom de la nouvelle machine virtuelle. |
-f |
Définit le chemin du fichier disque. Exemple : /var/lib/libvirt/images/server1/server1-disk1.qcow2 |
Exemple
Voici les commandes permettant le clonage de la machine virtuelle modèle base-centos8 en une nouvelle machine virtuelle nommée server1 :
[bob@server0 ~]$ sudo virt-clone --connect qemu:///system \
> -o base-centos8 \
> -n server1 \
> -f /var/lib/libvirt/images/server1/server1-disk1.qcow2...
Test des machines virtuelles
Pour terminer votre environnement de travail, vous devez finaliser la configuration des machines virtuelles puis tester leur bon fonctionnement.
Exécutez le Gestionnaire de machines virtuelles :
1. Test de la VM server1
Dans le Gestionnaire de machines virtuelles, sélectionnez server1 et cliquez avec le bouton droit de la souris. Choisissez Démarrer.
Dans le menu Édition, cliquez sur Détails de la machine virtuelle. Une fenêtre apparaît :
Le menu Afficher permet de commuter le contenu de la fenêtre entre une console, les détails de la machine virtuelle ou la gestion des instantanés (snapshots).
Effectuez les dernières configurations et vérifications :
Connectez-vous en tant que super-utilisateur.
Changez le nom de la machine. Elle doit s’appeler server1.staff.local :
[root@base ~]# hostnamectl set-hostname server1.staff.local
[root@base ~]# exec bash
[root@server1 ~]#
La commande exec remplace le processus shell courant par un nouveau processus bash. Ainsi, vous avez actualisé votre shell. L’invite de commandes affiche le bon nom de machine.
Configurez IPv4 :
[root@server1 ~]# nmcli con show
NAME UUID TYPE DEVICE
ens3 797f3a5d-6cff-46fa-872b-8fb5df831998 ethernet ens3
[root@server1 ~]#
Le nom de la connexion est ens3. Vous pouvez modifier ses paramètres :
[root@server1...