Edge for Private Cloud v. 4.17.01
Hardware Requirements
Sie müssen die folgenden Mindestanforderungen an die Hardware für eine hochverfügbare Infrastruktur in einer produktionsreifen Umgebung erfüllen. Für alle unter Installationstopologien beschriebenen Installationsszenarien sind in den folgenden Tabellen die Mindesthardwareanforderungen für die Installationskomponenten aufgeführt.
In diesen Tabellen sind die Festplattenanforderungen zusätzlich zu dem vom Betriebssystem benötigten Speicherplatz aufgeführt. Je nach Anwendungen und Netzwerkverkehr sind für Ihre Installation möglicherweise mehr oder weniger Ressourcen als unten aufgeführt erforderlich.
|
Installationskomponente |
RAM |
CPU |
Mindestfestplattenspeicher |
|---|---|---|---|
|
Cassandra |
16 GB |
8-Core |
250 GB lokaler Speicher mit SSD oder schneller HDD, die 2.000 IOPS unterstützt |
|
Message Processor/Router auf demselben Computer |
8/16 GB |
4‑Core† |
100 GB |
|
Analytics – Postgres/Qpid auf demselben Server (nicht für die Produktion empfohlen) |
16 GB* |
8-Core* |
500 GB bis 1 TB** Netzwerkspeicher***, vorzugsweise mit SSD-Backend, der 1.000 IOPS oder mehr unterstützt*. |
|
Analytics – Postgres eigenständig |
16 GB* |
8-Core* |
500 GB bis 1 TB** Netzwerkspeicher***, vorzugsweise mit SSD-Backend, der 1.000 IOPS oder mehr unterstützt*. |
|
Analytics – Qpid eigenständig |
8 GB |
4-Core |
30–50 GB lokaler Speicher mit SSD oder schneller HDD Für Installationen mit mehr als 250 TPS wird eine HDD mit lokalem Speicher empfohlen, der 1.000 IOPS unterstützt. Die Standardgröße der Qpid-Warteschlange beträgt 20 GB. Wenn Sie mehr Kapazität benötigen, fügen Sie zusätzliche Qpid-Knoten hinzu. |
|
Sonstiges (OpenLDAP, UI, Management Server) |
4 GB |
2-Core |
60 GB |
|
† Passen Sie die Systemanforderungen für den Message Processor basierend auf dem Durchsatz an: Die Mindestempfehlung ist 4 Kerne und 8 Kerne für ein System mit hohem Durchsatz. Sie können Leistungstests durchführen, um die optimale Größe für Ihre APIs zu ermitteln. |
|||
|
*Passen Sie die Postgres-Systemanforderungen basierend auf dem Durchsatz an:
|
|||
|
**Der Postgres-Festplattenwert basiert auf den von Edge erfassten Standardanalysen. Wenn Sie den Analysedaten benutzerdefinierte Werte hinzufügen, sollten diese Werte entsprechend erhöht werden. Verwenden Sie die folgende Formel, um den erforderlichen Speicherplatz zu schätzen: |
|||
|
*** Netzwerkspeicher wird für PostgreSQL-Datenbanken aus folgenden Gründen empfohlen:
|
|||
Darüber hinaus sind im Folgenden die Hardwareanforderungen aufgeführt, wenn Sie die Monetarisierungsdienste installieren möchten:
|
Komponente mit Monetarisierung |
RAM |
CPU |
Festplatte |
|---|---|---|---|
|
Verwaltungsserver (mit Monetarisierungsdiensten) |
8 GB |
4-Core |
60 GB |
|
Analytics – Postgres/Qpid auf demselben Server |
16 GB |
8-Core |
500 GB bis 1 TB Netzwerkspeicher, vorzugsweise mit SSD-Backend, das 1.000 IOPS oder mehr unterstützt, oder verwenden Sie die Regel aus der Tabelle oben. |
|
Analytics – Postgres eigenständig |
16 GB |
8-Core |
500 GB bis 1 TB Netzwerkspeicher, vorzugsweise mit SSD-Backend, das 1.000 IOPS oder mehr unterstützt, oder verwenden Sie die Regel aus der Tabelle oben. |
|
Analytics – Qpid eigenständig |
8 GB |
4-Core |
40 GB bis 500 GB lokaler Speicher mit SSD oder schneller HDD
Für Installationen mit mehr als 250 TPS wird eine HDD mit lokalem Speicher empfohlen, der 1.000 IOPS unterstützt.
|
Im Folgenden sind die Hardwareanforderungen für die Installation von API BaaS aufgeführt:
|
API BaaS-Komponente |
RAM |
CPU |
Festplatte |
|---|---|---|---|
|
ElasticSearch* |
8 GB |
4-Core |
60–80 GB |
|
API BaaS Stack * |
8 GB |
4-Core |
60–80 GB |
|
API BaaS-Portal |
1 GB |
2-Core |
20 GB |
|
Cassandra (optional – normalerweise verwenden Sie denselben Cassandra-Cluster für Edge- und API BaaS-Dienste) |
16 GB |
8-Core |
250 GB lokaler Speicher mit SSD oder schneller HDD, die 2.000 IOPS unterstützt |
|
* Sie können ElasticSearch und API BaaS Stack auf demselben Knoten installieren. Wenn ja, konfigurieren Sie ElasticSearch so, dass 4 GB Arbeitsspeicher (Standard) verwendet werden. Wenn ElasticSearch auf einem eigenen Knoten installiert ist, konfigurieren Sie es so, dass 6 GB Arbeitsspeicher verwendet werden. |
|||
Hinweis:
- Wenn das Root-Dateisystem nicht groß genug für die Installation ist, wird empfohlen, die Daten auf ein größeres Laufwerk zu verschieben.
- Wenn auf dem Computer eine ältere Version von Apigee Edge for Private Cloud installiert war, müssen Sie den Ordner /tmp/java vor einer Neuinstallation löschen.
- Der systemweite temporäre Ordner /tmp benötigt Ausführungsberechtigungen, um Cassandra zu starten.
- Wenn der Nutzer „apigee“ vor der Installation erstellt wurde, muss „/home/apigee“ als Basisverzeichnis vorhanden sein und „apigee:apigee“ gehören.
Anforderungen an das Betriebssystem und Drittanbietersoftware
Diese Installationsanleitung und die mitgelieferten Installationsdateien wurden auf den hier aufgeführten Betriebssystemen und Drittanbieter-Software getestet: https://apigee.com/docs/api-services/reference/supported-software.
Apigee-Nutzer erstellen
Bei der Installation wird ein Unix-Systemnutzer namens „apigee“ erstellt. Edge-Verzeichnisse und -Dateien gehören „apigee“, ebenso wie Edge-Prozesse. Das bedeutet, dass Edge-Komponenten als „apigee“-Nutzer ausgeführt werden. Bei Bedarf können Sie Komponenten als anderer Nutzer ausführen. Ein Beispiel finden Sie unter „Router an einen geschützten Port binden“ im Abschnitt Edge-Komponenten auf einem Knoten installieren.
Installationsverzeichnis
Standardmäßig schreibt das Installationsprogramm alle Dateien in das Verzeichnis /opt/apigee. Sie können diesen Verzeichnispfad nicht ändern. Sie können dieses Verzeichnis zwar nicht ändern, aber einen symbolischen Link erstellen, um /opt/apigee einem anderen Speicherort zuzuordnen, wie unten beschrieben.
In der Anleitung in diesem Leitfaden wird das Installationsverzeichnis als /<inst_root>/apigee angegeben, wobei /<inst_root> standardmäßig /opt ist.
Symlink von /opt/apigee erstellen
Bevor Sie den symbolischen Link erstellen, müssen Sie zuerst einen Nutzer und eine Gruppe mit dem Namen „apigee“ erstellen. Dies ist dieselbe Gruppe und derselbe Nutzer, die vom Edge-Installationsprogramm erstellt wurden.
Führen Sie die folgenden Schritte aus, um den symbolischen Link zu erstellen, bevor Sie die Datei bootstrap_4.17.01.sh herunterladen. Sie müssen alle diese Schritte als Root ausführen:
- Erstellen Sie den Nutzer und die Gruppe „apigee“:
> groupadd -r apigee
> useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee - Erstellen Sie einen Symlink von /opt/apigee zum gewünschten Installationsstammverzeichnis:
> ln -Ts /srv/myInstallDir /opt/apigee
wobei /srv/myInstallDir der gewünschte Speicherort der Edge-Dateien ist. - Ändern Sie die Eigentümerschaft des Installationsstammverzeichnisses und des Symlinks in den Nutzer „apigee“:
> chown -h apigee:apigee /srv/myInstallDir /opt/apigee
Java
Vor der Installation muss auf jedem Computer eine unterstützte Version von Java 1.8 installiert sein. Unterstützte JDKs sind hier aufgeführt:
https://apigee.com/docs/api-services/reference/supported-software
Achten Sie darauf, dass JAVA_HOME auf das Stammverzeichnis des JDK für den Nutzer verweist, der die Installation ausführt.
SELinux
Je nach Ihren Einstellungen für SELinux können bei der Installation und beim Starten von Edge-Komponenten Probleme auftreten. Bei Bedarf können Sie SELinux während der Installation deaktivieren oder in den Modus „Permissive“ versetzen und nach der Installation wieder aktivieren. Weitere Informationen finden Sie unter Edge-Dienstprogramm „apigee-setup“ installieren.
Einstellung für Werbenetzwerke
Es wird empfohlen, die Netzwerkeinstellung vor der Installation zu prüfen. Das Installationsprogramm erwartet, dass alle Maschinen feste IP-Adressen haben. Verwenden Sie die folgenden Befehle, um die Einstellung zu prüfen:
- hostname gibt den Namen des Computers zurück.
- hostname -i gibt die IP-Adresse für den Hostnamen zurück, der von anderen Maschinen aus adressiert werden kann.
Je nach Typ und Version Ihres Betriebssystems müssen Sie möglicherweise /etc/hosts und /etc/sysconfig/network bearbeiten, wenn der Hostname nicht richtig festgelegt ist. Weitere Informationen finden Sie in der Dokumentation zu Ihrem Betriebssystem.
TCP-Wrapper
TCP-Wrapper können die Kommunikation einiger Ports blockieren und sich auf die Installation von OpenLDAP, Postgres und Cassandra auswirken. Prüfen Sie auf diesen Knoten /etc/hosts.allow und /etc/hosts.deny, um sicherzustellen, dass keine Portbeschränkungen für die erforderlichen OpenLDAP-, Postgres- und Cassandra-Ports gelten.
iptables
Prüfen Sie, ob iptables-Richtlinien die Verbindung zwischen Knoten an den erforderlichen Edge-Ports verhindern. Bei Bedarf können Sie iptables während der Installation mit dem folgenden Befehl beenden:
> sudo /etc/init.d/iptables stop
Unter CentOS 7.x:
> systemctl stop firewalld
Sicherstellen, dass der Edge-Router auf /etc/rc.d/init.d/functions zugreifen kann
Die Edge-Router- und BaaS-Portal-Knoten verwenden den Nginx-Router und benötigen Lesezugriff auf /etc/rc.d/init.d/functions.
Wenn Ihr Sicherheitsprozess erfordert, dass Sie Berechtigungen für /etc/rc.d/init.d/functions festlegen, legen Sie diese nicht auf 700 fest, da der Router sonst nicht gestartet werden kann. Die Berechtigungen können auf 744 festgelegt werden, um Lesezugriff auf /etc/rc.d/init.d/functions zu gewähren.
Cassandra
Alle Cassandra-Knoten müssen mit einem Ring verbunden sein. Cassandra speichert Datenreplikate auf mehreren Knoten, um Zuverlässigkeit und Fehlertoleranz zu gewährleisten. Die Replikationsstrategie für jeden Edge-Keyspace bestimmt die Cassandra-Knoten, auf denen Replikate platziert werden. Weitere Informationen finden Sie unter Cassandra-Replikationsfaktor und -Konsistenzstufe.
Cassandra passt die Java-Heap-Größe automatisch an den verfügbaren Arbeitsspeicher an. Weitere Informationen finden Sie unter Java-Ressourcen optimieren. Bei Leistungseinbußen oder hohem Arbeitsspeicherverbrauch.
Nach der Installation von Edge for Private Cloud können Sie prüfen, ob Cassandra richtig konfiguriert ist. Sehen Sie sich dazu die Datei /<inst_root>/apigee/apigee-cassandra/conf/cassandra.yaml an. Prüfen Sie beispielsweise, ob das Installationsskript für Edge for Private Cloud die folgenden Attribute festgelegt hat:
- cluster_name
- initial_token
- partitioner
- seeds
- listen_address
- rpc_address
- snitch
Warnung: Bearbeiten Sie diese Datei nicht.
PostgreSQL-Datenbank
Nach der Installation von Edge können Sie die folgenden PostgreSQL-Datenbankeinstellungen basierend auf der Menge des auf Ihrem System verfügbaren RAM anpassen:
conf_postgresql_shared_buffers = 35% of RAM # min 128kB conf_postgresql_effective_cache_size = 45% of RAM conf_postgresql_work_mem = 512MB # min 64kB
So legen Sie diese Werte fest:
- Bearbeiten Sie postgresql.properties:
> vi /<inst_root>/apigee/customer/application/postgresql.properties
Wenn die Datei nicht vorhanden ist, erstellen Sie sie. - Legen Sie die oben aufgeführten Attribute fest.
- Speichern Sie die Änderungen.
- Starten Sie die PostgreSQL-Datenbank neu:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
Systemlimits
Achten Sie darauf, dass Sie die folgenden Systemlimits für Cassandra- und Message Processor-Knoten festgelegt haben:
- Legen Sie auf Cassandra-Knoten die weichen und harten Limits für „memlock“, „nofile“ und „address space“ (as) für den Installationsnutzer (Standard ist „apigee“) in /etc/security/limits.d/90-apigee-edge-limits.conf fest, wie unten gezeigt:
apigee soft memlock unlimited
apigee hard memlock unlimited
apigee soft nofile 32768
apigee hard nofile 65536
apigee soft as unlimited
apigee hard as unlimited
- Legen Sie auf Message Processor-Knoten die maximale Anzahl geöffneter Dateideskriptoren in /etc/security/limits.d/90-apigee-edge-limits.conf auf 64.000 fest, wie unten gezeigt:
apigee soft nofile 32768
apigee hard nofile 65536
Bei Bedarf können Sie dieses Limit erhöhen. Beispiel: Wenn Sie eine große Anzahl temporärer Dateien gleichzeitig geöffnet haben.
jsvc
„jsvc“ ist eine Voraussetzung für die Verwendung von API BaaS. Die Version 1.0.15-dev wird installiert, wenn Sie die API BaaS installieren.
Network Security Services (NSS)
Network Security Services (NSS) ist eine Reihe von Bibliotheken, die die Entwicklung von sicherheitsaktivierten Client- und Serveranwendungen unterstützen. Sie sollten sicherstellen, dass Sie NSS v3.19 oder höher installiert haben.
So prüfen Sie die aktuelle Version:
> yum info nss
So aktualisieren Sie NSS:
> yum update nss
Weitere Informationen finden Sie in diesem Artikel von RedHat.
DNS-Lookup für IPv6 bei Verwendung von NSCD (Name Service Cache Daemon) deaktivieren
Wenn Sie NSCD (Name Service Cache Daemon) installiert und aktiviert haben, führen die Message Processors zwei DNS-Suchen durch: eine für IPv4 und eine für IPv6. Wenn Sie NSCD verwenden, sollten Sie die DNS-Suche für IPv6 deaktivieren.
So deaktivieren Sie die DNS-Suche für IPv6:
- Bearbeiten Sie auf jedem Message Processor-Knoten /etc/nscd.conf.
- Legen Sie das folgende Attribut fest:
enable-cache hosts no
IPv6 auf der Google Cloud Platform für RedHat/CentOS 7 deaktivieren
Wenn Sie Edge unter RedHat 7 oder CentOS 7 auf der Google Cloud Platform installieren, müssen Sie IPv6 auf allen Qpid-Knoten deaktivieren.
Eine Anleitung zum Deaktivieren von IPv6 finden Sie in der RedHat- oder CentOS-Dokumentation für Ihre spezifische Betriebssystemversion.
AWS AMI
Wenn Sie Edge auf einem AWS Amazon Machine Image (AMI) für Red Hat Enterprise Linux 7.x installieren, müssen Sie zuerst den folgenden Befehl ausführen:
> yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
Tools
Das Installationsprogramm verwendet die folgenden UNIX-Tools in der Standardversion, die von EL5 oder EL6 bereitgestellt wird.
|
awk |
expr |
lua-socket |
Atemzüge/Min. |
unzip |
|
basename |
grep |
ls |
rpm2cpio |
useradd |
|
bash |
Hostname |
net-tools |
sed |
wc |
|
bc |
id |
perl (aus procps) |
sudo |
wget |
|
curl |
libaio |
pgrep (von procps) |
tar |
xerces-c |
|
cyrus-sasl
|
libdb-cxx
|
ps | tr | yum |
|
Datum |
libibverbs
|
pwd |
uuid |
chkconfig |
| Verz.-name |
librdmacm
|
Python | uname | |
| Echo |
libxslt
|
Hinweis:
- Die ausführbare Datei für das Tool „useradd“ befindet sich in /usr/sbin und für chkconfig in /sbin.
- Mit sudo-Zugriff können Sie auf die Umgebung des aufrufenden Nutzers zugreifen. Normalerweise rufen Sie dazu „sudo <command>“ oder „sudo PATH=$PATH:/usr/sbin:/sbin <command>“ auf.
- Achten Sie darauf, dass das „Patch“-Tool installiert ist, bevor Sie ein Service Pack (Patch) installieren.
ntpdate: Es wird empfohlen, die Serverzeit zu synchronisieren. Falls noch nicht konfiguriert, kann das Dienstprogramm „ntpdate“ verwendet werden, um zu prüfen, ob die Server zeitsynchronisiert sind. Sie können das Dienstprogramm mit yum install ntp installieren. Dies ist besonders nützlich, um OpenLDAP-Einrichtungen zu replizieren. Beachten Sie, dass Sie die Serverzeitzone in UTC einrichten.
openldap 2.4: Für die lokale Installation ist OpenLDAP 2.4 erforderlich. Wenn Ihr Server eine Internetverbindung hat, lädt das Edge-Installationsskript OpenLDAP herunter und installiert es. Wenn Ihr Server keine Internetverbindung hat, müssen Sie dafür sorgen, dass OpenLDAP bereits installiert ist, bevor Sie das Edge-Installationsskript ausführen. Unter RHEL/CentOS können Sie yum install openldap-clients openldap-servers ausführen, um OpenLDAP zu installieren.
Für Installationen mit 13 Hosts und Installationen mit 12 Hosts mit zwei Rechenzentren ist eine OpenLDAP-Replikation erforderlich, da mehrere Knoten OpenLDAP hosten.
Firewalls und virtuelle Hosts
Der Begriff „virtuell“ wird in der IT-Branche häufig überlastet, so auch bei einer Apigee Edge for Private Cloud-Bereitstellung und virtuellen Hosts. Zur Klarstellung: Der Begriff „virtuell“ wird in zwei Hauptbedeutungen verwendet:
- Virtuelle Maschinen (VMs): Nicht erforderlich, aber bei einigen Bereitstellungen wird VM-Technologie verwendet, um isolierte Server für die Apigee-Komponenten zu erstellen. VM-Hosts können wie physische Hosts Netzwerkschnittstellen und Firewalls haben.
- Virtuelle Hosts: Webendpunkte, analog zu einem virtuellen Apache-Host.
Ein Router in einer VM kann mehrere virtuelle Hosts verfügbar machen, sofern sie sich im Host-Alias oder im Schnittstellenport voneinander unterscheiden.
Beispiel: Auf einem einzelnen physischen Server „A“ werden zwei VMs mit den Namen „VM1“ und „VM2“ ausgeführt. Nehmen wir an, VM1 stellt eine virtuelle Ethernet-Schnittstelle bereit, die innerhalb der VM den Namen eth0 erhält und der von der Virtualisierungsmaschine oder einem Netzwerk-DHCP-Server die IP-Adresse 111.111.111.111 zugewiesen wird. Nehmen wir außerdem an, dass VM2 eine virtuelle Ethernet-Schnittstelle bereitstellt, die ebenfalls den Namen „eth0“ hat und der die IP-Adresse 111.111.111.222 zugewiesen wird.
In jeder der beiden VMs wird möglicherweise ein Apigee-Router ausgeführt. Die Router stellen virtuelle Hostendpunkte bereit, wie in diesem hypothetischen Beispiel:
Der Apigee-Router in VM1 stellt drei virtuelle Hosts auf seiner eth0-Schnittstelle (die eine bestimmte IP-Adresse hat) bereit: api.mycompany.com:80, api.mycompany.com:443 und test.mycompany.com:80.
Der Router in VM2 stellt api.mycompany.com:80 bereit (selber Name und Port wie von VM1 bereitgestellt).
Das Betriebssystem des physischen Hosts verfügt möglicherweise über eine Netzwerk-Firewall. Wenn dies der Fall ist, muss diese Firewall so konfiguriert sein, dass TCP-Traffic an die Ports weitergeleitet wird, die auf den virtualisierten Schnittstellen (111.111.111.111:{80, 443} und 111.111.111.222:80) verfügbar gemacht werden. Darüber hinaus kann das Betriebssystem jeder VM eine eigene Firewall auf der eth0-Schnittstelle bereitstellen. Auch diese muss Traffic über die Ports 80 und 443 zulassen.
Der Basispfad ist die dritte Komponente, die am Routing von API-Aufrufen an verschiedene API-Proxys beteiligt ist, die Sie möglicherweise bereitgestellt haben. API-Proxy-Bundles können einen Endpunkt gemeinsam nutzen, wenn sie unterschiedliche Basispfade haben. Beispielsweise kann ein Basispfad als http://api.mycompany.com:80/ und ein anderer als http://api.mycompany.com:80/salesdemo definiert werden.
In diesem Fall benötigen Sie einen Load Balancer oder Traffic Director, der den Traffic von http://api.mycompany.com:80/ zwischen den beiden IP-Adressen (111.111.111.111 auf VM1 und 111.111.111.222 auf VM2) aufteilt. Diese Funktion ist spezifisch für Ihre jeweilige Installation und wird von Ihrer lokalen Netzwerkgruppe konfiguriert.
Der Basispfad wird festgelegt, wenn Sie eine API bereitstellen. Im obigen Beispiel können Sie zwei APIs, mycompany und testmycompany, für die Organisation mycompany-org mit dem virtuellen Host bereitstellen, der den Host-Alias api.mycompany.com und den Port 80 hat. Wenn Sie in der Bereitstellung keinen Basispfad deklarieren, weiß der Router nicht, an welche API eingehende Anfragen gesendet werden sollen.
Wenn Sie jedoch die API testmycompany mit der Basis-URL /salesdemo bereitstellen, greifen Nutzer über http://api.mycompany.com:80/salesdemo auf diese API zu. Wenn Sie die API „mycompany“ mit der Basis-URL „/“ bereitstellen, greifen Ihre Nutzer über die URL http://api.mycompany.com:80/ auf die API zu.
Edge-Port-Anforderungen
Die Verwaltung der Firewall geht über die virtuellen Hosts hinaus. Sowohl VM- als auch physische Host-Firewalls müssen Traffic für die Ports zulassen, die die Komponenten für die Kommunikation untereinander benötigen.
In der folgenden Abbildung sind die Portanforderungen für die einzelnen Edge-Komponenten dargestellt:

