Ajouter des nœuds Cassandra

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:

  1. 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:

  1. Installez Cassandra sur les trois nœuds: <ph type="x-smartling-placeholder">
      </ph>
    1. Installer apigee-setup sur le premier nœud, comme décrit dans la section Installer le Utilitaire de configuration Edge Apigee
    2. 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
    3. Répétez ces deux étapes pour les nouveaux nœuds Cassandra restants.
  2. 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 de dc-1: <ph type="x-smartling-placeholder">
      </ph>
    1. 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

      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 ;

    2. Répétez cette étape sur les nouveaux nœuds Cassandra restants.

Reconfigurer le serveur de gestion

Sur un nœud de serveur de gestion

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

  1. Sur tous les routeurs:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  2. 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.