Chat now with support
Chat mit Support

Identity Manager 9.1 - Konfigurationshandbuch

Über dieses Handbuch Softwarearchitektur des One Identity Manager Kundenspezifische Änderungen an der One Identity Manager Standardkonfiguration Anpassen der One Identity Manager Basiskonfiguration Grundlagen zum One Identity Manager Schema
Übersicht über das One Identity Manager Schema Tabellenarten und Standardspalten im One Identity Manager Datenmodell Hinweise zur Bearbeitung von Tabellendefinitionen und Spaltendefinitionen Tabellendefinitionen Spaltendefinitionen Tabellenbeziehungen Dynamische Fremdschlüssel Unterstützung von Dateigruppen
Bearbeiten der Benutzeroberfläche
Objektdefinitionen für die Benutzeroberfläche Menüführung der Benutzeroberfläche Formulare für die Benutzeroberfläche Statistiken im One Identity Manager Erweitern des Launchpad Methodendefinitionen für die Benutzeroberfläche Anwendungen für die Gestaltung der Benutzeroberfläche Symbole und Bilder für die Gestaltung der Benutzeroberfläche Verwenden vordefinierter Datenbankabfragen
Lokalisierung im One Identity Manager Prozess-Orchestrierung im One Identity Manager
Abbildung von Prozessen im One Identity Manager
Bearbeiten von Prozessen mit dem Prozesseditor Definieren von Prozessen Prozessgenerierung simulieren Gültigkeitsprüfung eines Prozesses Kompilieren von Prozessen Verwenden von prozesslokalen Variablen und globalen Variablen für die Prozessdefinition Schwellwerte für die Verarbeitung von Prozessen Festlegen des ausführenden Servers Benachrichtigung zur Verarbeitung von Prozessschritten Automatisierte Ausführung von Prozessen Übersicht über die Prozesskomponenten
Einrichten von Jobservern
Arbeitsweise des One Identity Manager Service Prozessüberwachung zur Nachverfolgung von Änderungen Bedingte Kompilierung mittels Präprozessorbedingungen Skripte im One Identity Manager
Verwendung von Visual Basic .NET-Skripten Hinweise zur Ausgabe von Meldungen Hinweise zur Verwendung von Datumswerten Hinweise zur Verwendung von Windows PowerShell Skripten Verwendung der $-Notation Verwendung von base Objekt Aufruf von Funktionen Prä-Skripte zur Verwendung in Prozessen und Prozessschritten Verwendung von Session Services Verwendung der #LD-Notation Skriptbibliothek Unterstützung bei der Bearbeitung von Skripten im Skripteditor Skripte mit dem Skripteditor erstellen und bearbeiten Skripte im Skripteditor kopieren Skripte im Skripteditor testen Kompilieren eines Skriptes im Skripteditor testen Überschreiben von Skripten Berechtigungen zu Ausführen von Skripten Bearbeiten und Testen von Skriptcode mit dem System Debugger Erweitertes Debugging im Object Browser
One Identity Manager Abfragesprache Berichte im One Identity Manager Erweiterung des One Identity Manager Schemas um kundenspezifische Tabellen oder Spalten Webservice Integration One Identity Manager als SCIM 2.0 Serviceprovider Verarbeitung von DBQueue Aufträgen Konfigurationsdateien des One Identity Manager Service

Verarbeitung der DBQueue Prozessor Aufträge durch den Database Agent Service

Für die Verarbeitung der internen Aufträge durch den Database Agent Service, stellen Sie sicher, dass der Database Agent Service installiert und konfiguriert ist. Der Database Agent Service wird über ein Plugin des One Identity Manager Service bereitgestellt. Alternativ kann der Database Agent Service über das Kommandozeilenprogramm DatabaseAgentServiceCmd.exe ausgeführt werden. Das Plugin sollte auf dem Jobserver konfiguriert sein, der die Serverfunktion Aktualisierungsserver übernimmt. Für die Datenbankverbindung im Jobprovider muss ein administrativer Benutzer verwendet werden.

Der Database Agent Service übernimmt folgende Aufgaben:

  • Steuerung der Verarbeitung und Verteilung der Aufträge der DBQueue an die einzelnen Slots (zentraler Dispatcher)

  • Prüfen und Starten von zeitgesteuerten Aufträgen

  • Entfernen von bereits verarbeiteten DBQueue Aufträgen

  • Starten von Wartungsarbeiten

  • Befüllen und Aktualisieren der Jobqueue Übersicht

  • Archivieren oder Löschen von verarbeiteten Prozessen aus der Jobqueue

  • Archivieren oder Löschen von Aufzeichnungen aus der Prozessverarbeitung