Hinweise zu diesem Diagramm:
-
*Port 8082 auf dem Message Processor muss nur für den Zugriff durch den Router geöffnet sein, wenn Sie TLS/SSL zwischen dem Router und dem Message Processor konfigurieren. Wenn Sie TLS/SSL nicht zwischen dem Router und dem Message Processor konfigurieren, muss die Standardkonfiguration, Port 8082, weiterhin auf dem Message Processor geöffnet sein, um die Komponente zu verwalten. Der Router benötigt jedoch keinen Zugriff darauf.
- Die Ports mit dem Präfix „M“ werden zum Verwalten der Komponente verwendet und müssen auf der Komponente für den Zugriff durch den Management Server geöffnet sein.
- Die folgenden Komponenten benötigen Zugriff auf Port 8080 auf dem Management Server: Router, Message Processor, UI, Postgres und Qpid.
- Ein Message Processor muss Port 4528 als Verwaltungsport öffnen. Wenn Sie mehrere Message Processors haben, müssen diese alle über Port 4528 aufeinander zugreifen können (gekennzeichnet durch den Schleifenpfeil im Diagramm oben für Port 4528 auf dem Message Processor). Wenn Sie mehrere Rechenzentren haben, muss der Port von allen Message Processors in allen Rechenzentren aus zugänglich sein.
- Es ist zwar nicht erforderlich, aber Sie können Port 4527 auf dem Router für den Zugriff durch einen beliebigen Message Processor öffnen. Andernfalls werden möglicherweise Fehlermeldungen in den Logdateien des Message Processors angezeigt.
- Ein Router muss Port 4527 als Verwaltungsport öffnen. Wenn Sie mehrere Router haben, müssen diese alle über Port 4527 aufeinander zugreifen können (gekennzeichnet durch den Schleifenpfeil im obigen Diagramm für Port 4527 auf dem Router).
- Die Edge-Benutzeroberfläche benötigt Zugriff auf den Router über die von API-Proxys bereitgestellten Ports, um die Schaltfläche Senden im Trace-Tool zu unterstützen.
- Der Management Server benötigt Zugriff auf den JMX-Port auf den Cassandra-Knoten.
- Der Zugriff auf JMX-Ports kann so konfiguriert werden, dass ein Nutzername und ein Passwort erforderlich sind. Weitere Informationen finden Sie unter Monitoring.
- Sie können optional den TLS/SSL-Zugriff für bestimmte Verbindungen konfigurieren, die unterschiedliche Ports verwenden können. Weitere Informationen finden Sie unter TLS/SSL.
- 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. Sie können optional Ports auf einzelnen Knoten öffnen, um SSH-Zugriff zu ermöglichen.
- Sie können den Management Server 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 Management Server und die Benutzeroberfläche auf den erforderlichen Port auf dem SMTP-Server zugreifen können. Bei SMTP ohne TLS ist die Portnummer in der Regel 25. Bei TLS-fähigem SMTP ist es oft 465. Erkundigen Sie sich aber bei Ihrem SMTP-Anbieter.
In der folgenden Tabelle sind die Ports aufgeführt, die in Firewalls nach Edge-Komponente geöffnet werden müssen:
|
Komponente |
Port |
Beschreibung |
|---|---|---|
|
Standard-HTTP-Ports |
80, 443 |
HTTP und alle anderen Ports, die Sie für virtuelle Hosts verwenden |
|
Verwaltungsserver |
8080 |
Port für Edge Management API-Aufrufe. Diese Komponenten benötigen Zugriff auf Port 8080 auf dem Management Server: Router, Message Processor, UI, Postgres und Qpid. |
|
1099 |
JMX-Port |
|
|
4526 |
Für verteilte Cache- und Verwaltungsaufrufe |
|
|
Verwaltungs-UI |
9000 |
Port für Browserzugriff auf die Verwaltungs-UI |
|
Message Processor |
8998 |
Message Processor-Port für die Kommunikation vom Router |
|
8082 |
Standardmäßiger Verwaltungsport für den Message Processor. Er muss auf der Komponente für den Zugriff durch den Management Server geöffnet sein.
Wenn Sie TLS/SSL zwischen dem Router und dem Message Processor konfigurieren, wird es vom Router für Systemdiagnosen des Message Processors verwendet.
|
|
|
1101 |
JMX-Port |
|
|
4528 |
Für verteilte Cache- und Verwaltungsaufrufe zwischen Message Processors und für die Kommunikation vom Router |
|
|
Router |
8081 |
Standardmäßiger Verwaltungsport für den Router, der auf der Komponente für den Zugriff durch den Management Server geöffnet sein muss. |
|
4527 |
Für verteilte Cache- und Verwaltungsaufrufe |
|
|
15999 |
Systemdiagnose-Port. 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 auf dem Router: > curl -v http://<routerIP>:15999/v1/servers/self/reachable Wenn der Router erreichbar ist, gibt die Anfrage HTTP 200 zurück. |
|
|
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 zu Port 59001 finden Sie unter Installation testen. |
|
|
ZooKeeper |
2181 |
Wird von anderen Komponenten wie Management Server, Router, Message Processor usw. verwendet. |
|
2888, 3888 |
Wird intern von ZooKeeper für die Kommunikation im ZooKeeper-Cluster (auch als ZooKeeper-Ensemble bezeichnet) verwendet |
|
|
Cassandra |
7000, 9042, 9160 |
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. |
|
|
Qpid |
5672 |
Wird für die Kommunikation vom Router und Message Processor zum Qpid-Server verwendet |
|
8083 |
Standardmäßiger Verwaltungsport auf dem Qpid-Server, der auf der Komponente für den Zugriff durch den Management Server geöffnet sein muss. |
|
|
1102 |
JMX-Port |
|
|
4529 |
Für verteilte Cache- und Verwaltungsaufrufe |
|
|
Postgres |
5432 |
Wird für die Kommunikation von Qpid/Management Server zu Postgres verwendet |
|
8084 |
Standardverwaltungsport auf dem Postgres-Server, der auf der Komponente für den Zugriff durch den Management Server geöffnet sein muss. |
|
|
1103 |
JMX-Port |
|
|
4530 |
Für verteilte Cache- und Verwaltungsaufrufe |
|
|
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. |
|
|
LDAP |
10389 |
OpenLDAP |
|
SmartDocs |
59002 |
Der Port auf dem Edge-Router, an den SmartDocs-Seitenanfragen gesendet werden. |
In der folgenden Tabelle sind dieselben Ports numerisch aufgeführt, zusammen mit den Quell- und Zielkomponenten:
|
Portnummer |
Zweck |
Quellkomponente |
Zielkomponente |
|---|---|---|---|
|
<virtual host port#> |
HTTP und alle anderen Ports, die Sie für den API-Aufruftraffic 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 Nachrichtenrouter |
|
1099 bis 1103 |
JMX-Verwaltung |
JMX-Client |
Verwaltungsserver (1099) Message Processor (1101) Qpid-Server (1102) Postgres-Server (1103) |
|
2181 |
Zookeeper-Client-Kommunikation |
Verwaltungsserver Router Message Processor Qpid-Server Postgres-Server |
Zookeeper |
|
2888 und 3888 |
Zookeeper-Internode-Verwaltung |
Zookeeper |
Zookeeper |
|
4526 |
RPC-Verwaltungsport |
Verwaltungsserver |
Verwaltungsserver |
| 4527 | RPC-Verwaltungsport für verteilte Cache- und Verwaltungsaufrufe sowie für die Kommunikation zwischen Routern |
Verwaltungsserver Router |
Router |
|
4528 |
Für verteilte Cache-Aufrufe zwischen Message Processors und für die Kommunikation vom Router |
Verwaltungsserver Router Message Processor |
Message Processor |
| 4529 | RPC-Verwaltungsport für verteilten Cache und Verwaltungsaufrufe | Verwaltungsserver | Qpid-Server |
| 4530 | RPC-Verwaltungsport für verteilten Cache und Verwaltungsaufrufe | Verwaltungsserver | Postgres-Server |
|
5432 |
Postgres-Client |
Qpid-Server |
Postgres |
|
5672 |
Wird zum Senden von Analysen vom Router und Message Processor an Qpid verwendet |
Router Message Processor |
Qpid-Server |
|
7000 |
Cassandra-Kommunikation zwischen Knoten |
Cassandra |
Anderer Cassandra-Knoten |
|
7199 |
JMX-Verwaltung. Muss für den Zugriff auf den Cassandra-Knoten durch den Management Server 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 genaue Port hängt von der Konfiguration ab, muss aber auf der Komponente für den Zugriff durch den Management Server geöffnet sein. |
Management API-Clients |
Router (8081) Message Processor (8082) Qpid-Server (8083) Postgres-Server (8084) |
|
8998 |
Kommunikation zwischen Router und Message Processor |
Router |
Message Processor |
|
9000 |
Standardport der Edge-Verwaltungs-UI |
Browser |
Management UI Server |
|
9042 |
Nativer CQL-Transport |
Router Message Processor Verwaltungsserver |
Cassandra |
|
9160 |
Cassandra-Thrift-Client |
Router Message Processor Verwaltungsserver |
Cassandra |
|
10389 |
LDAP-Port |
Verwaltungsserver |
OpenLDAP |
| 15999 |
Systemdiagnose-Port. 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 Router-Port, an den SmartDocs-Seitenanfragen gesendet werden |
SmartDocs |
Router |
Ein Message Processor hält einen dedizierten Verbindungspool zu Cassandra offen, der so konfiguriert ist, dass es nie zu einer Zeitüberschreitung kommt. Wenn sich eine Firewall zwischen einem Message Processor und einem Cassandra-Server befindet, kann es zu einer Zeitüberschreitung der Verbindung kommen. Der Message Processor ist jedoch nicht dafür ausgelegt, Verbindungen zu Cassandra wiederherzustellen.
Um diese Situation zu vermeiden, 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 beteiligt ist.
Wenn sich zwischen dem Router und den Message Processors eine Firewall befindet und ein TCP-Zeitlimit für Inaktivität festgelegt ist, empfehlen wir Folgendes:
- Legen Sie in den sysctl-Einstellungen unter Linux net.ipv4.tcp_keepalive_time = 1800 fest, wobei 1800 kleiner als das TCP-Zeitlimit für inaktive Firewalls sein sollte. Mit dieser Einstellung sollte die Verbindung in einem hergestellten Zustand bleiben, damit die Firewall die Verbindung nicht trennt.
- Bearbeiten Sie auf allen Message Processors /<inst_root>/apigee/customer/application/message-processor.properties, um das folgende Attribut hinzuzufügen. Wenn die Datei nicht vorhanden ist, erstellen Sie sie.
conf_system_cassandra.maxconnecttimeinmillis=-1 - Starten Sie den Message Processor neu:
> /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart - Bearbeiten Sie auf allen Routern /<inst_root>/apigee/customer/application/router.properties, um das folgende Attribut hinzuzufügen. Wenn die Datei nicht vorhanden ist, erstellen Sie sie.
conf_system_cassandra.maxconnecttimeinmillis=-1 - Starten Sie den Router neu:
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart
Wenn Sie die Clusterkonfiguration mit 12 Hosts und zwei Rechenzentren installieren, müssen die Knoten in den beiden Rechenzentren über die unten aufgeführten Ports kommunizieren können:

