Das Verschieben von Komponenten von einem Rechner auf einen anderen kann zu nicht übereinstimmenden Konfigurationen führen, wenn Sie die IP-Adressen in den Komponentenkonfigurationsdateien nicht synchronisieren.
In diesem Abschnitt wird beschrieben, wie Sie Konfigurationsabweichungen diagnostizieren und beheben können.
IP-Adressen im Vergleich zu Hostnamen
Sie sollten in Ihren Komponentenkonfigurationsdateien IP-Adressen anstelle von Hostnamen verwenden.
Bei einigen Komponentenkonfigurationsdateien können Sie anstelle von IP-Adressen Hostnamen anstelle von IP-Adressen verwenden. Die Verwendung von Hostnamen kann jedoch die Fehlerbehebung erschweren. Hostnamen können beispielsweise die Ursache für Probleme im Zusammenhang mit der DNS-Serververbindung, Suchfehlern und der Synchronisierung sein.
Daher empfiehlt Apigee dringend, IP-Adressen für alle Komponentenkonfigurationen zu verwenden. In einigen Fällen, z. B. bei Cassandra, müssen Sie IP-Adressen verwenden, keine Hostnamen. In den meisten Beispielen in der Dokumentation werden IP-Adressen für die Komponentenkonfiguration verwendet.
Berücksichtigen Sie bei Hostnamen und IP-Adressen die Auswirkungen der folgenden Szenarien beim Verschieben von Apigee-Servern:
Szenario | Auswirkungen auf das Verschieben von Servern |
---|---|
Änderung der IP-Adresse | Alle zugehörigen Dateien aktualisieren, die auf die ursprüngliche IP-Adresse verweisen |
Änderung des Hostnamens ohne Änderung der IP-Adresse | Keine Auswirkung |
Änderung des Hostnamens bei Änderung der IP-Adresse | Entspricht einer Änderung der IP-Adresse |
IP-Adresse eines Cassandra-Knotens ändern
Führen Sie die folgenden Schritte aus, um die IP-Adresse eines Cassandra-Knotens zu ändern:
Für Konfigurationen mit einem einzelnen Cassandra-Knoten
- Bearbeiten Sie
/opt/apigee/customer/application/cassandra.properties
auf dem System, das geändert wird. Wenn die Datei nicht vorhanden ist, erstellen Sie sie. - Ändern Sie die folgenden Parameter:
- Legen Sie die Parameter
conf_cassandra_seeds
undconf_cassandra_listen_address
fest, um die neue IP-Adresse des Systems anzugeben. - Ändern Sie
conf_cassandra_rpc_address
so, dass entweder die neue IP-Adresse oder 0.0.0.0 verwendet wird. Dadurch kann Cassandra Thrift alle Schnittstellen überwachen.
- Legen Sie die Parameter
- Öffnen Sie
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
in einem Editor. Die alte IP-Adresse und die Standardeinstellung sollten im folgenden Format angezeigt werden:192.168.56.101=dc-1:ra-1 default=dc-1:ra-1
Speichern Sie diese Informationen.
- Bearbeiten Sie
/opt/apigee/customer/application/cassandra.properties
, um die alte IP-Adresse durch die neue IP-Adresse zu ändern:conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n
Achten Sie darauf, nach der IP-Adresse „\n“ einzufügen, und legen Sie dieselben Standardeinstellungen wie oben in Schritt 3 fest.
- Starten Sie Cassandra neu:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Falls erforderlich, reparieren Sie auch ZooKeeper (siehe IP-Adresse eines ZooKeeper-Knotens ändern). Andernfalls starten Sie alle Apigee-Plattformkomponenten neu, beginnend mit dem Verwaltungsserver.
Für Konfigurationen mit mehreren Cassandra-Knoten (Ring)
- Wenn der zu ändernde Knoten ein Startknoten ist, bearbeiten Sie die Datei
/opt/apigee/customer/application/cassandra.properties
in jedem System im Ring und ändern Sie den Parameterconf_cassandra_seeds
so, dass die neue IP-Adresse des geänderten Systems enthalten ist. Wenn die Datei cassandra.properties nicht vorhanden ist, erstellen Sie sie. - Bearbeiten Sie
/opt/apigee/customer/application/cassandra.properties
auf dem System, das geändert wird, und ändern Sie die folgenden Parameter:- Legen Sie für
conf_cassandra_listen_address
fest, dass die neue IP-Adresse verwendet wird. - Legen Sie für
conf_cassandra_rpc_address
fest, dass entweder die neue IP-Adresse oder „0.0.0.0“ verwendet wird. Dadurch kann Cassandra Thrift alle Schnittstellen überwachen.
- Legen Sie für
- Öffnen Sie
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
in einem Editor. Alle Cassandra-IP-Adressen und die Standardeinstellungen sollten im Format192.168.56.101=dc-1:ra-1 192.168.56.102=dc-1:ra-1 192.168.56.103=dc-1:ra-1 default=dc-1:ra-1
angezeigt werden.Speichern Sie diese Informationen.
- Bearbeiten Sie
/opt/apigee/customer/application/cassandra.properties
, um die alte IP-Adresse durch die neue IP-Adresse zu ändern:conf_cassandra-topology_topology=192.168.56.101=dc-1:ra-1\n192.168.56.102=dc-1:ra-1\n192.168.56.104=dc-1:ra-1\ndefault=dc-1:ra-1\n
Achten Sie darauf, nach jeder IP-Adresse „\n“ einzufügen, und verwenden Sie dieselben Standardeinstellungen wie oben in Schritt 3.
- Starten Sie Cassandra auf dem geänderten System neu.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Wiederholen Sie für alle anderen Knoten die in den Schritten 3 und 4 vorgenommenen Änderungen, um sie über die Position dieses Knotens im Cassandra-Ring zu informieren. Ändern Sie außerdem die IP-Adresse des Startknotens, wie in Schritt 1 beschrieben.
- Starten Sie jeden verbleibenden Cassandra-Knoten einzeln neu.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Führen Sie den Befehl
nodetool ring
auf dem geänderten Knoten aus, um sicherzustellen, dass der Ring abgeschlossen ist. Das Dienstprogramm finden Sie unter/opt/apigee/apigee-cassandra/bin
.nodetool [-u username -pw password] -h localhost ring
- Führen Sie
nodetool repair
auf dem geänderten Knoten aus. Beachten Sie, dass dieser Vorgang einige Zeit dauern kann. Daher wird dringend empfohlen, dies nicht während Spitzenzeiten für den API-Traffic durchzuführen.nodetool [-u username -pw password] -h localhost repair -pr
- Reparieren Sie bei Bedarf ZooKeeper (siehe IP-Adresse eines ZooKeeper-Knotens ändern) und starten Sie dann jede Apigee-Plattformkomponente neu, beginnend mit dem Management Server.
Datenspeicherregistrierungen aktualisieren
- Ermitteln Sie mit den folgenden Befehlen die UUIDs der Datenspeicherregistrierungen, die die alte IP-Adresse angeben. Notieren Sie sich die Parameter „type“ und „UUID“:
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics®ion=DC" | egrep -i '[type|internalip|uuid|region]'
Dabei ist DC der Name des Rechenzentrums. In einer einzelnen Rechenzentrumsinstallation lautet der Wert typischerweise „dc-1“.
-
- Registrieren Sie die neuen IP-Adressen mit einem der folgenden Befehle. Der erforderliche Befehl hängt vom Typ des geänderten Knotens ab.
- Für type="application-datastore":
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=application-datastore&Type=audit-datastore&InternalIP=NEWIP®ion=REGION&pod=central" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- Für type="kms-datastore":
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore&Type=counter-datastore&Type=cache-datastore \ &InternalIP=NEWIP®ion=REGION&pod=GATEWAY_POD" -H 'content-type: \ application/x-www-form-urlencoded' -X POST
- Für type="reportcrud-datastore":
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers" -d \ "Type=reportcrud-datastore&InternalIP=NEW_IP®ion=REGION&pod=analytics" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- Für type="application-datastore":
- Löschen Sie alte Registrierungen für die UUID des Systems, auf dem die IP-Adresse geändert wurde. Führen Sie für jedes dieser UUIDs-Probleme folgende Schritte aus:
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE
IP-Adresse eines ZooKeeper-Knotens ändern
Führen Sie die folgenden Schritte aus, um die IP-Adresse eines ZooKeeper-Knotens zu ändern:
IP-Adresse ändern und ZooKeeper-Ensemble neu starten (nur für Ensemble-Konfigurationen mit mehreren Knoten)
- Öffnen Sie
/opt/apigee/apigee-zookeeper/conf/zoo.cfg
in einem Editor. Sie sollten alle ZooKeeper-IP-Adressen und die Standardeinstellungen im folgenden Format sehen:server.1=192.168.56.101:2888:3888 server.2=192.168.56.102:2888:3888 server.3=192.168.56.103:2888:3888
Speichern Sie diese Informationen.
- Bearbeiten Sie in jedem ZooKeeper-Knoten die Datei
/opt/apigee/customer/application/zookeeper.properties
, um das Attributconf_zoo_quorum
auf die richtigen IP-Adressen festzulegen. Wenn die Datei nicht vorhanden ist, erstellen Sie sie.conf_zoo_quorum=server.1=192.168.56.101:2888:3888\nserver.2=192.168.56.102:2888:3888\nserver.3=192.168.56.104:2888:3888\n
Achten Sie darauf, dass Sie nach jeder IP-Adresse „\n“ einfügen und die Einträge auf jedem Knoten in derselben Reihenfolge sind.
- Ermitteln Sie den Leader des ZooKeeper-Ensembles mit dem folgenden Befehl (ersetzen Sie dabei node durch die IP-Adresse des Zookeeper-Computers):
echo srvr | nc node 2181
Die Mode-Zeile in der Ausgabe sollte „leader“ lauten.
- Starten Sie einen ZooKeeper nach dem anderen neu. Beginnen Sie dabei mit dem Leader und endet mit dem Knoten, auf dem die IP-Adresse geändert wurde. Wenn mehrere Zookeeper-Knoten die IP-Adressen geändert haben, müssen möglicherweise alle Knoten neu gestartet werden.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
- Überprüfen Sie jeden ZooKeeper-Knoten mit dem oben beschriebenen
echo
-Befehl.
Apigee-Knoten über die geänderte Konfiguration informieren
- Bearbeiten Sie die Datei
/opt/apigee/customer/application/router.properties
auf jedem Routerknoten so. Wenn die Datei nicht vorhanden ist, erstellen Sie sie.- Ändern Sie den Parameter
conf_zookeeper_connection.string
so, dass die neue IP-Adresse enthalten ist. - Ändern Sie den Parameter
conf_zookeeper_zk1.host
so, dass die neue IP-Adresse enthalten ist.
- Ändern Sie den Parameter
- Bearbeiten Sie die Datei
/opt/apigee/customer/application/message-processor.properties
auf jedem Message Processor-Knoten so. Wenn die Datei nicht vorhanden ist, erstellen Sie sie.- Ändern Sie den Parameter
conf_zookeeper_connection.string
so, dass er die neue IP-Adresse enthält. - Ändern Sie den Parameter
conf_zookeeper_zk1.host
so, dass die neue IP-Adresse enthalten ist.
- Ändern Sie den Parameter
- Bearbeiten Sie auf dem Knoten des Verwaltungsservers die Datei
/opt/apigee/customer/application/management-server.properties
so. Wenn die Datei nicht vorhanden ist, erstellen Sie sie.- Ändern Sie den Parameter
conf_zookeeper_connection.string
so, dass er die neue IP-Adresse enthält. - Ändern Sie den Parameter
conf_zookeeper_zk1.host
so, dass die neue IP-Adresse enthalten ist.
- Ändern Sie den Parameter
- Starten Sie alle Apigee-Plattformkomponenten neu, indem Sie auf jedem Knoten den folgenden Befehl ausführen:
/opt/apigee/apigee-service/bin/apigee-all restart
IP-Adresse eines LDAP-Servers ändern (OpenLDAP)
So ändern Sie die IP-Adresse eines OpenLDAP-Knotens:
- Bearbeiten Sie auf dem Knoten des Verwaltungsservers die Datei
/opt/apigee/customer/application/management-server.properties
. Wenn die Datei nicht vorhanden ist, erstellen Sie sie. - Legen Sie in der Datei
management-server.properties
den Parameterconf_security_ldap.server.host
auf die neue IP-Adresse fest. - Starten Sie den Verwaltungsserver neu:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
IP-Adresse anderer Apigee-Knotentypen ändern
So ändern Sie die IP-Adresse eines dieser Knotentypen (Router, Message Processor, Postgres Server (nicht postgresql) und Qpid-Server (nicht qpidd):
- Verwenden Sie den folgenden
curl
-Befehl, um die neue interne und externe IP-Adresse zu registrieren:curl -u ADMINEMAIL:PW -X PUT \ http://MSIP:8080/v1/servers/uuid -d ExternalIP=ip
curl -u ADMINEMAIL:PW -X PUT \ http://$MSIP:8080/v1/servers/uuid -d InternalIP=ip
Dabei ist uuid die UUID des Knotens.
Weitere Informationen zum Abrufen der UUID einer Komponente finden Sie unter UUIDs abrufen.