Handbuch für Informatica-Anwendungsdienst > PowerCenter-Integrationsdienst > Load Balancer für den PowerCenter Integration Service
  

Load Balancer für den PowerCenter Integration Service

Der Load Balancer ist eine Komponente des PowerCenter Integration Service, der Tasks an PowerCenter Integration Service Prozesse verteilt, die auf Knoten in einem Gitter ausgeführt werden. Er gleicht die Anforderungen der Tasks mit der Verfügbarkeit von Ressourcen ab, um den für die Ausführung des Tasks bestgeeigneten PowerCenter Integration Service Prozess zu finden. Er kann Tasks an einen einzelnen Knoten oder knotenübergreifend verteilen.
Sie können die Einstellungen des Load Balancer für die Domäne und für Knoten in der Domäne konfigurieren. Die Einstellungen, die Sie für die Domäne konfigurieren, gelten für alle PowerCenter Integration Services in der Domäne.
Um festzulegen, wie der Load Balancer Tasks verteilt, müssen Sie folgende Einstellungen für die Domäne konfigurieren:
Für jeden Knoten müssen Sie folgende Load Balancer Einstellungen konfigurieren:

Konfigurieren des Sendemodus

Für die Auswahl eines Knotens zum Ausführen eines Tasks verwendet der Load Balancer den Sendemodus. Der Sendemodus wird für die Domäne konfiguriert. Daher nutzen sämtliche PowerCenter Integration Services in einer Domäne denselben Sendemodus.
Beim Ändern des Sendemodus für eine Domäne müssen Sie jeden PowerCenter Integration Service in der Domäne neu starten. Der frühere Sendemodus bleibt wirksam, bis Sie den PowerCenter Integration Service neu starten.
Die Konfiguration des Sendemodus erfolgt in den Domäneneigenschaften.
Der Load Balancer nutzt folgende Dispatchmodi:
In der folgenden Tabelle werden die Unterschiede der Dispatchmodi gegenübergestellt:
Sendemodus
Prüfung der Schwellenwerte für die Bereitstellung von Ressourcen?
Erstellung von Benutzertasksstatistiken?
Nutzung des CPU-Profils?
Umgehung in Dispatch-Warteschlange möglich?
Rundlauf
Prüfung der maximalen Prozessanzahl.
Nein
Nein
Nein
Metrisch basiert
Prüfung aller Schwellenwerte.
Ja
Nein
Nein
Adaptiv
Prüfung aller Schwellenwerte.
Ja
Ja
Ja

Ringverteilungs-Dispatch-Modus

Im Ringverteilungs-Dispatch-Modus verteilt die Load Balancer-Tasks entsprechend einer Ringverteilung an die Knoten. Der Load Balancer prüft den Schwellenwert für die Ressourcenbereitstellung auf dem ersten verfügbaren Knoten. Er schickt den Task an diesen Knoten, wenn das Versenden des Tasks nicht bewirkt, dass diese Schwelle überschritten wird. Wenn das Versenden des Tasks dazu führt, dass diese Schwelle überschritten wird, wertet der Load Balancer den nächsten Knoten aus. Das wird fortgeführt, bis ein Knoten gefunden wird, der den Task übernehmen kann.
Die Load Balancer verteilt die auszuführenden Tasks in der Reihenfolge, wie sie vom Workflow Manager oder Scheduler geliefert werden. Der Load Balancer umgeht keinen Task in der Dispatch-Warteschlange. Wenn daher ein ressourcenintensiver Task zuerst in der Dispatch-Warteschlange steht, müssen alle anderen Tasks mit derselben Dienstebene in der Warteschlange warten, bis der Load Balancer den ressourcenintensiven Task verarbeitet hat.

Metrikbasierter Dispatch-Modus

