Introduction

Nous allons virtualiser une infrastructure d’école grâce à la solution Hâpy, basée sur OpenNebula :

  • Le serveur Amon sécurise les flux réseaux et filtre les accès Web ;
  • Le serveur Scribe authentifie les utilisateurs et leur offre un espace de partage de fichiers ;
  • Le serveur Eclair prend en charge les clients légers.

 

Cette école dispose déjà des ressources suivantes :

  • Un réseau d’accès 192.168.230.0/24 derrière le routeur du fournisseur d’accès Internet, ce dernier est configuré avec l’adresse IP 192.168.230.254 ;
  • Un réseau pédago 10.1.1.0/24 pour les serveurs et postes clients de l’établissement ;
  • Un serveur DNS externe 192.168.232.2 ;
  • Une passerelle SMTP smtp.mon-fai.example.fr.

 

network-schema hapy-interfaces

Pré-requis

Il faut aborder deux points essentiels à la mise en œuvre de la virtualisation de cet école : l’architecture réseau et les capacités du serveur de virtualisation.

Réseau

Nous partons du principe que le réseau physique de l’école ne dispose pas de VLAN.

Dans notre cas il faut pour le serveur Hâpy :

  • Une carte dédiée à l’administration de l’hyperviseur Hâpy, branchée sur le réseau pédago. Attention : Lors de la phase d’installation, cette interface sera connectée au réseau d’accès afin de télécharger les mises à jour et les images ISO nécessaires à l’installation des modules ;
  • Une carte dédiée à l’accès internet de l’Amon, branchée sur le réseau d’accès derrière le routeur du FAI ;
  • Une carte dédiée pour le réseau pédagogique.

Capacité

Les besoins de capacité de l’hyperviseur dépendront directement des usages.

Le projet des clients léger LTSP nous donne les indications suivantes pour un serveur autonome :

  • Pour la mémoire, ils utilisent la formule suivante : 1500Mo + (300Mo * NOMBRE_DE_CLIENTS_LÉGERS) ;
  • Pour le processeur, un multi-cœur 2GHz doit faire l’affaire.

Cela représente pour 10 clients légers 4500Mo, soit un peu plus de 4Go de mémoire vive pour le serveur Eclair.

Il faut bien évidemment prendre en compte les autres serveurs virtuels hébergés par notre Hâpy :

  • Amon : 1 à 2Go
  • Scribe : 2 à 4Go

Pour notre infrastructure, nous disposons :

  • D’un CPU Core i7 37770 3.4GHz 4 cœurs 8 threads ;
  • De 32 Go de mémoire vive.

Stockage

La taille du stockage est directement liée à la taille des disques que vous souhaitez allouer à vos serveurs.

Dans notre cas, nous choisissons les tailles suivantes :

  • 50Go pour le serveur Amon, vous pouvez augmenter la taille pour le cache web et les journaux systèmes
  • 50Go pour le serveur Eclair
  • 100Go pour le serveur Scribe

Notre serveur Hâpy dispose d’un SSD de 128Go sur lequel nous allons installer le système en partitionnement automatique.

Nous ajouterons manuellement au groupe de volumes un second disque physique SATA de 500Go, une fois l’installation terminée, afin d’augmenter la taille de /var/tmp et /var/lib/one.

Mise en œuvre du serveur Hâpy

Maintenant que nos ressources sont définies, nous pouvons passer à l’installation à proprement parler.

Installation

Notre serveur est équipé d’un microcode UEFI qui est pris en charge par EOLE depuis la version 2.5.2.

Nous pouvons donc télécharger l’image ISO 2.6.0 et l’installer sur une clef USB.

La procédure d’installation se déroule comme prévue et le serveur redémarre correctement.

Extension du groupe de volume

Notre configuration nécessite d’ajouter le second disque au groupe de volume, cela se fait très simplement :

  1. Se connecter root sur la console du serveur
  2. Déterminer le nom du disque dur de 500Go avec la commande fdisk -l /dev/sd*, dans notre cas il s’agit de /dev/sdb
  3. Transformer ce disque en volume physique LVM avec la commande pvcreate /dev/sdb
  4. Étendre le groupe de volume avec ce nouveau volume physique avec la commande: vgextend hapy-vg /dev/sdb
  5. Étendre le volume logique de /var/tmp et son système de fichier avec la commande : lvextend -r -L20G /dev/hapy-vg/var+tmp
  6. Étendre le volume logique de /var/lib/one et son système de fichier avec la commande : lvextend -r -L300G /dev/hapy-vg/var+lib+one

