Hardwareanforderungen
Sie müssen die folgenden Mindestanforderungen an die Hardware für eine hochverfügbare Infrastruktur in einer produktionstauglichen Umgebung erfüllen.
Im folgenden Video erhalten Sie allgemeine Größenhinweise für Ihre Installation:
In den folgenden Tabellen sind für alle unter Installationstopologien beschriebenen Installationsszenarien die Mindestanforderungen an die Hardware für die Installationskomponenten aufgeführt.
Diese Tabellen enthalten zusätzlich zum vom Betriebssystem benötigten Festplattenspeicher. Je nach Anwendungen und Netzwerkverkehr kann Ihre Installation mehr oder weniger Ressourcen erfordern als unten aufgeführt.
Installationskomponente | RAM | CPU | Mindestgröße der Festplatte |
---|---|---|---|
Cassandra | 16 GB | 8-Kern | 250 GB lokaler Speicher mit SSD, der 2.000 IOPS unterstützt |
Nachrichtenprozessor/Router auf demselben Computer | 16 GB | 8-Kern | 100GB |
Nachrichtenverarbeiter (eigenständig) | 16 GB | 8-Kern | 100GB |
Router (eigenständig) | 16 GB | 8-Kern | 100GB |
Analytics – Postgres/Qpid auf demselben Server | 16GB* | 8‐Kern* | 500 GB bis 1 TB** Netzwerkspeicher***, vorzugsweise mit SSD-Back-End, Unterstützung von 1.000 IOPS oder mehr* |
Analytics – Postgres-Master oder Standalone (eigenständig) | 16GB* | 8-Kern* | 500 GB bis 1 TB** Netzwerkspeicher***, vorzugsweise mit SSD-Back-End, Unterstützung von 1.000 IOPS oder mehr* |
Analytics – Qpid (eigenständig) | 8 GB | 4-Kern | 30–50 GB lokaler Speicher mit SSD
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-/Verwaltungsserver | 4 GB | 2-Kern | 60 GB |
OpenLDAP (eigenständig) | 4 GB | 2-Kern | 60 GB |
* Postgres-Systemanforderungen je nach Durchsatz anpassen:
** Der Wert der Postgres-Festplatte basiert auf den von Edge erfassten sofort einsatzbereiten Analysen. 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:
Beispiel:
*** Für die Postgresql-Datenbank wird Netzwerkspeicher aus folgenden Gründen empfohlen:
|
Außerdem sind im Folgenden die Hardwareanforderungen aufgeführt, wenn du die Monetarisierungsdienste installieren möchtest (nicht unterstützt bei der All-in-One-Installation):
Komponente mit Monetarisierung | RAM | CPU | Festplatte |
---|---|---|---|
Verwaltungsserver (mit Monetarisierungsdiensten) | 8 GB | 4‐Kern | 60 GB |
Analytics – Postgres/Qpid auf demselben Server | 16 GB | 8-Kern | 500 GB bis 1 TB Netzwerkspeicher, vorzugsweise mit SSD-Back-End, das 1.000 IOPS oder mehr unterstützt, oder die Regel aus der obigen Tabelle verwenden. |
Analytics – Postgres-Master oder Standalone | 16 GB | 8-Kern | 500 GB bis 1 TB Netzwerkspeicher, vorzugsweise mit SSD-Back-End, das 1.000 IOPS oder mehr unterstützt, oder die Regel aus der obigen Tabelle verwenden. |
Analytics – Qpid (eigenständig) | 8 GB | 4-Kern | 40 GB bis 500 GB lokaler Speicher 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 Betriebssystem und Drittanbieter-Software
Diese Installationsanleitung und die mitgelieferten Installationsdateien wurden unter den Betriebssystemen und Software von Drittanbietern getestet, die unter Unterstützte Software und unterstützte Versionen aufgeführt sind.
Java
Auf jedem Rechner 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 ausführt.
SELinux
Abhängig von Ihren Einstellungen für SELinux können bei Edge Probleme beim Installieren und Starten von Edge-Komponenten auftreten. Falls erforderlich, können Sie SELinux deaktivieren oder während der Installation in den moderaten Modus versetzen und nach der Installation wieder aktivieren. Weitere Informationen finden Sie unter Edge-Apigee-Setup-Dienstprogramm installieren.
Apigee-Benutzer erstellen
Das Installationsverfahren erstellt einen Unix-Systemnutzer namens „apigee“. Edge-Verzeichnisse und -Dateien gehören zu „Apigee“, ebenso wie Edge-Prozessen. Das bedeutet, dass Edge-Komponenten als „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 Sie können einen Symlink erstellen, um /opt/apigee
einem anderen Standort zuzuordnen, wie unter Symlink aus /opt/apigee erstellen beschrieben.
In der vorliegenden Anleitung wird das Installationsverzeichnis als /opt/apigee
angegeben.
Einen Symlink aus /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 die folgenden Schritte aus, bevor Sie die Datei bootstrap_4.52.02.sh herunterladen. Sie müssen alle folgenden Schritte als Root ausführen:
- Erstellen Sie den „Apigee“-Nutzer und die Gruppe:
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 Installationsstamm:ln -Ts /srv/myInstallDir /opt/apigee
Dabei ist /srv/myInstallDir der gewünschte Speicherort der Edge-Dateien.
- Ändern Sie die Inhaberschaft des Installationsstamms und des Symlink auf den „apigee“-Nutzer:
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. Verwenden Sie die folgenden Befehle, um die Einstellung zu validieren:
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 des 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.
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 das folgende Attribut in der Konfigurationsdatei für die Installation festlegen:
ENABLE_DYNAMIC_HOSTIP=y
Wenn dieses Attribut auf „y“ festgelegt ist, werden Sie vom Installationsprogramm aufgefordert, die IP-Adresse auszuwählen, die bei der Installation verwendet werden soll. Der Standardwert ist „n“. Weitere Informationen finden Sie unter Referenz zu Edge-Konfigurationsdateien.
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 für die erforderlichen OpenLDAP-, Postgres- und Cassandra-Ports keine Portbeschränkungen vorliegen.
iptables
Prüfen Sie, ob keine iptables-Richtlinien die Verbindung zwischen Knoten auf 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, die besondere Anforderungen von Edge-Prozessen haben:
Dienst | Verzeichnis | Beschreibung |
---|---|---|
Router | /etc/rc.d/init.d/functions |
Der Edge Router verwendet den Nginx-Router und benötigt Lesezugriff auf Wenn Sie im Rahmen Ihres Sicherheitsprozesses Berechtigungen für Sie können Berechtigungen auf 744 festlegen, um Lesezugriff auf |
Zookeeper | /dev/random |
Die Zookeeper-Clientbibliothek benötigt Lesezugriff auf den Zufallszahlengenerator /dev/random . Wenn /dev/random beim Lesen blockiert ist, kann der Zookeeper-Dienst möglicherweise nicht gestartet werden. |
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 die Größe des Java-Heaps basierend auf dem verfügbaren Arbeitsspeicher automatisch an. Weitere Informationen finden Sie unter Java-Ressourcen abstimmen, falls sich die Leistung verschlechtert oder die Arbeitsspeichernutzung zu hoch ist.
Nach der Installation von Edge für Private Cloud können Sie prüfen, ob Cassandra richtig konfiguriert ist. Sehen Sie sich dazu die Datei /opt/apigee/apigee-cassandra/conf/cassandra.yaml
an. Achten Sie beispielsweise darauf, dass das Edge-Installationsskript für die private Cloud die folgenden Eigenschaften festlegt:
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 je nach verfügbarem RAM auf Ihrem System 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
Wenn 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 Limits für Soft und Hard Memlock, Nofile und Adressbereich (als) 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 für 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. Das ist beispielsweise der Fall, wenn gleichzeitig sehr viele temporäre Dateien geöffnet sind.
Wenn der folgende Fehler in der
system.log
eines Routers oder Message Processor auftritt, sind die Limits für den Dateideskriptor möglicherweise zu niedrig angesetzt:"java.io.IOException: Too many open files"
So prüfen Sie die Nutzerlimits:
# su - apigee $ ulimit -n 100000
Wenn Sie die Grenzen für offene Dateien immer noch erreichen, nachdem Sie die Dateideskriptor-Limits auf
100000
gesetzt haben, öffnen Sie ein Ticket beim Apigee Edge-Support, um weitere Schritte zur Fehlerbehebung zu erhalten.
Netzwerksicherheitsdienste (Network Security Services, NSS)
Network Security Services (NSS) besteht aus einer Reihe von Bibliotheken, die die Entwicklung von für Sicherheit aktivierten Client- und Serveranwendungen unterstützen. Sie müssen NSS v3.19 oder höher installiert haben.
So prüfen 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 Message Processors 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 unter IPv6:
- Bearbeiten Sie
/etc/nscd.conf
auf jedem Message Processor-Knoten. - 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. 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 auszukommentieren:
#::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, wie sie von EL5 oder EL6 bereitgestellt werden.
awk |
expr |
Lib |
U/min |
unzip |
basename |
grep |
Lua-Socket |
rpm2cpio |
Nutzer hinzufügen |
bash |
Hostname |
ls |
sed |
wc |
bc |
id |
net-tools |
sudo |
wget |
curl |
Libaio |
Perl (von Anbietern) |
tar |
Xerces-C |
Cyrus-Sasl | libdb4 | pgrep (von procps) | tr | yum |
date |
libdb-cxx |
ps |
uuid |
chkconfig |
dirname | Libibverbs | pwd | Uname | |
echo | librdmacm | python |
ntpdate
Apigee empfiehlt, die Zeiten Ihrer Server zu synchronisieren. Das Dienstprogramm ntpdate
kann diesen Zweck erfüllen, wenn es nicht bereits konfiguriert ist. Es prüft, ob Server zeitsynchronisiert werden. Sie können das Dienstprogramm mit yum install ntp
installieren. Dies ist besonders nützlich, um OpenLDAP-Konfigurationen zu replizieren. Beachten Sie, dass Sie die Zeitzone des Servers in UTC festlegen.
openldap 2.4
Die lokale Installation erfordert OpenLDAP 2.4. Wenn Ihr Server mit dem Internet verbunden ist, 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.
Bei Installationen mit 13 Hosts und 12 Hosts mit zwei Rechenzentren ist eine OpenLDAP-Replikation erforderlich, da OpenLDAP von mehreren Knoten gehostet wird.
Firewalls und virtuelle Hosts
Der Begriff virtual
wird im IT-Bereich häufig überlastet, sodass er bei einem Apigee Edge für die Private Cloud-Bereitstellung und für virtuelle Hosts der Fall ist. Zur Klarstellung: Es gibt zwei primäre Verwendungsmöglichkeiten für den Begriff virtual
:
- Virtuelle Maschinen (VM): Nicht erforderlich, aber einige Bereitstellungen verwenden VM-Technologie, um isolierte Server für ihre Apigee-Komponenten zu erstellen. VM-Hosts wie physische Hosts können Netzwerkschnittstellen und Firewalls haben.
- Virtuelle Hosts: Webendpunkte, analog zu einem virtuellen Apache-Host.
Ein Router in einer VM kann mehrere virtuelle Hosts freigeben (solange sie sich in ihrem Hostalias oder in ihrem Schnittstellenport voneinander unterscheiden).
Ein einzelner physischer Server A
könnte beispielsweise zwei VMs mit den Namen "VM1" und "VM2" ausführen. Angenommen, „VM1“ stellt eine virtuelle Ethernet-Schnittstelle bereit, die in der VM den Namen „eth0“ erhält, der die IP-Adresse 111.111.111.111
von den Virtualisierungsmaschinen oder einem Netzwerk-DHCP-Server zugewiesen wird. Dann gehen wir davon aus, dass VM2 eine virtuelle Ethernet-Schnittstelle mit dem Namen „eth0“ bereitstellt, 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 wie in diesem hypothetischen Beispiel bereit:
Der Apigee-Router in VM1 macht drei virtuelle Hosts auf seiner eth0-Schnittstelle (die eine bestimmte IP-Adresse hat) verfügbar: api.mycompany.com:80
, api.mycompany.com:443
und test.mycompany.com:80
.
Der Router in VM2 gibt api.mycompany.com:80
frei (derselbe Name und Port wie von VM1 bereitgestellt).
Das Betriebssystem des physischen Hosts kann eine Netzwerkfirewall haben. In diesem Fall muss diese Firewall so konfiguriert sein, dass der TCP-Traffic für die Ports, die auf den virtualisierten Schnittstellen (111.111.111.111:{80, 443}
und 111.111.111.222:80
) verfügbar gemacht werden, weitergeleitet wird. Darüber hinaus kann das Betriebssystem jeder VM eine eigene Firewall auf ihrer eth0-Schnittstelle bereitstellen, die auch Traffic über die Ports 80 und 443 zulassen kann.
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 http://api.mycompany.com:80/ Traffic zwischen den beiden IP-Adressen (111.111.111.111
auf VM1 und 111.111.111.222
auf VM2) aufteilt. Diese Funktion ist installationsspezifisch 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
bereitstellen, wobei der virtuelle Host mit dem Hostalias api.mycompany.com
und dem Port 80
festgelegt ist. Wenn Sie in der Bereitstellung keinen Basispfad angeben, weiß der Router nicht, an welche API er eingehende Anfragen senden soll.
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
Für jede Edge-Installation ist eine eindeutige Lizenzdatei erforderlich, die Sie von Apigee erhalten. Sie müssen den Pfad zur Lizenzdatei bei der Installation des Verwaltungsservers angeben, z. B. /tmp/lizenz.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 von Message Processor (MP). Wenn eine der Lizenzeinstellungen abgelaufen ist, finden Sie die Logs an folgendem Speicherort: /opt/apigee/var/log/edge-management-server/logs
.
In diesem Fall können Sie sich an den Apigee Edge-Support wenden, um Details zur Migration zu erhalten.
Wenn Sie noch keine Lizenz haben, wenden Sie sich an den Apigee-Vertrieb.