Skip to main content

Diagnostic des erreurs de déploiement ABORT et ERROR

Lorsqu'un déploiement Medulla se termine avec un statut de type ABORT ou ERROR, le libellé du statut permet généralement d'identifier la famille du problème rencontré.

Cette page présente les principales erreurs de déploiement Medulla, leur signification ainsi que les premiers contrôles à effectuer.

Information :
Avant toute intervention, consultez le détail de l'audit du déploiement. Le message affiché dans l'audit apporte souvent une information plus précise que le statut seul.


1. Méthode de diagnostic

Lorsqu'un déploiement échoue, nous recommandons de procéder dans l'ordre suivant :

  1. identifier le statut exact du déploiement ;
  2. consulter le message associé dans l'audit ;
  3. déterminer si le problème concerne la machine, le relais, le package ou son exécution ;
  4. effectuer les contrôles correspondant au statut ;
  5. corriger la cause avant de relancer le déploiement.
Famille Exemples
Machine indisponible ABORT ON TIMEOUT, ABORT MACHINE DISAPPEARED
Agent Medulla ABORT MISSING AGENT
Serveur relais ABORT RELAY DOWN, ABORT ALTERNATIVE RELAYS DOWN, ABORT INFO RELAY MISSING
Package ABORT PACKAGE IDENTIFIER MISSING, ABORT PACKAGE NAME MISSING, ABORT PACKAGE VERSION MISSING, ABORT DESCRIPTOR MISSING
Workflow / exécution ABORT PACKAGE WORKFLOW ERROR, ABORT PACKAGE EXECUTION ERROR
Transfert ABORT TRANSFER FAILED, ERROR TRANSFER FAILED
Dépendance ABORT MISSING DEPENDENCY
Machine en doublon ABORT DUPLICATE MACHINE
Annulation ABORT DEPLOYMENT CANCELLED BY USER, ABORT PACKAGE EXECUTION CANCELLED

2. ABORT ON TIMEOUT

Le statut :

ABORT ON TIMEOUT

indique que le déploiement n'a pas pu être poursuivi dans le temps imparti.

Ce comportement peut notamment apparaître lorsque :

  • la machine ne revient pas en ligne malgré les tentatives de Wake On LAN ;
  • la machine reste indisponible jusqu'à la fin de la plage de déploiement ;
  • les relais sont occupés et la plage de déploiement est trop courte.

Vérifier que la machine est disponible

Commencez par vérifier que la machine est effectivement accessible sur le réseau.

ping IP_DE_LA_MACHINE

Vérifier le dernier état connu par Medulla

Dans la base xmppmaster, le dernier état connu de la machine peut être consulté dans la table uptime_machine.

SELECT *
FROM uptime_machine
WHERE hostname = "NOM_DE_LA_MACHINE"
ORDER BY id DESC
LIMIT 1\G;

Le champ status indique l'état connu :

  • 1 : machine considérée comme en ligne ;
  • 0 : machine considérée comme éteinte.

Le champ updowntime permet d'obtenir une indication sur la durée pendant laquelle la machine est restée dans cet état.

Un message associé peut être :

Deployment error in fifo: timed out

3. ABORT MISSING AGENT

Le statut :

ABORT MISSING AGENT

indique que Medulla tente de déployer sur une machine connue dans l'inventaire, mais dont l'agent Medulla n'a jamais été correctement enregistré.

La machine peut par exemple être présente dans GLPI sans avoir correctement remonté dans Medulla.

Actions recommandées

  • vérifier que l'agent Medulla est installé sur la machine ;
  • vérifier que le service Medulla est démarré ;
  • consulter les logs de l'agent ;
  • réinstaller l'agent si nécessaire.

Information :
Si la machine apparaît dans l'inventaire mais n'est jamais remontée via l'agent Medulla, le problème doit être traité au niveau de l'installation ou de l'enregistrement de l'agent avant de relancer le déploiement.


4. ABORT RELAY DOWN

Le statut :

ABORT RELAY DOWN

indique que le serveur relais attribué à la machine n'est pas disponible.

Vérifier le relais

ping IP_DU_RELAIS

Si l'accès SSH est autorisé :

ssh root@IP_DU_RELAIS

Vérifier son état dans Medulla

Le dernier état connu peut être consulté dans la table uptime_machine.

