Hardwareanforderungen
Sie müssen die folgenden Hardwareanforderungen für eine hochverfügbare Infrastruktur in einer produktionstauglichen Umgebung erfüllen.
Im folgenden Video findest du eine grobe Größenempfehlung für deine Installation:
In den folgenden Tabellen sind für alle in Installationstopologien beschriebenen Installationsszenarien die Hardwareanforderungen der Installationskomponenten aufgeführt.
In diesen Tabellen gelten die Anforderungen an die Festplatte zusätzlich zum Festplattenspeicher, der vom Betriebssystem benötigt wird. Abhängig von Ihren Anwendungen und Ihrem Netzwerkverkehr benötigt Ihre Installation möglicherweise mehr oder weniger Ressourcen als unten aufgeführt.
Installationskomponente | RAM | CPU | Minimale Festplatte |
---|---|---|---|
Cassandra | 16 GB | 8-Kern | Lokaler Speicher mit 250 GB und SSD für 2.000 IOPS |
Nachrichtenprozessor/Router auf demselben Rechner | 16 GB | 8-Kern | 100GB |
Message Processor (eigenständig) | 16 GB | 8-Kern | 100GB |
Router (eigenständig) | 16 GB | 8-Kern | 100GB |
Analytics – Postgres/Qpid auf demselben Server | 16GB* | 8 Kerne* | 500 GB bis 1 TB** Netzwerkspeicher***, vorzugsweise mit SSD-Back-End, Unterstützung von mindestens 1.000 IOPS* |
Analytics – Postgres-Master oder -Standby (eigenständig) | 16GB* | 8 Kerne* | 500 GB bis 1 TB** Netzwerkspeicher***, vorzugsweise mit SSD-Back-End, Unterstützung von mindestens 1.000 IOPS* |
Analytics – Qpid (eigenständiges Qpid) | 8 GB | 4-Kern | Lokaler Speicher mit SSD (30 GB bis 50 GB)
Die Standardgröße der Qpid-Warteschlange beträgt 1 GB, die auf 2 GB erhöht werden kann. Wenn Sie mehr Kapazität benötigen, fügen Sie zusätzliche Qpid-Knoten hinzu. |
OpenLDAP/UI/Management Server | 8 GB | 4-Kern | 60 GB |
UI-/Management-Server | 4 GB | 2-Kerne | 60 GB |
OpenLDAP (eigenständig) | 4 GB | 2-Kerne | 60 GB |
* Passen Sie die Systemanforderungen von Postgres anhand des Durchsatzes an:
** Der Wert der Postgres-Festplatte basiert auf der von Edge erfassten sofort einsatzbereiten Analyse. Wenn Sie den Analysedaten benutzerdefinierte Werte hinzufügen, müssen diese Werte entsprechend erhöht werden. Verwenden Sie die folgende Formel, um den erforderlichen Speicherplatz zu schätzen:
Beispiel:
*** Netzwerkspeicher wird aus folgenden Gründen für die Postgresql-Datenbank empfohlen:
|
Außerdem sind im Folgenden die Hardwareanforderungen aufgeführt, wenn Sie die Monetarisierungsdienste installieren möchten. Diese werden bei All-in-One-Installationen nicht unterstützt:
Monetarisierungskomponente | RAM | CPU | Festplatte |
---|---|---|---|
Verwaltungsserver (mit Monetarisierungsdiensten) | 8 GB | 4 Kerne | 60 GB |
Analytics – Postgres/Qpid auf demselben Server | 16 GB | 8-Kern | Netzwerkspeicher mit 500 GB bis 1 TB, vorzugsweise mit SSD-Back-End, der mindestens 1.000 IOPS unterstützt, oder die Regel aus der obigen Tabelle verwenden. |
Analytics – Postgres-Master oder Standalone | 16 GB | 8-Kern | Netzwerkspeicher mit 500 GB bis 1 TB, vorzugsweise mit SSD-Back-End, der mindestens 1.000 IOPS unterstützt, oder die Regel aus der obigen Tabelle verwenden. |
Analytics – Qpid (eigenständiges Qpid) | 8 GB | 4-Kern | Lokaler Speicher von 40 bis 500 GB mit SSD oder schnellem HDD
Für Installationen mit mehr als 250 TPS wird HDD mit lokalem Speicher empfohlen, der 1.000 IOPS unterstützt. |
Anforderungen an Betriebssysteme und Drittanbieter-Software
Diese Installationsanleitung und die im Lieferumfang enthaltenen Installationsdateien wurden mit Betriebssystemen und Drittanbieter-Software getestet, die unter Unterstützte Software und unterstützte Versionen aufgeführt sind.
Java
Auf jedem Computer muss vor der Installation eine unterstützte Version von Java 1.8 installiert sein. Unterstützte JDKs sind unter Unterstützte Software und unterstützte Versionen aufgeführt.
Achten Sie darauf, dass die Umgebungsvariable JAVA_HOME
auf das Stammverzeichnis des JDK für den Nutzer verweist, der die Installation durchführt.
SELinux
Abhängig von Ihren Einstellungen für SELinux können bei Edge Probleme beim Installieren und Starten von Edge-Komponenten auftreten. Bei Bedarf können Sie SELinux während der Installation deaktivieren oder auf den eingeschränkten Modus setzen und nach der Installation wieder aktivieren. Weitere Informationen finden Sie unter Edge-Dienstprogramm apigee-setup installieren.
Erstellen des „apigee“-Benutzers
Das Installationsverfahren erstellt einen Unix-Systembenutzer mit dem Namen „apigee“. Edge-Verzeichnisse und -Dateien gehören zu „apigee“ wie auch Edge-Prozesse. Dies bedeutet, dass Edge-Komponenten als der Apigee-Benutzer ausgeführt werden. Bei Bedarf können Sie Komponenten als ein anderer Nutzer ausführen.
Installationsverzeichnis
Standardmäßig schreibt das Installationsprogramm alle Dateien in das Verzeichnis /opt/apigee
. Sie können diesen Verzeichnisspeicherort nicht ändern. Sie können dieses Verzeichnis zwar nicht ändern, aber einen Symlink erstellen, um /opt/apigee
einem anderen Standort zuzuordnen, wie unter Symlink von /opt/apigee erstellen beschrieben.
In der Anleitung in dieser Anleitung wird das Installationsverzeichnis als /opt/apigee
angegeben.
Einen Symlink von /opt/apigee erstellen
Bevor Sie den Symlink erstellen, müssen Sie zuerst einen Benutzer und eine Gruppe mit dem Namen „apigee“ erstellen. Dies ist dieselbe Gruppe und derselbe Nutzer, die vom Edge-Installationsprogramm erstellt wurden.
Führen Sie zum Erstellen des Symlink diese Schritte aus, bevor Sie die Datei bootstrap_4.52.00.sh herunterladen. Sie müssen alle folgenden 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
Dabei ist /srv/myInstallDir der gewünschte Speicherort der Edge-Dateien.
- Ändern Sie die Inhaberschaft des Installationsstamms und von Symlink zum Nutzer „apigee“:
chown -h apigee:apigee /srv/myInstallDir /opt/apigee
Werbenetzwerkeinstellung
Apigee empfiehlt, dass Sie die Netzwerkeinstellung vor der Installation prüfen. Das Installationsprogramm erwartet, dass alle Maschinen feste IP-Adressen haben. Validieren Sie die Einstellung mit den folgenden Befehlen:
hostname
gibt den Namen der Maschine zurück.hostname -i
gibt die IP-Adresse für den Hostnamen zurück, der von anderen Maschinen 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 Ihres Betriebssystems.
Wenn ein Server mehrere Schnittstellenkarten hat, gibt der Befehl „hostname -i“ eine durch Leerzeichen getrennte Liste von IP-Adressen zurück. Standardmäßig verwendet das Edge-Installationsprogramm die erste zurückgegebene IP-Adresse, die möglicherweise nicht in allen Situationen korrekt ist. Alternativ können Sie die folgende Eigenschaft in der Konfigurationsdatei für die Installation festlegen:
ENABLE_DYNAMIC_HOSTIP=y
Wenn diese Eigenschaft auf „y“ gesetzt ist, fordert das Installationsprogramm Sie auf, die IP-Adresse auszuwählen, die für die Installation verwendet werden soll. Der Standardwert ist „n“. Weitere Informationen finden Sie unter Referenz zur Edge-Konfigurationsdatei.
TCP-Wrapper
TCP-Wrapper können die Kommunikation einiger Ports blockieren und die Installation von OpenLDAP, Postgres und Cassandra beeinträchtigen. Prüfen Sie auf diesen Knoten /etc/hosts.allow
und /etc/hosts.deny
, damit es keine Porteinschränkungen für die erforderlichen OpenLDAP-, Postgres- und Cassandra-Ports gibt.
iptables
Prüfen Sie, ob keine iptables-Richtlinien vorhanden sind, die 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
Verzeichniszugriff
In der folgenden Tabelle sind Verzeichnisse auf Edge-Knoten aufgeführt, für die besondere Anforderungen von Edge-Prozessen gelten:
Dienst | Verzeichnis | Beschreibung |
---|---|---|
Router | /etc/rc.d/init.d/functions |
Der Edge Router verwendet den Nginx-Router und benötigt Lesezugriff auf Wenn Sie für Ihren Sicherheitsprozess Berechtigungen für Sie können Berechtigungen auf 744 setzen, um den Lesezugriff auf |
Zookeeper | /dev/random |
Die Zookeeper-Clientbibliothek benötigt Lesezugriff auf den Zufallszahlengenerator /dev/random . Wenn /dev/random beim Lesen blockiert ist, startet der Zookeeper-Dienst möglicherweise nicht. |
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-Schlüsselbereich bestimmt die Cassandra-Knoten, auf denen Replikate platziert werden. Weitere Informationen finden Sie unter Cassandra-Replikationsfaktor und Konsistenzebene.
Cassandra passt seine Java-Heap-Größe automatisch anhand des verfügbaren Arbeitsspeichers an. Weitere Informationen finden Sie unter Java-Ressourcen optimieren bei Leistungseinbußen oder hoher Arbeitsspeichernutzung.
Nach der Installation von Edge for Private Cloud können Sie prüfen, ob Cassandra richtig konfiguriert ist, indem Sie die Datei /opt/apigee/apigee-cassandra/conf/cassandra.yaml
untersuchen. Achten Sie beispielsweise darauf, dass das Edge for Private Cloud-Installationsskript die folgenden Attribute festgelegt hat:
cluster_name
initial_token
partitioner
seeds
listen_address
rpc_address
snitch
PostgreSQL-Datenbank
Nachdem Sie Edge installiert haben, können Sie die folgenden PostgreSQL-Datenbankeinstellungen anhand des auf Ihrem System verfügbaren Arbeitsspeichers 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 die Datei postgresql.properties:
vi /opt/apigee/customer/application/postgresql.properties
Falls die Datei nicht vorhanden ist, erstellen Sie sie.
- Legen Sie die oben aufgeführten Eigenschaften fest.
- Speichern Sie die Änderungen.
- Starten Sie die PostgreSQL-Datenbank neu:
/opt/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 Limits für weiche und harte Memlock-, Nofile- und Adressraum (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 apigee soft nproc 32768 apigee hard nproc 65536
- Legen Sie auf Message Processor-Knoten die maximale Anzahl geöffneter Dateideskriptoren in
/etc/security/limits.d/90-apigee-edge-limits.conf
auf 64 K fest:apigee soft nofile 32768 apigee hard nofile 65536
Bei Bedarf können Sie dieses Limit erhöhen. Das ist beispielsweise der Fall, wenn viele temporäre Dateien gleichzeitig geöffnet sind.
Wenn der folgende Fehler in einem Router- oder Nachrichtenprozessor
system.log
auftritt, sind die Dateideskriptor-Limits möglicherweise zu niedrig:"java.io.IOException: Too many open files"
Sie können die Nutzerlimits prüfen, indem Sie folgenden Befehl ausführen:
# su - apigee $ ulimit -n 100000
Wenn Sie die Einschränkungen für offene Dateien nach dem Festlegen der Dateideskriptor-Limits auf
100000
noch erreichen, öffnen Sie ein Ticket beim Apigee Edge-Support, um weitere Schritte zur Fehlerbehebung zu erhalten.
Netzwerksicherheitsdienste (NSS)
Network Security Services (NSS) besteht aus einer Reihe von Bibliotheken, die die Entwicklung von sicherheitsfähigen Client- und Serveranwendungen unterstützen. Sie sollten NSS v3.19 oder höher installiert haben.
So finden Sie Ihre 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 deaktivieren, wenn NSCD (Name Service Cache Daemon) verwendet wird
Wenn Sie NSCD (Name Service Cache Daemon) installiert und aktiviert haben, führen die Nachrichtenprozessoren zwei DNS-Lookups durch: eine für IPv4 und eine für IPv6. Sie sollten den DNS-Lookup für IPv6 deaktivieren, wenn Sie NSCD verwenden.
So deaktivieren Sie den DNS-Lookup für IPv6:
- Bearbeiten Sie
/etc/nscd.conf
auf jedem Message Processor-Knoten - Legen Sie die folgende Property 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 Ihrer jeweiligen Betriebssystemversion. Sie können z. B.
- Öffnen Sie
/etc/hosts
in einem Editor. - Fügen Sie in Spalte 1 der folgenden Zeile ein #-Zeichen ein, um es auskommentieren zu lassen:
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
- Speichern Sie die Datei.
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 von EL5 oder EL6.
awk |
expr |
liblib |
U/min |
unzip |
basename |
grep |
Lua-Socket |
rpm2cpio |
Zum Nutzer hinzufügen |
bash |
Hostname |
ls |
sed |
wc |
bc |
id |
net-tools |
sudo |
wget |
curl |
Libaio |
perl (von procps) |
tar |
Xerces-C |
Cyrus-Sasl | libdb4 | pgrep (von procps) | tr | Mmmhh, lecker |
date |
libdb-cxx |
ps |
uuid |
Chkconfig |
dirname | Liibverbien | pwd | Uname | |
echo | librdmacm | python |
ntpdate
Apigee empfiehlt, dass die Zeiten Ihrer Server synchronisiert werden. Falls noch nicht konfiguriert, kann das ntpdate
-Dienstprogramm diesen Zweck erfüllen und überprüft, ob Server zeitsynchronisiert sind. Sie können das Dienstprogramm mit yum install ntp
installieren. Dies ist besonders hilfreich beim Replizieren von OpenLDAP-Konfigurationen. Sie haben die Zeitzone des Servers in UTC eingerichtet.
openldap 2.4
Die lokale Installation erfordert OpenLDAP 2.4. 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 sicherstellen, 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.
Bei Installationen mit 13 Hosts und 12 Hosts mit zwei Rechenzentren ist eine OpenLDAP-Replikation erforderlich, da OpenLDAP auf mehreren Knoten gehostet wird.
Firewalls und virtuelle Hosts
Der Begriff virtual
wird im IT-Bereich häufig überlastet, daher wird er mit einem Apigee Edge für die Bereitstellung einer privaten Cloud und virtuellen Hosts verwendet. Der Begriff virtual
wird hauptsächlich auf zwei Arten verwendet:
- Virtuelle Maschinen (VM): nicht erforderlich, aber bei einigen Bereitstellungen werden mithilfe von VM-Technologie isolierte Server für die Apigee-Komponenten erstellt. 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 in ihrem Hostalias oder ihrem Schnittstellenport voneinander unterscheiden.
Ein Beispiel für die Benennung: Ein einzelner physischer Server A
könnte zwei VMs mit den Namen „VM1“ und „VM2“ ausführen. Nehmen wir an, „VM1“ stellt eine virtuelle Ethernet-Schnittstelle bereit, die innerhalb der VM „eth0“ genannt wird und der von der Virtualisierungsmaschine oder einem DHCP-Netzwerkserver die IP-Adresse 111.111.111.111
zugewiesen wird. Nehmen wir dann an, dass VM2 eine virtuelle Ethernet-Schnittstelle mit dem Namen „eth0“ zur Verfügung stellt und ihr die IP-Adresse 111.111.111.222
zugewiesen wird.
Möglicherweise läuft in jeder der beiden VMs ein Apigee-Router. Die Router geben virtuelle Hostendpunkte wie in diesem Beispiel frei:
Der Apigee-Router in VM1 stellt drei virtuelle Hosts auf seiner eth0-Schnittstelle (mit einer bestimmten IP-Adresse) bereit: api.mycompany.com:80
, api.mycompany.com:443
und test.mycompany.com:80
.
Der Router in VM2 macht api.mycompany.com:80
verfügbar (derselbe Name und Port wie von VM1 verfügbar).
Das Betriebssystem des physischen Hosts hat möglicherweise eine Netzwerkfirewall. In diesem Fall muss diese Firewall so konfiguriert sein, dass der TCP-Traffic an die Ports weitergegeben 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 ihrer eth0-Schnittstelle bereitstellen. Auch diese müssen die Verbindung des Traffics über die Ports 80 und 443 zulassen.
Der Basispfad ist die dritte Komponente, die an der Weiterleitung 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 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 gilt speziell für Ihre Installation und wird von Ihrer lokalen Netzwerkgruppe konfiguriert.
Der Basispfad wird beim Bereitstellen einer API festgelegt. Im obigen Beispiel können Sie zwei APIs, mycompany
und testmycompany
, für die Organisation mycompany-org
bereitstellen. Dabei ist der virtuelle Host mit dem Hostalias api.mycompany.com
und dem Port auf 80
festgelegt. Wenn Sie in der Bereitstellung keinen Basispfad angeben, 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 mit 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.
Lizenzierung
Jede Installation von Edge erfordert eine eindeutige Lizenzdatei, die Sie von Apigee erhalten. Sie müssen den Pfad zur Lizenzdatei bei der Installation des Verwaltungsservers angeben, z. B. /tmp/license.txt.
Das Installationsprogramm kopiert die Lizenzdatei nach /opt/apigee/customer/conf/license.txt
.
Wenn die Lizenzdatei gültig ist, validiert der Verwaltungsserver das Ablaufdatum und die zulässige Anzahl der Message Processor (MP). Wenn eine der Lizenzeinstellungen abgelaufen ist, finden Sie die Logs am folgenden Speicherort: /opt/apigee/var/log/edge-management-server/logs
.
Wenden Sie sich in diesem Fall an den Apigee Edge-Support, um Details zur Migration zu erhalten.
Wenn Sie noch keine Lizenz haben, wenden Sie sich an den Apigee Sales.