Konfiguration des Node Controllers
Load Balancing aktivieren
Um das Load Balancing zu aktivieren, muss folgender Eintrag gesetzt werden in der Konfigurationsdatei ./etc/loadbalance.xml. Siehe Abschnitt Failover-Konzept.
<
Set
name
=
"enableLoadbalance"
>true</
Set
>
Konfigurationsdatei ./etc/startup.xml
Wie bereits beschrieben, dient der Node Controller zur Verteilung der Aufgaben. Die Verteilung kann auf Basis zweier Verfahren erfolgen: "round robin" oder durch Lastfaktor. Bei "round robin" werden an alle vorhandenen Working Nodes abwechselnd neue Konvertierungsaufgaben verteilt. Bei Benutzung des Lastfaktors geschieht dies auf Grund der Auslastung der einzelnen Working Nodes - diese wird intern durch das Datenvolumen, die anstehenden Aufgaben und verfügbaren Working-Threads berechnet. Kann kein Working Node ermittelt werden, übernimmt der Node Controller die Aufgabe selber (weil z. B. noch gar kein Working Node verfügbar ist).
Soll "round robin" verwendet werden, steht in
<
Call
name
=
"useLoadInformation"
><
Arg
type
=
"boolean"
>False</
Arg
></
Call
>
ein false, bei true wird der Lastfaktor (siehe unten) zur Ermittlung herangezogen.
Optional
(a) Werden zwei DMZ-Server betrieben oder ein zweiter Node Controller steht als Cold-Standby-System zur Verfügung, kann mit
<
Set
name
=
"informDMZOfNewPeer"
>True</
Set
>
bestimmt werden, das beim Starten des Node Controllers der DMZ-Server auf die neu gestartete Instanz verweist. In diesem Fall werden noch alle offenen Übertragungen an den neuen Node Controller umgeleitet.
(b) Ist das ./conf-Verzeichnis nicht gemountet, können alle Veränderungen in ./conf und ./etc/admin/datawizard durch den Node Controller an die aktiven Clients weitergeleitet werden. Hierzu muss
<
Set
name
=
"replicateFiles"
>True</
Set
>
eingestellt sein. Mit
<
Set
name
=
"replicateAdminFiles"
>True</
Set
>
können alternativ nur Dateien unter ./etc/admin/datawizard repliziert werden.
Hinweis: Siehe auch Funktion replicate file(a,b).
(c) Tragen Sie alle Mitglieder des Load-Balance-Verbunds in der Konfigurationsdatei ./etc/admin/dazawizard/lb_nodes.properties ein (Format ist immer factory-id=IP-oder-Hostname:Port-MessageService). Diese Datei wird automatisch an alle Mitglieder verteilt und muss nur auf dem Node Controller gepflegt werden. Ist eine gültige Konfigurationsdatei vorhanden, werden alle dort hinterlegten (aktiven) Working Nodes informiert, das der soeben gestartet Node Controller als "aktiver" gilt und die Nodes schwenken auf ihn um.
(d) Wird Lastfaktor statt "round-robin" verwendet, und ist die Hardware der Working Nodes unterschiedlich, so kann z. B. mit
<
Set
name
=
"performanceFactor"
>1.3</
Set
>
pro Working Node ein Korrekturfaktor hinterlegt werden, der einen Wert > 1 haben muss (dieser Wert wird mit dem akt. Lastfaktor multipliziert). Beispiel: Nehmen wir an wir hätten einen Working Node mit leistungsfähiger Hardware und einen anderen Working Node mit weniger leistungsfähiger Hardware und für beide Working Nodes wurde (ohne Berücksichtigung des Performancefaktors) der gleiche Lastfaktor berechnet. Nun geben wir dem Working Node mit der weniger leistungsfähigeren Hardware einen Performancefaktor von 1.3, womit dessen Lastfaktor multipliziert wird, d. h. er hat nun einen höheren Lastfaktor und neue Last würde deshalb an den Working Node mit der leistungsfähigeren Hardware verteilt werden.
Damit ist die Konfiguration des/der Node Controller(s) abgeschlossen.