SELECT *
FROM uptime_machine
WHERE hostname = "NOM_DU_RELAIS"
ORDER BY id DESC
LIMIT 1\G;

Vérifiez également si le relais est activé :

SELECT id, nameserver, enabled
FROM relayserver;

Le champ enabled permet de savoir si le relais peut encore être proposé aux machines.

Attention :
Toute modification directe de la base de données Medulla doit être effectuée avec précaution et uniquement après sauvegarde. Une erreur de modification peut rendre incohérente l'affectation des machines aux relais.


5. ABORT ALTERNATIVE RELAYS DOWN

Le statut :

ABORT ALTERNATIVE RELAYS DOWN

indique qu'aucun des serveurs relais alternatifs disponibles pour la machine n'est actuellement accessible.

Il est recommandé de contrôler :

  • la disponibilité des relais alternatifs ;
  • leur connectivité réseau ;
  • leurs services Medulla ;
  • leur présence et leur état dans Medulla.

6. ABORT INFO RELAY MISSING

Le statut :

ABORT INFO RELAY MISSING

indique que le relais associé à la machine n'est plus correctement renseigné ou n'existe plus.

Ce cas peut notamment apparaître si un relais a été supprimé ou modifié alors que des machines y sont encore associées.

Vérifier l'affectation de la machine

Le champ groupdeploy de la machine doit contenir le relais utilisé pour son déploiement.

Si ce champ est vide ou pointe vers un relais qui n'existe plus, l'affectation doit être corrigée.

Attention :
La correction directe du champ groupdeploy en base de données doit être réservée aux administrateurs connaissant l'architecture Medulla et la configuration de leurs relais.


7. ERROR UNKNOWN ERROR

Le statut :

ERROR UNKNOWN ERROR

correspond à une erreur pour laquelle Medulla ne dispose pas d'une cause plus précise dans le statut.

Dans ce cas, consultez en priorité :

  • l'audit complet du déploiement ;
  • les journaux du déploiement ;
  • les logs de l'agent sur la machine cible ;
  • les logs du serveur relais concerné.

Important :
Le document d'exploitation utilisé comme référence ne fournit pas de procédure corrective spécifique pour ERROR UNKNOWN ERROR. Le diagnostic doit donc s'appuyer sur l'audit et les logs correspondant au déploiement concerné.


8. ABORT PACKAGE IDENTIFIER MISSING

Le statut :

ABORT PACKAGE IDENTIFIER MISSING

indique que l'identifiant UUID du package est absent.

Le fichier à contrôler est :

xmppdeploy.json

Vous pouvez retrouver l'UUID du package dans les informations disponibles dans l'audit du déploiement, puis vérifier sa présence dans le fichier :

grep -i "uuid" /var/lib/pulse2/packages/sharing/global/UUID_DU_PACKAGE/xmppdeploy.json

Si la clé UUID est absente, il est recommandé de recréer le package.


9. ABORT PACKAGE NAME MISSING

Le statut :

ABORT PACKAGE NAME MISSING

indique que le nom du package est manquant.

Ce comportement peut notamment indiquer que le package a été mal créé.

Les informations du package sont notamment stockées dans :

xmppdeploy.json

Si ce fichier est absent ou incomplet, il est recommandé de recréer le package.


10. ABORT PACKAGE VERSION MISSING

Le statut :

ABORT PACKAGE VERSION MISSING

indique que la version du package est absente.

Comme pour ABORT PACKAGE NAME MISSING, contrôlez le contenu de :

xmppdeploy.json

Si les informations du package sont incomplètes, il est recommandé de recréer le package.


11. ABORT PACKAGE WORKFLOW ERROR

Le statut :

ABORT PACKAGE WORKFLOW ERROR

indique une incohérence ou une erreur dans le workflow du package.

Ce problème peut notamment apparaître :

  • lorsqu'une étape du workflow n'existe pas ;
  • si le fichier xmppdeploy.json est incorrect ;
  • si le descriptor attendu pour le système d'exploitation est absent ;
  • si le graphe d'exécution ne peut pas être initialisé.

Les messages associés documentés comprennent notamment :

Package error: descriptor for OS %s missing

Descriptor inconsistency error

Error initializing grafcet

Dans ce cas, vérifiez le package et son workflow.

Si le package a été mal créé ou modifié, il est recommandé de le recréer.


