Port-Anforderungen

Die Firewall muss nicht nur für die virtuellen Hosts verwaltet werden. Sowohl die VM- als auch die physischen Host-Firewalls müssen Traffic für die Ports zulassen, die die Komponenten für die Kommunikation miteinander benötigen.

Anschlussdiagramme

Die folgenden Bilder zeigen die Anschlussanforderungen sowohl für ein einzelnes Rechenzentrum als auch für eine Konfiguration mit mehreren Rechenzentren:

Ein Rechenzentrum

Die folgende Abbildung zeigt die Portanforderungen für jede Edge-Komponente in einer einzelnen Rechenzentrumskonfiguration:

Portanforderungen für jede Edge-Komponente in einer einzelnen Rechenzentrumskonfiguration

Hinweise zu diesem Diagramm:

  • Die Ports mit dem Präfix „M“ werden zum Verwalten der Komponente verwendet und müssen für den Zugriff des Verwaltungsservers auf der Komponente geöffnet sein.
  • Die Edge-Benutzeroberfläche benötigt Zugriff auf den Router über die von API-Proxys freigegebenen Ports, um die Schaltfläche Senden im Trace-Tool zu unterstützen.
  • Der Zugriff auf JMX-Ports kann so konfiguriert werden, dass ein Nutzername/Passwort erforderlich ist. Weitere Informationen finden Sie unter Monitoring.
  • Optional können Sie den TLS/SSL-Zugriff für bestimmte Verbindungen konfigurieren, für die unterschiedliche Ports verwendet werden können. Weitere Informationen finden Sie unter TLS/SSL.
  • Sie können den Verwaltungsserver und die Edge-Benutzeroberfläche so konfigurieren, dass E-Mails über einen externen SMTP-Server gesendet werden. In diesem Fall müssen Sie dafür sorgen, dass der Verwaltungsserver und die Benutzeroberfläche auf den erforderlichen Port des SMTP-Servers (nicht dargestellt) zugreifen können. Bei SMTP ohne TLS ist die Portnummer normalerweise 25. Bei TLS-fähigem SMTP ist dies häufig 465. Erkundigen Sie sich jedoch bei Ihrem SMTP-Anbieter.

Mehrere Rechenzentren

Wenn Sie die Clusterkonfiguration mit 12 Knoten und zwei Rechenzentren installieren, müssen die Knoten in den beiden Rechenzentren über die unten aufgeführten Ports kommunizieren können:

Portanforderungen für jeden Knoten in einer Clusterkonfiguration mit 12 Knoten

Hinweise:

  • Alle Verwaltungsserver müssen auf alle Cassandra-Knoten in allen anderen Rechenzentren zugreifen können.
  • Alle Nachrichten-Prozessoren in allen Rechenzentren müssen über Port 4528 auf alle anderen zugreifen können.
  • Der Verwaltungsserver muss über Port 8082 auf alle Nachrichten-Prozessoren zugreifen können.
  • Alle Verwaltungsserver und alle Qpid-Knoten müssen auf Postgres in allen anderen Rechenzentren zugreifen können.
  • Aus Sicherheitsgründen sollten zwischen den Rechenzentren nur die oben aufgeführten Ports und alle anderen Ports geöffnet sein, die für Ihre eigenen Netzwerkanforderungen erforderlich sind.

Standardmäßig ist die Kommunikation zwischen den Komponenten nicht verschlüsselt. Sie können die Verschlüsselung hinzufügen, indem Sie Apigee mTLS installieren. Weitere Informationen finden Sie unter Einführung in Apigee mTLS.

Port details

In der folgenden Tabelle werden die Ports beschrieben, die in Firewalls geöffnet werden müssen, nach Edge-Komponente:

