Apigee-Server verschieben

Edge for Private Cloud Version 4.19.01

Das Verschieben von Komponenten von einer Maschine auf eine andere kann zu Konfigurationsabweichungen führen, wenn Sie die IP-Adressen in Ihren Komponentenkonfigurationsdateien nicht synchron halten.

In diesem Abschnitt wird beschrieben, wie Sie Konfigurationsabweichungen diagnostizieren und beheben.

IP-Adressen und Hostnamen

In den Konfigurationsdateien für Komponenten sollten anstelle von Hostnamen IP-Adressen verwendet werden.

In einigen Komponentenkonfigurationsdateien können Sie Hostnamen anstelle von IP-Adressen verwenden. Die Verwendung von Hostnamen kann die Fehlerbehebung jedoch komplizierter machen. Hostnamen können beispielsweise die Ursache für Probleme im Zusammenhang mit der DNS-Serververbindung, Suchfehlern und der Synchronisierung sein.

Daher empfiehlt Apigee dringend, für alle Komponentenkonfigurationen IP-Adressen 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 Hostnamen und IP-Adressen die Auswirkungen der folgenden Szenarien beim Verschieben von Apigee-Servern:

Szenario Auswirkungen auf Serververschiebung
Ä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

  1. Bearbeiten Sie /opt/apigee/customer/application/cassandra.properties auf dem System, das geändert wird. Wenn die Datei nicht vorhanden ist, erstellen Sie sie.
  2. Ändern Sie die folgenden Parameter:
    • Legen Sie die Parameter conf_cassandra_seeds und conf_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 (damit Cassandra Thrift auf allen Schnittstellen überwachen kann).
  3. Öffnen Sie /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties in einem Editor. Sie sollten die alte IP-Adresse und die Standardeinstellung im folgenden Format sehen:
    192.168.56.101=dc-1:ra-1
    default=dc-1:ra-1

    Speichern Sie diese Informationen.

  4. 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

    Fügen Sie nach der IP-Adresse „\n“ ein und legen Sie dieselben Standardeinstellungen wie oben in Schritt 3 fest.

  5. Starten Sie Cassandra neu:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. Reparatur bei Bedarf auch ZooKeeper (siehe unten). Starten Sie andernfalls jede Apigee-Plattformkomponente neu, beginnend mit Management Server.

Für Konfigurationen mit mehreren Cassandra-Knoten (Ring)

  1. Wenn der zu ändernde Knoten ein Startknoten ist, bearbeiten Sie die /opt/apigee/customer/application/cassandra.properties-Datei auf jedem System im Ring und ändern Sie den conf_cassandra_seeds-Parameter so, dass er die neue IP-Adresse des geänderten Systems enthält. Wenn die Datei cassandra.properties nicht vorhanden ist, erstellen Sie sie.
  2. Bearbeiten Sie /opt/apigee/customer/application/cassandra.properties in 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 (damit Cassandra Thrift auf allen Schnittstellen überwachen kann).
  3. Öffnen Sie /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties in einem Editor. Sie sollten alle Cassandra-IP-Adressen und Standardeinstellungen im folgenden 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.

  4. 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

    Fügen Sie nach jeder IP-Adresse „\n“ ein und verwenden Sie dieselben Standardeinstellungen, die Sie oben in Schritt 3 notiert haben.

  5. Starten Sie Cassandra auf dem geänderten System neu. Wenn das geänderte System ein Startknoten ist, starten Sie auch jedes System neu, das den geänderten Startknoten verwendet hat.
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. Führen Sie den Befehl nodetool ring auf dem geänderten Knoten aus, um zu prüfen, ob der Ring abgeschlossen ist. Das Dienstprogramm finden Sie unter /opt/apigee/apigee-cassandra/bin.
    nodetool [-u username -pw password] -h localhost ring

    Sie müssen Ihren Nutzernamen und Ihr Passwort nur weitergeben, wenn Sie die JMX-Authentifizierung für Cassandra aktiviert haben.

  7. Führen Sie nodetool repair auf dem geänderten Knoten aus. Hinweis: Dieser Vorgang kann einige Zeit in Anspruch nehmen. Daher wird dringend empfohlen, dies nicht während der Spitzenzeiten des API-Traffics zu tun.
    nodetool [-u username -pw password] -h localhost repair -pr
  8. Reparieren Sie bei Bedarf ZooKeeper (siehe unten) und starten Sie dann alle Apigee-Plattformkomponenten neu, beginnend mit dem Verwaltungsserver.

