Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
💥 Du 22 au 24 novembre : Accès 100% GRATUIT
à la Bibliothèque Numérique ENI. Je m'inscris !
  1. Livres et vidéos
  2. Ansible
  3. Ansible : virtualisation et cloud
Extrait - Ansible Gérez la configuration de vos serveurs et le déploiement de vos applications (3e édition)
Extraits du livre
Ansible Gérez la configuration de vos serveurs et le déploiement de vos applications (3e édition)
2 avis
Revenir à la page d'achat du livre

Ansible : virtualisation et cloud

Objectifs du chapitre et prérequis

1. Contexte et prérequis

Ce chapitre va aborder les problématiques de création de machines en présentant deux exemples : les machines virtuelles « classiques » sous ESX et les machines dans le cloud avec l’utilisation d’AWS.

Il est recommandé d’avoir quelques connaissances sur ces deux sujets pour mettre en place les exemples qui vont suivre. Si vous n’avez pas ces connaissances, n’hésitez pas à vous faire épauler par vos collègues.

Quelques indications seront également données au lecteur afin de mettre en place une stratégie de tests à l’aide de Monkeyble.

2. Fichiers téléchargeables

Vous pouvez récupérer les exemples des répertoires inventaires et variables sur le repository GitHub suivant : https://github.com/EditionsENI/ansible

Vous pouvez également récupérer ces fichiers dans l’archive chapitre-15.tar.gz depuis la page Informations générales.

Gestion de machines virtuelles sous ESX/VMware

1. Contexte et prérequis

Vous utilisez un hyperviseur ESX et vous n’avez pas forcément prévu de partir sur le cloud. Rien ne vous empêche de continuer à travailler de cette manière.

Vous allez aborder quelques modules Ansible qui vont vous permettre de gérer la création de machines virtuelles avec ESX. Le chapitre n’abordera pas l’installation de l’ESX lui-même ni la création des utilisateurs dont vous aurez besoin par la suite dans l’ESX.

2. Installation des bibliothèques requises

Vous aurez besoin d’installer plusieurs bibliothèques Python pour faire fonctionner ces modules. Ci-dessous, la commande pip qui vous permettra de récupérer toutes les dépendances nécessaires :

$ pip3 install pyvmomi 

3. Caractéristiques de l’ESX

Vous utiliserez un pool de serveur ESX accessible via VCenter à l’adresse « vcenter ». Le compte « ansible » aura le droit de créer des machines virtuelles (VM). Vous aurez également un template nommé « RHEL73 » prêt à l’emploi pour la création des VM.

4. Création de la VM

Le module que vous utiliserez pour réaliser cette opération sera vmware_guest. Vous aurez besoin de fournir un certain nombre d’éléments à Ansible. Dans le cas présent, vous utiliserez les champs suivants :

  • Le nom de la VM avec le champ name.

  • Le champ hostname pour indiquer l’adresse du serveur VCenter.

  • Les champs username et password pour indiquer l’utilisateur disposant...

Mise au point de tests à l’aide de Monkeyble

1. Contexte

La création de machines virtuelles est une action complexe. Ce type d’opération réclame des prérequis importants pour fonctionner. Pour ne rien arranger, la création de machines virtuelles est une tâche relativement longue : ces opérations prennent généralement plusieurs minutes.

Malgré tout, le lancement de tests reste indispensable. En effet, de nombreuses évolutions peuvent entraîner des régressions : changement de versions d’Ansible, modification de déclarations, etc.

Monkeyble est un bon exemple d’outil permettant de répondre à ce type d’impératif. Pour ce faire, ce dernier peut interagir avec les tâches Ansible des manières suivantes :

  • Substituer l’appel afin de simuler le lancement d’une tâche.

  • Vérifier les paramètres d’appels d’Ansible ainsi que le résultat de l’appel ou de l’état renvoyé.

Dans ce qui va suivre, le lecteur abordera comment simuler les opérations de création, suppression ou modification de machines virtuelles.

2. Installation de Monkeyble

Monkeyble peut s’installer de plusieurs manières :

  • À l’aide de la commande pip.

  • À l’aide d’Ansible Galaxy.

Dans le cas d’Ansible Galaxy, utilisez la commande ansible-galaxy accompagnée des mots-clés collection install suivis du nom de la collection à installer (ici hpe.monkeyble) :

$ ansible-galaxy collection install hpe.monkeyble 

Ci-dessous le résultat attendu :

Starting galaxy collection...

Gestion cloud AWS

1. Contexte

Comme vous l’avez vu précédemment, les machines sont généralement hébergées dans un datacenter à disposition de la société qui en a l’usage. Cette gestion de l’informatique n’est pas sans conséquence. En effet, chaque société, qu’elle soit une PME ou une multinationale, se doit de gérer un minimum son informatique. Cela comprend de nombreux aspects :

  • Création de locaux pour héberger les serveurs avec les problèmes inhérents à cet hébergement (climatisation, électricité, etc.).

  • Gestion du réseau pour être relié au reste du monde.

  • Gestion de la montée en charge des besoins internes.

  • Gestion de l’obsolescence du parc.

  • Viabilité de la plateforme (surveillance, sauvegarde, etc.).

Cependant, ces coûts sont souvent mal planifiés, estimés ou acceptés. Il est parfois difficile de faire face à certaines questions (notamment sur la gestion de l’obsolescence).

Autant l’intérêt d’un serveur dédié à une application sera compris, autant les coûts de fonctionnement généraux ne seront pas acceptés. Autre problème auquel le métier doit faire face : disposer rapidement de plateformes pour de nouveaux besoins qui ne sont pas toujours très bien identifiés.

L’arrivée du cloud a eu pour effet de simplifier une partie de ces problématiques. Dorénavant, il est par exemple possible de créer des serveurs à la demande et il n’y a plus besoin de construire...