Diagnostiquer et simuler les comportements Maximo
Des outils de calcul et d’aide au diagnostic fondés sur des règles documentées par IBM, avec des paramètres vérifiables et des résultats expliqués.
Simulation hors ligne. Vos saisies ne quittent pas le navigateur. Aucun accès à IBM Maximo, aucune modification de base, aucun appel API et aucune donnée conservée. Les résultats ne remplacent pas une recette sur votre environnement.
Calculateur d'architecture cible MAS
Transformez votre inventaire Maximo 7.6 en une estimation de capacité OpenShift, avec composants MAS, rôles des nœuds, stockage, architecture comparative et diagramme SVG téléchargeable.
Architecture cible estimée
Schéma comparatif de migration
Décomposition des capacités
| Composant | vCPU | RAM GiB | Fichiers GiB | Base GiB |
|---|
Les vCPU/RAM sont des valeurs d'estimation issues du sous-modèle choisi. Les volumes de fichiers et les volumes DB sont présentés séparément pour éviter de masquer les besoins de stockage externes.
Méthode et limites
Principes : estimation par équivalent JVM Manage, profils de services MAS, allocations de cluster OpenShift et base de données. Les hypothèses comprennent une estimation de 50 utilisateurs simultanés par JVM de référence et une réserve paramétrable. Les valeurs doivent être vérifiées pour la version MAS visée et l'environnement cible.
Hors périmètre de l'estimation : scénarios Maximo IT, Optimizer et Health très avancés, entraînement Predict, répartition exacte CP4D/ODF, JVM spécialisées complexes, topologies multi-sites, GPU, réplication DB, stockage réseau et applicatif propre à l'entreprise. Les modules additionnels utilisent des profils simplifiés et sont signalés comme indicatifs. Les postes DB2 et CP4D ne sont pas transférables automatiquement à Oracle ou SQL Server. Le dimensionnement final reste soumis à une revue IBM, infrastructure et DBA.
IBM — Capacity planning MAS · IBM MAS Performance — Sizing guidance · IBM — Architecture MAS · Articles migration Maximo4You
Collecter les paramètres d’architecture existante
Exécuter les commandes de consultation sur l’environnement autorisé. Les sessions Maximo ne donnent qu’un indicateur de charge, pas une mesure fiable des utilisateurs simultanés. Pour Db2, faire relever la taille réelle par le DBA. Les JVM doivent être confirmées par rôle dans la console WAS. Ne jamais recopier de données d’identification ou de secrets.
-- Sessions présentes au moment de la mesure ; ne vaut PAS mesure de pic
SELECT COUNT(*) AS sessions_presentes
FROM maxsession;# À lancer sur le Deployment Manager du Maximo 7.6 autorisé
# Inventaire de configuration ; isoler manuellement UI / MIF / CRON / Reporting
wsadmin.sh -lang jython -c "print AdminConfig.list('Server')"
# Vérifier les clusters, membres réellement démarrés et JVM dans la console WAS.-- Consultation d'indicateurs métiers (non équivalents à la taille DB)
SELECT COUNT(*) AS actifs FROM asset;
SELECT COUNT(*) AS emplacements FROM locations;
SELECT COUNT(*) AS ordres_travail FROM workorder;
-- Faire confirmer la taille réelle de base, la croissance et les IOPS par le DBA.-- Avec les droits DBA nécessaires, espace alloué aux segments (GiB)
SELECT ROUND(SUM(bytes)/POWER(1024,3),2) AS segments_gib
FROM dba_segments;
-- Inclure séparément redo, archive, sauvegardes, index et croissance projetée.-- Exécuter dans la base Maximo après validation DBA (MiB)
SELECT name, type_desc, CAST(size*8.0/1024 AS decimal(18,2)) AS taille_mib
FROM sys.database_files;
-- Distinguer taille allouée, taille utilisée, journaux et croissance.# Commandes de consultation (oc connecté à l'environnement autorisé)
oc get nodes -o wide
oc describe nodes
oc adm top nodes
oc adm top pods -A
oc get pods -A --field-selector=status.phase=Running
oc get pvc -A
oc get csv -A
# Valider l'usage, les limites/quotas et les classes de stockage avec l'équipe OCP.Simulateur de moyennes de compteurs
Comparez les méthodes ALL, SLIDING-DAYS, SLIDING-READINGS et STATIC sur des historiques DELTA préparés.
Hypothèses : historiques DELTA cohérents et sans RESET/rolldown. Pour ALL et SLIDING-READINGS, l’intervalle est celui des relevés retenus ; pour SLIDING-DAYS, N jours sont utilisés comme dénominateur. STATIC est une valeur définie et non calculée. Le simulateur ne reconstruit pas les ACTUAL, le RESET ni les modifications rétroactives. Les dates sont saisies au jour : les effets d’horodatage à la seconde restent hors périmètre.
IBM — Méthodes de calcul des moyennes · Articles Maximo4You : AVERAGE
Extraire l’historique de compteurs
Les dates/DELTA doivent être normalisés au format AAAA-MM-JJ;valeur pour le simulateur. Vérifier les RESET, l’ordre chronologique et l’existence de plusieurs lectures le même jour : la granularité journalière peut masquer des écarts.
-- Adapter :assetnum, :siteid, :metername (paramètres liés)
SELECT a.assetnum, a.siteid, a.metername,
a.avgcalcmethod, a.slidingwindowsize, a.average
FROM assetmeter a
WHERE a.assetnum = :assetnum AND a.siteid = :siteid
AND a.metername = :metername;
SELECT m.readingdate, m.delta, m.reading, m.readingtype
FROM meterreading m
WHERE m.assetnum = :assetnum AND m.siteid = :siteid
AND m.metername = :metername
ORDER BY m.readingdate ASC;SELECT l.location, l.siteid, l.metername,
l.avgcalcmethod, l.slidingwindowsize, l.average
FROM locationmeter l
WHERE l.location = :location AND l.siteid = :siteid
AND l.metername = :metername;
SELECT r.readingdate, r.delta, r.reading, r.readingtype
FROM locmeterreading r
WHERE r.location = :location AND r.siteid = :siteid
AND r.metername = :metername
ORDER BY r.readingdate ASC;Simulateur de prochaine échéance PM
Simulez une PM à déclenchement par date, par compteur, ou par le premier critère atteint. La projection compteurs peut être désactivée.
Projection indicative : fréquence calendaire en jours et projection linéaire depuis le dernier relevé. Ignore saisons, dates d’extension, jours actifs, lead time, hiérarchies PM, critères de génération et option « ne pas estimer ». La valeur cible est saisie manuellement : cet outil ne recalcule pas PMMETER.READINGATNEXTWO. Le mode « Ne pas estimer » signale l’atteinte du seuil sans produire de date future fictive.
IBM — Logique de prévision PM · IBM — Prochaine échéance · Articles PM Maximo4You
Relever les données de planification PM
La lecture de PM.NEXTDATE, PM.FREQUENCY et PMMETER.READINGATNEXTWO doit être confrontée aux options « calendrier », « fréquence compteur », « ne pas estimer », aux saisons, au lead time et à la hiérarchie. La simulation n’est pas une exécution PMWoGen.
-- Renseigner les variables côté client SQL ; SELECT uniquement
SELECT p.pmnum, p.siteid, p.frequency, p.frequnit,
p.nextdate
FROM pm p
WHERE p.pmnum = :pmnum AND p.siteid = :siteid;SELECT pmnum, siteid, metername, frequency, readingatnextwo
FROM pmmeter
WHERE pmnum = :pmnum AND siteid = :siteid
ORDER BY metername;
-- Compléter avec ASSETMETER ou LOCATIONMETER
-- pour obtenir AVERAGE, LASTREADING et LASTREADINGDATE.Diagnostic guidé de message MIF/JMS
Identifiez les contrôles pertinents selon le type de traitement, la file et le symptôme. Les recommandations suivent le fonctionnement documenté des files séquentielles et continues.
Arbre de décision documentaire : il ne lit ni vos queues, ni les logs, ni la configuration WebSphere/Liberty. Une suggestion n’est pas la preuve d’une cause racine. Évitez d’envoyer des messages contenant des données sensibles.
IBM — Gestion des erreurs de files · IBM — Recherche d’erreurs · Articles MIF
Relever les éléments de diagnostic MIF/JMS
Les tables d’interface ne constituent pas la file JMS. Commencer par les applications « Message Reprocessing » et « Message Tracking », puis vérifier la file JMS dans WebSphere/Liberty et les logs. Éviter les extractions massives des payloads.
-- Uniquement si l'intégration utilise les interface tables
SELECT transid, ifacename
FROM mxin_inter_trans
WHERE transid = :transid;
SELECT transid, ifacename
FROM mxout_inter_trans
WHERE transid = :transid;1. Relever heure, sens (entrant/sortant), service/canal et ID message
2. Message Reprocessing : statut + erreur anonymisée
3. Console JMS : destination, profondeur de file, consommateurs
4. Journaux d’intégration Maximo/Manage : période et ID corrélation
5. Tester le retraitement en recette après validationAssistant de triage REST/HTTP
Obtenez une checklist contextualisée pour une réponse REST en erreur, sans transmettre de jeton ou lancer d'appel réseau.
Interprétation générale des codes HTTP, pas une détection automatique de l’erreur Maximo. Ne collez ni URL contenant un jeton, ni clé API, ni mot de passe. Consultez les logs OSLC et Integration pour affiner le diagnostic.
IBM — Dépannage REST Maximo Manage · IBM — Erreurs d’endpoint · Articles REST
Collecter une réponse REST/HTTP
N’exécutez la requête que sur un endpoint que vous administrez, en lecture seule. Ne collez pas d’API key, jeton ou cookie dans les formulaires du portail. Le statut HTTP et l’heure suffisent au premier triage.
# Ne transmet pas de jeton ni de clé API
curl --head --max-time 10 --silent --show-error \
'https://maximo.exemple.fr/maximo/'
# Relever : statut HTTP, date, éventuel request-id, serveur/proxy1. Noter la méthode HTTP (GET/POST/PUT) et le chemin sans query sensible
2. Relever status et corps d'erreur anonymisé
3. Comparer les autorisations OSLC Object Structure et utilisateur
4. Chercher le même horodatage dans les logs OSLC / IntegrationVérificateur de certificat et de confiance
Contrôlez des métadonnées de certificat relevées sur un serveur : nom DNS, validité et symptôme TLS. Aucun certificat ou clé privée n'est téléversé.
Vérification locale déclarative : ne lit ni le truststore WebSphere, ni le keystore IHS, ni la chaîne réellement présentée. Vérifiez le point de terminaison et les magasins de confiance sur chaque JVM ou proxy.
IBM — Échec PKIX et certificat signer · Articles SSL / WebSphere
Examiner la chaîne du certificat présenté
Commandes de lecture du certificat public uniquement. Ne jamais exporter le keystore, les clés privées, les mots de passe de stash ni les fichiers .kdb. Les commandes doivent être exécutées depuis le client qui constate l’erreur lorsque possible.
# Commande de consultation du certificat public
openssl s_client -connect maximo.exemple.fr:443 \
-servername maximo.exemple.fr -showcerts </dev/null
# Vérification ciblée du certificat PEM PUBLIC sauvegardé
openssl x509 -in certificat-public.pem -noout \
-subject -issuer -dates -ext subjectAltName1. Comparer nom demandé, CNAME/VIP, certificat servi, SAN
2. Vérifier la chaîne de certification dans le truststore utilisé
3. Contrôler IHS, WebSphere/Liberty, proxy TLS et SNI
4. Comparer l'ancien INT et le nouvel INT-NEWComparateur de propriétés système
Comparez deux inventaires nom=valeur en local pour identifier les propriétés ajoutées, manquantes ou différentes entre environnements.
Confidentialité : ne collez pas de mots de passe, jetons ou chaînes de connexion contenant des secrets. L'outil n'enregistre rien et n'affiche que les noms de propriétés et leur statut. Des différences peuvent être légitimes entre environnements.
IBM — Configuration des propriétés système · Articles sur les propriétés
Extraire les propriétés Maximo de deux environnements
Les propriétés peuvent contenir des secrets. Cette requête masque les noms suspects, mais elle ne garantit pas une anonymisation complète. Faire valider l’export par un administrateur avant de l’insérer dans l’outil.
SELECT propname,
CASE
WHEN LOWER(propname) LIKE '%pass%'
OR LOWER(propname) LIKE '%secret%'
OR LOWER(propname) LIKE '%token%'
OR LOWER(propname) LIKE '%key%'
THEN '[MASQUER]'
ELSE propvalue
END AS propvalue
FROM maxpropvalue
WHERE propname LIKE 'mxe.%'
ORDER BY propname;# Après suppression des secrets et vérification des valeurs :
mxe.int.globaldir=/chemin-environnement
mxe.db.fetchStopLimit=500
# Importer le texte du même format sur les deux environnements.Revue statique de requête SQL
Repère les opérations d'écriture, les requêtes potentiellement coûteuses et les points de vigilance pour les extractions de diagnostic.
Analyse heuristique du texte, pas parseur SQL complet ni preuve de lecture seule. Les procédures, fonctions, vues et instructions dynamiques peuvent avoir des effets de bord. Exécutez uniquement sur un environnement autorisé après revue DBA.
IBM — Journalisation SQL et performances · Articles SQL
Collecter la structure pour analyser une requête
La revue SQL est un contrôle statique. Ne jamais exécuter des écritures sur un environnement de production pour « tester » un diagnostic. Les plans d’exécution diffèrent entre Oracle, Db2 et SQL Server.
-- Métadonnées Maximo, lecture seule
SELECT objectname, attributename, maxtype
FROM maxattribute
WHERE objectname = :objectname
ORDER BY attributename;1. Copier la requête anonymisée dans l’outil
2. Identifier le moteur DB et la version Maximo/MAS
3. Relever la durée réelle et le nombre de lignes observées
4. Faire relever le plan d’exécution par un DBA autorisé