Import, Export & Automatisation dans la OTOBO-CMDB
La OTOBO-CMDB offre de puissantes interfaces et fonctions d'automatisation pour maintenir vos données d'actifs à jour et simplifier les tâches répétitives.
1. Intégration des données via les API REST et SOAP
API REST
- Opérations CRUD sur les classes de CI et les DynamicFields
- Payloads JSON : Intégration simple et légère
- Authentification : Basée sur des jetons ou Basic Auth
API SOAP
- Systèmes hérités et fonctionnalités approfondies
- Payloads XML avec descriptions WSDL
- Sessions State-ful et méthodes étendues pour les liens de CI
Bonnes pratiques
- Traitement par lots : Importer les données par lots pour éviter les timeouts.
- Gestion des erreurs : Vérifier les codes de retour et les entrées de journal ("SysLog").
- Limitation du débit : Faire attention aux limites de l'API pour éviter les blocages.
2. Import/Export basé sur des fichiers (CSV, XML)
Import/Export CSV
- Correspondance des champs : Noms de colonnes → Noms de DynamicField
- Séparateur, jeu de caractères et en-tête configurables
- Mise à jour en masse des CI existants par attribut clé (par ex. Nom ou ID)
Import/Export XML
- Structures complexes et champs imbriqués
- Mapping possible via des feuilles de style XSLT
- Utilisation avec des clients SOAP et des outils tiers
Workflow
- Générer un modèle : Exporter d'abord un exemple CSV/XML.
- Enrichir les données : Adapter les valeurs et valider localement.
- Démarrer l'import : Via l'interface Agent ou un script CLI.
- Vérifier le résultat : Examiner les journaux pour les lignes d'erreur et les avertissements.
3. Auto-Discovery & Synchronisation
- Scan réseau : Détection des réseaux IP, des appareils et des services
- Découverte basée sur agent : Les agents locaux signalent les détails du système à la CMDB
- Intégration d'outils externes : Ansible, Puppet, SCCM, Nagios, et bien plus encore.
Fonctionnalités
- Scans planifiés : Planifier des cycles d'inventaire réguliers.
- Écrasement vs. Enrichissement : Configurer des règles pour le comportement de mise à jour.
- Résolution des conflits : Revue manuelle ou priorisation automatique des anciennes données par rapport aux nouvelles.
4. Déclencheurs dans les définitions de CI
- Déclencheurs
- Déclenchent des actions lors des modifications de champs (par ex. Notification, Auto-Assign)
- Configuration directement en YAML sous
VersionTriggerou via script
yaml
VersionTrigger:
- DefinitionUpdate
- ValueUpdateCas d'utilisation
- Mettre à jour automatiquement le journal d'inventaire après modification d'un numéro de série
- Envoyer un rappel par e-mail à l'expiration d'un certificat
5. VersionTriggers
VersionTrigger : Contrôle les événements qui créent une nouvelle version de CI
Valeurs courantes
NameUpdateConfigItemCreateValueUpdateDefinitionUpdate
yaml
VersionStringModule: Incremental
VersionTrigger:
- ConfigItemCreate
- ValueUpdateAvantage
Historique des versions de toutes les modifications pour la traçabilité et la conformité d'audit.
6. Champs de script (ScriptTemplateToolkit)
- Champs calculés : Somme, moyenne, blocs de texte dynamiques
- Syntaxe : TemplateToolkit (
[% … %])
yaml
DynamicFields:
TotalRAMGB:
FieldType: ScriptTemplateToolkit
Label: Total RAM (GB)
Config:
Expression: |
[% Count = DynamicField_RAMCount %]
[% Size = DynamicField_RAMSize %]
[% Total = Count * Size %]
[% Total %] GB
RequiredArgs:
- DynamicField_RAMCount
- DynamicField_RAMSize
Readonly: '1'Scénarios d'utilisation
- Valeurs cumulées (par ex. mémoire totale)
- Calculs d'état (par ex. "critique" à certains seuils)
- Génération de texte (par ex. descriptions d'actifs avec des espaces réservés)
7. Fusion de l'automatisation et des interfaces
- Imports automatisés : Combinez un job REST avec un import CSV dans des jobs Cron.
- Découverte + Déclencheurs : Détectez de nouveaux appareils et démarrez automatiquement la création de CI.
- Reporting : Utilisez les champs de script et l'historique des versions pour des rapports automatisés via API.
Avec ces mécanismes, les processus peuvent être intégrés de manière transparente dans la OTOBO-CMDB, la qualité des données peut être assurée et les tâches manuelles de routine peuvent être minimisées.