Nous avons désormais les tailles suivantes pour nos volumes logiques :

root@igor:~# lvs
  LV          VG      Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root        hapy-vg -wi-ao----   9,31g
  swap_1      hapy-vg -wi-ao----   1,91g
  tmp         hapy-vg -wi-ao----   1,86g
  var         hapy-vg -wi-ao----   8,38g
  var+lib+one hapy-vg -wi-ao---- 300,00g
  var+tmp     hapy-vg -wi-ao----  20,00g

Mise à jour

Avant de continuer, il est conseillé de faire une mise à jour.

Configuration

Nous allons maintenant configurer le serveur Hâpy en exécutant, en tant qu’utilisateur root, la commande gen_config.

Voici à titre d’exemple la configuration de notre serveur Hâpy :

  • Configuration de l’onglet Général
    • Mode Basic → Nom de l’établissement ⮕ Établissement de Test
    • Mode Basic → Nom de la machine ⮕ igor
    • Mode Basic → Nom DNS du réseau local ⮕ etb1.lan
    • Mode Basic → Nom de domaine académique (ex : ac-dijon) ⮕ ac-dijon
    • Mode Normal → Nombre d’interfaces à activer ⮕ 3
  • Configuration de l’onglet Interface 0 :
    Durant la phase d’installation, nous branchons l’Interface 0 sur le réseau d’accès derrière le routeur du FAI. Seul une machine d’administration, dont l’adresse IP est 10.1.1.10, aura accès à SSH et à l’EAD.

    • Mode Basic → Adresse IP de la carte ⮕ 10.1.1.2
      • Mode Basic → Adresse IP de la passerelle par défaut ⮕ 10.1.1.1
      • Mode Basic → Autoriser les connexions SSH ⮕ oui
      • Mode Basic → Adresse IP réseau autorisée pour les connexions SSH ⮕ 10.1.1.10
      • Mode Basic → Masque du sous réseau pour les connexions SSH ⮕ 255.255.255.255
      • Mode Basic → Adresse IP réseau autorisée pour administrer le serveur ⮕ 10.1.1.10
      • Mode Basic → Masque du sous réseau pour administrer le serveur ⮕ 255.255.255.255
    • Configuration de l’Onglet Messagerie
      • Mode Normal → Adresse électronique recevant les courriers électroniques à destination du compte root ⮕ admin@etb1.lan
      • Mode Basic → Router les courriels par une passerelle SMTP ⮕ oui
      • Mode Basic → Passerelle SMTP ⮕ smtp.mon-fai.example.fr
  • Configuration de l’onglet Commutateur virtuel
    Nous allons associer les interfaces physiques du serveur Hâpy aux réseaux logiques internet et pédago.
    Afin de différencier les réseaux dans OpenNebula, nous utilisons la solution Open vSwitch et déclarons chaque réseau comme VLAN séparé.
    Le réseau physique ne supportant pas les VLAN, nous devons passer en mode expert afin de paramétrer les ports du switch virtuel en mode access. 00-hapy-2-6-0-gen_config-commutateur-virtuel

    • Un premier port de commutateur virtuel associé à une interface physique
      • Mode Normal → Nom du port du commutateur virtuel associé à une interface physique ⮕ internet
      • Mode Normal → Interface physique ⮕ eth1
      • Mode Normal → Identifiant du VLAN virtuel ⮕ 10
      • Mode Expert → Mode du VLAN virtuel ⮕ access
    • Un second port de commutateur virtuel associé à une interface physique
      • Mode Normal → Nom du port du commutateur virtuel associé à une interface physique ⮕ pedago
      • Mode Normal → Interface physique ⮕ eth2
      • Mode Normal → Identifiant du VLAN virtuel ⮕ 20
      • Mode Expert → Mode du VLAN virtuel ⮕ access
  • Configuration de l’onglet Virtualisation
    Nous devons maintenant déclarer dans OpenNebula les réseaux internet et pedago et faire correspondre les numéros de VLAN avec ceux déclarés au préalable dans l’onglet Commutateur virtuel 01-hapy-2-6-0-gen_config-virtualisation

    • Un premier réseau virtuel à plage d’adresse ethernet
      • Mode Normal → Nom du réseau virtuel à plage d’adresse ethernet ⮕ internet
      • Mode Normal → Nombre d’adresse MAC disponible ⮕ 254
      • Mode Normal → Numéro du VLAN ⮕ 10
    • Un Second réseau virtuel à plage d’adresse ethernet
      • Mode Normal → Nom du réseau virtuel à plage d’adresse ethernet ⮕ pedago
      • Mode Normal → Nombre d’adresse MAC disponible ⮕ 254
      • Mode Normal → Numéro du VLAN ⮕ 20

