Beim Hinzufügen von Cassandra-Knoten zu einem Cluster müssen die folgenden zwei wichtigen Punkte berücksichtigt werden:
- Die vorhandenen Positionen der Knoten im Cassandra-Ring sollten sich nicht ändern, um das Streaming zu minimieren und einen ausgeglichenen Ring aufrechtzuerhalten.
- Die Anzahl der Knoten in allen Rechenzentren muss konsistent bleiben.
Um das erste Ziel zu gewährleisten, ist es wichtig, die Anzahl der Knoten im Cassandra-Cluster jedes Mal zu verdoppeln, wenn Sie neue Knoten hinzufügen.
Wenn Sie beispielsweise mit einer Standardtopologie für die Installation eines Clusters mit 12 Knoten beginnen, die auf zwei Rechenzentren verteilt ist, haben Sie insgesamt sechs Cassandra-Knoten – drei pro Rechenzentrum. Zur Erweiterung dieses Clusters sollten Sie jedem Rechenzentrum drei Knoten hinzufügen, wodurch sich die Gesamtzahl der Knoten auf 12 erhöht (sechs Knoten in jedem Rechenzentrum). Wenn eine weitere Erweiterung erforderlich ist, sollten Sie jedem Rechenzentrum sechs zusätzliche Knoten hinzufügen, was eine Gesamtzahl von 24 Knoten ergibt (12 Knoten in jedem Rechenzentrum).
Dieses Dokument enthält Anweisungen zum Hinzufügen von drei neuen Cassandra-Knoten zu einer vorhandenen Edge for Private Cloud-Installation. Mit denselben Schritten können Sie weitere Knoten hinzufügen. Achten Sie immer darauf, dass Sie beim Erweitern Ihres Clusters die Anzahl der Knoten verdoppeln.
Eine Liste der Systemanforderungen für einen Cassandra-Knoten finden Sie im Abschnitt Installationsanforderungen.
Vorhandene Edge-Konfiguration
Alle unterstützten Edge-Topologien für ein Produktionssystem geben an, drei Cassandra-Topologien zu verwenden,
Knoten. Die drei Knoten sind im Attribut CASS_HOSTS
in der Konfigurationsdatei angegeben.
wie unten dargestellt:
IP1=10.10.0.1 IP2=10.10.0.2 IP3=10.10.0.3 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 USE_LDAP_REMOTE_HOST=n LDAP_TYPE=1 APIGEE_LDAPPW=secret MP_POD=gateway REGION=dc-1 ZK_HOSTS="$IP1 $IP2 $IP3" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com SMTPPASSWORD=smtppwd
Beachten Sie, dass das Attribut REGION
den Namen der Region als „dc-1“ angibt. Das brauchst du
beim Hinzufügen der neuen Cassandra-Knoten.
Hinzuzufügende Konfigurationsdatei ändern die drei neuen Cassandra-Knoten
In diesem Beispiel befinden sich die drei neuen Cassandra-Knoten unter den folgenden IP-Adressen:
- 10.10.0.14
- 10.10.0.15
- 10.10.0.16
Sie müssen zuerst die Edge-Konfigurationsdatei aktualisieren, um die neuen Knoten hinzuzufügen:
IP1=10.10.0.1 IP2=10.10.0.2 IP3=10.10.0.3 # Add the new node IP addresses. IP14=10.10.0.14 IP15=10.10.0.15 IP16=10.10.0.16 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@google.com ... # Update CASS_HOSTS to add each new node after an existing nodes. # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP14:1,1 $IP2:1,1 $IP15:1,1 $IP3:1,1 $IP16:1,1"
Dadurch wird sichergestellt, dass die vorhandenen Knoten ihre ursprünglichen Tokeneinstellungen und das ursprüngliche Token beibehalten. jedes neuen Knotens zwischen den Tokenwerten der vorhandenen Knoten liegt.
Edge konfigurieren
Nachdem Sie die Konfigurationsdatei bearbeitet haben, müssen Sie Folgendes tun:
- Vorhandene Cassandra-Knoten neu konfigurieren
- Cassandra auf den neuen Knoten installieren
- Verwaltungsserver neu konfigurieren
Vorhandene Cassandra neu konfigurieren Knoten
Auf den vorhandenen Cassandra-Knoten:
- Führen Sie „setup.sh“ noch einmal mit „-p c“ aus. und die neue Konfigurationsdatei:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
Cassandra auf den neuen Knoten installieren
Gehen Sie wie unten beschrieben vor, um Cassandra auf den neuen Knoten zu installieren.
Führen Sie auf jedem neuen Cassandra-Knoten folgende Schritte aus:
- Installieren Sie Cassandra auf den drei Knoten:
<ph type="x-smartling-placeholder">
- </ph>
apigee-setup
installieren auf den ersten Knoten, wie unter Die Dienstprogramm für das Edge-Apigee-Setup.- Installieren Sie Cassandra mithilfe der aktualisierten Konfigurationsdatei auf dem ersten Knoten:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
- Wiederholen Sie diese beiden Schritte für die verbleibenden neuen Cassandra-Knoten.
- Erstellen Sie die drei neuen Cassandra-Knoten neu und geben Sie als Namen der Region das Rechenzentrum an.
in dem Sie den Knoten hinzufügen (
dc-1
,dc-2
usw.). In diesem Beispiel ist dasdc-1
: <ph type="x-smartling-placeholder">- </ph>
- Führen Sie auf dem ersten Knoten folgenden Befehl aus:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h nodeIP rebuild dc-1
Dabei ist nodeIP die IP-Adresse des Cassandra-Knotens.
Sie müssen Ihren Nutzernamen und Ihr Passwort nur dann weitergeben, wenn Sie JMX-Authentifizierung für Cassandra aktiviert.
- Wiederholen Sie diesen Schritt auf den verbleibenden neuen Cassandra-Knoten.
- Führen Sie auf dem ersten Knoten folgenden Befehl aus:
Verwaltungsserver neu konfigurieren
Auf einem Verwaltungsserverknoten
- Führen Sie „setup.sh“ noch einmal aus, um den Verwaltungsserver für die neu hinzugefügten Cassandra-Knoten zu aktualisieren:
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f updatedConfigFile
Neustart aller Router und Nachricht Prozessoren
- Auf allen Routern:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- Für alle Message Processor:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
Freier Speicherplatz auf vorhandenem Cassandra-Knoten
Nachdem Sie einen neuen Knoten hinzugefügt haben, können Sie den Befehl nodetool cleanup
für die
um Speicherplatz freizugeben. Mit diesem Befehl werden Konfigurationstokens gelöscht, die keine
die länger zum bestehenden Cassandra-Knoten gehören.
Um nach dem Hinzufügen eines neuen Knotens Speicherplatz auf bereits vorhandenen Cassandra-Knoten freizugeben, führen Sie den folgenden Befehl:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h cassandraIP cleanup
Sie müssen Ihren Nutzernamen und Ihr Passwort nur dann weitergeben, wenn Sie JMX-Authentifizierung für Cassandra aktiviert.
Neuerstellung prüfen
Prüfen Sie mit den folgenden Befehlen, ob die Neuerstellung erfolgreich war:
nodetool [-u username -pw password] -h nodeIP netstats
Dieser Befehl sollte MODE: Normal
anzeigen, wenn der Knoten aktiv ist und die Indexe ausgeführt werden
entwickelt.
nodetool [-u username -pw password] -h nodeIP statusthrift
Sollte anzeigen, dass der Secondhand-Server ausgeführt wird, wodurch Cassandra neue Clients annehmen kann. -Anfragen.
nodetool [-u username -pw password] -h nodeIP statusbinary
Sollte anzeigen, dass der native Transport (oder das Binärprotokoll) ausgeführt wird.
nodetool [-u username -pw password] -h nodeIP describecluster
Zeigt an, dass neue Knoten dieselbe Schemaversion wie die älteren Knoten verwenden.
Weitere Informationen zur Verwendung von nodetool
finden Sie in der
Dokumentation zur Verwendung von Nodetool