Automation Engine intern > Mehr-Server-Betrieb > Netzbereiche

Netzbereiche in der Automation Engine

Kommunikationsprozesse (CPs) dienen dazu, bestimmte Komponenten (Agenten und UserInterfaces) mit den Arbeitsprozessen (WPs) zu verbinden und auch deren Kommunikation abzuwickeln. Die Auswahl des CPs für die jeweilige Komponente ist dabei lastabhängig und erfolgt automatisch. Bei einem Automation Engine-System mit mehreren CPs ist es möglich, die CPs in bestimmte Bereiche (sogenannte NetAreas) zu gruppieren, wodurch die CP-Auswahl beeinflusst werden kann. Sinnvollerweise repräsentiert jeder dieser Bereiche ein bestimmtes Netzwerk.

Standard CP-Auswahl

Standardmäßig wird die CP-Auswahl nach folgendem Schema abgearbeitet:

  1. Ein Agent wird gestartet, wobei dieser zuerst jenen CP kontaktiert, der in seiner INI-Datei angegeben wurde (Parameter: cp=). Erreicht der Agent diesen CP nicht, versucht er die CPs zu erreichen, die in der INI-Datei in der Sektion CP_LIST eingetragen sind.
  2. Der CP gibt eine Liste aller CPs des Automation Engine-Systems und seiner Verbindungszahl zurück.
  3. Der Agent kontaktiert alle CPs, wobei jeder CP wiederum auf dieselbe Weise antwortet.
  4. Abschließend wählt der Agent den CP mit den wenigsten Verbindungen aus und schließt die Verbindungen zu den anderen CPs.

Beachten Sie: Wir empfehlen grundsätzlich, CPs und WPs in derselben, sicheren Netzwerkzone zu betreiben. Stehen die CPs aber in unterschiedlichen Netzwerkzonen, die durch eine Firewall getrennt sind, beachten Sie bitte die dazu notwendigen Firewall-Freischaltungen. Aus Sicht der CP-Auswahl aber werden den Agenten bei der Verbindung zur Automation Engine die vollständigen CP-Listen zwecks CP-Auswahl gesendet. Stehen dabei aus Sicht der Agenten einige CPs hinter der Firewall, müssen die Verbindungen der Agenten zu den CPs in der Firewall konfiguriert werden.

Erweiterte CP-Auswahl (Netzbereiche)

Die CP-Auswahl kann auch auf bestimmte CPs eingeschränkt werden, indem CPs zu Netzbereichen gruppiert werden. Dies ist durch Setzen des Parameters NetArea= (Sektion [TCP/IP]) möglich, der sich in der INI-Datei der AutomationEngine befindet. Die Werte für den Parameter NetArea können beliebig gewählt werden, müssen aber alphanumerisch sein und mit einem Buchstaben beginnen.

Beachten Sie, dass nur CPs Netzbereichen zugeordnet werden können! WPs eines Automation Engine-Systems müssen denselben Netzbereich besitzen. Wird versucht, einen WP zu starten, dessen NetArea-Definition von jener der aktiven WPs abweicht, so beendet sich dieser sofort wieder.

Wird der Parameter NetArea frei gelassen, so wird der Name des Automation Engine Systems genommen.

Es können beliebig viele Netzbereiche verwendet werden. Aus Gründen der Ausfallsicherheit empfehlen wir zumindest zwei CPs pro Netzbereich.

Die erweiterte CP-Auswahl läuft somit folgendermaßen ab:

  1. Ein Agent wird gestartet, wobei dieser jenen CP kontaktiert, der in seiner INI-Datei angegeben wurde (Parameter: cp=). Erreicht der Agent diesen CP nicht, versucht er die CPs zu erreichen, die in der INI-Datei in der Sektion CP_LIST eingetragen sind.
  2. Der CP antwortet mit einer Liste aller CPs, die sich in seinem Netzbereich befinden und seiner Verbindungszahl.
  3. Der Agent kontaktiert alle CPs dieser Liste.
  4. Der Agent wählt daraus jenen CP aus, der die wenigsten Verbindungen aufweist, und verbindet sich mit diesem.

Beispiele für Anwendungsfälle

  1. UserInterfaces und Agenten sollen getrennte CPs des Automation Engine Systems verwenden.
    Lösung: Definieren Sie zwei Netzbereiche, ordnen Sie die CPs entsprechend den jeweils unterschiedlichen Netzbereichen (NetAreas) zu und tragen Sie in den Konfigurationsdateien der UserInterfaces bzw. Agenten jeweils für jenen CP, der beim Erststart zu kontaktieren ist, einen CP des gewünschten Netzbereiches ein.
  2. CPs sollen in unterschiedlichen Netzwerkzonen verwendet werden:
    Für jede Netzwerkzone wird eine NetArea gewählt. Weisen Sie nun mit Hilfe der NetArea die CPs den Netwerkzonen zu, in denen sie stehen. Verbindet sich ein UserInterface, CallAPI oder Agent zu einem CP, der in seiner Netzwerkzone steht, führt er die CP-Auswahl nur unter den CPs durch, die in diesem Netzbereich stehen.

