Wenn Sie Komponenten von einer Maschine auf eine andere verschieben, kann es zu einer Konfigurationsabweichung kommen, wenn Sie die IP-Adressen in den Konfigurationsdateien der Komponenten nicht synchron halten.
In diesem Abschnitt wird beschrieben, wie Sie Konfigurationsabweichungen diagnostizieren und beheben.
IP-Adressen im Vergleich zu Hostnamen
Verwenden Sie in den Konfigurationsdateien Ihrer Komponenten IP-Adressen anstelle von Hostnamen.
In einigen Konfigurationsdateien für Komponenten können Sie Hostnamen anstelle von IP-Adressen verwenden. Die Verwendung von Hostnamen kann die Fehlerbehebung jedoch erschweren. Hostnamen können beispielsweise die Ursache für Probleme im Zusammenhang mit der DNS-Serververbindung, Lookup-Fehlern 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 und können keine Hostnamen verwenden. In den meisten Beispielen in der Dokumentation werden IP-Adressen für die Komponentenkonfiguration verwendet.
Berücksichtigen Sie bei der Migration von Apigee-Servern die Auswirkungen der folgenden Szenarien für Hostnamen und IP-Adressen:
Szenario | Auswirkungen auf das Verschieben von Servern |
---|---|
Änderung der IP-Adresse | Aktualisieren Sie alle zugehörigen Dateien, die auf die ursprüngliche IP-Adresse verweisen. |
Hostname ändern, ohne die IP-Adresse zu ändern | Keine Auswirkungen |
Hostname-Änderung bei Änderung der IP-Adresse | Entspricht einer Änderung der IP-Adresse |
IP-Adresse eines Cassandra-Knotens ändern
So ändern Sie die IP-Adresse eines Cassandra-Knotens:
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
, sodass entweder die neue IP-Adresse oder 0.0.0.0 verwendet wird. Dadurch kann Cassandra Thrift auf allen Schnittstellen lauschen.
- Legen Sie die Parameter
- Öffnen Sie
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
in einem Editor. Im Formular sollten Sie die alte IP-Adresse und die Standardeinstellung sehen: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 in 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, dass Sie nach der IP-Adresse „\n“ einfügen und dieselben Standardeinstellungen wie in Schritt 3 oben angeben.
- Starten Sie Cassandra neu:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Reparieren Sie bei Bedarf auch ZooKeeper (siehe IP-Adresse eines ZooKeeper-Knotens ändern). Andernfalls starten Sie jede Apigee-Plattformkomponente neu, beginnend mit dem Management Server.
Für Konfigurationen mit mehreren Cassandra-Knoten (Ring)
- Wenn der geänderte Knoten ein Seed-Knoten ist, bearbeiten Sie die Datei
/opt/apigee/customer/application/cassandra.properties
auf 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 zu ändernden System und ändern Sie die folgenden Parameter:- Legen Sie
conf_cassandra_listen_address
so fest, dass die neue IP-Adresse verwendet wird. - Legen Sie
conf_cassandra_rpc_address
entweder auf die neue IP-Adresse oder auf „0.0.0.0“ fest (damit Cassandra Thrift auf allen Schnittstellen lauschen kann).
- Legen Sie
- Öffnen Sie
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
in einem Editor. Sie sollten alle Cassandra-IP-Adressen und die Standardeinstellung in folgendem Format sehen:192.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
Speichern Sie diese Informationen.
- Bearbeiten Sie
/opt/apigee/customer/application/cassandra.properties
, um die alte IP-Adresse in 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, dass Sie nach jeder IP-Adresse „\n“ einfügen und dieselben Standardeinstellungen verwenden, die Sie oben in Schritt 3 angegeben haben.
- 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 Änderungen aus Schritt 3 und 4, um sie über die Position dieses Knotens im Cassandra-Ring zu informieren. Ändern Sie außerdem die IP-Adresse des Seed-Knotens, 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 vollständig ist. Das Tool 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. Dieser Vorgang kann einige Zeit in Anspruch nehmen. Es wird daher dringend empfohlen, ihn nicht während der Stoßzeiten des API-Traffics durchzuführen.nodetool [-u username -pw password] -h localhost repair -pr
- Reparieren Sie ZooKeeper bei Bedarf (siehe IP-Adresse eines ZooKeeper-Knotens ändern) und starten Sie dann jede Apigee-Plattformkomponente neu, beginnend mit dem Management Server.
Datenspeicherregistrierungen aktualisieren
- Suchen Sie mit den folgenden Befehlen nach den UUIDs von Datenspeicherregistrierungen, in denen die alte IP-Adresse angegeben ist. 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 Installation in einem einzelnen Rechenzentrum ist der Wert in der Regel „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 jede dieser UUIDs Folgendes aus:
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE
IP-Adresse eines ZooKeeper-Knotens ändern
So ändern Sie die IP-Adresse eines ZooKeeper-Knotens:
IP-Adresse ändern und ZooKeeper-Ensemble neu starten (nur für Konfigurationen mit mehreren Knoten)
- Öffnen Sie
/opt/apigee/apigee-zookeeper/conf/zoo.cfg
in einem Editor. Sie sollten alle ZooKeeper-IP-Adressen und die Standardeinstellung in folgendem 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 auf 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 dass die Einträge auf jedem Knoten in derselben Reihenfolge stehen.
- Ermitteln Sie den Leader des ZooKeeper-Ensembles mit dem folgenden Befehl (ersetzen Sie node durch die IP-Adresse des ZooKeeper-Computers):
echo srvr | nc node 2181
In der Zeile „Mode“ in der Ausgabe sollte „leader“ stehen.
- Starten Sie die ZooKeepers nacheinander neu, beginnend mit dem Leader und endend mit dem Knoten, auf dem die IP-Adresse geändert wurde. Wenn sich die IP-Adressen von mehr als einem Zookeeper-Knoten geändert haben, müssen Sie möglicherweise alle Knoten neu starten.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
- Verwenden Sie den oben beschriebenen Befehl
echo
, um jeden ZooKeeper-Knoten zu überprüfen.
Apigee-Knoten über die geänderte Konfiguration informieren
- Bearbeiten Sie auf jedem Routerknoten die Datei
/opt/apigee/customer/application/router.properties
so: Wenn die Datei nicht vorhanden ist, erstellen Sie sie.- Ändern Sie den Parameter
conf_zookeeper_connection.string
, sodass er die neue IP-Adresse enthält. - Ändern Sie den Parameter
conf_zookeeper_zk1.host
, sodass er die neue IP-Adresse enthält.
- Ändern Sie den Parameter
- Bearbeiten Sie auf jedem Message Processor-Knoten die Datei
/opt/apigee/customer/application/message-processor.properties
so: Wenn die Datei nicht vorhanden ist, erstellen Sie sie.- Ändern Sie den Parameter
conf_zookeeper_connection.string
, sodass er die neue IP-Adresse enthält. - Ändern Sie den Parameter
conf_zookeeper_zk1.host
, sodass er die neue IP-Adresse enthält.
- Ändern Sie den Parameter
- Bearbeiten Sie auf dem Management Server-Knoten 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
, sodass er die neue IP-Adresse enthält. - Ändern Sie den Parameter
conf_zookeeper_zk1.host
, sodass er die neue IP-Adresse enthält.
- Ändern Sie den Parameter
- Starten Sie alle Apigee-Plattformkomponenten neu, indem Sie den folgenden Befehl auf jedem Knoten ausführen:
/opt/apigee/apigee-service/bin/apigee-all restart
IP-Adresse eines LDAP-Servers ändern (SymasLDAP)
So ändern Sie die IP-Adresse eines SymasLDAP-Knotens:
- Bearbeiten Sie auf dem Management Server-Knoten 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.
Informationen zum Abrufen der UUID einer Komponente finden Sie unter UUIDs abrufen.