12. ABORT DESCRIPTOR MISSING

Le statut :

ABORT DESCRIPTOR MISSING

indique que le descripteur du package est manquant.

Vérifiez le contenu du package et notamment les informations présentes dans :

xmppdeploy.json

Information :
Le document d'exploitation Medulla fourni identifie ce statut mais ne documente pas de procédure corrective plus détaillée. Si le descripteur n'est pas présent ou si le package est incohérent, la recréation du package constitue l'action recommandée dans les cas similaires documentés.


13. ABORT MACHINE DISAPPEARED

Le statut :

ABORT MACHINE DISAPPEARED

indique que la machine était initialement en ligne mais qu'elle est devenue indisponible pendant le déploiement.

Consulter les logs de l'agent

Sur une machine Windows, consultez :

C:\Program Files\Medulla\var\log\xmpp-agent-machine.log

Un message tel que :

INFO -(LAUNCHER)We start a reconfiguration of the medulla agent

indique que l'agent Medulla vient de démarrer ou de lancer une reconfiguration.

Vérifiez notamment :

  • si la machine a redémarré ;
  • si le service MedullaAgent a redémarré ;
  • si l'agent se reconfigure de manière répétée ;
  • si la connectivité réseau a été interrompue.

14. ABORT DEPLOYMENT CANCELLED BY USER

Le statut :

ABORT DEPLOYMENT CANCELLED BY USER

indique que le déploiement a été volontairement annulé par un utilisateur.

Il ne s'agit donc pas nécessairement d'une erreur technique.

Information :
Avant d'effectuer un diagnostic technique, vérifiez si l'annulation était volontaire.


15. ABORT PACKAGE EXECUTION ERROR

Le statut :

ABORT PACKAGE EXECUTION ERROR

indique que l'une des commandes exécutées par le package a échoué.

Le problème concerne donc principalement l'exécution du contenu du package sur la machine cible.

Une commande peut par exemple fonctionner sur une machine mais échouer sur une autre en fonction de :

  • la version du système ;
  • la configuration locale ;
  • les droits ;
  • la présence ou non d'un fichier ou logiciel ;
  • l'environnement d'exécution.

Consulter le retour de la commande

Il est recommandé d'afficher le retour complet de la commande dans l'audit du déploiement afin d'identifier l'erreur retournée par la machine.

Les messages documentés comprennent notamment :

Package execution error

Package delayed execution error

Deployment aborted: inventory error

Recommandation :
Lors de la création ou de l'édition d'un package, activez l'affichage du résultat complet lorsque vous avez besoin de diagnostiquer une commande. Le retour apparaîtra alors dans l'audit du déploiement.


16. ABORT DUPLICATE MACHINE

Le statut :

ABORT DUPLICATE MACHINE

indique que plusieurs machines se présentent avec le même identifiant.

Ce comportement peut notamment apparaître après le remastering ou la duplication d'une machine lorsque l'ancienne entrée existe toujours dans Medulla.

Rechercher les doublons dans Medulla

SELECT uuid_inventorymachine, hostname, COUNT(*) AS machine_count
FROM machines
GROUP BY uuid_inventorymachine
HAVING COUNT(*) > 1;

Pour rechercher uniquement un hostname :

SELECT uuid_inventorymachine, hostname, COUNT(*) AS machine_count
FROM machines
WHERE hostname = 'NOM_DE_LA_MACHINE'
GROUP BY uuid_inventorymachine
HAVING COUNT(*) > 1;

Rechercher les doublons dans GLPI

SELECT id, name AS hostname, COUNT(*) AS machine_count
FROM glpi_computers
GROUP BY name
HAVING machine_count > 1;

Dans le fonctionnement décrit dans le document d'exploitation, l'identifiant GLPI correspond au champ uuid_inventorymachine de la base xmppmaster.

Attention :
Ne supprimez pas une machine directement en base sans avoir préalablement identifié avec certitude l'entrée en doublon et vérifié sa correspondance avec GLPI.


17. ABORT TRANSFER FAILED

Le statut :

ABORT TRANSFER FAILED

indique que les fichiers du package n'ont pas pu être transférés vers la machine cible.

Le document d'exploitation mentionne notamment des problèmes possibles avec :

  • le transfert rsync ;
  • un téléchargement curl ;
  • la disponibilité du package ;
  • le serveur relais.