Beachten Sie: Vergessen Sie nicht, die CP_LIST in der Konfiguration der Agenten zu löschen, wenn Sie die Zuordnungen der CPs zu Netzbereichen verändern.

Beispiel einer Konfiguration

Folgendes Anwendungsbeispiel zeigt eine Situation, in welcher die Gruppierung der CPs über Netzbereiche sinnvoll ist, um eine eingeschränkte CP-Auswahl für Agenten zu erhalten.

Ein Automation Engine-System sei aufgeteilt in zwei Netzwerke. In beiden Netzwerken werden Agenten betrieben. "Network 1" enthält die Server-Arbeitsprozesse, die Kommunikationsprozesse CP001, CP002 und CP003, sowie die Datenbank. Im "Network 2" werden die CPs CP004 und CP005 verwendet. Diese Kommunikationsprozesse dienen zur Verbindung der Agenten des "Network 2" mit den Serverprozessen (CPs + WPs) im "Network 1".Getrennt seien diese beiden Bereiche durch eine Firewall, die nur bekannte Verbindungen erlaubt, deren Konfiguration statisch erfolgt und in der eingehende Verbindungen definiert werden müssen.

 

Abbildung 1: Definition von Netzbereichen (NetAreas)

Abbildung 2: Verbindungen zwischen Komponenten und ihre Verbindungsrichtung

Wie man in der Abbildung 1 sieht, ist den CPs CP001, CP002 und CP003 die NetArea "InnerNet" und den CPs CP004 und CP005 die NetArea "OuterNet" zugeordnet. Abbildung 2 zeigt die Verbindungen zwischen den Komponenten und stellt die Verbindungsrichtungen anhand von Pfeilen dar. Man erkennt, dass sich Agenten des Netzwerks "Network 1" nur zu CPs der NetArea "InnerNet" und Agenten des Netzwerks "Network 2" nur zu CPs der NetArea "OuterNet" verbinden. Agenten-Verbindungen brauchen in dieser Konfiguration nicht in der Firewall vorgenommen werden.

Abbildung 2 verdeutlicht auch die Verbindungen, die zum Betrieb von CPs in anderen Netzwerkzonen notwendig sind. Aus Sicht des Netzwerks 1 sind lediglich die Datenbankverbindungen der CPs eingehend, die in der Abbildung rot durchgezogen dargestellt sind. Bitte beachten Sie, dass CP-CP-Verbindungen nur in besonderen Fällen auftreten und notwendig sind, zum Beispiel, wenn eine registrierte Ouput-Datei eines Agenten über das UserInterface angezeigt werden soll, wobei sowohl Agent als auch UserInterface mit unterschiedlichen CPs verbunden sind. Solche Verbindungen sind in der Abbildung rot gestrichelt dargestellt.

Hinweis: In der Firewall müssen Sie dadurch nur noch die eingehenden Verbindungen von CP004, CP005 angeben, unabhängig von der Anzahl der Agenten in "Network 2". Die statisch zu konfigurierenden Verbindungen sind in der unteren Abbildung als rote Punkte entlang der Firewall-Linie dargestellt.

Damit sichergestellt ist, dass sich die Agenten nur zu CP004 und CP005 verbinden, sind folgende Vorkehrungen zu treffen:

Für CP001, CP002 und CP003:

Für CP004 und CP005:

Konkret sind folgende Parameter in der INI-Datei der Automation Engine zu setzen:

Network 1:

[GLOBAL]

system=UC4


[TCP/IP]
pwpport=2270
NetArea=InnerNet

[PORTS]
cp1=2217
cp2=2218
cp3=2219
wp1=2271
wp2=2272
wp3=2273

Network 2:

[GLOBAL]

system=UC4


[TCP/IP]
pwpport=2270
NetArea=OuterNet

[PORTS]
cp4=2220
cp5=2221
wp1=2271
wp2=2272
wp3=2273

ServiceManager

Beim Starten von Serverprozessen bzw. Agenten über die Systemübersicht des UserInterface oder mittels Scriptsprachmittel MODIFY_SYSTEM, wählt der WP einen CP, der wiederum den zuständigen Service Manager kontaktiert. Wenn im Automation Engine-System die CPs in unterschiedliche Netzbereiche eingeteilt wurden, so wird dies auch bei dieser CP-Auswahl berücksichtigt.
Dies bedeutet folgendes Verhalten:

  1. Start eines Agenten / CP / WP via MODIFY_SYSTEM oder Systemübersicht.
    Beim Start über die Systemübersicht gibt zuerst der CP, mit welchem das UserInterface verbunden ist, den Auftrag an einen WP weiter.
  2. Der zuständige WP kontaktiert jenen CP, der sich im selben Netzbereich befindet, wie der zu startende Agent / CP / WP.
  3. Wird kein CP gefunden, so wird ein CP im Netzbereich des WPs gesucht.
  4. Falls auch hier kein CP vorhanden ist, wird ein beliebiger CP des Automation Engine-Systems verwendet.
  5. Über den gewählten CP wird die Verbindung zum zuständigen ServiceManager aufgebaut, welcher den Agenten / CP / WP startet.

 

 


Automic Documentation - Tutorials - Automic Blog - Resources - Training & Services - Automic YouTube Channel - Download Center - Support

Copyright © 2016 Automic Software GmbH