Skip to main content

Déployer un master sur plusieurs machines avec le multicast

S'applique à : Medulla – Imaging / Multicast
Version : Toutes versions
Environnement : On-Premise (avec ou sans serveur relais) / SaaS dédié avec serveur relais
Catégorie : Imaging / Multicast / Déploiement de masters

Le multicast permet de déployer simultanément un même master sur plusieurs machines, en utilisant une transmission réseau commune plutôt qu'un transfert individuel vers chaque poste.

Cette fonctionnalité s'utilise à partir d'un groupe d'imaging dans Medulla.

Avant de commencer, vérifier que le serveur d'imaging est opérationnel, qu'un master est disponible et que les machines concernées peuvent démarrer en PXE et communiquer avec le serveur d'imaging.

Attention :
Le déploiement d'un master peut écraser les données présentes sur les disques des machines de destination. Vérifier les machines sélectionnées et le master utilisé avant de lancer l'opération.

Création d'un groupe d'imaging

Dans le module Imaging, sélectionner le menu « Ajouter un groupe d'imaging », puis choisir le serveur concerné.

Ajout d'un groupe d'imaging et sélection du serveur dans Medulla

L'écran suivant permet de sélectionner les machines qui composeront le groupe d'imaging.

Sélection des machines du groupe d'imaging

Le message affiché en rouge indique qu'une machine possède déjà un menu d'imaging personnalisé.

Attention :
Si une machine possède déjà un menu personnalisé, celui-ci sera remplacé par le menu du groupe d'imaging. Vérifier les machines sélectionnées avant de poursuivre.

La page suivante permet de définir les paramètres par défaut du groupe. Vérifier les valeurs proposées, puis valider pour terminer sa création.

Configuration des paramètres par défaut du groupe d'imaging

Le groupe d'imaging est maintenant créé.

Gestion du groupe

Après la création du groupe, Medulla affiche sa page de gestion. C'est depuis cette interface que les options de multicast sont accessibles.

Pour revenir ultérieurement sur cette page, suivre le chemin suivant :

Imaging > Tous les groupes d'imaging

En face du groupe concerné, sélectionner « Gestion de l'imaging » dans la liste des actions disponibles.

Accès à la gestion de l'imaging depuis la liste des groupes

Paramétrer le multicast pour le groupe

Depuis la page de gestion de l'imaging associée au groupe, ouvrir l'onglet « Master », puis sélectionner l'action « Initialisation du multicast ».

Initialisation du multicast depuis l'onglet Master

Une fenêtre de configuration s'ouvre et permet de définir les paramètres de la session multicast :

Configuration du nombre de machines attendues et du timeout multicast

  • Nombre de machines à attendre : nombre de machines devant rejoindre la session multicast avant le démarrage du transfert.
  • Timeout : durée maximale d'attente des machines avant le lancement du transfert avec les clients présents, selon le fonctionnement de DRBL.

Par exemple, pour une session configurée avec 2 machines attendues et un timeout de 600 secondes, le serveur attend jusqu'à 10 minutes que les machines rejoignent la session.

Si les deux machines sont présentes avant l'expiration du délai, le transfert peut commencer sans attendre la fin du timeout.

Information :
Le nombre de machines et le timeout permettent de synchroniser le démarrage du transfert. Ils ne remplacent pas l'action de lancement du déploiement multicast présentée ci-dessous.

Lancer le multicast

Le multicast est maintenant paramétré, mais le déploiement n'est pas encore lancé.

Pour le lancer, revenir sur la page de statut du serveur d'imaging (page d'accueil), puis sélectionner l'entité sur laquelle le multicast a été configuré.

Cliquer ensuite sur « Démarrer le déploiement multicast ».

Démarrage du déploiement multicast depuis le statut du serveur d'imaging

Attention :
Avant de lancer le déploiement, vérifier que le master sélectionné correspond bien aux machines de destination. La restauration peut remplacer les partitions et les données du disque cible.