Un message associé peut être :

Transfer error: curl download

Consultez le message détaillé disponible dans l'audit pour identifier la cause précise.

Information :
Un échec de transfert intervient avant l'exécution des commandes du package. Il faut donc diagnostiquer en priorité le chemin de transfert du package et non son contenu.


18. ERROR TRANSFER FAILED

Le statut ou message :

ERROR TRANSFER FAILED

peut notamment être associé au message :

Transfer error: Package Server does not have this package

Ce message indique que le serveur de packages utilisé pour le déploiement ne dispose pas du package demandé.

Vérifiez :

  • que le package existe toujours ;
  • qu'il est disponible sur le serveur de packages attendu ;
  • que sa synchronisation vers le relais concerné s'est correctement effectuée.

19. ABORT PACKAGE EXECUTION CANCELLED

Le statut :

ABORT PACKAGE EXECUTION CANCELLED

indique que l'exécution du package a été annulée.

Le document d'exploitation indique que ce cas peut notamment apparaître lors d'un déploiement différé lorsque les conditions attendues ne sont pas remplies.

Un message associé peut être :

Package delayed execution cancelled

20. ABORT MISSING DEPENDENCY

Le statut :

ABORT MISSING DEPENDENCY

indique qu'une dépendance nécessaire au package est absente.

Le package peut notamment référencer un autre package qui a depuis été supprimé.

Le message associé peut être :

Deployment error: missing dependency

Action recommandée

Vérifiez les dépendances configurées dans le package et assurez-vous que tous les packages nécessaires existent toujours.


21. Tableau de diagnostic rapide

Erreur Cause principale Premier contrôle
ABORT ON TIMEOUT Machine indisponible ou plage expirée Vérifier que la machine est en ligne
ABORT MISSING AGENT Agent absent ou non enregistré Vérifier l'agent Medulla
ABORT RELAY DOWN Relais indisponible Tester le relais
ABORT ALTERNATIVE RELAYS DOWN Aucun relais alternatif disponible Contrôler les relais alternatifs
ABORT INFO RELAY MISSING Affectation relais absente ou invalide Vérifier l'affectation du relais
ERROR UNKNOWN ERROR Erreur non identifiée Consulter audit et logs
ABORT PACKAGE IDENTIFIER MISSING UUID absent Contrôler xmppdeploy.json
ABORT PACKAGE NAME MISSING Nom du package absent Contrôler le package
ABORT PACKAGE VERSION MISSING Version absente Contrôler le package
ABORT PACKAGE WORKFLOW ERROR Workflow incorrect Contrôler xmppdeploy.json et les étapes
ABORT DESCRIPTOR MISSING Descriptor absent Contrôler le package
ABORT MACHINE DISAPPEARED Machine devenue indisponible Consulter les logs de l'agent
ABORT DEPLOYMENT CANCELLED BY USER Annulation volontaire Vérifier l'historique du déploiement
ABORT PACKAGE EXECUTION ERROR Commande du package en erreur Lire le retour de commande dans l'audit
ABORT DUPLICATE MACHINE Machine dupliquée Contrôler Medulla et GLPI
ABORT TRANSFER FAILED Échec du transfert Lire le message détaillé dans l'audit
ERROR TRANSFER FAILED Package absent du serveur de packages Vérifier la disponibilité du package
ABORT PACKAGE EXECUTION CANCELLED Exécution annulée Contrôler les conditions du déploiement
ABORT MISSING DEPENDENCY Dépendance absente Vérifier les dépendances du package

22. Informations à collecter avant d'ouvrir un ticket support

Si le problème persiste, relevez au minimum :

  • le nom de la machine concernée ;
  • le statut exact du déploiement ;
  • le message complet disponible dans l'audit ;
  • le nom du package ;
  • le serveur relais utilisé ;
  • la date et l'heure du déploiement ;
  • les logs de l'agent lorsque le problème concerne la machine ;
  • les logs serveur correspondant au composant concerné.

Recommandation :
Le diagnostic d'un déploiement Medulla doit toujours commencer par le statut exact et le message disponible dans l'audit. La plupart des erreurs peuvent ensuite être classées dans quatre grandes familles : machine, relais, transfert ou package. Cette classification permet d'orienter rapidement les contrôles vers le bon composant.