Datenspeicherregistrierungen aktualisieren

  1. Suchen Sie mit den folgenden Befehlen nach den UUIDs der Datenspeicherregistrierungen, die die alte IP-Adresse angeben. Beachten Sie die Parameter „type“ und „UUID“:
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics&region=DC" | egrep -i '[type|internalip|uuid|region]'

      Dabei ist DC der Name des Rechenzentrums. In der Installation eines einzelnen Rechenzentrums ist der Wert in der Regel "dc-1".

  2. 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&region=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&region=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&region=REGION&pod=analytics" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST 
  3. Löschen Sie alte Registrierungen für die UUID des Systems, auf dem die IP-Adresse geändert wurde. Für jedes dieser UUIDs-Probleme:
    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:

Ändern Sie die IP-Adresse und starten Sie das ZooKeeper-Ensemble neu (nur für Ensemble-Konfigurationen mit mehreren Knoten)

  1. Öffnen Sie /opt/apigee/apigee-zookeeper/conf/zoo.cfg in einem Editor. Sie sollten alle ZooKeeper-IP-Adressen und 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.

  2. Bearbeiten Sie auf jedem ZooKeeper-Knoten die Datei /opt/apigee/customer/application/zookeeper.properties, um das Attribut conf_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, nach jeder IP-Adresse „\n“ einzufügen und die Einträge auf jedem Knoten in derselben Reihenfolge zu finden.

  3. Führen Sie den folgenden Befehl aus (ersetzen Sie node durch die IP-Adresse des ZooKeeper-Computers):
    echo srvr | nc node 2181

    Die Zeile „Mode“ in der Ausgabe sollte „leader“ lauten.

  4. Starten Sie einen ZooKeeper nach dem anderen neu, beginnend mit dem Leader und enden mit dem Knoten, auf dem die IP-Adresse geändert wurde. Wenn mehr als ein Zookeeper-Knoten seine IP-Adressen geändert hat, müssen möglicherweise alle Knoten neu gestartet werden.
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
  5. Verwenden Sie den oben beschriebenen Befehl echo, um jeden ZooKeeper-Knoten zu prüfen.

Apigee-Knoten über die geänderte Konfiguration informieren

  1. 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 conf_zookeeper_connection.string-Parameter so, dass er die neue IP-Adresse enthält.
    • Ändern Sie den conf_zookeeper_zk1.host-Parameter so, dass er die neue IP-Adresse enthält.
  2. Bearbeiten Sie die Datei /opt/apigee/customer/application/message-processor.properties auf jedem Message Processor-Knoten wie folgt. Wenn die Datei nicht vorhanden ist, erstellen Sie sie.
    • Ändern Sie den conf_zookeeper_connection.string-Parameter so, dass er die neue IP-Adresse enthält.
    • Ändern Sie den conf_zookeeper_zk1.host-Parameter so, dass er die neue IP-Adresse enthält.
  3. Bearbeiten Sie die Datei /opt/apigee/customer/application/management-server.properties im Knoten des Verwaltungsservers so. Wenn die Datei nicht vorhanden ist, erstellen Sie sie.
    • Ändern Sie den conf_zookeeper_connection.string-Parameter so, dass er die neue IP-Adresse enthält.
    • Ändern Sie den conf_zookeeper_zk1.host-Parameter so, dass er die neue IP-Adresse enthält.
  4. Starten Sie alle Apigee-Plattformkomponenten neu. Führen Sie dazu auf jedem Knoten den folgenden Befehl aus:
    /opt/apigee/apigee-service/bin/apigee-all restart

IP-Adresse eines LDAP-Servers (OpenLDAP) ändern

So ändern Sie die IP-Adresse eines OpenLDAP-Knotens:

  1. Bearbeiten Sie im Knoten des Verwaltungsservers die Datei /opt/apigee/customer/application/management-server.properties. Wenn die Datei nicht vorhanden ist, erstellen Sie sie.
  2. Legen Sie in der Datei management-server.properties den Parameter conf_security_ldap.server.host auf die neue IP-Adresse fest.
  3. 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):

  1. Registrieren Sie mit dem folgenden curl-Befehl die neue interne und externe IP-Adresse:
    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.