Lancer les machines en PXE

L'étape suivante consiste à démarrer les machines du groupe en PXE afin qu'elles rejoignent la session multicast.

Les machines doivent pouvoir accéder au serveur d'imaging sur le réseau. Si elles se trouvent sur des VLAN différents, la configuration réseau doit permettre les communications nécessaires au multicast.

Dans l'exemple ci-dessous, les machines n'ont pas été démarrées exactement au même moment. Elles ont néanmoins rejoint la même session et sont synchronisées pour le déploiement de l'image.

Machines PXE synchronisées pendant le déploiement multicast

Information :
Les machines n'ont pas besoin d'être allumées exactement au même instant. Elles doivent toutefois rejoindre la session pendant la phase d'attente prévue par les paramètres multicast.

Complément d'information

Lors de l'initialisation et du lancement du multicast, plusieurs fichiers peuvent être créés ou utilisés sur le serveur d'imaging concerné.

Ces fichiers sont utiles pour comprendre le fonctionnement de DRBL et diagnostiquer un éventuel problème de déploiement.

  • /tmp/multicast.sh : script utilisé pour lancer le multicast.
  • /tmp/multicastdescription.txt : fichier contenant les informations de description de la session multicast.
  • /var/lib/pulse2/imaging/bootmenus/default : fichier de menu de démarrage nécessaire à DRBL pour lancer drbl-ocs.
  • /var/lib/pulse2/imaging/bootmenus/default_skeleton : copie du menu par défaut utilisée par le mécanisme d'imaging.
  • /tmp/udp-sender.log : journal permettant de suivre l'avancement du transfert multicast.

Pour vérifier la présence de ces fichiers :

ls -l /tmp/multicast.sh
ls -l /tmp/multicastdescription.txt
ls -l /tmp/udp-sender.log
ls -l /var/lib/pulse2/imaging/bootmenus/default*

Pour suivre l'avancement du multicast en temps réel :

tail -f /tmp/udp-sender.log

Des processus DRBL sont également lancés pendant le déploiement.

Pour vérifier leur présence :

ps aux | grep '[d]rbl-ocs'

Exemple de commande DRBL observée lors d'un déploiement multicast :

/bin/bash /usr/sbin/drbl-ocs \
-sc0 -b -g auto -e1 auto -e2 -x -j2 \
--clients-to-wait 2 \
--max-time-to-wait 600 \
-l en_US.UTF-8 \
-h 127.0.0.1 \
startdisk multicast_restore \
971e5909-a28f-11f0-932f-bc241183ccf7 sda

Dans cet exemple :

  • --clients-to-wait 2 : le serveur attend 2 machines pour la session multicast.
  • --max-time-to-wait 600 : le délai maximal d'attente est fixé à 600 secondes, soit 10 minutes.
  • multicast_restore : opération de restauration d'une image en multicast.
  • 971e5909-a28f-11f0-932f-bc241183ccf7 : identifiant du master utilisé dans cet exemple.
  • sda : disque de destination utilisé dans cet exemple.

Attention :
Le disque sda est celui utilisé dans cet exemple. Le nom du disque cible peut varier selon la configuration matérielle des machines. Il est essentiel de vérifier le disque de destination avant toute restauration.

Ces informations permettent notamment de vérifier :

  • que le processus de déploiement multicast est bien démarré ;
  • que le nombre de machines attendues correspond à la configuration ;
  • que le timeout appliqué est correct ;
  • que le transfert est en cours ou terminé, selon les informations disponibles dans les journaux.

Diagnostic :
En cas de problème, consulter en priorité /tmp/udp-sender.log et vérifier la présence des processus drbl-ocs.

Les fichiers générés par Medulla et DRBL ne doivent pas être modifiés manuellement sans analyse préalable.

Résultat attendu :
Les machines du groupe rejoignent la session multicast depuis leur démarrage PXE. Le serveur d'imaging transmet le master aux machines participantes, qui peuvent ainsi être restaurées simultanément.