NB : L’accès à l’interface web est limité aux adresses définie par Mode Basic → Adresse IP réseau autorisée pour administrer le serveur.

Nous pouvons maintenant enregistrer cette configuration et exécuter la commande instance pour appliquer la configuration.

Parmi les mots de passe demandé, celui de l’utilisateur eoleone permettra de se connecter à l’interface web d’OpenNebula.

Une fois le serveur instancié, la commande diagnose permet de vérifier l’état du serveur.

Préparation des images d’installation

Il est possible d’initialiser des modèles de VM avec quelques fonctions de base :

  • ISO EOLE
  • Disque dur vierge
  • Modèle d’installation d’Eolebase

Nous allons :

  • Télécharger l’image ISO 2.5.2.1 car nous disposons déjà de l’ISO 2.6.0
  • Créer un disque vierge de 50Go

Nous exécutons à nouveau gen_config pour modifier la configuration, celle-ci se fait dans l’onglet Modèle :

  • Mode Normal → Activer l’auto-création du modèle de machine virtuelle pour installer un module EOLE ⮕ oui
  • Mode Normal → Version de l’image ISO EOLE à télécharger ⮕ 2.5.2.1
  • Mode Normal → Taille en giga-octets du disque dur vierge ⮕ 50

02-hapy-2-6-0-gen_config-modele-2-5-2-1

Une fois la configuration enregistrée et nous exécutons la commande reconfigure pour procéder :

  • au téléchargement de l’image ISO 2.5.2.1
  • à la création du disque vierge de 50Go
  • à la création d’un modèle de machine virtuel pour installer des modules EOLE, nous devons appliquer le correctif #18448 manuellement car il n’est pas publié au moment où nous écrivons ces lignes05-hapy-2-6-0-sunstone-fix-heure-locale-2-5-2-1

Une fois l’image ISO téléchargée, nous pouvons :

  • Connecter l’Interface 0 au réseau pédago ;
  • Modifier les paramètres de l’interface dans gen_config ;
  • Exécuter reconfigure.

La partie requérant un accès shell au serveur Hâpy est terminée, le reste sera fait directement à travers l’interface web d’OpenNebula.

Initialisation du modèle de machine 2.6.0

Nous pouvons désormais, depuis un poste du réseau pédago, nous connecter à l’interface web OpenNebula à l’adresse http://igor.etb1.lan:9000 avec le compte eoleone et le mot de passe saisi précédemment.

Nous accédons au tableau de bord d’un module Hâpy presque vierge.

03-hapy-2-6-0-sunstone-dashboardNous pouvons voir qu’il y a déjà des images enregistrés et 2 réseaux virtuels configurés.

Notre serveur Hâpy ne dispose pas de certificat valide, il n’est configuré qu’avec le certificat auto-signé par défaut. Nous devons valider ce certificat pour l’URL https://igor.etb1.lan:29876 afin d’accéder aux consoles VNC Web. Après la validation, une erreur 405 indique que la réponse du serveur websocketproxy n’est pas valide en HTTP.

03-1-hapy-2-6-0-sunstone-websocketproxy-url 03-2-hapy-2-6-0-sunstone-novnc-error

Image ISO 2.6.0

Nous allons maintenant téléverser l’image ISO 2.6.0, pour ce faire nous sélectionnons le menu Storage → Images.