API BaaS-Portanforderungen
Wenn Sie API BaaS installieren möchten, fügen Sie die Komponenten „API BaaS Stack“ und „API BaaS Portal“ hinzu. Diese Komponenten verwenden die in der folgenden Abbildung gezeigten Ports:

Hinweise zu diesem Diagramm:
- Das API BaaS-Portal sendet nie Anfragen direkt an einen BaaS Stack-Knoten. Wenn sich ein Entwickler im Portal anmeldet, wird die Portal-App in den Browser heruntergeladen. Die im Browser ausgeführte Portal-App sendet dann Anfragen an die BaaS-Stack-Knoten.
- Bei einer Produktionsinstallation von API BaaS wird ein Load Balancer zwischen dem API BaaS-Portalknoten und den API BaaS-Stackknoten verwendet. Wenn Sie das Portal konfigurieren und BaaS-API-Aufrufe ausführen, geben Sie die IP-Adresse oder den DNS-Namen des Load Balancers an, nicht die der Stack-Knoten.
- Alle Stack-Knoten müssen Port 2551 für den Zugriff von allen anderen Stack-Knoten öffnen (gekennzeichnet durch den Schleifenpfeil im Diagramm oben für Port 2551 auf den Stack-Knoten). Wenn Sie mehrere Rechenzentren haben, muss der Port von allen Stack-Knoten in allen Rechenzentren aus zugänglich sein.
- Sie müssen alle Baas Stack-Knoten so konfigurieren, dass E-Mails über einen externen SMTP-Server gesendet werden. Bei Nicht-TLS-SMTP ist die Portnummer in der Regel 25. Bei TLS-fähigem SMTP ist es oft 465. Erkundigen Sie sich aber bei Ihrem SMTP-Anbieter.
- Die Cassandra-Knoten können für API BaaS dediziert oder mit Edge geteilt werden.
In der folgenden Tabelle sind die Standardports aufgeführt, die in Firewalls geöffnet werden müssen, nach Komponente:
|
Komponente |
Port |
Beschreibung |
|---|---|---|
|
API BaaS-Portal |
9000 |
Port für die API BaaS-Benutzeroberfläche |
|
API BaaS Stack |
8080 |
Port, an dem API-Anfragen empfangen werden |
| 2551 |
Port für die Kommunikation zwischen allen Stack-Knoten. Muss für alle anderen Stack-Knoten im Rechenzentrum zugänglich sein. Wenn Sie mehrere Rechenzentren haben, muss der Port von allen Stack-Knoten in allen Rechenzentren aus zugänglich sein. |
|
|
ElasticSearch |
9.200 bis 9.400 |
Für die Kommunikation mit dem API BaaS-Stack und für die Kommunikation zwischen ElasticSearch-Knoten |
Lizenzierung
Für jede Installation von Edge ist eine eindeutige Lizenzdatei erforderlich, die Sie von Apigee erhalten. Sie müssen den Pfad zur Lizenzdatei angeben, wenn Sie den Management Server installieren, z. B. /tmp/license.txt.
Das Installationsprogramm kopiert die Lizenzdatei nach /<inst_root>/apigee/customer/conf/license.txt.
Wenn die Lizenzdatei gültig ist, validiert der Verwaltungsserver das Ablaufdatum und die zulässige Anzahl von Message Processors (MP). Wenn eine der Lizenzeinstellungen abgelaufen ist, finden Sie die Logs unter /<inst_root>/apigee/var/log/edge-management-server/logs. In diesem Fall können Sie sich an den Apigee-Support wenden, um Migrationsdetails zu erhalten.
Wenn Sie noch keine Lizenz haben, wenden Sie sich an den Vertrieb.