Skip to content

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

  1. Traitement par lots : Importer les données par lots pour éviter les timeouts.
  2. Gestion des erreurs : Vérifier les codes de retour et les entrées de journal ("SysLog").
  3. 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

  1. Générer un modèle : Exporter d'abord un exemple CSV/XML.
  2. Enrichir les données : Adapter les valeurs et valider localement.
  3. Démarrer l'import : Via l'interface Agent ou un script CLI.
  4. 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 VersionTrigger ou via script
yaml
VersionTrigger:
  - DefinitionUpdate
  - ValueUpdate
  • Cas 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

    • NameUpdate
    • ConfigItemCreate
    • ValueUpdate
    • DefinitionUpdate
yaml
VersionStringModule: Incremental
VersionTrigger:
  - ConfigItemCreate
  - ValueUpdate

Avantage

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

  1. Imports automatisés : Combinez un job REST avec un import CSV dans des jobs Cron.
  2. Découverte + Déclencheurs : Détectez de nouveaux appareils et démarrez automatiquement la création de CI.
  3. 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.