Nous pouvons maintenant cliquer sur le bouton vert + en haut à gauche afin d’ajouter une image avec les paramètres suivant :

  • Nom ⮕ ISO-Eole-2.6.0-amd64
  • Description ⮕ Image ISO EOLE Stable 2.6.0 64 bits
  • Type ⮕ CD-ROM en lecture seule
  • Espace de stockage ⮕ 102: iso-images
  • Chemin d’accès → Téléverser ⮕ parcourir votre disque dur jusqu’à l’image iso eole-2.6.0-alternate-amd64.iso
  • Options avancées → BUS ⮕ Parallel ATA (IDE)

04-hapy-2-6-0-sunstone-upload-2-6-0-iso

Modèle de machine virtuelle 2.6.0

Nous allons créer manuellement un modèle de machine virtuelle.

Nous sélectionnons le menu Modèles de VM → Machines Virtuelles, puis un clic sur le bouton vert « + » en haut à gauche afin de saisir les paramètres du modèle :

  • Onglet Général :
    • Nom ⮕ InstallEole-2.6.0-amd64
    • Mémoire ⮕ 1Go
    • CPU ⮕0.02
    • VCPU ⮕ 2 07-hapy-2-6-0-sunstone-template-2-6-0-general
  • Onglet Stockage
    • Disque0 ⮕ DSK-50-Go 08-hapy-2-6-0-sunstone-template-2-6-0-storage-disk0
    • Disque1 ⮕ ISO-Eole-2.6.0-amd64 09-hapy-2-6-0-sunstone-template-2-6-0-storage-disk1
  • Onglet Réseau ⮕ aucun 10-hapy-2-6-0-sunstone-template-2-6-0-network
  • Onglet Démarrage de l’OS :
    • Architecture CPU ⮕ x86_64
    • Ordre de démarrage :
      • disk0 DSK-50-Go
      • disk1 ISO-Eole-2.6.0-amd64 11-hapy-2-6-0-sunstone-template-2-6-0-os
  • Onglet Entrée/Sortie :
    • Graphiques ⮕ VNC
      • Écouter sur l’IP ⮕ 0.0.0.0
      • Carte clavier ⮕ fr
    • Entrants :
      • Type ⮕ tablet
      • Bus ⮕ USB 12-hapy-2-6-0-sunstone-template-2-6-0-io

Préparation des serveurs virtuels

Chacun des modules EOLE (Amon, Scribe et Eclair) nécessitera la même procédure.

Nous allons commencer par préparer un modèle de base du module. À cette étape nous ne faisons aucune configuration spécifique au module. Ce modèle permettra de démarrer de nouveaux serveurs sans repasser par la phase d’installation depuis l’image ISO.

La phase de mise en production consiste à instancier une machine virtuelle à partir du modèle précédent et à dérouler la configuration EOLE (genconfig + instance).
Pour les modules Amon et Scribe, il faut ajouter une étape de personnalisation pour y connecter le module Eclair.

Nous allons commencer par le serveur Amon qui donnera l’accès internet aux autres machines du réseau, y compris Hâpy.

Mise en œuvre du serveur Amon 2.5.2.1

 

Création d’une image de base

Depuis l’interface web d’OpenNebula, les étapes de création d’un modèle de base sont les suivantes :

  • Sélection du menu Modèles de VM → Machines Virtuelles
  • Sélection du modèle InstallEOLE-2.5.2.1-amd64 et clic sur le bouton Instancier00-amon-2-5-2-1-select-install
  • Configuration du modèle et démarrage de la machine01-amon-2-5-2-1-instance
  • Dans le menu Instances → Machines Virtuelles, nous ouvrons la console VNC de la machine démarrée02-amon-2-5-2-1-select-vnc
  • Nous obtenons l’écran de démarrage de l’image ISO et nous sélectionnons le module Amon03-amon-2-5-2-1-boot-iso
  • Nous déroulons l’installation jusqu’à la demande de redémarrage
  • Nous redémarrons la machine jusqu’à l’écran d’invite de connexion04-amon-2-5-2-1-after-reboot
  • Nous éteignons la machine05-amon-2-5-2-1-eteindre-2-5-2-1
  • Nous sauvegardons cette machine virtuelle en créant un nouveau modèle de machine virtuelle06-amon-2-5-2-1-save-2-5-2-1
  • Nous appelons ce modèle  Amon 2.5.2.1 – fresh install07-amon-2-5-2-1-save-name-2-5-2-1
  • Le disque est sauvegardé et un nouveau modèle est créé08-amon-2-5-2-1-save-hotplug
  • Nous pouvons supprimer la machine virtuelle après sa sauvegarde09-amon-2-5-2-1-terminate-fi