Im metrikbasierten Dispatch-Modus wertet der Load Balancer Knoten in einem Ringverteilungsverfahren aus, bis er einen Knoten findet, der den Task übernehmen kann. Der Load Balancer prüft die Schwellenwerte für die Ressourcenbereitstellung auf dem ersten verfügbaren Knoten. Er schickt den Task an diesen Knoten, wenn das Versenden des Task nicht bewirkt, dass einer dieser Schwellenwerte überschritten wird. Wenn das Versenden des Task dazu führt, dass einer dieser Schwellenwerte überschritten wird, wertet der Load Balancer den nächsten Knoten aus. Das wird fortgeführt, bis ein Knoten gefunden wird, der den Task übernehmen kann.
Um festzustellen, ob ein Task auf einem bestimmten Knoten ausgeführt werden kann, sammelt und speichert der Load Balancer Statistiken aus den letzten drei Läufen des Task. Er vergleicht diese Statistiken mit den Schwellenwerten für die Ressourcenbereitstellung, die für den Knoten definiert sind. Wenn keine Statistiken im Repository vorhanden sind, verwendet die Load Balancer die folgenden Standardwerte:
Der Load Balancer verteilt die auszuführenden Tasks in der Reihenfolge, wie sie vom Workflow Manager oder Scheduler geliefert werden. Der Load Balancer umgeht keine Tasks in der Dispatch-Warteschlange. Wenn daher ein ressourcenintensiver Task zuerst in der Dispatch-Warteschlange steht, müssen alle anderen Tasks mit derselben Dienstebene in der Warteschlange warten, bis der Load Balancer die ressourcenintensive Task verarbeitet hat.

Adaptiver Dispatch-Modus

Web Services HubModus berechnet der Load Balancer die Rechenressourcen auf allen verfügbaren Knoten. Er sucht den Knoten mit der bestverfügbaren CPU und prüft die Ressourcen-Bereitstellungsschwellenwerte auf dem Knoten. Wenn kein Schwellenwert hierdurch überschritten wird, sendet er die Tasks. Zu einem Knoten, der keine freie Swap-Kapazität besitzt, sendet der Load Balancer keine Tasks.
Web Services HubModus kann der Load Balancer die Rechen-Ressourcen auf dem Knoten anhand des CPU-Profils klassifizieren.
Um den bestgeeigneten Knoten zum Ausführen eines Tasks zu bestimmen, sammelt der Load Balancer Statistiken der letzten drei Durchläufe des Task und vergleicht sie mit den Auslastungsmetriken des Knotens Enthält das Repository keine Statistiken, verwendet der Load Balancer folgende Standardwerte:
Web Services HubModus ist die Reihenfolge, in der der Load Balancer Tasks aus der Dispatch-Warteschlange versendet, von den Anforderungen der Task und der Dispatch-Priorität abhängig. Beispiel: Warten mehrere Tasks mit derselben Dienstebene in der Dispatch-Warteschlange und stehen keine adequaten Rechenressourcen zur Verfügung, um eine ressourcenintensive Task auszuführen, reserviert der Load Balancer einen Knoten für den ressourcenintensiven Task und fährt fort, weniger intensive Tasks zu anderen Knoten zu versenden.

Dienstebenen

Dienstebenen legen die Priorität unter den Aufgaben fest, die darauf warten, versendet zu werden.
Wenn der Load Balancer mehr Aufgaben zu versenden hat als der der PowerCenter Integration Service gleichzeitig ausführen kann, stellt der Load Balancer diese Aufgaben in die Dispatch-Warteschlange. Wenn mehrere Aufgaben in der Dispatch-Warteschlange anstehen, bestimmt der Load Balancer anhand der Dienstebenen die Reihenfolge, in der die Aufgaben aus der Warteschlange verteilt werden.
Dienstebene sind Domäneneigenschaften. Deshalb können Sie für alle Repositorys in einer Domäne die gleichen Dienstebenen verwenden. Sie erstellen und bearbeiten Dienstebenen in den Domäneneigenschaften der Domäne oder mithilfe von infacmd.
Wenn Sie eine Dienstebene erstellen, kann ein Arbeitsablaufentwickler diese im Workflow Manager einem Arbeitsablauf zuweisen. Alle Aufgaben in einem Arbeitsablauf haben dieselbe Dienstebene. Der Load Balancer setzt Dienstebenen zur Verteilung von Aufgaben in der Dispatch-Warteschlange ein. Zum Beispiel: Sie erstellen zwei Dienstebenen:
Wenn mehrere Aufgaben in der Dispatch-Warteschlange stehen, verteilt der Load Balancer Aufgaben mit der hohen Dienstebene vor Aufgaben mit niedriger Dienstebene, weil die Dienstebene "Hoch" eine höhere Dispatch-Priorität hat. Wenn eine Aufgabe mit Dienstebene "Niedrig" zwei Stunden lang in der Dispatch-Warteschlange wartet, ändert der Load Balancer die Dispatch-Priorität die höchste Priorität, sodass die Aufgabe nicht auf unbestimmte Zeit in der Dispatch-Warteschlange bleibt.
Das Administrator Tool enthält eine Standard-Dienstebene mit dem Namen Default und einer Dispatch-Priorität von 5 und einer maximale Dispatch-Wartezeit von 1800 Sekunden. Sie können die Standard-Dienstebene aktualisieren, aber sie kann nicht gelöscht werden.
Wenn Sie eine Dienstebene entfernen, aktualisiert der Workflow Manager keine Aufgaben, die die Dienstebene verwenden. Wenn eine Arbeitsablauf-Dienstebene in der Domäne nicht vorhanden ist, sendet der Load Balancer die Aufgaben mit einer Standarddienstebene.

