Il peut arriver que vous deviez mettre hors service un centre de données. Par exemple, si vous mettez à niveau votre système d'exploitation, vous devez installer le nouveau système d'exploitation dans un nouveau centre de données, puis mettre hors service l'ancien centre de données. Les sections suivantes présentent un exemple de mise hors service d'un centre de données, dans lequel deux centres de données, dc-1 et dc-2, sont présents dans une installation en cluster de 12 nœuds :
- dc-1 est le centre de données à mettre hors service.
- dc-2 est un deuxième centre de données utilisé dans la procédure de désactivation.
Si vous mettez à niveau votre système d'exploitation, dc-2 peut être le centre de données dans lequel vous avez installé la nouvelle version du système d'exploitation. Toutefois, l'installation d'un nouvel OS n'est pas nécessaire pour mettre hors service un centre de données.
Éléments à prendre en compte avant de mettre hors service un centre de données
Tenez compte des points suivants lorsque vous mettez hors service un centre de données :
- Bloquez tout le trafic d'exécution et de gestion vers le centre de données mis hors service, et redirigez-le vers d'autres centres de données.
- Après la désactivation du centre de données, la capacité de votre cluster Apigee sera réduite. Pour compenser cette perte, envisagez d'augmenter la capacité dans les centres de données restants ou d'ajouter des centres de données après la mise hors service.
- Au cours du processus d'arrêt, il est possible que des données analytiques soient perdues, selon les composants analytiques installés dans le centre de données en cours d'arrêt. Pour en savoir plus, consultez Ajouter ou supprimer des nœuds Qpid.
- Avant de mettre hors service un centre de données, vous devez comprendre comment tous les composants sont configurés dans tous les centres de données, en particulier les serveurs SymasLDAP, ZooKeeper, Cassandra et Postgres. Vous devez également sauvegarder tous les composants et leurs configurations.
Avant de commencer
- Serveur de gestion : toutes les étapes de désinstallation dépendent fortement du serveur de gestion. Si vous ne disposez que d'un seul serveur de gestion, nous vous recommandons d'installer un nouveau composant de serveur de gestion dans un centre de données autre que dc-1 avant de mettre hors service le serveur de gestion sur dc-1. Assurez-vous qu'un des serveurs de gestion est toujours disponible.
- Routeur : Avant de mettre hors service un routeur, désactivez l'accessibilité des routeurs en bloquant le port 15999. Assurez-vous qu'aucun trafic d'exécution n'est dirigé vers les routeurs mis hors service.
- Cassandra et ZooKeeper : les sections ci-dessous décrivent comment mettre hors service dc-1 dans une configuration à deux centres de données.
Si vous avez plus de deux centres de données, veillez à supprimer toutes les références au nœud mis hors service (dc-1 dans ce cas) de tous les fichiers de configuration silencieux dans tous les centres de données restants. Pour les nœuds Cassandra à mettre hors service, supprimez ces hôtes de
CASS_HOSTS
. Les nœuds Cassandra restants doivent conserver l'ordre d'origine deCASS_HOSTS
. - Postgres : si vous mettez hors service le maître Postgres, veillez à promouvoir l'un des nœuds de secours disponibles en tant que nouveau maître Postgres. Bien que le serveur QPID conserve un tampon dans la file d'attente, si le maître Postgres n'est pas disponible pendant une longue période, vous risquez de perdre des données analytiques.
Prérequis
Avant de mettre hors service un composant, nous vous recommandons d'effectuer une sauvegarde complète de tous les nœuds. Utilisez la procédure correspondant à votre version actuelle d'Edge pour effectuer la sauvegarde. Pour en savoir plus sur la sauvegarde, consultez Sauvegarder et restaurer.
- Avant de mettre hors service Edge, assurez-vous qu'il est opérationnel à l'aide de la commande suivante :
/opt/apigee/apigee-service/bin/apigee-all status
- Assurez-vous qu'aucun trafic d'exécution n'arrive actuellement au centre de données que vous mettez hors service.
Ordre de désactivation des composants
Si vous installez Edge pour le cloud privé sur plusieurs nœuds, vous devez désactiver les composants Edge sur ces nœuds dans l'ordre suivant :
- Interface utilisateur Edge (edge-ui)
- Serveur de gestion (edge-management-server)
- Symas LDAP (apigee-openldap)
- Routeur (routeur de périphérie)
- Processeur de messages (edge-message-processor)
- Serveur Qpid et Qpidd (edge-qpid-server et apigee-qpidd)
- Base de données Postgres et PostgreSQL (edge-postgres-server et apigee-postgresql)
- ZooKeeper (apigee-zookeeper)
- Cassandra (apigee-cassandra)
Les sections suivantes expliquent comment mettre hors service chaque composant.
Interface utilisateur Edge
Pour arrêter et désinstaller le composant Edge UI de dc-1, saisissez les commandes suivantes :
/opt/apigee/apigee-service/bin/apigee-service edge-ui stop
/opt/apigee/apigee-service/bin/apigee-service edge-ui uninstall
Serveur de gestion
Pour désactiver le serveur de gestion sur dc-1, procédez comme suit :
- Arrêtez le serveur de gestion sur dc-1 :
apigee-service edge-management-server stop
- Recherchez l'UUID du serveur de gestion enregistré dans dc-1 :
curl -u <AdminEmailID>:'<AdminPassword>' -X GET “http://{MS_IP}:8080/v1/servers?pod=central®ion=dc-1&type=management-server”
- Annuler l'enregistrement du type de serveur :
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers -d "type=management-server®ion=dc-1&pod=central&uuid=UUID&action=remove"
- Supprimez le serveur. Remarque : Si d'autres composants sont également installés sur ce serveur, désenregistrez-les tous avant de supprimer l'UUID.
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/{UUID}
- Désinstallez le composant Management Server sur dc-1 :
/opt/apigee/apigee-service/bin/apigee-service edge-management-server uninstall
Symas LDAP
Cette section explique comment mettre hors service SymasLDAP sur dc-1.
Remarque : Si vous avez plus de deux centres de données, consultez la section Configurations avec plus de deux centres de données ci-dessous.
Pour désactiver SymasLDAP sur dc-1, procédez comme suit :
- Sauvegardez le nœud dc-1 SymasLDAP en suivant la procédure décrite dans Sauvegarder.
Interrompez la réplication des données entre les deux centres de données, dc-1 et dc-2, en exécutant les étapes suivantes dans les deux centres de données.
- Vérifiez l'état actuel :
/opt/symas/bin/ldapsearch -H ldap://{HOST}:{PORT} -LLL -x -b "cn=config" -D "cn=admin,cn=config" -w {credentials} -o ldif-wrap=no 'olcSyncRepl' | grep olcSyncrepl
La sortie devrait ressembler à ce qui suit :
olcSyncrepl: {0}rid=001 provider=ldap://{HOST}:{PORT}/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials={credentials} searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1
- Créez un fichier
break_repl.ldif
contenant les commandes suivantes :dn: olcDatabase={2}mdb,cn=config changetype: modify delete: olcSyncRepl dn: olcDatabase={2}mdb,cn=config changetype: modify delete: olcMirrorMode
- Exécutez la commande
ldapmodify
:/opt/symas/bin/ldapmodify -x -w {credentials} -D "cn=admin,cn=config" -H "ldap://{HOST}:{PORT}/" -f path/to/file/break_repl.ldif
La sortie devrait ressembler à ce qui suit :
modifying entry "olcDatabase={2}mdb,cn=config" modifying entry "olcDatabase={2}mdb,cn=config"
- Vérifiez l'état actuel :
Vous pouvez vérifier que dc-2 ne réplique plus sur dc-1 en créant une entrée dans le LDAP de dc-2 et en vous assurant qu'elle n'apparaît pas dans le LDAP de dc-1.
Vous pouvez également suivre les étapes ci-dessous, qui créent un utilisateur en lecture seule dans le nœud dc-2 SymasLDAP, puis vérifier si l'utilisateur est répliqué ou non. L'utilisateur est ensuite supprimé.
- Créez un fichier
readonly-user.ldif
dans dc-2 avec le contenu suivant :dn: uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com objectClass: organizationalPerson objectClass: person objectClass: inetOrgPerson objectClass: top cn: readonly-user sn: readonly-user userPassword: {testPassword}
- Ajoutez un utilisateur avec la commande `ldapadd` dans dc-2 :
/opt/symas/bin/ldapadd -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" -f path/to/file/readonly-user.ldif
Le résultat devrait ressembler à ceci :
adding new entry "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"
- Recherchez l'utilisateur dans dc-1 pour vous assurer qu'il n'est pas répliqué. Si l'utilisateur n'est pas présent dans dc-1, vous serez sûr que les deux LDAP ne se répliquent plus :
/opt/symas/bin/ldapsearch -H ldap://{HOST}:{PORT} -x -w {credentials} -D "cn=manager,dc=apigee,dc=com" -b uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com -LLL
La sortie devrait ressembler à ce qui suit :
No such object (32) Matched DN: ou=users,ou=global,dc=apigee,dc=com
- Supprimez l'utilisateur en lecture seule que vous avez ajouté précédemment :
/opt/symas/bin/ldapdelete -v -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"
- Créez un fichier
- Arrêtez SymasLDAP dans dc-1 :
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
- Désinstallez le composant SymasLDAP sur dc-1 :
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap uninstall
Routeur
Cette section explique comment mettre hors service un routeur. Pour en savoir plus sur la suppression du routeur, consultez Supprimer un serveur.
Les étapes suivantes permettent de désactiver le routeur à partir de dc-1. Si plusieurs nœuds de routeur sont configurés dans dc-1, effectuez les étapes sur tous les nœuds de routeur, un par un.
Remarque : Nous partons du principe que le port de vérification de l'état du routeur (15999) est configuré dans votre équilibreur de charge et que le blocage du port 15999 rendra le routeur inaccessible. Vous devrez peut-être disposer d'un accès racine pour bloquer le port.
Pour mettre hors service un routeur, procédez comme suit :
Désactivez l'accessibilité des routeurs en bloquant le port 15999, qui est le port de vérification de l'état. Assurez-vous que le trafic d'exécution est bloqué sur ce centre de données :
iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
Vérifiez que le routeur est accessible :
curl -vvv -X GET http://{ROUTER_IP}:15999/v1/servers/self/reachable
La sortie devrait ressembler à ce qui suit :
About to connect() to 10.126.0.160 port 15999 (#0) Trying 10.126.0.160... Connection refused Failed connect to 10.126.0.160:15999; Connection refused Closing connection 0 curl: (7) Failed connect to 10.126.0.160:15999; Connection refused
- Obtenez l'UUID du routeur, comme décrit dans Obtenir les UUID.
- Arrêtez le routeur :
/opt/apigee/apigee-service/bin/apigee-service edge-router stop
- Répertoriez les pods de passerelle disponibles dans l'organisation à l'aide de la commande suivante :
curl -u <AdminEmailID>:'<AdminPassword>' -X GET "http://{MS_IP}:8080/v1/organizations/{ORG}/pods"
Consultez À propos des pods.
- Désenregistrez le type de serveur :
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers -d "type=router®ion=dc-1&pod=gateway-1&uuid=UUID&action=remove"
- Retirez le serveur du registre :
curl -u <AdminEmailID>:'<AdminPassword>’ -X DELETE http://{MS_IP}:8080/v1/servers/UUID
- Désinstallez
edge-router
: Consultez Supprimer un serveur./opt/apigee/apigee-service/bin/apigee-service edge-router uninstall
- Videz les règles
iptables
pour activer le port bloqué 15999 :iptables -F
Processeur de messages
Cette section explique comment désactiver le processeur de messages à partir de dc-1. Pour en savoir plus sur la suppression du processeur de messages, consultez Supprimer un serveur.
Étant donné que nous supposons que dc-1 dispose d'une installation en cluster de 12 nœuds, deux nœuds Message Processor sont configurés dans dc-1. Exécutez les commandes suivantes dans les deux nœuds.
- Obtenez les UUID des processeurs de messages, comme décrit dans Obtenir les UUID.
- Arrêtez le processeur de messages :
apigee-service edge-message-processor stop
- Désenregistrez le type de serveur :
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers -d "type=message-processor®ion=dc-1&pod=gateway-1&uuid=UUID&action=remove"
- Dissociez un environnement du processeur de messages.
curl -H "Content-Type:application/x-www-form-urlencoded" <AdminEmailID>:'<AdminPassword>’ \ -X POST http://{MS_IP}:8080/v1/organizations/{ORG}/environments/{ENV}/servers \ -d "action=remove&uuid=UUID"
- Désenregistrez le type de serveur :
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers -d "type=message-processor®ion=dc-1&pod=gateway-1&uuid=UUID&action=remove"
- Désinstallez le processeur de messages :
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor uninstall
- Retirez le serveur du registre :
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
Serveur Qpid et Qpidd
Cette section explique comment désactiver Qpid Server (edge-qpid-server
) et Qpidd (apigee-qpidd
). Deux nœuds Qpid sont configurés dans dc-1. Vous devez donc suivre les étapes suivantes pour les deux nœuds :
- Obtenez l'UUID pour Qpidd, comme décrit dans Obtenir les UUID.
- Arrêtez
edge-qpid-server
etapigee-qpidd
:/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
/opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
- Obtenez la liste des groupes Analytics et de consommateurs :
curl -u <AdminEmailID>:'<AdminPassword>' -X GET http://{MS_IP}:8080/v1/analytics/groups/ax
- Supprimez Qpid du groupe de consommateurs :
curl -u <AdminEmailID>:'<AdminPassword>' -H "Content-Type: application/json" -X DELETE \ "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/consumer-groups/{consumer_group}/consumers/{QPID_UUID}"
- Supprimez Qpid du groupe Analytics :
curl -v -u <AdminEmailID>:'<AdminPassword>' \ -X DELETE "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/servers?uuid={QPID_UUID}&type=qpid-server"
- Annulez l'enregistrement du serveur Qpid à partir de l'installation Edge :
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=qpid-server®ion=dc-1&pod=central&uuid={QPID_UUID}&action=remove"
- Supprimez le serveur Qpid de l'installation Edge :
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
- Redémarrez tous les composants edge-qpid-server sur tous les nœuds pour vous assurer que la modification est prise en compte par ces composants :
$ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server wait_for_ready
- Désinstallez edge-qpid-server et apigee-qpidd :
$ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall $ /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall
Postgres et Postgresql
Le centre de données que vous mettez hors service peut comporter un maître ou un standby Postgres. Les sections suivantes expliquent comment les mettre hors service :
Mise hors service du nœud maître Postgres
Remarque : Si vous mettez hors service le maître Postgres, veillez à promouvoir l'un des nœuds de secours disponibles en tant que nouveau maître Postgres. Bien que les files d'attente QPID mettent en mémoire tampon les données, vous risquez de perdre des données analytiques si le maître Postgres n'est pas disponible pendant une longue période.
Pour désactiver le nœud maître Postgres :
- Sauvegardez le nœud maître Postgres dc-1 en suivant les instructions des liens suivants :
- Obtenez les UUID des serveurs Postgres, comme décrit dans Obtenir les UUID.
- Sur dc-1, arrêtez
edge-postgres-server
etapigee-postgresql
sur le maître actuel :/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- Sur le nœud de secours de dc-2, saisissez la commande suivante pour en faire le nœud maître :
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql promote-standby-to-master <IP of OLD Progress master>
Remarque : Si vous avez plusieurs nœuds Postgres de secours, vous devez ajouter des entrées d'hôte sur le nouveau nœud maître et mettre à jour le paramètre de réplication pour tous les nœuds Postgres de secours disponibles.
Pour ajouter des entrées d'hôte au nouveau maître Postgres, suivez les étapes de la section appropriée ci-dessous :
S'il ne reste qu'un seul nœud de secours
Par exemple, supposons que trois nœuds Postgres étaient configurés avant la mise hors service. Vous avez mis hors service le maître existant et promu l'un des nœuds de secours PostgreSQL restants en tant que maître. Configurez le nœud de secours restant en procédant comme suit :
- Sur le nouveau maître, modifiez le fichier de configuration pour définir les éléments suivants :
PG_MASTER=IP_or_DNS_of_new_PG_MASTER PG_STANDBY=IP_or_DNS_of_PG_STANDBY
- Activez la réplication sur la nouvelle instance maître :
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFIle
S'il reste plusieurs nœuds de secours
- Ajoutez la configuration suivante dans
/opt/apigee/customer/application/postgresql.properties
:conf_pg_hba_replication.connection=host replication apigee standby_1_ip/32 trust \n host replication apigee standby_2_ip/32 trust
- Assurez-vous que le fichier /opt/apigee/customer/application/postgresql.properties appartient à l'utilisateur apigee :
chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
- Redémarrez
apigee-postgresql
:apigee-service apigee-postgresql restart
- Modifiez le fichier de configuration
/opt/silent.conf
et mettez à jour le champPG_MASTER
avec l'adresse IP du nouveau maître Postgres. - Supprimez toutes les anciennes données Postgres à l'aide de la commande suivante :
rm -rf /opt/apigee/data/apigee-postgresql/
- Configurez la réplication sur le nœud de secours :
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
- Vérifiez que le maître Postgres est correctement configuré en saisissant la commande suivante dans dc-2 :
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
- Supprimez et ajoutez des serveurs PostgreSQL au groupe Analytics et au groupe de consommateurs.
- Supprimez l'ancien serveur Postgres du groupe d'analyse en suivant les instructions de la section Supprimer un serveur Postgres d'un groupe d'analyse.
- Ajoutez un serveur Postgres au groupe d'analyse en suivant les instructions de la section Ajouter un serveur Postgres existant à un groupe d'analyse.
- Annulez l'enregistrement de l'ancien serveur postgres depuis dc-1 :
curl -u <AdminEmailID>:<AdminPassword> -X POST http://{MS_IP}:8080/v1/servers \ -d "type=postgres-server®ion=dc-1&pod=analytics&uuid=UUID&action=remove"
- Supprimez l'ancien serveur PostgreSQL de dc-1 :
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
- Vous pouvez maintenant désactiver l'ancien maître Postgres sans risque. Désinstallez
edge-postgres-server
etapigee-postgresql
:/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall
Pour mettre à jour les paramètres de réplication sur un nœud de secours :
Mise hors service de la base de données standby Postgres
Remarque : La documentation pour une installation en cluster de 12 nœuds montre que le nœud postgresql dc-1 est maître, mais pour plus de commodité, dans cette section, il est supposé que le nœud postgresql dc-1 est en veille et que le nœud postgresql dc-2 est maître.
Pour désactiver le serveur de secours Postgres, procédez comme suit :
- Obtenez les UUID des serveurs Postgres en suivant les instructions de la section Obtenir les UUID.
- Arrêtez
apigee-postgresql
sur le nœud de secours actuel dans dc-1 :/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- Supprimez et ajoutez des serveurs PostgreSQL au groupe Analytics et au groupe de consommateurs.
- Supprimez l'ancien serveur Postgres du groupe d'analyse en suivant les instructions de la section Supprimer un serveur Postgres d'un groupe d'analyse.
- Ajoutez un serveur Postgres au groupe d'analyse en suivant les instructions de la section Ajouter un serveur Postgres existant à un groupe d'analyse.
- Annulez l'enregistrement de l'ancien serveur postgres depuis dc-1 :
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=postgres-server®ion=dc-1&pod=analytics&uuid=UUID&action=remove"
- Supprimez l'ancien serveur PostgreSQL de dc-1 :
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
- Vous pouvez maintenant désactiver l'ancien maître Postgres sans risque. Désinstallez
edge-postgres-server
etapigee-postgresql
:/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall
ZooKeeper et Cassandra
Cette section explique comment mettre hors service les serveurs ZooKeeper et Cassandra dans une configuration à deux centres de données.
Si vous avez plus de deux centres de données, veillez à supprimer toutes les références au nœud mis hors service (dc-1 dans ce cas) de tous les fichiers de configuration silencieux dans tous les centres de données restants. Pour les nœuds Cassandra à mettre hors service, supprimez ces hôtes de
CASS_HOSTS
. Les nœuds Cassandra restants doivent conserver l'ordre d'origine deCASS_HOSTS
.Remarque concernant ZooKeeper : Vous devez maintenir un quorum de nœuds de vote lorsque vous modifiez la propriété
ZK_HOST
dans le fichier de configuration, afin de vous assurer que l'ensemble ZooKeeper reste fonctionnel. Votre configuration doit comporter un nombre impair de nœuds votants. Pour en savoir plus, consultez Tâches de maintenance Apache ZooKeeper.Pour mettre hors service les serveurs ZooKeeper et Cassandra :
- Sauvegardez les nœuds Cassandra et ZooKeeper dc-1 en suivant les instructions des liens suivants :
Répertoriez les UUID des serveurs ZooKeeper et Cassandra dans le centre de données où les nœuds Cassandra vont être mis hors service.
apigee-adminapi.sh servers list -r dc-1 -p central -t application-datastore --admin <AdminEmailID> --pwd '<AdminPassword>' --host localhost
- Désenregistrez le type de serveur :
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MS_IP:8080/v1/servers -d "type=cache-datastore&type=user-settings-datastore&type=scheduler-datastore&type=audit-datastore&type=apimodel-datastore&type=application-datastore&type=edgenotification-datastore&type=identityzone-datastore&type=user-settings-datastore&type=auth-datastore®ion=dc-1&pod=central&uuid=UUID&action=remove"
- Retirez le serveur du registre :
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
- Mettez à jour le fichier de configuration en supprimant les adresses IP des nœuds mis hors service de
ZK_HOSTS
etCASS_HOSTS
.Exemple : Supposons que vous disposiez des adresses IP
$IP1 $IP2 $IP3
dans dc-1 et$IP4 $IP5 $IP6
dans dc-2, et que vous mettiez dc-1 hors service. Vous devez ensuite supprimer les adresses IP$IP1 $IP2 $IP3
des fichiers de configuration.- Entrées existantes dans le fichier de configuration :
ZK_HOSTS="$IP1 $IP2 $IP3 $IP4 $IP5 $IP6" CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1, $IP4:2,1 $IP5:2,1 $IP6:2,1”
- Nouvelles entrées du fichier de configuration :
ZK_HOSTS="$IP4 $IP5 $IP6" CASS_HOSTS="$IP4:2,1 $IP5:2,1 $IP6:2,1"
- Entrées existantes dans le fichier de configuration :
- Mettez à jour le fichier de configuration silencieux (modifié à l'étape e) avec les adresses IP des nœuds supprimés et exécutez le profil du serveur de gestion sur tous les nœuds hébergeant des serveurs de gestion :
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f updated_config_file
- Mettez à jour le fichier de configuration avec les adresses IP des nœuds mis hors service supprimés, puis exécutez le profil MP/RMP sur tous les nœuds Router et Message Processor :
- Si Edge Router et Message Processor sont configurés sur le même nœud, saisissez :
/opt/apigee/apigee-setup/bin/setup.sh -p rmp -f updated_config_file
Si le routeur Edge et le processeur de messages sont configurés sur des nœuds distincts, saisissez ce qui suit :
Pour le routeur :
/opt/apigee/apigee-setup/bin/setup.sh -p r -f updated_config_file
Pour le processeur de messages :
/opt/apigee/apigee-setup/bin/setup.sh -p mp -f updated_config_file
- Si Edge Router et Message Processor sont configurés sur le même nœud, saisissez :
- Reconfigurez tous les nœuds Qpid en supprimant les adresses IP des nœuds mis hors service du fichier de réponses :
/opt/apigee/apigee-setup/bin/setup.sh -p qs -f updated_config_file
- Reconfigurez tous les nœuds Postgres en supprimant les adresses IP des nœuds mis hors service du fichier de réponse :
/opt/apigee/apigee-setup/bin/setup.sh -p ps -f updated_config_file
- Modifier l'espace de clés
system_auth
. Si l'authentification Cassandra est activée sur un nœud Cassandra existant, mettez à jour le facteur de réplication de l'espace de cléssystem_auth
en exécutant la commande suivante :ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-2': '3'};
Cette commande définit le facteur de réplication sur
'3'
, ce qui indique qu'il y a trois nœuds Cassandra dans le cluster. Modifiez cette valeur si nécessaire.Une fois cette étape terminée, la topologie Cassandra ne doit plus contenir
dc-1
dans aucun espace de clés. - Mettez hors service les nœuds Cassandra sur dc-1, un par un.
Pour mettre hors service les nœuds Cassandra, saisissez la commande suivante :
/opt/apigee/apigee-cassandra/bin/nodetool -h cassIP -u cassandra -pw '<AdminPassword>' decommission
- Vérifiez la connexion des nœuds Cassandra depuis dc-1 à l'aide de l'une des commandes suivantes :
/opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p '<AdminPassword>'
Ou commande de validation secondaire à exécuter sur le nœud mis hors service :
/opt/apigee/apigee-cassandra/bin/nodetool netstats
La commande ci-dessus doit renvoyer :
Mode: DECOMMISSIONED
- Exécutez le profil DS pour tous les nœuds Cassandra et ZooKeeper dans dc-2 :
/opt/apigee/apigee-setup/bin/setup.sh -p ds -f updated_config_file
- Arrêtez
apigee-cassandra
etapigee-zookeeper
dans dc-1 :apigee-service apigee-cassandra stop
apigee-service apigee-zookeeper stop
- Désinstallez
apigee-cassandra
etapigee-zookeeper
dans dc-1 :apigee-service apigee-cassandra uninstall
apigee-service apigee-zookeeper uninstall
Supprimez les liaisons de dc-1.
Pour supprimer les liaisons de dc-1, procédez comme suit :
- Supprimez les liaisons de dc-1.
- Répertoriez tous les pods disponibles dans l'organisation :
curl -v -u <AdminEmailID>:'<AdminPassword>' -X GET "http://MS_IP:8080/v1/o/ORG/pods"
- Pour vérifier que toutes les liaisons ont été supprimées, obtenez les UUID des serveurs associés aux pods :
curl -v -u <AdminEmailID>:'<AdminPassword>' \ -X GET "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1/servers"
Si cette commande ne renvoie aucun UUID, cela signifie que les étapes précédentes ont supprimé toutes les liaisons et que vous pouvez passer à l'étape suivante. Sinon, passez à l'étape suivante.
- Supprimez toutes les liaisons de serveur pour les UUID obtenus à l'étape précédente :
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
- Dissociez l'organisation du pod :
curl -v -u <AdminEmailID>:'<AdminPassword>' "http://MS_IP:8080/v1/o/ORG/pods" -d "action=remove®ion=dc-1&pod=gateway-1" -H "Content-Type: application/x-www-form-urlencoded" -X POST
- Répertoriez tous les pods disponibles dans l'organisation :
- Supprimez les pods :
curl -v -u <AdminEmailID>:'<AdminPassword>' "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1" -X DELETE
- Supprimez la région.
curl -v -u <AdminEmailID>:'<AdminPassword>' "http://MS_IP:8080/v1/regions/dc-1" -X DELETE
À ce stade, vous avez terminé la désactivation de dc-1.
Annexe
Dépannage
Si, après avoir effectué les étapes précédentes, il reste des serveurs dans certains pods, suivez les étapes ci-dessous pour les désenregistrer et les supprimer. Remarque : Modifiez les types et le pod si nécessaire.
- Obtenez les UUID à l'aide de la commande suivante :
apigee-adminapi.sh servers list -r dc-1 -p POD -t --admin <AdminEmailID> --pwd '<AdminPassword>’ --host localhost
- Annuler l'enregistrement du type de serveur :
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MP_IP:8080/v1/servers -d "type=TYPE=REGION=dc-1&pod=POD&uuid=UUID&action=remove"
- Supprimez les serveurs un par un :
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MP_IP:8080/v1/servers/UUID
Validation
Vous pouvez valider l'arrêt à l'aide des commandes suivantes.
Serveur de gestion
- Exécutez les commandes suivantes à partir des serveurs de gestion dans toutes les régions.
curl -v -u <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=central®ion=dc-1
curl -v -u <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=gateway®ion=dc-1
curl -v -u <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=analytics®ion=dc-1
- Exécutez la commande suivante sur tous les composants pour vérifier les exigences de port pour tous les ports de gestion.
curl -v http://MS_IP:8080/v1/servers/self
- Vérifiez le groupe d'analyse.
curl -v -u <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/o/ORG/e/ENV/provisioning/axstatus
curl -v -u <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/analytics/groups/ax
-
Sur tous les nœuds Cassandra, saisissez :
/opt/apigee/apigee-cassandra/bin/nodetool -h <host> statusthrift
Un état
running
ounot running
sera renvoyé pour ce nœud spécifique. -
Sur un nœud, saisissez :
/opt/apigee/apigee-cassandra/bin/nodetool -h <host> ring
/opt/apigee/apigee-cassandra/bin/nodetool -h <host> status
Les commandes ci-dessus renvoient des informations sur les centres de données actifs.
-
Sur les nœuds ZooKeeper, saisissez d'abord :
echo ruok | nc <host> 2181
Cette commande renvoie
imok
.Saisissez ensuite :
echo stat | nc <host> 2181 | grep Mode
La valeur de
Mode
renvoyée par la commande ci-dessus sera l'une des suivantes :observer
,leader
oufollower
. -
Dans un nœud ZooKeeper, exécutez la commande suivante :
/opt/apigee/apigee-zookeeper/contrib/zk-tree.sh >> /tmp/zk-tree.out.txt
-
Sur le nœud maître Postgres, exécutez la commande suivante :
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
Vérifiez que la réponse indique que le nœud est le maître.
-
Sur le nœud de secours, exécutez :
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
Assurez-vous que la réponse confirme que le nœud est en veille.
-
Connectez-vous à la base de données PostgreSQL à l'aide de la commande suivante :
psql -h localhost -d apigee -U postgres
Lorsque vous y êtes invité, saisissez le mot de passe de l'utilisateur
postgres
(par défaut :postgres
).Exécutez ensuite la requête suivante pour vérifier le
client_received_start_timestamp
maximal :SELECT max(client_received_start_timestamp) FROM "analytics"."$org.$env.fact" LIMIT 1;
Nœuds Cassandra/ZooKeeper
Journaux
Vérifiez les journaux des composants pour vous assurer qu'il n'y a pas d'erreurs.
- Sur le nouveau maître, modifiez le fichier de configuration pour définir les éléments suivants :