Lorsque vous ajoutez des nœuds Cassandra à un cluster, vous devez tenir compte des deux points clés suivants:
- La position existante des nœuds dans l'anneau Cassandra ne doit pas changer afin de minimiser le flux de données et de maintenir un anneau équilibré.
- Le nombre de nœuds dans tous les centres de données doit rester le même.
Pour atteindre le premier objectif, il est essentiel de doubler le nombre de nœuds du cluster Cassandra chaque fois que vous en ajoutez.
Par exemple, si vous commencez avec une topologie d'installation de cluster à 12 nœuds standard répartie sur deux centres de données, vous obtiendrez un total de six nœuds Cassandra, soit trois dans chaque centre de données. Pour développer ce cluster, vous devez ajouter trois nœuds à chaque centre de données, ce qui porte le nombre total de nœuds à 12 (six nœuds dans chaque centre de données). Si une expansion supplémentaire est nécessaire, vous devez ajouter six nœuds supplémentaires à chaque centre de données, ce qui donne un total de 24 nœuds (12 nœuds dans chaque centre de données).
Ce document fournit des instructions pour l'ajout de trois nouveaux nœuds Cassandra à une installation Edge for Private Cloud existante. Vous pouvez suivre la même procédure pour ajouter des nœuds. Lorsque vous développez votre cluster, veillez toujours à doubler le nombre de nœuds.
Pour connaître la configuration système requise pour un nœud Cassandra, reportez-vous à la section Configuration requise.
Configuration périphérique existante
Toutes les topologies Edge compatibles avec un système de production spécifient l'utilisation de trois topologies Cassandra
nœuds. Les trois nœuds sont spécifiés dans la propriété CASS_HOSTS
du fichier de configuration
comme indiqué ci-dessous:
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
Notez que la propriété REGION
spécifie le nom de la région comme "dc-1". Vous en avez besoin
lors de l'ajout de nouveaux nœuds Cassandra.
Modifier le fichier de configuration à ajouter les trois nouveaux nœuds Cassandra
Dans cet exemple, les trois nouveaux nœuds Cassandra se trouvent aux adresses IP suivantes:
- 10.10.0.14
- 10.10.0.15
- 10.10.0.16
Vous devez d'abord mettre à jour le fichier de configuration Edge pour ajouter les nouveaux nœuds:
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"
Cela garantit que les nœuds existants conservent leurs paramètres de jeton initiaux et le jeton initial de chaque nouveau nœud se trouve entre les valeurs de jeton des nœuds existants.
Configurer Edge
Après avoir modifié le fichier de configuration, vous devez:
- Reconfigurer les nœuds Cassandra existants
- Installer Cassandra sur les nouveaux nœuds
- Reconfigurer le serveur de gestion
Reconfigurer le Cassandra existant nœuds
Sur les nœuds Cassandra existants:
- Réexécutez le fichier setup.sh avec "-p c". profil et le nouveau fichier de configuration:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
Installer Cassandra sur les nouveaux nœuds
Suivez la procédure ci-dessous pour installer Cassandra sur les nouveaux nœuds.
Sur chaque nouveau nœud Cassandra:
- Installez Cassandra sur les trois nœuds:
<ph type="x-smartling-placeholder">
- </ph>
- Installer
apigee-setup
sur le premier nœud, comme décrit dans la section Installer le Utilitaire de configuration Edge Apigee - Installez Cassandra sur le premier nœud à l'aide du fichier de configuration mis à jour:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
- Répétez ces deux étapes pour les nouveaux nœuds Cassandra restants.
- Installer
- Recompilez les trois nouveaux nœuds Cassandra, en spécifiant le nom de la région en tant que centre de données.
dans lequel vous ajoutez le nœud (
dc-1
,dc-2
, etc.). Dans cet exemple, il s'agit dedc-1
: <ph type="x-smartling-placeholder">- </ph>
- Sur le premier nœud, exécutez la commande suivante:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h nodeIP rebuild dc-1
Où nodeIP est l'adresse IP du nœud Cassandra.
Vous ne devez transmettre votre nom d'utilisateur et votre mot de passe que si vous activé l'authentification JMX pour Cassandra ;
- Répétez cette étape sur les nouveaux nœuds Cassandra restants.
- Sur le premier nœud, exécutez la commande suivante:
Reconfigurer le serveur de gestion
Sur un nœud de serveur de gestion
- Exécutez à nouveau le fichier setup.sh afin de mettre à jour le serveur de gestion pour les nœuds Cassandra récemment ajoutés:
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f updatedConfigFile
Redémarrer tous les routeurs et envoyer des messages Processeurs
- Sur tous les routeurs:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- Sur tous les processeurs de messages:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
Espace disque disponible sur l'instance existante Nœuds Cassandra
Après avoir ajouté un nœud, vous pouvez utiliser la commande nodetool cleanup
sur le
des nœuds préexistants pour libérer de l'espace disque. Cette commande efface les jetons de configuration
appartenant au nœud Cassandra préexistant.
Pour libérer de l'espace disque sur des nœuds Cassandra préexistants après l'ajout d'un nœud, exécutez la commande la commande suivante:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h cassandraIP cleanup
Vous ne devez transmettre votre nom d'utilisateur et votre mot de passe que si vous activé l'authentification JMX pour Cassandra ;
Vérifier la recompilation
Utilisez les commandes suivantes pour vérifier que la recompilation a réussi:
nodetool [-u username -pw password] -h nodeIP netstats
Cette commande doit indiquer MODE: Normal
lorsque le nœud est opérationnel et que les index
sont conçues.
nodetool [-u username -pw password] -h nodeIP statusthrift
Doit indiquer que le serveur d'articles d'occasion est en cours d'exécution, ce qui permet à Cassandra d'accepter un nouveau client requêtes.
nodetool [-u username -pw password] -h nodeIP statusbinary
Doit indiquer que le transport natif (ou le protocole binaire) est en cours d'exécution.
nodetool [-u username -pw password] -h nodeIP describecluster
Devrait indiquer que les nouveaux nœuds utilisent la même version de schéma que les anciens nœuds.
Pour en savoir plus sur l'utilisation de nodetool
, consultez les
documentation sur l'utilisation de nodetool.