Ajout de nœuds ZooKeeper

Edge pour Private Cloud version 4.17.09

Ce document explique comment ajouter trois nouveaux nœuds ZooKeeper à une installation Edge pour Private Cloud.

Vous pouvez ajouter un ou deux nœuds ZooKeeper à une installation Edge existante. Toutefois, vous devez vous assurer de toujours disposer d'un nombre impair de nœuds d'électeur ZooKeeper, comme décrit ci-dessous.

Configuration périphérique existante

Toutes les topologies Edge compatibles pour un système de production spécifient l'utilisation de trois nœuds ZooKeeper. Les trois nœuds sont spécifiés dans les propriétés ZK_HOSTS et ZK_CLIENT_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" 
CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" 
SKIP_SMTP=n
SMTPHOST=smtp.example.com 
SMTPUSER=smtp@example.com  
SMTPPASSWORD=smtppwd       

où :

  • ZK_HOSTS spécifie les adresses IP ou les noms DNS des nœuds ZooKeeper. Les adresses IP ou les noms DNS doivent être répertoriés dans le même ordre sur tous les nœuds ZooKeeper. Dans un environnement comportant plusieurs centres de données, répertoriez tous les nœuds ZooKeeper des deux centres de données.
  • ZK_CLIENT_HOSTS spécifie les adresses IP ou les noms DNS des nœuds ZooKeeper utilisés par ce centre de données. Les adresses IP ou les noms DNS doivent être répertoriés dans le même ordre sur tous les nœuds ZooKeeper.

    Dans une installation de centre de données unique, il s'agit des mêmes nœuds que spécifié par ZK_HOSTS. Dans un environnement comportant plusieurs centres de données, ne répertoriez que les nœuds ZooKeeper de ce centre de données.

Modifier le fichier de configuration afin d'ajouter les trois nouveaux nœuds ZooKeeper

Dans cet exemple, les trois nouveaux nœuds ZooKeeper 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 ZK_HOSTS to add each new node after an existing nodes. 
ZK_HOSTS="$IP1 $IP2 $IP3 $IP14 $IP15 $IP16:observer" 
# Update ZK_Client_HOSTS to add each new node after an existing nodes. 
ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3 $IP14 $IP15 $IP16" 

Marquez le dernier nœud de ZK_HOSTS avec le modificateur ":observer". Les nœuds sans le modificateur ":observer" sont appelés "voters". Votre configuration doit comporter un nombre impair d'électeurs. Par conséquent, dans cette configuration, vous disposez de cinq votants ZooKeeper et d'un observateur.

Veillez à ajouter les nœuds à ZK_HOSTS et ZK_CLIENT_HOSTS dans le même ordre. Cependant, omettez le modificateur ":observer" lorsque vous définissez ZK_CLIENT_HOSTS.

Configurer Edge

Après avoir modifié le fichier de configuration, vous devez effectuer toutes les tâches suivantes.

Installer ZooKeeper sur les nouveaux nœuds

  1. Installez apigee-setup sur le premier nœud, comme décrit dans la section Installer l'utilitaire de configuration Edge d'Apigee.
  2. Installez ZooKeeper sur le premier nœud à l'aide des commandes suivantes:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper install
    > /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile
  3. Répétez les étapes 1 et 2 pour les nouveaux nœuds ZooKeeper restants.

Reconfigurer les nœuds ZooKeeper existants

Sur les nœuds ZooKeeper existants:

  1. Exécutez à nouveau la commande de configuration avec le profil "-p c" et le nouveau fichier de configuration:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile

Redémarrer tous les nœuds Zookeeper

Sur tous les nœuds ZooKeeper:

  1. Redémarrez le nœud:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart

    Vous devez redémarrer tous les nœuds ZooKeeper, mais l'ordre de redémarrage n'a pas d'importance.

Reconfigurer le nœud du serveur de gestion

Sur le nœud du serveur de gestion:

  1. Exécutez la commande de configuration:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-management-server setup -f updatedConfigFile
  2. Redémarrez le serveur de gestion:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-management-server restart

Reconfigurer tous les routeurs

Sur tous les nœuds de routeur:

  1. Exécutez la commande de configuration:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-router setup -f updatedConfigFile
  2. Redémarrez le routeur:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-router restart

Reconfigurer tous les processeurs de messages

Sur tous les nœuds de processeur de messages:

  1. Exécutez la commande d'installation:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor setup -f updatedConfigFile
  2. Redémarrez le processeur de messages:
    > /opt/apigee/apigee-service/bin/apigee-serviceedge-message-processor restart

Reconfigurer tous les nœuds Qpid

Sur tous les nœuds Qpid:

  1. Exécutez la commande de configuration:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-qpid-server setup -f updatedConfigFile
  2. Redémarrez Qpid:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-qpid-server restart

Reconfigurer tous les nœuds Postgres

Sur tous les nœuds Postgres:

  1. Exécutez la commande de configuration:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-postgres-server setup -f updatedConfigFile
  2. Redémarrez Postgres:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-postgres-server restart

Valider l'installation

Vous pouvez valider l'installation des nouveaux nœuds ZooKeeper en envoyant des commandes au port 2181 à l'aide de netcat (nc) ou de telnet. Pour en savoir plus sur les commandes ZooKeeper, consultez la page http://zookeeper.apache.org/doc/r3.1.2/zookeeperAdmin.html#sc_zkCommands.

Pour procéder à la validation :

  1. S'il n'est pas installé sur le nœud ZooKeeper, installez nc:
    > sudo yum install nc.
  2. Exécutez la commande nc suivante:
    > echo stat | nc localhost 2181
  3. Répétez les étapes 1 et 2 sur chaque nœud ZooKeeper.
    Dans la ligne Mode de la sortie des nœuds, un nœud doit être désigné en tant qu'observateur, un nœud en tant que responsable et le reste en tant qu'abonné.