Komponente Port Beschreibung
Standard-HTTP-Ports 80, 443 HTTP und alle anderen Ports, die Sie für virtuelle Hosts verwenden
Apigee SSO 9099 Verbindungen von externen Identitätsanbietern, dem Verwaltungsserver und Browsern für die Authentifizierung
Cassandra 7000, 9042 Apache Cassandra-Ports für die Kommunikation zwischen Cassandra-Knoten und für den Zugriff durch andere Edge-Komponenten.
7199 JMX-Port Muss für den Zugriff durch den Verwaltungsserver geöffnet sein.
LDAP 10389 OpenLDAP
Verwaltungsserver 1099 JMX-Port
4526 Port für verteilte Cache- und Verwaltungsanrufe. Dieser Anschluss ist konfigurierbar.
5636 Port für Benachrichtigungen zu Monetarisierungscommits.
8080 Port für Edge Management API-Aufrufe. Für diese Komponenten ist Zugriff auf Port 8080 auf dem Management-Server erforderlich: Router, Message Processor, UI, Postgres, Apigee SSO (falls aktiviert) und Qpid.
Verwaltungsoberfläche 9.000 Port für den Browserzugriff auf die Verwaltungsoberfläche
Message Processor 1101 JMX-Port
4528 Für verteilte Cache- und Verwaltungsaufrufe zwischen Message Processors und für die Kommunikation vom Router und Management-Server.

Ein Nachrichtenprozessor muss Port 4528 als seinen Verwaltungsport öffnen. Wenn Sie mehrere Message Processor haben, müssen alle über Port 4528 auf die anderen zugreifen können (im Diagramm oben durch den Loop-Pfeil für Port 4528 am Message Processor dargestellt). Wenn Sie mehrere Rechenzentren haben, muss der Port von allen Message Processors in allen Rechenzentren zugänglich sein.

8082

Standard-Verwaltungs-Port für den Nachrichtenprozessor. Muss für den Zugriff des Verwaltungsservers auf der Komponente geöffnet sein.

Wenn Sie TLS/SSL zwischen dem Router und dem Nachrichtenprozessor konfigurieren, wird dies vom Router verwendet, um den Nachrichtenprozessor zu prüfen.

Port 8082 auf dem Nachrichtenprozessor muss nur für den Zugriff durch den Router geöffnet sein, wenn Sie TLS/SSL zwischen dem Router und dem Nachrichtenprozessor konfigurieren. Wenn Sie TLS/SSL nicht zwischen dem Router und dem Nachrichtenprozessor konfigurieren, muss Port 8082 in der Standardkonfiguration weiterhin auf dem Nachrichtenprozessor geöffnet sein, um die Komponente zu verwalten. Der Router benötigt jedoch keinen Zugriff darauf.

8443 Wenn TLS zwischen dem Router und dem Message Processor aktiviert ist, müssen Sie Port 8443 am Message Processor für den Zugriff durch den Router öffnen.
8998 Port des Nachrichtenprozessors für die Kommunikation vom Router
Postgres 22 Wenn Sie zwei Postgres-Knoten für die Master-Standby-Replikation konfigurieren, müssen Sie Port 22 auf jedem Knoten für den SSH-Zugriff öffnen.
1103 JMX-Port
4530 Für verteilte Cache- und Verwaltungsaufrufe
5432 Wird für die Kommunikation vom Qpid-/Verwaltungsserver zu Postgres verwendet
8084 Standard-Verwaltungs-Port auf dem Postgres-Server; muss für den Zugriff des Verwaltungsservers auf der Komponente geöffnet sein.
Qpid 1102 JMX-Port
4529 Für verteilte Cache- und Verwaltungsaufrufe
5672
  • Einzelnes Rechenzentrum: Wird zum Senden von Analysen vom Router und Message Processor an Qpid verwendet.
  • Mehrere Rechenzentren: Wird für die Kommunikation zwischen Qpid-Knoten in verschiedenen Rechenzentren verwendet.

Wird auch für die Kommunikation zwischen den Qpid-Server- und Broker-Komponenten auf demselben Knoten verwendet. In Topologien mit mehreren Qpid-Knoten muss der Server eine Verbindung zu allen Brokern über den Port 5672 herstellen können.

8083 Standard-Verwaltungs-Port auf dem Qpid-Server. Muss für den Zugriff des Verwaltungsservers auf der Komponente geöffnet sein.
8090 Standardport für den Broker von Qpid. Muss geöffnet sein, um für Monitoring-Zwecke auf die Verwaltungskonsole oder die Verwaltungs-APIs des Brokers zugreifen zu können.
Router 4527 Für verteilte Cache- und Verwaltungsaufrufe.