Mise en production

Nous allons démarrer le serveur Amon fraîchement installé pour créer notre serveur de production, afin de conserver les données nous allons demander un serveur persistant :

  • Sélection du menu Modèles de VM → Machines Virtuelles
  • Sélection du modèle Amon 2.5.2.1 – fresh install et clic sur le bouton Instancier10-amon-2-5-2-1-prod-select
  • Nous démarrons une machine virtuelle Amon 2.5.2.1 – production et en sélectionnant l’option Instancier comme persistant11-amon-2-5-2-1-prod-instance

Nous pouvons maintenant sélectionner le menu Instances → Machines Virtuelles, pendant quelques instant, la machine est en état CLONING car nous avons demandé une image persistante, il faut donc un modèle et une image disque dédiés.

12-amon-2-5-2-1-prod-cloning

Une fois le clone démarré, nous pouvons ouvrir la console VNC et nous connecter.

Attention, il peut-être difficile de saisir le mot de passe aléatoire dans la console VNC, nous utilisons la souris pour le copier/coller :

  • Sélection du mot de passe avec le bouton gauche de la souris
  • Coller le mot de passe avec un clic du milieu

13-amon-2-5-2-1-prod-password-trick

Une fois connecté nous exécutons la commande gen_config pour configurer le serveur.

14-amon-2-5-2-1-prod-gen_config

Nous appliquons la configuration en exécutant la commande instance et nous vérifions l’état du serveur après instance avec la commande diagnose.

Préparation pour scribe et Éclair

Nous allons ajouter au DNS de l’Amon des entrées pour les serveurs Hâpy, scribe et l’éclair :

 

Configuration de l’onglet Mode Expert → Réseau avancé :

  • Pour le serveur Hâpy
    • Mode Expert → Adresse IP de l’hôte ⮕ 10.1.1.2
    • Mode Expert → Nom long de l’hôte ⮕ hapy.etb1.lan
    • Mode Expert → Nom court de l’hôte ⮕ hapy
  • Pour le serveur Scribe
    • Mode Expert → Adresse IP de l’hôte ⮕ 10.1.1.3
    • Mode Expert → Nom long de l’hôte ⮕ scribe.etb1.lan
    • Mode Expert → Nom court de l’hôte ⮕ scribe
  • Pour le serveur Eclair
    • Mode Expert → Adresse IP de l’hôte ⮕ 10.1.1.4
    • Mode Expert → Nom long de l’hôte ⮕ eclair.etb1.lan
    • Mode Expert → Nom court de l’hôte ⮕ eclair

15-amon-2-5-2-1-prod-gen_config-dns

Mise en œuvre du serveur Scribe 2.6.0

Nous allons répéter la même procédure que pour l’Amon en sélectionnant les modèles 2.6.0.

Création d’une image de base

  • Sélection du menu Modèles de VM → Machines Virtuelles
  • Sélection du modèle InstallEOLE-2.6.0-amd64 et clic sur le bouton Instancier00-scribe-2-6-0-select-install
  • Configuration du modèle et démarrage de la machine01-scribe-2-6-0-instance
  • Dans le menu Instances → Machines Virtuelles, nous ouvrons la console VNC de la machine démarrée02-scribe-2-6-0-select-vnc
  • Nous obtenons l’écran de démarrage de l’image ISO et nous sélectionnons le module Scribe03-scribe-2-6-0-boot-iso
  • Nous déroulons l’installation jusqu’à la demande de redémarrage
  • Nous redémarrons la machine jusqu’à l’écran d’invite de connexion04-scribe-2-6-0-after-reboot
  • Nous éteignons la machine05-scribe-2-6-0-eteindre
  • Nous sauvegardons cette machine en créant un nouveau modèle de machine virtuelle06-scribe-2-6-0-save
  • Nous appelons ce modèle Scribe 2.6.0 – fresh install07-scribe-2-6-0-save-name
  • Le disque est sauvegardé et un nouveau modèle est créé08-scribe-2-6-0-save-hotplug
  • Nous pouvons supprimer la machine virtuelle après sa sauvegarde

Mise en production

