Ajouter des nœuds Cassandra

Ce document explique comment ajouter trois nouveaux nœuds Cassandra à une installation Edge pour le cloud privé existante.

Bien que vous puissiez ajouter un ou deux nœuds Cassandra à une installation Edge existante, Apigee vous recommande d'ajouter trois nœuds à la fois.

Pour obtenir la liste des conditions requises pour un nœud Cassandra, consultez la section Conditions requises pour l'installation.

Configuration Edge existante

Toutes les topologies Edge compatibles pour un système de production spécifient l'utilisation de trois nœuds Cassandra. 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 aurez besoin de ces informations lorsque vous ajouterez les nouveaux nœuds Cassandra.

Modifier le fichier de configuration pour 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 d'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 initial, et que le jeton initial de chaque nouveau nœud se situe 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 les nœuds Cassandra existants

Sur les nœuds Cassandra existants:

  1. Exécutez à nouveau setup.sh avec le profil "-p c" 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 :
    1. Installez apigee-setup sur le premier nœud, comme décrit dans la section Installer l'utilitaire apigee-setup Edge.
    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 autres nouveaux nœuds Cassandra.
  2. Recréez les trois nouveaux nœuds Cassandra, en spécifiant le nom de la région comme étant le 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 :
    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 n'avez besoin de transmettre votre nom d'utilisateur et votre mot de passe que si vous avez activé l'authentification JMX pour Cassandra.

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

Reconfigurer le serveur de gestion

Sur un nœud de serveur de gestion

  1. Exécutez à nouveau setup.sh pour mettre à jour le serveur de gestion pour les nouveaux nœuds Cassandra:
    /opt/apigee/apigee-setup/bin/setup.sh -p ms -f updatedConfigFile

Redémarrer tous les routeurs et les processeurs de messages

  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 les nœuds Cassandra existants

Après avoir ajouté un nœud, vous pouvez utiliser la commande nodetool cleanup sur les nœuds préexistants pour libérer de l'espace disque. Cette commande efface les jetons de configuration qui ne sont plus la propriété du nœud Cassandra préexistant.

Pour libérer de l'espace disque sur les nœuds Cassandra préexistants après avoir ajouté un nœud, exécutez la commande suivante:

/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h cassandraIP cleanup

Vous n'avez besoin de transmettre votre nom d'utilisateur et votre mot de passe que si vous avez 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 indique MODE: Normal lorsque le nœud est opérationnel et que les index sont créés.

nodetool [-u username -pw password] -h nodeIP statusthrift

Cette commande indique que le serveur Thrift est en cours d'exécution, ce qui permet à Cassandra d'accepter de nouvelles requêtes client.

nodetool [-u username -pw password] -h nodeIP statusbinary

Cette commande indique si le transport natif (ou protocole binaire) est en cours d'exécution.

nodetool [-u username -pw password] -h nodeIP describecluster

Cette commande indique si les nouveaux nœuds utilisent la même version de schéma que les anciens.

Pour en savoir plus sur l'utilisation de nodetool, consultez la documentation sur l'utilisation de nodetool.