Zuletzt aktualisiert: 24.09.2026 · Lesezeit: 3-4 Minuten
ServiceNow CMDB-Daten manuell in den Icinga Director zu übertragen kostet Zeit und produziert schnell veraltete Bestände. Das Icinga-Web-2-Modul icingaweb2-module-servicenow-import von NETWAYS schließt diese Lücke: Es holt Server und Netzwerkgeräte direkt per API aus ServiceNow und legt sie automatisiert als Hosts im Director an.
Die wichtigsten Punkte
icingaweb2-module-servicenow-importist ein Icinga-Web-2-Modul, das ServiceNow-CMDB-Daten per API als neue Import-Quelle für den Icinga Director bereitstellt.- Installation erfolgt wie gewohnt per Git-Clone ins Modulverzeichnis und Aktivierung per CLI oder Weboberfläche.
- Jeder gültige ServiceNow-Table-API-Endpunkt lässt sich einbinden; Spalten und Datensätze lassen sich optional über Columns und Query einschränken.
- Drei Authentifizierungsmethoden stehen zur Wahl: HTTP Basic Auth, API-Token oder OAuth2 Client Credentials.
Vorstellung des Moduls
icingaweb2-module-servicenow-import ist ein Icinga-Web-2-Modul von NETWAYS, das eine neue Import-Quelle für den Icinga Director bereitstellt. Damit lassen sich CMDB-Objekte, also Server und Netzwerkgeräte, direkt aus einer ServiceNow-Instanz über deren API abrufen und automatisiert als Hosts im Director anlegen.
Installation
Wie ein gewöhnliches Icinga-Web-2-Modul wird es direkt in das Modulverzeichnis geklont:
cd /usr/share/icingaweb2/modules
git clone https://github.com/NETWAYS/icingaweb2-module-servicenow-import.git servicenowimportDanach aktivieren, entweder per CLI:
icingacli module enable servicenowimportoder über die Weboberfläche unter Configuration → Modules.
Konfiguration und Beispiel
Im Icinga Director legst du eine neue Import Source an und wählst als Typ „ServiceNow Table API“. Die ServiceNow API URL ist die Basis-URL deiner eigenen Instanz, zum Beispiel https://instance0815.service-now.com. Darunter trägst du beim ServiceNow CMDB Table Endpoint den vollständigen API-Pfad zur gewünschten Tabelle ein, etwa api/now/table/cmdb_ci_server. Der ServiceNow API Timeout steuert, wie lange auf eine Antwort gewartet wird, standardmäßig 20 Sekunden.
Optional lässt sich die Menge der geladenen Daten einschränken: Über ServiceNow Columns gibst du eine kommagetrennte Liste der gewünschten Spalten an, zum Beispiel name,ip_address. Lässt du das Feld leer, werden alle Spalten geladen. Über ServiceNow Query kannst du zusätzlich nach ServiceNow-eigener Filtersyntax einschränken, etwa nameSTARTSWITHlnux. Ohne Angabe wird die komplette Tabelle importiert.
Das Modul legt sich bewusst nicht auf eine feste Tabelle fest, jeder gültige ServiceNow-Table-API-Endpunkt kann eingetragen werden. Eine Übersicht möglicher CMDB-Tabellen liefert die offizielle ServiceNow-Dokumentation.
Unsicher bei der ServiceNow-Anbindung?
Unsere Consultants unterstützen bei Einrichtung und Betrieb von Icinga Director inklusive individueller Integrationen.
Jetzt kostenlos anfragen →
Authentifizierung
Es stehen drei Methoden zur Auswahl:
- HTTP Basic Auth: Benutzername und Passwort eines Accounts mit Lesezugriff auf die Zieltabelle.
- API-Token: Ein Bearer-Token, das im Header
x-sn-apikeymitgeschickt wird. - OAuth2 Client Credentials: Client-ID, Client-Secret und Scopes, die passend zu den verwendeten Endpunkten berechtigt sein müssen. Voraussetzung dafür ist auf ServiceNow-Seite die Systemproperty
glide.oauth.inbound.client.credential.grant_type.enabled. Der Access-Token wird laut Dokumentation aktuell nicht zwischengespeichert, sondern bei jeder Abfrage neu angefordert.
Fazit zum ServiceNow-CMDB-Import
Wer bereits die Notification-Integration aus dem Hauptartikel nutzt, kann mit diesem Modul den Kreis schließen: CMDB-Daten fließen automatisiert aus ServiceNow in den Icinga Director, während Notifications den umgekehrten Weg zurück nach ServiceNow nehmen. Beide Integrationen sind unabhängig voneinander nutzbar, für ein vollständiges Bild lohnt sich aber ein Blick auf beide.