Nous allons démarrer le serveur Scribe fraîchement installé afin de créer notre serveur de production, afin de conserver les données nous allons demander un serveur persistant :

  • Sélection du menu Modèles de VM → Machines Virtuelles
  • Sélection du modèle Scribe 2.6.0 – fresh install et clic sur le bouton Instancier09-scribe-2-6-0-prod-select
  • Nous démarrons une machine virtuelle Scribe 2.6.0 – production et en sélectionnant l’option Instancier comme persistant10-scribe-2-6-0-prod-instance

Nous pouvons maintenant sélectionner le menu Instances → Machines Virtuelles, pendant quelques instant, la machine est en état CLONING car nous avons demandé une image persistante, il faut donc un modèle et une image disque dédié.

Une fois le clone démarré, nous pouvons ouvrir la console VNC et nous connecter.

Attention, il peut-être difficile de saisir le mot de passe aléatoire dans la console VNC, nous utilisons la souris pour le copier/coller :

  • Sélection du mot de passe avec le bouton gauche de la souris
  • Coller le mot de passe avec un clic du milieu

Une fois connecté nous exécutons la commande gen_config pour configurer le serveur.

Nous appliquons la configuration en exécutant la commande instance et nous vérifions l’état du serveur après instance avec la commande diagnose.

Préparation pour Éclair

Le serveur Eclair a besoin d’un serveur NFS pour accéder aux répertoires personnels des utilisateurs.

Les clients légers nécessitent un serveur DHCP

Nous devons en premier lieu installer le paquet eole-nfs, en ligne de commande sur le serveur scribe :

root@scribe:~# apt-eole install eole-nfs

Nous devons ensuite configurer les services NFS, DHCP, et PXE/TFTP :

  • Activation du DHCP et PXE/TFTP11-scribe-2-6-0-active-dhcp-pxe-tftp
  • Paramétrage du DHCP12-scribe-2-6-0-configure-dhcp
  • Autorisation de l’IP de l’Éclair à utiliser le NFS13-scribe-2-6-0-configure-nfs
  • Utilisation de l’adresse IP de l’Eclair comme serveur PXE/TFTP14-scribe-2-6-0-configure-pxe-tftp

Nous devons aussi activer le shell pour l’utilisateur admin :

  • avec la commande : root@scribe:~# smbldap-usermod -s /bin/bash admin
  • Avec l’EAD du scribe
15-scribe-2-6-0-admin-edit 16-scribe-2-6-0-admin-shell

Mise en œuvre du serveur Eclair 2.6.0

Nous allons répéter la même procédure que pour le scribe.

Création d’une image de base

  • Sélection du menu Modèles de VM → Machines Virtuelles
  • Sélection du modèle InstallEOLE-2.6.0-amd64 et clic sur le bouton Instancier00-scribe-2-6-0-select-install
  • Configuration du modèle et démarrage de la machine01-eclair-2-6-0-instance
  • Dans le menu Instances → Machines Virtuelles, nous ouvrons la console VNC de la machine démarrée02-eclair-2-6-0-select-vnc
  • Nous obtenons l’écran de démarrage de l’image ISO et nous sélectionnons le module Eclair03-eclair-2-6-0-boot-iso
  • Nous déroulons l’installation jusqu’à la demande de redémarrage
  • Nous redémarrons la machine jusqu’à l’écran d’invite de connexion04-eclair-2-6-0-after-reboot
  • Nous éteignons la machine05-eclair-2-6-0-eteindre
  • Nous sauvegardons cette machine en créant un nouveau modèle de machine virtuelle06-eclair-2-6-0-save
  • Nous appelons ce modèle Eclair 2.6.0 – fresh install07-eclair-2-6-0-save-newname
  • Le disque est sauvegardé et un nouveau modèle est créé08-eclair-2-6-0-save-hotplug
  • Nous pouvons supprimer la machine virtuelle après sa sauvegarde09-eclair-2-6-0-terminate-fi

Mise en production

Nous allons démarrer le serveur Amon fraîchement installé afin de créer notre serveur de production, afin de conserver les données nous allons demander un serveur persistant :

  • Sélection du menu Modèles de VM → Machines Virtuelles
  • Sélection du modèle Eclair 2.6.0 – fresh install et clic sur le bouton Instancier10-eclair-2-6-0-prod-select
  • Nous démarrons une machine virtuelle à Scribe 2.6.0 – production en sélectionnant l’option Instancier comme persistant11-eclair-2-6-0-prod-instance