Dienstebenen erstellen

Servicelevel im Administrator Tool erstellen.
    1Wählen Sie im Administrator Tool ein Domäne im Navigator aus.
    2Klicken Sie auf die Registerkarte Eigenschaften.
    3Im Bereich Servicelevelverwaltung, klicken Sie auf Hinzufügen.
    4Legen Sie die Werte für die Serviceleveleigenschaften fest.
    5Klicken Sie auf OK.
    6Um einen Servicelevel zu entfernen, klicken Sie für den Servicelevel auf die Schaltfläche Entfernen, der entfernt werden soll.

Konfigurieren von Ressourcen

Beim Konfigurieren des PowerCenter Integration Service zum Ausführen auf einem Gitter und zum Prüfen der Ressourcen-Anforderungen versendet der Load Balancer Tasks basierend auf den auf jedem Knoten verfügbaren Ressourcen an die Knoten. Sie konfigurieren den PowerCenter Integration Service, um die verfügbaren Ressourcen in den PowerCenter Integration Service Eigenschaften im Informatica Administrator zu prüfen.
Die Zuweisung der von einer Task benötigten Ressourcen erfolgt in den Task-Eigenschaften des PowerCenter Workflow Manager.
Sie definieren die in jedem Knoten verfügbaren Ressourcen im Administrator Tool. Geben Sie folgenden Ressourcentypen an:
Aktivieren und deaktivieren Sie für den Knoten verfügbare Ressourcen auf der Registerkarte Ressourcen im Administrator Tool oder anhand von infacmd.

Berechnen des CPU-Profils

Im anpassbaren Sendemodus nutzt der Load Balancer das CPU-Profil zur Bewertung des Berechnungsdurchsatzes jeder CPU und Busarchitektur in einem Gitter. So wird gewährleistet, dass Knoten mit höherer Verarbeitungskapazität Dispatch-Priorität erhalten. Dieser Wert wird nicht für den Sendemodus auf Zufallsbasis (Round-Robin) oder den messgrößenbasierten Sendemodus verwendet.
Das CPU-Profil ist ein Indikator der Verarbeitungskapazität eines Knotens verglichen mit einem Baseline-System. Das Baseline-System ist ein 2,4 GHz Pentium-Computer, auf dem Windows 2000 läuft. Beispiel: Wenn ein SPARC 480 MHz Computer 0,28 Mal so schnell ist wie der Baseline-Computer, muss das CPU-Profil für den SPARC-Computer auf 0,28 eingestellt werden.
Das CPU-Profil ist per Standard auf 1.0 eingestellt. Zur Berechnung des CPU-Profils für einen Knoten wählen Sie den Knoten im Navigator und klicken Sie auf Aktionen > CPU-Profil-Benchmark neu berechnen. Um den genauesten Wert zu erhalten berechnen Sie das CPU-Profil, wenn sich der Knoten im Leerlauf befindet. Die Berechnung dauert ca. fünf Minuten und lastet die CPU des Computers zu 100 % aus.
Alternativ können Sie das CPU-Profil anhand des infacmd berechnen oder indem Sie die Knoteneigenschaften bearbeiten und den Wert manuell aktualisieren.

Definieren von Schwellenwerten für die Bereitstellung von Ressourcen

Der Load Balancer teilt den auf einem Knoten laufenden PowerCenter Integration Service Prozessen Tasks zu. Er kann fortfahren, einem Knoten Tasks zuzuteilen, solange die Schwellenwerte für die Ressourcenzuteilung für den betreffenden Knoten nicht überschritten wurden. Hat der Load Balancer mehr Sitzungs- und Befehlstasks zuzuteilen, als der PowerCenter Integration Service gleichzeitig ausführen kann, stellt der Load Balancer die Tasks in die Dispatch-Warteschlange. Sobald ein PowerCenter Integration Service Prozess verfügbar wird, teilt er die Tasks aus der Warteschlange zu.
Für jeden Knoten in einer Domäne können Sie folgende Schwellenwerte für die Ressourcenzuteilung definieren:
Die Definition der Schwellenwerte für die Ressourcenzuteilung erfolgt in den Knoteneigenschaften.