Automatisation du déploiement depuis Zéphir

Avec le module Hâpy, il est possible de déclarer une liste de machines virtuelles EOLE devant être déployées automatiquement.

Versions supportées

La fonctionnalité est disponible pour le couple Hâpy / Zéphir en version supérieure ou égale à 2.8.1.

Elle permet de déployer n'importe quel module EOLE ≥ 2.7.0, dans la mesure où l'image correspondante ait été mise à disposition par le pôle.

Fonctionnement

Pour mettre en œuvre cette fonctionnalité, nous avons choisi de nous appuyer sur le module Zéphir pour la saisie des configurations des machines virtuelles et leur identification.

Les images des modules EOLE (appliances) sont pré-créées et distribuées sur un magasin d'applications OpenNebula (marketplace) maintenu par le pôle.

Paramétrage du module Hâpy et déclaration des machines virtuelles

Avant toute chose, il est impératif d'identifier et de définir les réseaux virtuels qui seront utilisés par les machines virtuelles.

Ces derniers devront impérativement être déclarés dans l'interface de configuration du serveur Hâpy avant le lancement du déploiement.

Ensuite, il faut déclarer et saisir les configurations de toutes les machines virtuelles dans l'interface Zéphir.

Pour faciliter l'organisation et la saisie, les serveurs à déployer pourront être regroupés dans des établissements Zéphir et bénéficier du mécanisme des variantes[1].

Les serveurs concernés par le déploiement automatique doivent impérativement avoir la variable Ce serveur est une machine virtuelle à déployer automatiquement à oui dans leur configuration.

Elle devra également définir les réseaux virtuels Hâpy et les ressources (CPU, mémoire, disque) nécessaires à la machine virtuelle.

AttentionRéseaux virtuels

Les nom des réseaux virtuels affectés aux machines virtuelles doivent correspondent à ceux déclarés dans le module Hâpy préfixés de la chaîne « CR_ ».

AttentionRessources

Il est impératif de veiller à ce que le serveur Hâpy soit capable d'allouer l'ensemble de toutes les ressources (CPU, mémoire, espace disque) souhaitées par les machines virtuelles avant le lancement du déploiement.

Enfin, le serveur Hâpy doit être configuré pour gérer ces machines (variable : Activer le déploiement automatique des machines virtuelles à oui).

La liste des serveurs à déployer par un serveur Hapy pourra être grâce à leur établissement de rattachement dans Zéphir et/ou en saisissant les identifiants numériques des machines un par un dans l'interface de configuration du module.

AttentionFichier de CA spécifique pour Zéphir

Dans le cas où le certificat du module Zéphir n'est pas signé par une autorité de certification[2] reconnue sur Internet, il est impératif de le mettre à disposition sur le serveur Hâpy afin que les machines virtuelles EOLE puissent s'auto-enregistrer sur Zéphir.

Déploiement des machines virtuelles

Le déploiement des machines virtuelles se déroule en plusieurs étapes :

  • Recherche de la liste des serveurs : interrogation du serveur Zéphir afin d'obtenir la liste ordonnée des serveurs à déployer
  • Vérification des ressources : le serveur Hâpy doit être en mesure de fournir les ressources demandées dans l'onglet Machine virtuelle de chacun des serveurs
  • Vérification des réseaux : les réseaux déclarés dans l'onglet Machine virtuelle de chacun des serveurs doivent exister sur le serveur Hâpy
  • Vérification des adresses / range réseaux : les adresses des serveurs doivent être cohérentes avec les plages proposées par les réseaux virtuels
  • Import des appliances : téléchargement des images sur le magasin d'applications EOLE
  • Création des modèles de machines virtuelles : création des modèles OpenNebula (templates)
  • Création des machines virtuelles : les serveurs EOLE démarrent et sont déployés automatiquement en passant par des étapes habituelles telles que Maj-Auto, enregistrement_zephir ou instance, le tout sans aucune question grâce à l'utilisation de Pexpect[3]
  • Vérification démarrage des VM : indique l'état des machines virtuelles dans OpenNebula

Exigences de fonctionnement

  • L'utilisateur doit disposer d'un module Zéphir afin de gérer les serveurs Hâpy ainsi que les machines virtuelles EOLE installées sur ces modules
  • Toutes les machines virtuelles sont enregistrées sur le serveur Zéphir
  • Les adresses IP des différents modules EOLE sont obligatoirement statiques.
  • Toutes les machines virtuelles utilisent des images persistantes
  • Si la machine virtuelle existe déjà sur le serveur, elle n'est pas re-créée (seul le template peut être actualisé)

Magasin d'applications

Les images sont distribuées via le magasin d'applications EOLE disponible à l'adresse suivante : https://lab1.labs.eole.education/appliance

Le magasin d'applications EOLE
Le magasin d'applications EOLE

Les images KVM[4] hébergées sur la plate-forme sont régulièrement mises à jour afin de minimiser la durée de l'étape de mise à jour lors du déploiement des serveurs.

Remarque

Documentation officielle sur les appliances OpenNebula en anglais :

https://docs.opennebula.io/appliances/