Management
Die Management-Ansicht wird über das Globale Menü aufgerufen und erlaubt das Setzen globaler Einstellungen, sowie die Konfiguration zentral nutzbarer Funktionen.
Global settings
Unter den allgemeinen Einstellungen kann die Anzahl der Threads und die verwendete Zeitzone der Anwendung angepasst werden.
Die Einstellungsmöglichkeit Maximum Timer Driven Thread Count
gibt global für alle Prozessoren die maximale Anzahl vor, die dann auf die Prozessoren aufgeteilt wird.
Wenn global nur ein Thread zugelassen wird und zwei Prozessoren individuell nur einen Thread haben, dann müssen diese jeweils aufeinander warten.
Wurde ein Thread an einem Prozessor eingestellt und der Prozessor benötigt in der Ausführung sehr lange, z.B. bei einer SQL Query, dann steht dieser Prozessor in der Zeit nicht für ein anderes FlowFile zur Verfügung.
Typischerweise macht es keinen Sinn, die Anzahl der Threads an einem Prozessor weit über 10 zu konfigurieren. Man sollte mit einem Thread starten und die Zahl anpassen, falls sich bei diesem Prozessor ein Bottleneck bildet (d.h., in der Queue davor stauen sich die FlowFiles).
Hat man I/O-lastige Flows, kann es sinnvoll sein, die Einstellung Maximum Timer Driven Thread Count
auf einen höheren Wert einzustellen als die zur Verfügung stehenden Kerne des Prozessors.
In so einem Fall warten die Threads lange auf I/O und andere Threads aus dem Pool können ausgeführt werden.
Ab einem bestimmten Punkt kostet dann allerdings der Kontextwechsel zu viel und zusätzliche Threads wirken sich negativ aus.
Als Richtwert sollte das 2- bis 4-fache der vorhandenen Prozessorkerne als Threads vorhanden sein, wodurch ein guter Basiswert erreicht wird. |
Zusätzlich befindet sich in diesem Abschnitt die Möglichkeit, die Zeitzone anhand des Browsers zu definieren. Für diesen Zweck kann die Checkbox im Menü verwendet werden, wodurch die aktuelle Zeitzone des Browsers automatisch übernommen wird.
Counters
Counters sind Werte, mit denen bestimmte Delta erhöht oder verringert werden können. Dies ist nützlich, wenn bestimmte Werte in Ihrem Arbeitsablauf überwacht werden sollen. Der einfachste Weg, dies zu erreichen, ist die Verwendung des UpdateCounter-Prozessors.
Zertifikate
Allgemein
Im Zertifikatsmanager der Anwendung können die vorhandenen Zertifikate bearbeitet und angepasst werden, um eine sichere Kommunikation zu anderen Anwendungen zu ermöglichen.
In diesem Bereich stehen unterschiedliche Möglichkeiten zur Verfügung, einen Keystore oder Zertifikate zu generieren.
Durch die Interaktion mit dem Button Add Keystore
über der Tabelle können Keystores generiert, hochgeladen, importiert oder exportiert werden.
Hierbei können JKS-, PKCS12- und PFX-Formate direkt hochgeladen werden. Alle andere Formate werden vor ihrer Nutzung in JKS-Daten konvertiert.
Zusätzlich zu der Option, Keystores hochzuladen, kann über diese Ansicht zudem ein neues Keystore entweder durch die passenden Keys oder durch ein Zertifikat generiert werden. Das Hochladen dieser Daten erfolgt Analog zum Upload der Keystores, bei der die Auswahl ein weiteres Fenster öffnet, in dem die lokalen Daten ausgewählt und hinzugefügt werden können.
Zusätzlich besteht die Möglichkeit, einen Private Key und das entsprechende Zertifikat über den Zertifikatsmanager in IGUASU neu zu generieren.
Für diesen Zweck wird die Option Generate Private Key / Certificate
ausgewählt, wodurch eine neue Ansicht geöffnet wird.
In dieser neuen Ansicht muss zum einen die Domain ohne das Protokoll und ohne ein Port und zum anderen ein Key Passwort festgelegt werden. Wurden beide Angaben bestätigt, wird ein neues Fenster geöffnet, in dem der Keystore Filename, das Passwort und das Zertifikat ersichtlich sind.
Das Passwort wird nicht auf dem Server gespeichert. Daher sollte es an dieser Stelle kopiert und außerhalb von IGUASU gespeichert werden. |
Im Anschluss gibt es noch eine Übersicht, in der es noch möglich ist den Alias zu ändern oder das vergebene Passwort zu kopieren, bevor der Prozess durch das Speichern beendet wird.
Admin-Einstellungen
Über den Schlüssel-Button neben dem Zertifikat kann zudem der Public und der Private Key heruntergeladen werden, die zur Kommunikation mit anderen Anwendungen genutzt werden können. Zusätzlich besteht die Möglichkeit, den Alias anzupassen oder das Zertifikat zu löschen.
Bereits vorhandene Keystores im Zertifikatsmanager können angepasst werden, nachdem das entsprechende Passwort eingegeben wurde. Zusätzlich besteht die Möglichkeit, die in der Tabelle aufgeführten Keystores herunterzuladen. Mit diesen aufgeführten Optionen bietet IGUASU verschiedene Funktionen, um die Zertifikate und Keystores in der eigenen Anwendung beliebig anzupassen und für die Kommunikation zu anderen Anwendungen zu verwenden.
Parameter Providers
Eigenschaften von Prozessoren, Prozessgruppen und Services können durch die Verwendung von Parametern zentral konfiguriert und verwaltet werden. So können Konfigurationen ausgelagert werden. Parameter Provider ermöglichen die Speicherung von Parametern aus Quellen außerhalb von IGUASU wie z. B. AWS Secrets. Die abgerufenen Parameter eines Providers können von allen referenzierenden Parameter Contexts abgefragt werden.
Auf der linken Seite der Parameter Provider-Oberfläche gibt es eine Auflistung, der vorhandenen Parameter Provider sowie ihres Types. Die rechte Seite wird dazu genutzt, um Konfigurationen zu dem ausgewählten Parameter Provider zu definieren.
Parameter Provider sind eng mit Management Services verkuppelt.
Der benötigte Service muss nach der Zuweisung aktiviert werden, damit der Parameter Provider aktiv genutzt werden kann.
Unter Referencing Parameter Contexts
werden alle Parameter-Kontexte aufgelistet, welche Parameter dieses Providers nutzen.
Parameter Contexts
Die Verwaltung von Parametern erfolgt über die Zuweisung zu einem Parameter-Kontext.
Ein Parameter-Kontext kann mehrere Parameter enthalten und über Vererbung(Inheritance
) Parameter eines oder mehrerer anderer Kontexte erhalten.
So können Konfigurationen ausgelagert und ggf. exportiert oder importiert werden.
Parameter-Kontext anlegen
Über Add a new parameter context
wird ein neuer Parameter-Kontext angelegt.
Der Name des Kontexts muss eindeutig sein.
Nach dem Speichern erscheint der neue Kontext in der Übersicht und kann nun verwendet werden.
Zuweisen eines Kontextes
In den Process Group Settings kann nun der Kontext der Prozessgruppe zugewiesen werden. Danach stehen die Parameter dieses Kontextes allen Services und Prozessoren in dieser Prozessgruppe zur Verfügung.
Verwendung von Parametern
Wenn ein Parameter-Kontext einer Prozessgruppe zugewiesen wurde, kann der Parameter entweder durch Eingabe von
#\{parametername}
oder durch das Symbol neben den Property des ausgewählten Prozessors aufgerufen werden.
Dies geht in Auswahlboxen, Checkboxen und Textfeldern.
Parameter werden nach der Auswahl direkt evaluiert und das Ergebnis der Evaluation wird angezeigt.
Über das Menü können Sie ebenfalls:
-
aus einem Property einen Parameter erstellen (sofern noch kein Parameter ausgewählt wurde)
-
direkt zur Parameterverwaltung springen (sofern bereits ein Parameter ausgewählt wurde)
-
direkt zur Verwaltung des Parameter-Kontexts springen
Vererbung von Kontexten
Ein Parameter-Kontext kann Parameter von einem oder mehreren Kontexten erben. Dafür werden die gewünschten Kontexte im Drag-Down-Menü ausgewählt. Der Löschvorgang wird bei einem einzelnen Kontext durch das Anklicken des Kreuzes durchgeführt. Sollten alle ausgewählten Kontexte gelöscht werden wollen, so kann auf das Radiergummi-Icon geklickt werden.
Bei Parametern mit demselben Namen gilt folgende Reihenfolge:
-
der Parameter aus dem erbenden Kontext überschreibt vererbte Parameter
-
die Reihenfolge der Vererbung: von oben nach unten
Vererbte Parameter können nicht innerhalb des erbenden Kontexts verändert oder gelöscht werden. Es kann ausschließlich an selbst erzeugten Parametern Änderungen unternommen werden.
Export/Import von Parameter Kontexten
Parameter-Kontexte können über den Download-Button einzeln heruntergeladen werden.
Mit Import parameter context
werden sie wieder importiert.
Erbt der zu importierende Kontext von einem anderen Kontext, so muss dieser vorher importiert werden, oder es muss ein Kontext mit dem gleichen Namen bereits vorhanden sein.
Anderenfalls wird der Import mit einer Fehlermeldung abgebrochen.
Informationen, die zuvor als sensibel gekennzeichnet wurden, werden nicht exportiert. In diesem Fall wird der Parameter ohne zugehörigen Wert exportiert.
Beispiel als JSON herunterladen: parametercontext.json
Management Services
Management Services sind gemeinsam genutzte Dienste, die sich letztlich von den Prozessgruppen Services nicht stark unterscheiden. Diese Services können ausschließlich von Parameter Providern und anderen Diensten, wie Reporting Tasks, für die Konfiguration oder Aufgabenausführung genutzt werden. Diese Dienste können nicht in Prozessoren oder anderen Diensten auf Prozessgruppenebene verwendet werden.
Unter Referencing Components
werden die Parameter Providers oder andere Dienste aufgelistet, welche diesen Service benutzen.
Reporting Tasks
Reporting Tasks laufen im Hintergrund, um statistische Berichte über die Vorgänge in der IGUASU-Instanz zu erstellen.
Nach der Fertigstellung der neuen Komponente muss diese expliziert durch den Play Button gestartet werden.
Flow Analysis Rules
Flow Analysis Regeln können Komponenten oder (Teile von) dem Diagrammfluss analysieren. Sie können zu Regelverletzungen führen, die zur Anpassung oder Aufrechterhaltung eines optimalen Flussdesigns beitragen können.
Unter Flow Analysis Rules können Einschränkungen für Benutzer festgelegt werden, um bestimmte Komponenten oder Konfigurationen beim Erstellen eines Flows auszuschließen.
Falls z.B. ein bestimmter Prozessor nicht verwendet werden soll, kann eine Flow Analysis Regel die entsprechenden Benutzer warnen oder aber die Verwendung von vornherein ausschließen, je nach Voreinstellung.
Der Violations-Tab im Management-Bereich bietet eine Übersicht der Komponenten, die aktuell gegen die konfigurierte Regel verstoßen.
Alternativ können Regelverstöße auch in der Monitoring-Ansicht überwacht werden.
Registries
Im Abschnitt Registries können Registries konfiguriert werden, die für die Wiederverwendung und Versionierung von konfigurierten Prozessgruppen verwendet werden können. Eine umfangreiche Beschreibung der Verwendung der Versionierung in IGUASU befindet sich im Abschnitt Versionierung.
Konfiguration der Registry
Eine IGUASU Instanz kann optional mit einer oder mehreren Registries verbunden werden. Falls diese Option nicht ausgewählt wurde, werden bestimmte Informationen, die mit der Versionierung zusammenhängen, in der Benutzeroberfläche nicht angezeigt. Die Konfiguration erfolgt in den Settings unter dem Punkt Registries.
Um die Settings eines Registries öffnen zu können, muss diese einmal angeklickt werden. Die einzige Registry die nicht näher konfiguriert werden kann, ist die 'Shared Registry', da diese geteilt wird.
Innerhalb einer Registry können wiederum beliebig viele Buckets angelegt werden.
Ein Bucket ist eine Gruppierung von versionierten Flows denen verschiedene Rechte und damit Benutzergruppen zugewiesen werden können.
Für dieses Beispiel kann die Checkbox Publicly available
gesetzt werden, damit der Bucket für alle Nutzer sichtbar ist.
Users/Groups
In dem Abschnitt "Benutzer und Gruppen" können innerhalb der Einstellungen die Benutzer und vorhandene Benutzergruppen überschaut werden. Im Menü werden hierbei zum einen die vorhandenen Benutzergruppen aber auch die registrierten Benutzer*innen der Plattform tabellarisch dargestellt. Zur Verwaltung der Benutzer und ihrer Gruppen wird der Identity Provider Keycloak genutzt.
Oben in der Tabelle befinden sich die Gruppen, die durch die Verwendung des Edit-Buttons rechts minimal angepasst werden können. Neben den vorhandenen Benutzergruppen können in der ursprünglichen Tabelle zudem alle Benutzer*innen der Plattform eingesehen werden. Hierbei ist zudem aufgelistet, in welchen Benutzergruppen diese Personen bereits vorhanden sind.
Durch das Anklicken des Edit-Buttons öffnet sich ein neues Fenster, in dem die Benutzer*innen angezeigt werden.
Diejenigen die bereits zu der Gruppe gehören, werden durch eine ausgewählte Checkbox dargestellt.
Bei der minimalen Anpassung in der Gruppe handelt es sich letztlich um die Checkbox Can acess restricted components
.
Dadurch kann nun jeder User der Gruppe restriktierte Prozessoren auswählen.
Benutzergruppen können verwendet werden, um die Sichtbarkeit von Prozessgruppen im Diagramm zu steuern. Im Konfigurationsbereich der entsprechenden Prozessgruppen kann definiert werden, welchen Nutzergruppen die Prozessgruppe sichtbar sein soll. |
Endpoints
Hier können HTTP Endpunkte verwaltet werden. Endpunkte können entweder vom Typ Internal, External, oder External with TLS Termination sein.
Internal: Interne Endpunkte sind nur innerhalb des eigenen Namespace erreichbar (z.B. durch andere Flows oder dem BPC) und können nicht von außen verwendet werden. Interne Ports werden durch den Service Namen https://iguasu-nifi:<port> angesprochen.
External: Externe Endpunkte sind öffentlich verfügbar und sollten dementsprechend abgesichert werden. Der Aufruf erfolgt über https://<domain>/<pfad> und wird dann an https://iguasu-nifi:<port> weitergeleitet.
External with TLS Termination: Im Gegensatz zum Typ External wird hier TLS direkt am Endpunkt terminiert und nicht am HTTP Proxy davor. Dies wird benötigt um TLS benutzen zu können.
Hierfür ist es notwendig, eine Subdomain anzulegen.
Der Aufruf erfolgt über https://<subdomain>.<domain>/<pfad>
und wird dann an https://iguasu-nifi:<port>* weitergeleitet
.
Endpunkte die nicht verändert oder gelöscht werden können, gehören zu den Standardendpunkten, welche für den Betrieb der Anwendung notwendig sind.
Updates
Unter dem Reiter "Updates" kann IGUASU auf die ausgewählte neue Version aktualisiert werden.
Dies kann direkt oder zu einem bestimmten Zeitpunkt (z. B. nachts) geschehen.
Die Aktualisierung kann ein paar Minuten dauern.
Nach dem Anklicken der Change Version
-Option wird der Aktualisierungsprozess ausgelöst.
Database Drivers
In dieser Ansicht können JDBC Treiber in IGUASU angepasst oder hochgeladen werden, um die Verbindung zu Datenbanken zu ermöglichen. Bereits vorhandene Treiber werden tabellarisch aufgelistet, wobei neben dem Dateinamen zudem ersichtlich ist, wann diese hinzugefügt wurden.
Wichtig beim Hochladen der Treiber ist, dass die Dateinamen die Endung .jar
haben müssen, um im System verwendet werden zu können.
Hochgeladene Treiber werden unter opt/iguasu/shared/driver
abgespeichert.