Ein Router muss Port 4527 als Verwaltungsport öffnen. Wenn Sie mehrere Router haben, müssen sie alle über Port 4527 auf die anderen zugreifen können (im Diagramm oben durch den Loop-Pfeil für Port 4527 auf dem Router dargestellt).

Es ist zwar nicht erforderlich, aber Sie können Port 4527 auf dem Router für den Zugriff durch jeden Nachrichtenprozessor öffnen. Andernfalls werden möglicherweise Fehlermeldungen in den Logdateien des Nachrichtenverarbeiters angezeigt.

8081 Standard-Verwaltungs-Port für Router. Muss auf der Komponente für den Zugriff durch den Verwaltungsserver geöffnet sein.
15999

Port für die Systemdiagnose. Ein Load Balancer verwendet diesen Port, um festzustellen, ob der Router verfügbar ist.

Um den Status eines Routers abzurufen, sendet der Load Balancer eine Anfrage an Port 15999 des Routers:

curl -v http://routerIP:15999/v1/servers/self/reachable

Wenn der Router erreichbar ist, wird für die Anfrage HTTP 200 zurückgegeben.

59001 Port, der vom Dienstprogramm apigee-validate zum Testen der Edge-Installation verwendet wird. Dieses Dienstprogramm benötigt Zugriff auf Port 59001 auf dem Router. Weitere Informationen zum Port 59001 finden Sie unter Installation testen.
SmartDocs 59002 Der Port am Edge-Router, an den SmartDocs-Seitenanfragen gesendet werden.
ZooKeeper 2181 Wird von anderen Komponenten wie dem Verwaltungsserver, dem Router und dem Nachrichtenprozessor verwendet.
2888, 3888 Wird intern von ZooKeeper für die Kommunikation mit dem ZooKeeper-Cluster (ZooKeeper-Ensemble) verwendet

In der folgenden Tabelle sind dieselben Ports nummerisch mit den Quell- und Zielkomponenten aufgeführt:

Portnummer Zweck Quellkomponente Zielkomponente
virtual_host_port HTTP und alle anderen Ports, die Sie für API-Aufrufe des virtuellen Hosts verwenden. Die Ports 80 und 443 werden am häufigsten verwendet. Der Message Router kann TLS-/SSL-Verbindungen beenden. Externer Client (oder Load Balancer) Listener auf dem Message Router
1099 bis 1103 JMX-Verwaltung JMX-Client Verwaltungsserver (1099)
Nachrichtenverarbeiter (1101)
Qpid-Server (1102)
Postgres-Server (1103)
2181 Zookeeper-Clientkommunikation Verwaltungsserver
Router
Nachrichtenprozessor
Qpid-Server
Postgres-Server
Zookeeper
2888 und 3888 Zookeeper-Internode-Verwaltung Zookeeper Zookeeper
4526 RPC-Verwaltungs-Port Verwaltungsserver Verwaltungsserver
4527 RPC-Verwaltungs-Port für verteilte Cache- und Verwaltungsaufrufe sowie für die Kommunikation zwischen Routern Verwaltungsserver
Router
Router
4528 Für verteilte Cacheaufrufe zwischen Message Processors und für die Kommunikation vom Router Verwaltungsserver
Router
Nachrichtenverarbeiter
Message Processor
4529 RPC-Verwaltungs-Port für verteilte Cache- und Verwaltungsaufrufe Verwaltungsserver Qpid-Server
4530 RPC-Verwaltungs-Port für verteilte Cache- und Verwaltungsaufrufe Verwaltungsserver Postgres-Server
5432 Postgres-Client Qpid-Server Postgres
5636 Monetarisierung Externe JMS-Komponente Verwaltungsserver
5672
  • Einzelnes Rechenzentrum: Wird zum Senden von Analysen vom Router und Message Processor an Qpid verwendet.
  • Mehrere Rechenzentren: Wird für die Kommunikation zwischen Qpid-Knoten in verschiedenen Rechenzentren verwendet.