Nous pouvons maintenant sélectionner le menu Instances → Machines Virtuelles, pendant quelques instant, la machine est en état CLONING car nous avons demandé une image persistante, il faut donc un modèle et une image disque dédié.

Une fois le clone démarré, nous pouvons ouvrir la console VNC et nous connecter.

Attention, il peut-être difficile de saisir le mot de passe aléatoire dans la console VNC, nous utilisons la souris pour le copier/coller :

  • Sélection du mot de passe avec le bouton gauche de la souris
  • Coller le mot de passe avec un clic du milieu

Une fois connecté nous exécutons la commande gen_config pour configurer le serveur.

12-eclair-2-6-0-prod-gen_config 13-eclair-2-6-0-prod-gen_config-annuaire

 

NB : Il faut autoriser les connexions SSH pour les clients légers, dans notre cas nous autorisons le réseau 10.1.1.0/24 :

  • Configuration de l’onglet Interface 0 :
    • Mode BasicAdresse IP réseau autorisée pour les connexions SSH ⮕ 10.1.1.0
    • Mode BasicMasque du sous réseau pour les connexions SSH ⮕ 255.255.255.255

Nous appliquons la configuration en exécutant la commande instance cela génère l’image des clients légers :

14-eclair-2-6-0-prod-build-image

Nous vérifions l’état du serveur après instance avec la commande diagnose.

Gestion de l’architecture des clients légers

Par défaut, l’image des clients légers et de la même architecture que le serveur Eclair, c’est à dire AMD64.

Il est toutefois possible de générer des images i386 en paramétrant la variable :

  • Ltsp → Architecture matérielle pour les clients légers ⮕ i38616-eclair-2-6-0-prod-configure-client-arch

Puis appliquer le paramètre en exécutant la commande reconfigure.

Test d’un client PXE

Nous pouvons désormais démarrer des clients PXE, nous allons définir un nouveau modèle de machine virtuel dans OpenNebula à cet effet.

Nous sélectionnons le menu Modèles de VM → Machines Virtuelles, puis un clic sur le bouton vert « + » en haut à gauche afin de saisir les paramètres du modèle :

  • Onglet Général :
    • Nom ⮕ PXE amd64
    • Mémoire ⮕ 1Go
    • CPU ⮕ 0.02
    • VCPU ⮕ 215-eclair-2-6-0-sunstone-pxe-general
  • Onglet Stockage ⮕ aucun16-eclair-2-6-0-sunstone-pxe-storage
  • Onglet Réseau ⮕ CR_pedago17-eclair-2-6-0-sunstone-pxe-network
  • Onglet Démarrage de l’OS :
    • Architecture CPU ⮕ x86_64
    • Ordre de démarrage ⮕ nic018-eclair-2-6-0-sunstone-pxe-os
  • Onglet Entrée/Sortie :
    • Graphiques ⮕ VNC
      • Écouter sur l’IP ⮕ 0.0.0.0
      • Carte clavier ⮕ fr
    • Entrants :
      • Type ⮕ tablet
      • Bus ⮕ USB 19-eclair-2-6-0-sunstone-pxe-io

Il suffit désormais d’instancier ce modèle et d’accéder à son interface VNC.

Au bout de quelques instant des messages de négociation DHCP apparaissent suivis du chargement d’un noyau et de son initramfs et enfin le système démarre jusqu’à une invite de connexion.

15-eclair-2-6-0-prod-pxe-vnc

Nous nous connectons avec l’utilisateur admin.

ATTENTION : lors de la première connexion, il faut impérativement configurer le tableau de bord de XFCE en sélectionnant Utiliser les paramètres par défaut.

16-eclair-2-6-0-prod-pxe-default-xfce-params

Aller plus loin

Nous allons ajouter des logiciels que nous souhaitons utiliser sur le serveur Eclair : LibreOffice et l’environnement MATE

23-eclair-2-6-0-prod-pxe-install-softwares

Après avoir appliqué un errata, nous pouvons choisir l’environnement MATE à la connexion et nous retrouvons automatiquement les logiciels installés.

 

24-eclair-2-6-0-prod-pxe-choose-session 25-eclair-2-6-0-prod-pxe-libreoffice