HINWEIS: Wenn der Database Agent Service nicht arbeitet, wird in allen Administrationswerkzeugen eine Meldung in der Statuszeile angezeigt. Um diese Meldung zu sehen, benötigen die Benutzer mindestens die Berechtigungsebene für Konfigurationsbenutzer.

Verwandte Themen

Steuerung der Verarbeitung von DBQueue Prozessor Aufträgen

Der zentrale Dispatcher übernimmt die Steuerung der Verarbeitung und verteilt die Aufträge der DBQueue an die einzelnen Slots.

Es wird zunächst die Anzahl der aktuell verfügbaren Slots ermittelt, die verwendet werden können. Je mehr Last auf dem Datenbankserver vorhanden ist, desto weniger Slots können aktuell verwendet werden, mindestens werden jedoch 5 Slots verwendet.

Die Anzahl der aktuell verfügbaren Slots ergibt sich aus :

Anzahl aktuell verfügbarer Slots = Anzahl der maximal verfügbaren Slots - Betrag für alle Prozesse der eigenen Datenbank - Betrag für Prozesse auf anderen Datenbanken des Servers

HINWEIS: Die Anzahl der verfügbaren Slots ist weiterhin über den Konfigurationsparameter QBM | DBQueue | CountSlotsMax beeinflussbar. Sollte die Anzahl der Anzahl der verfügbaren Slots laut Berechnung größer sein, als der Wert im Konfigurationsparameter, wird der Wert des Konfigurationsparameters verwendet. Weitere Informationen finden Sie unter Konfiguration des DBQueue Prozessor für Test-, Entwicklungs- oder Produktivumgebungen.

Der zentrale Dispatcher startet die aktuell verfügbaren Slots einmalig. Für jeden Slot ist ein Prozess eingerichtet, der die Aufträge für genau diesen Slot ausführt.

Sobald Aufträge in die DBQueue eingetragen werden, wird der zentrale Dispatcher benachrichtigt. Der zentrale Dispatcher verteilt die Aufträge in die einzelnen Slots und benachrichtigt die Prozesse der Slots, dass Aufträge zur Verarbeitung anstehen. Jeder Prozess verarbeitet die Aufträge, die für seinen Slot eingestellt werden. Nach Beendigung seines Auftrags sendet jeder Prozess eine Benachrichtigung an den zentralen Dispatcher und wartet auf neue Aufträge.

Der zentrale Dispatcher prüft in definierten Abständen, ob die Slots noch aktiv sind und verteilt neue Aufträge an die Slots. Sind keine Aufträge in der DBQueue vorhanden, geht der zentrale Dispatcher in den Wartezustand und wartet auf die Benachrichtigung über neue Aufträge.

Nach Ablauf der Laufzeit werden die Aufträge aktuell verwendeter Slots noch abgearbeitet. Anschließend werden die Slots gestoppt. Weitere Informationen finden Sie unter Kommunikation des zentralen Dispatchers mit den einzelnen Slots.

Verarbeiten der DBQueue Prozessor Aufträge

Der zentrale Dispatcher ermittelt die Einträge der DBQueue (Tabelle DialogDBQueue) und verschiebt die Aufträge in die Tabelle QBMDBQueueCurrent mit der Zuordnung Auftrag pro Slot.

Beispiel für Einträge in den Tabellen DialogDBQueue und QBMDBQueueCurrent
Tabelle 187: Einträge in Tabelle DialogDBQueue (Auszug)
Name des Auftrags Objekt

OrgRoot

A

OrgRoot

B

ADSAccountInADSGroup

X

ADSAccountInADSGroup

Y

ADSAccountInADSGroup

Z

Tabelle 188: Einträge in Tabelle QBMDBQueueCurrent (Auszug)
Slotnummer Name des Auftrags Objekt

001

OrgRoot

A

001

OrgRoot

B

002

ADSAccountInADSGroup

X

002

ADSAccountInADSGroup

Y

002

ADSAccountInADSGroup

Z

Jeder Prozess verarbeitet die Aufträge, die für seinen Slot in die Tabelle QBMDBQueueCurrent eingestellt werden. Folgeaufträge, die aus der Verarbeitung resultieren, werden in die Tabelle DialogDBQueue eingestellt.

Wenn ein Prozess seine Aufträge abgearbeitet hat und keine weiteren Aufträge anstehen, wird die Slotnummer in der Tabelle QBMDBQueueCurrent durch den Prozess selbst auf 0 gesetzt. Der Eintrag verbleibt zunächst in der Tabelle QBMDBQueueCurrent, wird jedoch nicht mehr beachtet (da Slot 0 kein aktiver Slot ist).

In regelmäßigen Abständen werden alle Einträge mit Slotnummer 0 aus der Tabelle QBMDBQueueCurrent gelöscht.

