Le déplacement de composants d'une machine à une autre peut entraîner une incohérence de configuration si vous ne synchronisez pas les adresses IP dans vos fichiers de configuration de composants.
Cette section explique comment diagnostiquer et corriger les incohérences de configuration.
Adresses IP et noms d'hôte
Vous devez utiliser des adresses IP plutôt que des noms d'hôte dans vos fichiers de configuration de composants.
Bien que certains fichiers de configuration de composants vous permettent d'utiliser des noms d'hôte plutôt que des adresses IP, cela peut compliquer le dépannage. Par exemple, les noms d'hôte peuvent être à l'origine de problèmes liés à la connectivité du serveur DNS, aux échecs de recherche et à la synchronisation.
Par conséquent, Apigee vous recommande vivement d'utiliser des adresses IP pour toutes les configurations de composants. Dans certains cas, comme avec Cassandra, vous devez utiliser des adresses IP et ne pouvez pas utiliser de noms d'hôte. La plupart des exemples de la documentation utilisent des adresses IP pour la configuration des composants.
Pour les noms d'hôte et les adresses IP, tenez compte des implications des scénarios suivants lorsque vous déplacez des serveurs Apigee :
Scénario | Impact du déplacement des serveurs |
---|---|
Changement d'adresse IP | Mettez à jour tous les fichiers associés qui font référence à l'adresse IP d'origine. |
Changement de nom d'hôte sans changement d'adresse IP | Aucun impact |
Changement de nom d'hôte avec changement d'adresse IP | Identique à un changement d'adresse IP |
Modifier l'adresse IP d'un nœud Cassandra
Pour modifier l'adresse IP d'un nœud Cassandra, procédez comme suit :
Pour les configurations avec un seul nœud Cassandra
- Modifiez
/opt/apigee/customer/application/cassandra.properties
sur le système en cours de modification. Si le fichier n'existe pas, créez-le. - Modifiez les paramètres suivants :
- Définissez les paramètres
conf_cassandra_seeds
etconf_cassandra_listen_address
pour spécifier la nouvelle adresse IP du système. - Modifiez
conf_cassandra_rpc_address
pour utiliser la nouvelle adresse IP ou 0.0.0.0 (qui permet à Cassandra Thrift d'écouter sur toutes les interfaces).
- Définissez les paramètres
- Ouvrez
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
dans un éditeur. L'ancienne adresse IP et le paramètre par défaut devraient s'afficher dans le formulaire :192.168.56.101=dc-1:ra-1 default=dc-1:ra-1
Enregistrez ces informations.
- Modifiez
/opt/apigee/customer/application/cassandra.properties
pour remplacer l'ancienne adresse IP spécifiée par la nouvelle :conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n
Assurez-vous d'insérer "\n" après l'adresse IP et de spécifier les mêmes paramètres par défaut que ceux trouvés à l'étape 3 ci-dessus.
- Redémarrez Cassandra :
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Si nécessaire, réparez également ZooKeeper (consultez Modifier l'adresse IP d'un nœud ZooKeeper). Sinon, redémarrez tous les composants de la plate-forme Apigee, en commençant par le serveur de gestion.
Pour les configurations avec plusieurs nœuds Cassandra (anneau)
- Si le nœud modifié est un nœud de seed, modifiez le fichier
/opt/apigee/customer/application/cassandra.properties
sur chaque système de l'anneau et remplacez le paramètreconf_cassandra_seeds
par la nouvelle adresse IP du système modifié. Si le fichier cassandra.properties n'existe pas, créez-le. - Modifiez
/opt/apigee/customer/application/cassandra.properties
sur le système en cours de modification, puis modifiez les paramètres suivants :- Définissez
conf_cassandra_listen_address
pour utiliser la nouvelle adresse IP. - Définissez
conf_cassandra_rpc_address
pour utiliser la nouvelle adresse IP ou "0.0.0.0" (qui permet à Cassandra Thrift d'écouter sur toutes les interfaces).
- Définissez
- Ouvrez
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
dans un éditeur. Vous devriez voir toutes les adresses IP Cassandra et le paramètre par défaut au format suivant :192.168.56.101=dc-1:ra-1 192.168.56.102=dc-1:ra-1 192.168.56.103=dc-1:ra-1 default=dc-1:ra-1
Enregistrez ces informations.
- Modifiez
/opt/apigee/customer/application/cassandra.properties
pour remplacer l'ancienne adresse IP spécifiée par la nouvelle :conf_cassandra-topology_topology=192.168.56.101=dc-1:ra-1\n192.168.56.102=dc-1:ra-1\n192.168.56.104=dc-1:ra-1\ndefault=dc-1:ra-1\n
Assurez-vous d'insérer "\n" après chaque adresse IP et d'utiliser les mêmes paramètres par défaut que ceux que vous avez enregistrés à l'étape 3 ci-dessus.
- Redémarrez Cassandra sur le système modifié.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Pour tous les autres nœuds, répétez les modifications apportées aux étapes 3 et 4 afin de les informer de la position de ce nœud dans l'anneau Cassandra. Modifiez également l'adresse IP du nœud de seed comme décrit à l'étape 1.
- Redémarrez chaque nœud Cassandra restant, un par un.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Exécutez la commande
nodetool ring
sur le nœud modifié pour vous assurer que l'anneau est complet. L'utilitaire est disponible à l'adresse/opt/apigee/apigee-cassandra/bin
.nodetool [-u username -pw password] -h localhost ring
- Exécutez
nodetool repair
sur le nœud modifié. Notez que ce processus peut prendre un certain temps. Il est donc fortement recommandé de ne pas l'effectuer pendant les heures de pointe du trafic API.nodetool [-u username -pw password] -h localhost repair -pr
- Si nécessaire, réparez ZooKeeper (consultez Modifier l'adresse IP d'un nœud ZooKeeper), puis redémarrez tous les composants de la plate-forme Apigee, en commençant par le serveur de gestion.
Mettre à jour les enregistrements du datastore
- Recherchez les UUID des enregistrements de data store spécifiant l'ancienne adresse IP à l'aide des commandes ci-dessous. Notez les paramètres "type" et "UUID" :
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics®ion=DC" | egrep -i '[type|internalip|uuid|region]'
où DC est le nom du centre de données. Dans une installation à un seul centre de données, la valeur est généralement "dc-1".
-
- Enregistrez les nouvelles adresses IP à l'aide de l'une des commandes ci-dessous. La commande requise dépend du type de nœud modifié.
- Pour type="application-datastore" :
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=application-datastore&Type=audit-datastore&InternalIP=NEWIP®ion=REGION&pod=central" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- Pour type="kms-datastore" :
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore&Type=counter-datastore&Type=cache-datastore \ &InternalIP=NEWIP®ion=REGION&pod=GATEWAY_POD" -H 'content-type: \ application/x-www-form-urlencoded' -X POST
- Pour type="reportcrud-datastore" :
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers" -d \ "Type=reportcrud-datastore&InternalIP=NEW_IP®ion=REGION&pod=analytics" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- Pour type="application-datastore" :
- Supprimez les anciennes inscriptions pour l'UUID du système sur lequel l'adresse IP a été modifiée. Pour chacun de ces problèmes d'UUID :
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE
Modifier l'adresse IP d'un nœud ZooKeeper
Pour modifier l'adresse IP d'un nœud ZooKeeper, procédez comme suit :
Modifiez l'adresse IP et redémarrez l'ensemble ZooKeeper (pour les configurations d'ensemble à nœuds multiples uniquement).
- Ouvrez
/opt/apigee/apigee-zookeeper/conf/zoo.cfg
dans un éditeur. Vous devriez voir toutes les adresses IP ZooKeeper et le paramètre par défaut au format suivant :server.1=192.168.56.101:2888:3888 server.2=192.168.56.102:2888:3888 server.3=192.168.56.103:2888:3888
Enregistrez ces informations.
- Sur chaque nœud ZooKeeper, modifiez le fichier
/opt/apigee/customer/application/zookeeper.properties
pour définir la propriétéconf_zoo_quorum
sur les adresses IP correctes. Si le fichier n'existe pas, créez-le.conf_zoo_quorum=server.1=192.168.56.101:2888:3888\nserver.2=192.168.56.102:2888:3888\nserver.3=192.168.56.104:2888:3888\n
Assurez-vous d'insérer "\n" après chaque adresse IP et que les entrées sont dans le même ordre sur chaque nœud.
- Recherchez le leader de l'ensemble ZooKeeper à l'aide de la commande suivante (remplacez node par l'adresse IP de la machine Zookeeper) :
echo srvr | nc node 2181
La ligne "Mode" dans le résultat doit indiquer "leader".
- Redémarrez les ZooKeeper les uns après les autres, en commençant par le leader et en terminant par le nœud sur lequel l'adresse IP a été modifiée. Si l'adresse IP de plusieurs nœuds Zookeeper a changé, il peut être nécessaire de redémarrer tous les nœuds.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
- Utilisez la commande
echo
décrite ci-dessus pour vérifier chaque nœud ZooKeeper.
Informer les nœuds Apigee de la modification de la configuration
- Sur chaque nœud de routeur, modifiez le fichier
/opt/apigee/customer/application/router.properties
comme suit. Si le fichier n'existe pas, créez-le.- Modifiez le paramètre
conf_zookeeper_connection.string
pour inclure la nouvelle adresse IP. - Modifiez le paramètre
conf_zookeeper_zk1.host
pour inclure la nouvelle adresse IP.
- Modifiez le paramètre
- Sur chaque nœud Message Processor, modifiez le fichier
/opt/apigee/customer/application/message-processor.properties
comme suit. Si le fichier n'existe pas, créez-le.- Modifiez le paramètre
conf_zookeeper_connection.string
pour inclure la nouvelle adresse IP. - Modifiez le paramètre
conf_zookeeper_zk1.host
pour inclure la nouvelle adresse IP.
- Modifiez le paramètre
- Sur le nœud du serveur de gestion, modifiez le fichier
/opt/apigee/customer/application/management-server.properties
comme suit. Si le fichier n'existe pas, créez-le.- Modifiez le paramètre
conf_zookeeper_connection.string
pour inclure la nouvelle adresse IP. - Modifiez le paramètre
conf_zookeeper_zk1.host
pour inclure la nouvelle adresse IP.
- Modifiez le paramètre
- Redémarrez tous les composants de la plate-forme Apigee en exécutant la commande suivante sur chaque nœud :
/opt/apigee/apigee-service/bin/apigee-all restart
Modifier l'adresse IP d'un serveur LDAP (SymasLDAP)
Pour modifier l'adresse IP d'un nœud SymasLDAP, procédez comme suit :
- Sur le nœud du serveur de gestion, modifiez le fichier
/opt/apigee/customer/application/management-server.properties
. Si le fichier n'existe pas, créez-le. - Dans le fichier
management-server.properties
, définissez le paramètreconf_security_ldap.server.host
sur la nouvelle adresse IP. - Redémarrez le serveur de gestion :
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Modifier l'adresse IP d'autres types de nœuds Apigee
Pour modifier l'adresse IP de l'un de ces types de nœuds (routeur, processeur de messages, serveur Postgres (et non postgresql) et serveur Qpid (et non qpidd)) :
- Utilisez la commande
curl
suivante pour enregistrer les nouvelles adresses IP internes et externes :curl -u ADMINEMAIL:PW -X PUT \ http://MSIP:8080/v1/servers/uuid -d ExternalIP=ip
curl -u ADMINEMAIL:PW -X PUT \ http://$MSIP:8080/v1/servers/uuid -d InternalIP=ip
Où uuid est l'UUID du nœud.
Pour savoir comment obtenir l'UUID d'un composant, consultez Obtenir des UUID.