Import, Export & Automatisierung in der OTOBO-CMDB
Die OTOBO-CMDB bietet mächtige Schnittstellen und Automatisierungs-Funktionen, um Ihre Asset-Daten stets aktuell zu halten und wiederkehrende Aufgaben zu vereinfachen.
1. Datenintegration per REST- und SOAP-APIs
REST-API
- CRUD-Operationen auf CI-Klassen und DynamicFields
- JSON-Payloads: Einfache und leichtgewichtige Integration
- Authentifizierung: Token-basiert oder Basic Auth
SOAP-API
- Legacy-Systeme und tiefe Funktionalität
- XML-Payloads mit WSDL-Beschreibungen
- State-ful Sessions und umfangreiche Methoden für CI-Verknüpfungen
Best Practices
- Batch-Verarbeitung: Daten in Chargen importieren, um Timeouts zu vermeiden.
- Fehler-Handling: Überprüfen Sie Rückgabecodes und Log-Einträge („SysLog“).
- Rate-Limiting: Achten Sie auf API-Limits, um Sperrungen zu verhindern.
2. Dateibasierter Import/Export (CSV, XML)
CSV-Import/Export
- Feldzuordnung: Spaltennamen → DynamicField-Namen
- Trennzeichen, Zeichensatz und Kopfzeile konfigurierbar
- Massenupdate für bestehende CIs per Schlüsselattribut (z. B. Name oder ID)
XML-Import/Export
- Komplexe Strukturen und verschachtelte Felder
- Mapping über XSLT-Stylesheets möglich
- Nutzung bei SOAP-Clients und Dritt-Tools
Workflow
- Vorlage generieren: Exportieren Sie zunächst ein Beispiel-CSV/XML.
- Daten anreichern: Passen Sie Werte an und validieren Sie lokal.
- Import starten: Über Agent-Interface oder CLI-Skript.
- Ergebnis prüfen: Protokolle auf Fehlerzeilen und Warnungen prüfen.
3. Auto-Discovery & Synchronisation
- Netzwerk-Scanning: Erkennen von IP-Netzwerken, Geräten und Diensten
- Agent-Based Discovery: Lokale Agenten melden System-Details an die CMDB
- Integration externer Tools: Ansible, Puppet, SCCM, Nagios, u. v. m.
Features
- Zeitgesteuerte Scans: Planen Sie regelmäßige Inventarisierungsläufe.
- Überschreibung vs. Anreicherung: Konfigurieren Sie Regeln zum Update-Verhalten.
- Konfliktauflösung: Manuelles Review oder automatische Priorisierung alter vs. neuer Daten.
4. Trigger in CI-Definitionen
- Trigger
- Lösen Aktionen bei Feldänderungen aus (z. B. Notification, Auto-Assign)
- Konfiguration direkt in YAML unter
VersionTrigger
oder per Skript
yaml
VersionTrigger:
- DefinitionUpdate
- ValueUpdate
Anwendungsfälle
- Nach Änderung einer Seriennummer automatisch Inventar-Log aktualisieren
- Bei Ablaufdatum eines Zertifikats E-Mail-Erinnerung versenden
5. VersionTriggers
VersionTrigger: Steuert, bei welchen Events eine neue CI-Version angelegt wird
Gängige Werte
NameUpdate
ConfigItemCreate
ValueUpdate
DefinitionUpdate
yaml
VersionStringModule: Incremental
VersionTrigger:
- ConfigItemCreate
- ValueUpdate
Vorteil
Versions-History aller Änderungen zur Nachvollziehbarkeit und Audit-Compliance.
6. Skript-Felder (ScriptTemplateToolkit)
- Berechnete Felder: Summe, Durchschnitt, dynamische Textbausteine
- Syntax: 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'
Einsatzszenarien
- Kumulierte Werte (z. B. Gesamtspeicher)
- Statusberechnungen (z. B. „kritisch“ bei bestimmten Schwellen)
- Textgenerierung (z. B. Asset-Beschreibungen mit Platzhaltern)
7. Automatisierung und Schnittstellen zusammenführen
- Automated Imports: Kombinieren Sie REST-Job mit CSV-Import in Cron-Jobs.
- Discovery + Trigger: Erkennen Sie neue Geräte und starten Sie CI-Erstellung automatisch.
- Reporting: Nutzen Sie Skript-Felder und Version-History für automatisierte Berichte via API.
Mit diesen Mechanismen lassen sich in der OTOBO-CMDB Prozesse nahtlos integrieren, Datenqualität sichern und manuelle Routineaufgaben minimieren.