Tabelle 189: Bedeutung der Slotnummern in Tabelle QBMDBQueueCurrent
Slotnummer Bedeutung

001 - n

Nummer des Slots, in dem ein Auftrag zu verarbeiten ist.

0

Zustand nach ordnungsgemäßer Erledigung des Auftrags.

-1

Bei der Verarbeitung des Auftrags ist ein Fehler aufgetreten oder Verarbeitung wird zurückgestellt, zum Beispiel wegen laufender Synchronisation. Der zentrale Dispatcher reaktiviert diesen Auftrag.

HINWEIS: Das Zurückstellen von DBQueue Aufträgen wird im Systemprotokoll aufgezeichnet.

-2

Bei der Verarbeitung des Auftrags ist ein Fehler aufgetreten oder Verarbeitung wird zurückgestellt, zum Beispiel wegen Blockierungen. Der zentrale Dispatcher reaktiviert diesen Auftrag.

-3

Bei der Verarbeitung des Auftrags ist ein Fehler aufgetreten oder Verarbeitung wird zurückgestellt, zum Beispiel wegen noch vorhandener Einträge in der Jobqueue. Der zentrale Dispatcher reaktiviert diesen Auftrag.

Nutzung des DBQueue Puffers

Um Blockaden bei der Verarbeitung der Aufträge in der DBQueue durch langlaufende Aktionen, wie beispielsweise Synchronisationen, zu verhindern, wird ein DBQueue Puffer (Tabelle QBMDBQueuePond) genutzt. Synchronisationen schreiben ihre DBQueue Prozessor Aufträge zunächst in die Tabelle QBMDBQueuePond. Nach Abschluss der Synchronisation werden die Einträge aus der Tabelle QBMDBQueuePond in die Tabelle DialogDBQueue verschoben.

Sollte eine langlaufende Aktion über einen definierten Zeitraum keine weiteren Einträge im DBQueue Puffer erzeugen, weil beispielsweise eine Synchronisation nicht korrekt beendet wurde, werden verbliebene Einträge der Tabelle QBMDBQueuePond in die Tabelle DialogDBQueue verschoben. Der Zeitraum ist im Konfigurationsparameter QBM | DBQueue | BufferTimeout festgelegt (Standard: 120 Minuten). Die Übernahme der Einträge erfolgt innerhalb der täglichen Wartungsaufträge.

Kommunikation des zentralen Dispatchers mit den einzelnen Slots

Die Kommunikation des zentralen Dispatchers mit den einzelnen Slots erfolgt über die Tabelle QBMDBQueueSlot. Die Anzahl der maximal verfügbaren Slots wird während der Initialisierung des DBQueue Prozessor ermittelt. Pro Slot wird ein Eintrag in der Tabelle QBMDBQueueSlot erzeugt. Die Tabelle enthält Informationen über die einzelnen Slots und deren Status sowie die momentan laufenden Aufträge.

Tabelle 190: Bedeutung des Status in Tabelle QBMDBQueueSlot
Status Bedeutung

0

Keine Aktivität vorhanden. Initialzustand (gesetzt durch Initialisierung) oder Endzustand (gesetzt durch Prozess).

1

Der Prozess wird zur Arbeit aufgefordert, beispielsweise zur Vorbereitung zentraler temporärer Tabellen.

2

Betriebsbereit. Der Prozess hat die Arbeit aufgenommen, aber es sind momentan keine Aufträge vorhanden. Das ist der Zustand in dem Aufträge eingestellt werden können.

3

Übergabe an die Tabelle QBMDBQueueCurrent. Der Prozess hat die Aufträge zur Verarbeitung bekommen und soll tätig werden.

4

Der Prozess hat die Aufträge erkannt und übernommen.

5

Der Prozess verarbeitet die Aufträge.

-1

Der Prozess wurde zur Beendigung aufgefordert, Stopp-Verhalten nach maximaler Laufzeit oder Abbruch bei Prozessfehlern.

Stopp-Verhalten nach Ablauf der maximalen Laufzeit

Nach Ablauf der maximalen Laufzeit werden die Aufträge aktuell verwendeter Slots in der Tabelle QBMDBQueueCurrent noch abgearbeitet. Es werden keine neuen Aufträge aus der Tabelle DialogDBQueue übernommen. In der Tabelle QBMDBQueueSlot werden alle Slots mit einem Slotstatus 2 auf den Status -1 gesetzt. Die Prozesse werden damit zur Beendigung aufgefordert und beenden sich selbst. Der zentrale Dispatcher prüft, ob alle Prozesse beendet sind.

Verwandte Themen
Verwandte Dokumente

The document was helpful.

Bewertung auswählen

I easily found the information I needed.

Bewertung auswählen