Wird auch für die Kommunikation zwischen den Qpid-Server- und Broker-Komponenten auf demselben Knoten verwendet. In Topologien mit mehreren Qpid-Knoten muss der Server eine Verbindung zu allen Brokern über den Port 5672 herstellen können.

Qpid-Server Qpid-Server
7000 Cassandra-Knotenkommunikation Cassandra Anderer Cassandra-Knoten
7199 JMX-Verwaltung. Muss für den Zugriff auf den Cassandra-Knoten durch den Verwaltungsserver geöffnet sein. JMX-Client Cassandra
8080 Management API-Port Management API-Clients Verwaltungsserver
8081 bis 8084

Komponenten-API-Ports, die zum Senden von API-Anfragen direkt an einzelne Komponenten verwendet werden. Jede Komponente öffnet einen anderen Port. Der verwendete Port hängt von der Konfiguration ab, muss aber für den Zugriff des Verwaltungsservers auf der Komponente geöffnet sein.

Management API-Clients Router (8081)
Nachrichtenverarbeiter (8082)
Qpid-Server (8083)
Postgres-Server (8084)
8090 Standard-Verwaltungs-Port für den Broker von Qpid zum Verwalten und Überwachen von Warteschlangen. Browser oder API-Client Qpid-Broker (apigee-qpidd)
8443 Kommunikation zwischen Router und Message Processor, wenn TLS aktiviert ist Router Message Processor
8998 Kommunikation zwischen Router und Nachrichtenprozessor Router Message Processor
9000 Standard-Port der Edge-Verwaltungs-UI Browser Server der Verwaltungsoberfläche
9042 Nativer CQL-Transport Router
Nachrichtenverarbeiter
Verwaltungsserver
Cassandra
9099 Externe IdP-Authentifizierung IdP, Browser und Verwaltungsserver Apigee SSO
10389 LDAP-Port Verwaltungsserver OpenLDAP
15999 Port für die Systemdiagnose. Ein Load Balancer verwendet diesen Port, um festzustellen, ob der Router verfügbar ist. Load-Balancer Router
59001 Port, der vom Dienstprogramm apigee-validate zum Testen der Edge-Installation verwendet wird apigee-validate Router
59002 Der Routerport, an den SmartDocs-Seitenanfragen gesendet werden SmartDocs Router

Ein Nachrichtenverarbeiter hält einen speziellen Verbindungspool zu Cassandra offen, der so konfiguriert ist, dass es nie zu einem Zeitlimit kommt. Wenn sich zwischen einem Nachrichtenprozessor und einem Cassandra-Server eine Firewall befindet, kann die Firewall die Verbindung trennen. Der Nachrichten-Prozessor ist jedoch nicht dafür ausgelegt, Verbindungen zu Cassandra wiederherzustellen.

Um dies zu verhindern, empfiehlt Apigee, dass sich der Cassandra-Server, der Message Processor und die Router im selben Subnetz befinden, damit bei der Bereitstellung dieser Komponenten keine Firewall erforderlich ist.

Wenn sich zwischen dem Router und den Nachrichtenprozessoren eine Firewall befindet und eine TCP-Zeitüberschreitung für die Inaktivität festgelegt ist, empfehlen wir Folgendes:

  1. Legen Sie net.ipv4.tcp_keepalive_time = 1800 in den sysctl-Einstellungen unter Linux fest. Dabei sollte 1800 kleiner als die TCP-Zeitüberschreitung der Firewall sein. Mit dieser Einstellung sollte die Verbindung in einem aktiven Zustand bleiben, damit die Firewall die Verbindung nicht trennt.
  2. Bearbeiten Sie bei allen Nachrichten-Prozessoren /opt/apigee/customer/application/message-processor.properties, um die folgende Property hinzuzufügen. Wenn die Datei nicht vorhanden ist, erstellen Sie sie.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  3. Starten Sie den Message Processor neu:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  4. Bearbeiten Sie auf allen Routern /opt/apigee/customer/application/router.properties und fügen Sie die folgende Eigenschaft hinzu. Wenn die Datei nicht vorhanden ist, erstellen Sie sie.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  5. Router neu starten:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart