Si vous rencontrez une erreur lors d'une mise à jour vers Edge 4.53.01, vous pouvez rétablir le composant à l'origine de l'erreur, puis réessayer la mise à jour.
Vous pouvez revenir à l'une des versions majeures suivantes d'Edge 4.53.01 :
- Version 4.53.00
- Version 4.52.02
Pour revenir à une version antérieure, vous devez revenir à la version précédente de chaque composant que vous avez peut-être mis à niveau. De plus, selon la version à partir de laquelle vous avez commencé, vous devrez peut-être suivre des étapes spécifiques avant de revenir à une version antérieure de certains composants logiciels. Le tableau suivant liste les différents composants logiciels pour lesquels des étapes spécifiques peuvent être nécessaires lors de la restauration :
Revenir à une version | Considérations particulières pour les logiciels |
---|---|
4.53.00 | Zookeeper, Postgres, LDAP |
4.52.02 | Zookeeper, Cassandra, Postgres, LDAP |
Voici un scénario dans lequel vous pouvez souhaiter effectuer une restauration :
Effectuez un rollback vers une version majeure ou mineure précédente. Par exemple, de la version 4.53.01 à la version 4.53.00.
Pour en savoir plus, consultez la page Processus de publication d'Apigee Edge.
Ordre de rollback
La restauration des composants doit être effectuée dans l'ordre inverse de leur mise à niveau, à l'exception des serveurs de gestion, qui doivent être restaurés après Cassandra. Voici un exemple d'ordre général de rétablissement pour Private Cloud 4.53.01 :
- Restaurez Qpid, les autres composants liés aux données analytiques et Postgres.
- Restaurer des routeurs et des processeurs de messages
- Rétablir Cassandra et Zookeeper
- Effectuer un rollback du serveur de gestion
- Rétablir LDAP
Par exemple, supposons que vous ayez mis à niveau l'ensemble du cluster Cassandra, tous vos serveurs de gestion et quelques RMP vers la version 4.53.01 à partir de la version 4.52.02 et que vous souhaitiez effectuer un rollback. Dans ce cas, vous devez :
- Annuler tous les RMP un par un
- Rétablir l'ensemble du cluster Cassandra à l'aide de sauvegardes
- Rétablir les nœuds du serveur Edge Management un par un
Qui peut effectuer une restauration ?
L'utilisateur qui effectue le rollback doit être le même que celui qui a initialement mis à jour Edge ou un utilisateur exécuté en tant que root.
Par défaut, les composants Edge s'exécutent en tant qu'utilisateur "apigee". Dans certains cas, vous pouvez exécuter des composants Edge en tant qu'utilisateurs différents. Par exemple, si le routeur doit accéder à des ports privilégiés, tels que ceux inférieurs à 1000, vous devez l'exécuter en tant que root ou en tant qu'utilisateur ayant accès à ces ports. Vous pouvez également exécuter un composant en tant qu'utilisateur et un autre composant en tant qu'autre utilisateur.
Composants avec code commun
Les composants Edge suivants partagent un code commun. Par conséquent, pour effectuer un rollback de l'un de ces composants sur un nœud, vous devez effectuer un rollback de tous les composants présents sur ce nœud.
edge-management-server
(serveur de gestion)edge-message-processor
(processeur de messages)edge-router
(routeur)edge-postgres-server
(serveur Postgres)edge-qpid-server
(serveur Qpid)
Par exemple, si le serveur de gestion, le routeur et le processeur de messages sont installés sur le nœud, vous devez effectuer un rollback des trois pour en annuler un.
Restauration de Cassandra
Lorsqu'une mise à niveau majeure de Cassandra est effectuée sur un nœud spécifique, Cassandra modifie le schéma des données stockées sur ce nœud. Par conséquent, une restauration directe sur place n'est pas possible.
Scénarios de rollback
Cassandra 4.0.X, disponible avec Edge pour le cloud privé 4.53.01, est compatible avec les autres composants du cloud privé 4.52.02.
Veuillez consulter le tableau ci-dessous pour obtenir un récapitulatif des différentes stratégies de restauration que vous pouvez utiliser :
Scénario | Stratégie de rollback |
---|---|
Un seul centre de données, certains nœuds Cassandra mis à niveau | Utiliser les sauvegardes |
DC unique, tous les nœuds Cassandra mis à niveau | N'effectuez pas de rollback de Cassandra. Il est possible d'effectuer un rollback d'autres composants. |
Centre de données unique, tous les nœuds (Cassandra et autres) mis à niveau | N'effectuez pas de rollback de Cassandra. Il est possible d'effectuer un rollback d'autres composants. |
Plusieurs centres de données, certains nœuds d'un centre de données mis à niveau | Recompiler à partir d'un fichier DC existant |
Plusieurs centres de données, tous les nœuds Cassandra de certains centres de données ont été mis à niveau | Recompiler à partir d'un fichier DC existant |
Plusieurs centres de données, nœuds Cassandra du dernier centre de données en cours de mise à niveau | Essayez de terminer la mise à niveau. Si ce n'est pas possible, rétrogradez un contrôleur de domaine à l'aide d'une sauvegarde. Recompilez les autres DC à partir du DC rétabli. |
Plusieurs centres de données, tous les nœuds Cassandra mis à niveau | N'effectuez pas de rollback de Cassandra. Il est possible d'effectuer un rollback d'autres composants. |
Plusieurs centres de données, tous les nœuds (Cassandra et autres) mis à niveau | N'effectuez pas de rollback de Cassandra. Il est possible d'effectuer un rollback d'autres composants. |
Éléments généraux à prendre en compte
Lorsque vous envisagez d'effectuer un rollback, tenez compte des points suivants :
- Rollback des composants d'exécution ou de gestion : si vous souhaitez effectuer un rollback de composants tels que edge-management-server, edge-message-processor ou tout composant non Cassandra vers la version 4.52.02 de Private Cloud, il est recommandé de NE PAS effectuer de rollback de Cassandra. La version de Cassandra fournie avec Private Cloud 4.53.00 est compatible avec tous les composants non Cassandra d'Edge pour le cloud privé 4.52.02. Vous pouvez effectuer un rollback des composants non Cassandra à l'aide de la méthodologie listée ici, tandis que Cassandra reste sur la version 4.0.13.
- Effectuer un rollback après la mise à niveau de l'ensemble du cluster Cassandra vers la version 4.0.X : si l'ensemble de votre cluster Cassandra est mis à niveau vers la version 4.0.X lors de la mise à niveau vers Private Cloud version 4.53.00, il est recommandé de continuer avec cette configuration de cluster et de NE PAS effectuer de rollback de Cassandra. Les composants tels que edge-management-server, edge-message-processor, edge-router, etc., de la version 4.52.02 du cloud privé sont compatibles avec la version 4.0.X de Cassandra.
- Effectuer un rollback de Cassandra lors de la mise à niveau de Cassandra : si vous rencontrez des problèmes lors de la mise à niveau de Cassandra, vous pouvez envisager d'effectuer un rollback. Vous pouvez suivre les stratégies de restauration listées dans cet article en fonction de l'état dans lequel vous vous trouvez pendant le processus de mise à niveau.
- Effectuer un rollback à l'aide de sauvegardes : les sauvegardes effectuées à partir de Cassandra 4.0.X ne sont pas compatibles avec les sauvegardes de Cassandra 3.11.X. Pour effectuer un rollback de Cassandra à l'aide de la restauration de sauvegarde, vous devez effectuer des sauvegardes de Cassandra 3.11.X avant de tenter la mise à niveau.
Rétablir Cassandra à l'aide de la reconstruction
Prérequis
- Vous exploitez un cluster Edge pour Private Cloud 4.52.02 dans plusieurs centres de données.
- Vous êtes en train de mettre à niveau Cassandra de la version 3.11.X vers la version 4.0.X et vous avez rencontré des problèmes lors de la mise à niveau.
- Vous disposez d'au moins un centre de données entièrement fonctionnel dans le cluster qui exécute toujours l'ancienne version de Cassandra (Cassandra 3.11.X).
Cette procédure repose sur le streaming de données depuis un centre de données existant. Cela peut prendre un certain temps, selon la quantité de données stockées dans Cassandra. Vous devez être prêt à détourner le trafic d'exécution de ce centre de données pendant le rollback.
Étapes majeures
- Sélectionnez un centre de données (partiellement ou entièrement mis à niveau) que vous souhaitez rétablir. Redirigez le trafic d'exécution vers un autre centre de données opérationnel.
- Identifiez le nœud de départ dans le centre de données et commencez par l'un des nœuds de départ.
- Arrêtez, désinstallez et nettoyez le nœud Cassandra.
- Installez l'ancienne version de Cassandra sur le nœud et configurez-la selon vos besoins.
- Supprimez les configurations supplémentaires ajoutées précédemment.
- Répétez les étapes ci-dessus pour tous les nœuds de seed du centre de données, un par un.
- Répétez les étapes ci-dessus pour tous les nœuds Cassandra restants dans le centre de données, un par un.
- Reconstruisez les nœuds à partir du centre de données fonctionnel existant, un par un.
- Redémarrez tous les composants edge-* du centre de données connectés à Cassandra.
- Testez le trafic et redirigez-le vers ce centre de données.
- Répétez les étapes pour chaque centre de données, un par un.
Procédure détaillée
-
Choisissez un centre de données dans lequel tous les nœuds Cassandra ou certains d'entre eux sont mis à niveau. Détournez tout le trafic du proxy d'exécution et le trafic de gestion de ce centre de données pendant que les nœuds Cassandra de ce centre de données sont restaurés.
Assurez-vous que tous les nœuds Cassandra sont à l'état UN (Up/Normal) lorsque la commande
nodetool ring
est exécutée sur les nœuds. Si certains nœuds sont hors service, résolvez le problème et remettez-les en service avant de continuer.Référez-vous à l'exemple ci-dessous :
/opt/apigee/apigee-cassandra/bin/nodetool status
Datacenter: dc-1 ================ Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN DC1-1IP1 456.41 KiB 1 100.0% 78fc4ddd-2ed9-4a8c-98a2-63a38c2f1920 ra-1 UN DC1-1IP2 870.93 KiB 1 100.0% 160db01a-64ab-43a7-b9ea-3b7f8f66d52b ra-1 UN DC1-1IP3 824.08 KiB 1 100.0% 21d61543-d59e-403a-bf5d-bfe7f664baa6 ra-1 Datacenter: dc-2 ================ Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN DC2-1IP1 802.08 KiB 1 100.0% 583e0576-336d-4ce7-9729-2ae74e0abde2 ra-1 UN DC2-1IP2 844.4 KiB 1 100.0% fef794d5-f4c2-4a4e-bb05-9adaeb4aea4b ra-1 UN DC2-1IP3 878.12 KiB 1 100.0% 3894b3d9-1f5a-444d-83db-7b1e338bbfc9 ra-1Vous pouvez exécuter
nodetool describecluster
sur les nœuds pour comprendre l'état actuel de l'ensemble du cluster. Par exemple, l'illustration suivante montre une instance d'un cluster à deux centres de données où tous les nœuds DC-1 sont sur la version 4 de Cassandra, tandis que tous les nœuds DC-2 sont sur la version 3 de Cassandra :# On nodes where Cassandra is upgraded
/opt/apigee/apigee-cassandra/bin/nodetool describecluster
Cluster Information: Name: Apigee Snitch: org.apache.cassandra.locator.PropertyFileSnitch DynamicEndPointSnitch: enabled Partitioner: org.apache.cassandra.dht.RandomPartitioner Schema versions: 2eadcd74-0245-309a-9992-3625afa70038: [DC-1-IP1, DC-1-IP2, DC-1-IP3] 129dc15e-198e-3c11-b64c-701044a3a1ad: [DC-2-IP1, DC-2-IP2, DC-2-IP3] Stats for all nodes: Live: 6 Joining: 0 Moving: 0 Leaving: 0 Unreachable: 0 Data Centers: dc-1 #Nodes: 3 #Down: 0 dc-2 #Nodes: 3 #Down: 0 Database versions: 4.0.13: [DC-1-IP1:7000, DC-1-IP2:7000, DC-1-IP3:7000] 3.11.16: [DC-2-IP1:7000, DC-2-IP2:7000, DC-2-IP3:7000] Keyspaces: system_schema -> Replication class: LocalStrategy {} system -> Replication class: LocalStrategy {} auth -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} cache -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} devconnect -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} dek -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} user_settings -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} apprepo -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} kms -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} identityzone -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} audit -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} analytics -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} keyvaluemap -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} counter -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} apimodel_v2 -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3} system_distributed -> Replication class: SimpleStrategy {replication_factor=3} system_traces -> Replication class: SimpleStrategy {replication_factor=2} system_auth -> Replication class: SimpleStrategy {replication_factor=1} # On nodes where Cassandra is not upgraded/opt/apigee/apigee-cassandra/bin/nodetool describecluster
Cluster Information: Name: Apigee Snitch: org.apache.cassandra.locator.PropertyFileSnitch DynamicEndPointSnitch: enabled Partitioner: org.apache.cassandra.dht.RandomPartitioner Schema versions: 2eadcd74-0245-309a-9992-3625afa70038: [DC-1-IP1, DC-1-IP2, DC-1-IP3] 129dc15e-198e-3c11-b64c-701044a3a1ad: [DC-2-IP1, DC-2-IP2, DC-2-IP3] - Identifiez les nœuds de seed dans le centre de données : consultez la section Identifier les nœuds de seed dans l'annexe. Exécutez les étapes ci-dessous sur l'un des nœuds de seed :
- Arrêtez, désinstallez et nettoyez les données du nœud Cassandra.
Sélectionnez le premier nœud "seed" (nœud racine) sur Cassandra version 4 dans ce centre de données. Arrête.
# Stop Cassandra service on the node
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
# Uninstall Cassandra software/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
# Wipe out Cassandra datarm -rf /opt/apigee/data/apigee-cassandra
- Installez l'ancienne version du logiciel Cassandra sur le nœud et définissez certaines configurations. Exécutez le fichier bootstrap d'Edge pour le cloud privé 4.52.02.
- Créez ou modifiez le fichier
/opt/apigee/customer/application/cassandra.properties
. - Ajoutez le contenu suivant au fichier.
ipOfNode
correspond à l'adresse IP du nœud que Cassandra utilise pour communiquer avec d'autres nœuds Cassandra :conf_jvm_options_custom_settings=-Dcassandra.replace_address=ipOfNode -Dcassandra.allow_unsafe_replace=true
- Assurez-vous que le fichier appartient à l'utilisateur Apigee et qu'il peut le lire :
chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
- Installez et configurez Cassandra :
- Vérifiez que le nœud a démarré. Vérifiez la commande suivante sur ce nœud et sur les autres nœuds du cluster. Le nœud doit indiquer qu'il est à l'état "UN" (Up/Normal) :
/opt/apigee/apigee-cassandra/bin/nodetool status
- Supprimez les configurations supplémentaires ajoutées précédemment du fichier
/opt/apigee/customer/application/cassandra.properties
. - Répétez les étapes 3 à 10 sur tous les nœuds de seed Cassandra du centre de données, un par un.
- Répétez les étapes 3 à 10 sur tous les nœuds Cassandra restants du centre de données, un par un.
- Reconstruisez tous les nœuds du centre de données à partir d'un centre de données exécutant l'ancienne version de Cassandra. Effectuez cette étape sur un nœud à la fois :
/opt/apigee/apigee-cassandra/bin/nodetool rebuild -dc <name of working DC>
Cette procédure peut prendre du temps. Vous pouvez ajuster
streamingthroughput
si nécessaire. Vérifiez l'état d'avancement de l'opération dansnodetool netstats
. - (Facultatif) Exécutez la commande de réparation dans le nœud Cassandra si les données ne sont pas reconstruites.
/opt/apigee/apigee-cassandra/bin/nodetool -h node-IP repair -pr
- Redémarrez tous les composants edge-* du centre de données, un par un :
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- Validez le trafic et redirigez-le vers ce centre de données. Exécutez des validations pour le trafic d'exécution et les API de gestion dans ce centre de données, puis commencez à rediriger le trafic du proxy et des API de gestion vers celui-ci.
- Répétez les étapes ci-dessus pour chaque centre de données que vous souhaitez rétablir.
# Download bootstrap of 4.52.02curl https://software.apigee.com/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.52.02.sh -u uName:pWord
# Execute bootstrap of 4.52.02sudo bash /tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord
# Install cassandra version 3.11.X/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra install
# Setup cassandra while passing standard configuration file/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra setup -f configFile
# Ensure Cassandra version is correct and service is running/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra version /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra status
Restaurer Cassandra à l'aide d'une sauvegarde
Prérequis
- Vous êtes en train de mettre à niveau Cassandra de la version 3.11.X vers la version 4.0.X et vous avez rencontré des problèmes lors de la mise à niveau.
- Vous disposez de sauvegardes pour le nœud vers lequel vous effectuez le rollback. La sauvegarde a été effectuée avant la tentative de mise à niveau de la version 3.11.X vers la version 4.0.X.
Étapes
Sélectionnez le nœud que vous souhaitez annuler. Si vous restaurez tous les nœuds d'un centre de données à l'aide de sauvegardes, commencez par les nœuds de seed. Consultez la section "Identifier les nœuds de départ" dans l'annexe.
Arrêtez, désinstallez et nettoyez le nœud Cassandra :
# Stop Cassandra service on the node
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
# Uninstall Cassandra software/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
# Wipe Cassandra datarm -rf /opt/apigee/data/apigee-cassandra
Installez l'ancienne version du logiciel Cassandra sur le nœud et configurez-la :
- Exécutez le fichier bootstrap pour Edge pour le cloud privé 4.52.02 :
- Créez ou modifiez le fichier
/opt/apigee/customer/application/cassandra.properties
: - Assurez-vous que le fichier appartient à l'utilisateur Apigee et qu'il est lisible :
- Installez et configurez Cassandra :
# Download bootstrap for 4.52.02
curl https://software.apigee.com/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.52.02.sh -u ‘uName:pWord’
# Execute bootstrap for 4.52.02sudo bash /tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord
conf_jvm_options_custom_settings=-Dcassandra.replace_address=ipOfNode -Dcassandra.allow_unsafe_replace=true
chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
# Install Cassandra version 3.11.X
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra install
# Set up Cassandra with the standard configuration file/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra setup -f configFile
# Verify Cassandra version and check service status/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra version
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra status
Vérifiez que le nœud a démarré. Vérifiez la commande suivante sur ce nœud et sur les autres nœuds du cluster. Les nœuds doivent indiquer que ce nœud est à l'état "UN" :
/opt/apigee/apigee-cassandra/bin/nodetool status
Arrêtez le service Cassandra et restaurez la sauvegarde. Pour en savoir plus, consultez la documentation sur la sauvegarde et la restauration :
# Stop Cassandra service on the node
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
# Wipe the data directory in preparation for restorerm -rf /opt/apigee/data/apigee-cassandra/data
# Restore the backup taken before the upgrade attempt/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restore backupFile
Une fois la sauvegarde restaurée, supprimez les configurations supplémentaires :
Supprimez la configuration ajoutée précédemment du fichier
/opt/apigee/customer/application/cassandra.properties
.Démarrez le service Cassandra sur le nœud :
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra start
Répétez les étapes sur chaque nœud Cassandra que vous souhaitez restaurer à l'aide de sauvegardes, un à la fois.
Une fois tous les nœuds Cassandra restaurés, redémarrez tous les composants edge-* un par un :
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
Optimisations de la sauvegarde (option avancée)
Vous pouvez potentiellement minimiser (ou éliminer) la perte de données lors de la restauration de sauvegardes si vous disposez de répliques contenant les données les plus récentes. Si des répliques sont disponibles, exécutez une réparation sur le nœud restauré après la restauration de la sauvegarde.
Annexe
Identifier les nœuds seed
Sur n'importe quel nœud Cassandra d'un centre de données, exécutez la commande suivante :
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure -search conf_cassandra_seeds
La commande génère plusieurs lignes. Recherchez la dernière ligne du résultat. Les adresses IP listées sur la dernière ligne sont les nœuds de départ. Dans l'exemple ci-dessous, DC-1-IP1
, DC-1-IP2
, DC-2-IP1
et DC-2-IP2
sont les adresses IP des nœuds de seed :
Found key conf_cassandra_seeds, with value, "127.0.0.1", in /opt/apigee/apigee-cassandra/token/default.properties Found key conf_cassandra_seeds, with value, 127.0.0.1, in /opt/apigee/apigee-cassandra/token/application/cassandra.properties Found key conf_cassandra_seeds, with value, "DC-1-IP1, DC-1-IP2, DC-2-IP1, DC-2-IP2", in /opt/apigee/token/application/cassandra.properties apigee-configutil: apigee-cassandra: # OK
Effectuer le rollback de la mise à jour Zookeeper 3.8.4
Rollback
Si un rollback est nécessaire :
- Effectuez d'abord les étapes de rollback sur les observateurs et les abonnés.
- Téléchargez et exécutez le bootstrap de la version vers laquelle vous effectuez le rollback (4.52.02 ou 4.53.00). Le processus varie probablement selon que le nœud dispose d'une connexion Internet externe ou que vous suivez une installation hors connexion.
- Arrêtez Zookeeper s'il est en cours d'exécution sur le nœud :
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper stop
- Désinstallez le ZooKeeper existant :
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper uninstall
- Installez ZooKeeper comme d'habitude :
/opt/apigee/apigee-setup/bin/setup.sh -p zk -f <silent-config-file>
- Une fois que tous les nœuds suiveurs et observateurs ont été rétablis, rétablissez le nœud principal en suivant les étapes 2 à 5 sur le nœud principal.
- Une fois tous les nœuds rétablis, vérifiez l'état du cluster et assurez-vous qu'il comporte un nœud principal.
Restaurer une sauvegarde
Consultez Restaurer à partir d'une sauvegarde. Notez que les sauvegardes de Zookeeper effectuées à partir de versions antérieures d'Edge pour le cloud privé, comme 4.52.02 ou 4.53.00, devraient être compatibles avec la version de Zookeeper dans Edge pour le cloud privé 4.53.01.
Effectuer un rollback de la mise à jour Postgres 17
Si vous avez effectué une mise à niveau vers la version 4.53.01 à partir de la version 4.52.02 ou 4.53.00, vous devez annuler la mise à jour de Postgres en plus des composants Edge.
Pour annuler la mise à jour de Postgres lorsque vous mettez à jour Postgres dans une configuration maître-veille :
- Promouvez le nouveau nœud de secours pour qu'il devienne le maître Postgres. La nouvelle instance maîtresse Postgres sera de la même version que votre installation Edge précédente.
- Configurez l'ancien nœud de secours pour qu'il devienne un nœud de secours du nouveau nœud maître. L'ancien nœud de secours aura la même version que votre précédente installation Edge.
- Enregistrez les nouveaux nœuds maître et de secours auprès des groupes "analytics" et "consumer".
Une fois la restauration terminée, l'ancien nœud maître ne sera plus nécessaire. Vous pouvez ensuite désactiver l'ancien nœud maître.
Avant de commencer
Avant d'effectuer un rollback de Postgres 17 vers Postgres 14, procédez comme suit sur l'ancien et le nouveau hôte de secours pour mettre à jour la propriété max_locks_per_transaction
sur apigee-postgresql
:
- Si le fichier
/opt/apigee/customer/application/postgresql.properties
n'existe pas, créez-le. - Modifiez la propriété de ce fichier pour qu'elle soit attribuée à apigee :
sudo chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
- Ajoutez la propriété suivante au fichier :
conf/postgresql.conf+max_locks_per_transaction=30000
- Configurez apigee-postgresql :
apigee-service apigee-postgresql configure
- Redémarrez apigee-postgresql :
apigee-service apigee-postgresql restart
- Assurez-vous que le nouveau nœud Postgres de secours est en cours d'exécution :
/opt/apigee/apigee-service/bin/apigee-all status
Si Postgres n'est pas en cours d'exécution, démarrez-le :
/opt/apigee/apigee-service/bin/apigee-all start
- Assurez-vous que Postgres est arrêté sur l'ancien nœud maître et l'ancien nœud de secours :
/opt/apigee/apigee-service/bin/apigee-all status
Si Postgres est en cours d'exécution, arrêtez-le :
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- Si Qpid est installé, démarrez-le sur l'ancien nœud de secours :
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
- Promouvez le nouveau nœud de secours en tant que maître Postgres :
- Promouvez le nouveau nœud de secours pour qu'il devienne le nouveau maître :
apigee-service apigee-postgresql promote-standby-to-master old_master_IP
Si vous y êtes invité, saisissez le mot de passe Postgres de l'utilisateur "apigee", qui est défini par défaut sur "postgres".
- Modifiez le fichier de configuration que vous avez utilisé pour installer votre version actuelle d'Edge afin de spécifier les éléments suivants :
# IP address of the new master: PG_MASTER=new_standby_IP # IP address of the old standby node PG_STANDBY=old_standby_IP
- Configurez le nouveau maître :
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
- Promouvez le nouveau nœud de secours pour qu'il devienne le nouveau maître :
- Si vous avez déjà mis à niveau l'ancien nœud de secours vers la version la plus récente, vous devez d'abord rétrograder le logiciel Apigee sur l'ancien nœud de secours. Si l'ancienne version est toujours présente sur l'ancien nœud de secours, vous pouvez ignorer cette étape et passer à l'étape 6.
- Arrêtez Postgres sur l'ancien nœud de secours :
apigee-service apigee-postgresql stop apigee-service edge-postgres-server stop
- Désinstallez Postgres de l'ancien nœud de secours :
apigee-service apigee-postgresql uninstall apigee-service edge-postgres-server uninstall
- Supprimez le répertoire de données Postgres de l'ancien nœud de secours :
cd /opt/apigee/data/apigee-postgresql/pgdata rm -rf *
- Téléchargez et exécutez l'ancien bootstrap (pour la version d'Apigee vers laquelle vous effectuez le rollback) sur l'ancien nœud de secours. La procédure exacte peut varier selon que vous utilisez une installation en ligne ou hors connexion. L'exécution de l'ancienne version du bootstrap Apigee configurera les dépôts yum avec les données Apigee de l'ancienne version.
- Configurez les composants Postgres sur l'ancien nœud standby :
/opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
- Vérifiez que les composants Postgres de l'ancien nœud de secours ont été restaurés vers l'ancienne version :
apigee-service apigee-postgresql version apigee-service edge-postgres-server version
- Arrêtez Postgres sur l'ancien nœud de secours :
- Reconstruisez l'ancien nœud de secours :
- Modifiez le fichier de configuration que vous avez utilisé pour installer votre version actuelle d'Edge afin de spécifier les éléments suivants :
# IP address of the new master: PG_MASTER=new_standby_IP # IP address of the old standby node PG_STANDBY=old_standby_IP
- Supprimez le répertoire de données sur l'ancien nœud de secours :
cd /opt/apigee/data/apigee-postgresql/pgdata rm -rf *
- Reconfigurez l'ancien nœud de secours pour qu'il devienne un nœud de secours du nouveau maître :
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
- Assurez-vous que Postgres est en cours d'exécution sur l'ancien nœud de secours :
/opt/apigee/apigee-service/bin/apigee-all status
Si Postgres n'est pas en cours d'exécution, démarrez-le :
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
- Modifiez le fichier de configuration que vous avez utilisé pour installer votre version actuelle d'Edge afin de spécifier les éléments suivants :
- Vérifiez que le nouveau nœud de secours a été ajouté en consultant le fichier
/opt/apigee/apigee-postgresql/conf/pg_hba.conf
sur le nouveau nœud maître. - Pour afficher les informations actuelles sur les groupes d'analyse et de consommateurs, exécutez la commande suivante sur le serveur de gestion :
curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax
Cette commande renvoie le nom du groupe d'analyse dans le champ
name
et le nom du groupe de consommateurs dans le champname
sousconsumer-groups
. Il renvoie également les UUID des anciens nœuds maître et de secours Postgres dans les champspostgres-server
etdatastores
. Le résultat doit s'afficher au format suivant :{ "name" : "axgroup-001", "properties" : { }, "scopes" : [ "VALIDATE~test", "sgilson~prod" ], "uuids" : { "qpid-server" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ], "postgres-server" : [ "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ], "datastores" : [ "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256" ], "properties" : { } } ], "data-processors" : { } }
- Obtenez l'adresse UUID de l'ancien maître en exécutant la commande
curl
suivante sur l'ancien nœud maître :curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self
Vous devriez voir le UUID du nœud à la fin de la sortie, sous la forme suivante :
"type" : [ "postgres-server" ], "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
- Répétez l'étape précédente pour obtenir les adresses IP de l'ancien nœud de secours et du nouveau maître.
- Supprimez les anciens nœuds maître et de secours du groupe de consommateurs :
curl -u sysAdminEmail:password -X DELETE \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores/masterUUID,standbyUUID" -v
Où axgroup-001 et consumer-group-001 sont les noms par défaut des groupes "analytics" et "consumer". Les masterUUID,standbyUUID sont dans le même ordre que celui dans lequel ils sont apparus ci-dessus lorsque vous avez consulté les informations actuelles sur les groupes d'analyse et de consommateurs. Vous devrez peut-être les spécifier en tant que standbyUUID,masterUUID.
La propriété
datastores
pourconsumer-groups
doit maintenant être vide. - Supprimez les anciens nœuds maître et de secours du groupe "analytics" :
curl -u sysAdminEmail:password -X DELETE \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v
La propriété
postgres-server
sousuuids
devrait maintenant être vide. - Enregistrez les nouveaux nœuds maître et de secours PG auprès des groupes "analytics" et "consumer" :
curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d '' "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v
curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d '' "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores?uuid=masterUUID,standbyUUID" -v
- Validez le groupe "analytics" :
curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax
Les UUID des nouveaux nœuds maître et de secours devraient figurer dans les groupes "analytics" et "consumer".
- Redémarrez le serveur de gestion Edge :
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- Redémarrez tous les serveurs Qpid :
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
- Redémarrez tous les serveurs Postgres :
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- Vérifiez l'état de la réplication en exécutant les scripts suivants sur les deux serveurs. Le système doit afficher des résultats identiques sur les deux serveurs pour garantir la réussite de la réplication :
Sur la nouvelle instance maître, exécutez la commande suivante :
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
Vérifiez qu'il s'agit bien de l'appareil principal. Sur l'ancien nœud standby :
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
Vérifiez qu'il s'agit de la sauvegarde.
- Répétez l'étape précédente après avoir envoyé plusieurs requêtes API pour vous assurer que les nœuds sont synchronisés.
- Mettez hors service l'ancien nœud maître Postgres en suivant la procédure décrite dans Mettre hors service un nœud Postgres.
Vous pouvez également désinstaller Qpid de l'ancien nœud maître et l'installer sur le nouveau nœud maître. Après avoir désinstallé Qpid, vous pouvez mettre hors service l'ancien nœud maître.
Effectuer le rollback de la mise à jour LDAP 2.6
Cette section fournit un guide complet et détaillé pour effectuer un rollback d'une installation LDAP vers une version LDAP précédente. La restauration doit être effectuée sur l'ensemble du cluster LDAP et n'est possible qu'à l'aide d'une sauvegarde LDAP valide avant la mise à niveau.
L'objectif principal est de rétablir un état cohérent pour l'ensemble du cluster LDAP à partir d'une sauvegarde correcte connue. Cette procédure est la même pour tous les scénarios (serveur unique, actif-actif et actif-passif).
Conditions préalables et points à noter
- Incompatibilité de la sauvegarde : utilisez une sauvegarde de l'ancienne version 2.4 de LDAP que vous utilisiez avec Edge pour le cloud privé 4.52.02 ou 4.53.00. Cette sauvegarde doit avoir été effectuée avant la tentative de mise à niveau. Les sauvegardes effectuées après la mise à niveau sont incompatibles et ne peuvent pas être utilisées.
- Indisponibilité de l'API Management : pendant la restauration LDAP, les API Management ne seront pas disponibles, ce qui peut avoir un impact sur les tâches d'administration. Veillez à arrêter tous les serveurs de gestion Edge et l'interface utilisateur Edge avant de poursuivre la restauration LDAP.
- Risque de perte de données : si vous continuez sans sauvegarde valide et compatible, vous risquez de perdre des données de manière irréversible.
- Sauvegarde valide : une sauvegarde LDAP valide préalable à la mise à niveau est requise.
Procédure de rollback
- Avant de poursuivre la mise à niveau LDAP, assurez-vous d'arrêter tous les serveurs edge-management-server et edge-ui.
apigee-service edge-management-server stop apigee-service edge-ui stop
- Sauvegarder les données LDAP existantes (avant d'arrêter LDAP)
Obtenez le nombre total d'enregistrements pour référence à partir de tous les serveurs LDAP. (Le nombre d'enregistrements doit être identique sur tous les serveurs LDAP.)
# Note: Replace 'YOUR_PASSWORD' with your current LDAP manager password. ldapsearch -o ldif-wrap=no -b "dc=apigee,dc=com" \ -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w 'YOUR_PASSWORD' | wc -l
- Arrêter et désinstaller le nouveau LDAP 2.6
Arrêtez le service
apigee-openldap
et supprimez ses répertoires de configuration et de données. Cette opération doit être effectuée sur tous les serveurs LDAP, un nœud à la fois dans le cluster, pour garantir la cohérence.apigee-service apigee-openldap stop apigee-service apigee-openldap uninstall rm -rf /opt/apigee/data/apigee-openldap/*
- Installer l'ancienne version LDAP 2.4
- Installez l'ancienne version de LDAP :
/opt/apigee/apigee-setup/bin/setup.sh -p ld -f /opt/silent.conf
- Valider la version LDAP :
source ~/.bash_profile ldapsearch -VV #Expected output: ldapsearch: @(#) $OpenLDAP: ldapsearch 2.4.46
- Répétez les étapes ci-dessus sur chaque nœud LDAP, un par un.
- Installez l'ancienne version de LDAP :
- Nettoyer les données résiduelles
Sur tous les serveurs LDAP, arrêtez le service nouvellement installé un par un et nettoyez son répertoire de données pour préparer la restauration à partir de la sauvegarde.
apigee-service apigee-openldap stop rm -rf /opt/apigee/data/apigee-openldap/*
- Restaurer des données LDAP
Si vous configurez un serveur unique, vous pouvez passer directement à l'étape 5b. Pour une configuration multiserveur, passez à l'étape 5a.
- Identifier le serveur LDAP actif
Avant de restaurer les données LDAP, identifiez le serveur (fournisseur) actif en exécutant cette commande.
grep -i '^olcSyncrepl:' /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase*\ldif * **Note**: * If this command returns output, the server is a passive server. * If it returns no output, the server is the active server.
- Restaurez les données LDAP. (Assurez-vous que l'étape 4 est terminée sur tous les serveurs avant de procéder à la restauration.)
- Sur le serveur LDAP unique et actif (déterminé à l'étape 5a), restaurez la sauvegarde.
cd /opt/apigee/backup/openldap # To restore a specific backup, provide the timestamp as shown below: apigee-service apigee-openldap restore 2025.07.28,13.59.00 # Note: If no timestamp is provided, the latest available backup will be restored by default. apigee-service apigee-openldap restore # It is recommended to specify the backup explicitly to avoid restoring an unintended version.
- Démarrez le service apigee-openldap.
apigee-service apigee-openldap start
- Sur le serveur LDAP unique et actif (déterminé à l'étape 5a), restaurez la sauvegarde.
- Identifier le serveur LDAP actif
- Démarrer les serveurs LDAP restants
Si vous disposez d'une configuration multiserveur, démarrez le service sur chacun des serveurs LDAP :
apigee-service apigee-openldap start
- Validation finale
- La dernière étape consiste à vérifier que la restauration a réussi et que les données sont cohérentes dans l'ensemble du cluster LDAP.
- Exécutez la commande de validation sur tous les serveurs LDAP. Le nombre d'enregistrements doit être identique sur tous les serveurs et correspondre à celui que vous avez enregistré à l'étape 1.
# Note: Replace 'YOUR_PASSWORD' with your current LDAP manager password. ldapsearch -o ldif-wrap=no -b "dc=apigee,dc=com" \ -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w 'YOUR_PASSWORD' | wc -l
- Une fois que vous avez confirmé que les données sont correctes et cohérentes, la restauration de votre LDAP est terminée. Vous pouvez maintenant commencer à démarrer edge-management-server, edge-ui et tous les autres composants dépendants, conformément à la procédure de mise à niveau standard de votre organisation.
Effectuer un rollback vers une version majeure ou mineure précédente
Pour effectuer un rollback vers une version majeure ou mineure précédente, procédez comme suit sur chaque nœud hébergeant le composant :
-
Téléchargez le fichier
bootstrap.sh
pour la version vers laquelle vous souhaitez effectuer un rollback :- Pour revenir à la version 4.52.02, téléchargez
bootstrap_4.52.02.sh
.
- Pour revenir à la version 4.52.02, téléchargez
- Arrêtez le composant pour effectuer le rollback :
- Pour rétablir l'un des composants avec code commun sur le nœud, vous devez tous les arrêter, comme le montre l'exemple suivant :
/opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
/opt/apigee/apigee-service/bin/apigee-service edge-router stop
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
- Pour effectuer un rollback d'un autre composant du nœud, arrêtez-le :
/opt/apigee/apigee-service/bin/apigee-service component stop
- Pour rétablir l'un des composants avec code commun sur le nœud, vous devez tous les arrêter, comme le montre l'exemple suivant :
- Si vous restaurez la version précédente de la monétisation, désinstallez-la de tous les nœuds Management Server et Message Processor :
/opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
- Désinstallez le composant pour effectuer un rollback sur le nœud :
- Pour restaurer l'un des composants avec code commun sur le nœud, vous devez tous les désinstaller en désinstallant le groupe de composants
edge-gateway
etapigee-cassandra-client
, comme le montre l'exemple suivant :/opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra-client uninstall
- Pour revenir à la version précédente de Nginx, procédez comme suit :
###Find the apigee-nginx RPM rpm -qa | grep -i "apigee-nginx" ###Remove the apigee-nginx RPM dnf remove apigee-nginx-1.26.x
- Pour effectuer un rollback d'un autre composant sur le nœud, désinstallez uniquement ce composant, comme le montre l'exemple suivant :
/opt/apigee/apigee-service/bin/apigee-service component uninstall
où component est le nom du composant.
- Pour rétablir le routeur Edge, vous devez supprimer le contenu du fichier
/opt/nginx/conf.d
en plus de désinstaller le groupe de composantsedge-gateway
:cd /opt/nginx/conf.d
rm -rf *
- Pour restaurer l'un des composants avec code commun sur le nœud, vous devez tous les désinstaller en désinstallant le groupe de composants
- Désinstallez la version 4.53.01 de
apigee-setup
:/opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
- Installez la version 4.52.02 de l'utilitaire
apigee-service
et ses dépendances. L'exemple suivant installe la version 4.52.02 deapigee-service
:sudo bash /tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord
Où uName et pWord sont le nom d'utilisateur et le mot de passe que vous avez reçus d'Apigee. Si vous omettez pWord, vous serez invité à le saisir.
Si vous obtenez une erreur, assurez-vous d'avoir téléchargé le fichier
bootstrap.sh
à l'étape 1. - Installez
apigee-setup
:/opt/apigee/apigee-service/bin/apigee-service apigee-setup install
- Installez l'ancienne version du composant :
/opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile
où component est le composant à installer et configFile est votre fichier de configuration pour l'ancienne version.
- Si vous restaurez Qpid, videz les iptables :
sudo iptables -F
- Répétez cette procédure pour chaque nœud qui héberge le composant que vous restaurez.
Effectuer un rollback de mTLS
Pour annuler la mise à jour mTLS, procédez comme suit sur tous les hôtes :
- Arrêter Apigee :
apigee-all stop
- Arrêter mTLS :
apigee-service apigee-mtls uninstall
- Réinstallez mTLS :
apigee-service apigee-mtls install
apigee-service apigee-mtls setup -f /opt/silent.conf