Data Protection Central : RabbitMQ ne parvient pas à démarrer

Résumé: Cet article fournit une procédure pour Data Protection Central (DPC) lorsque RabbitMQ ne parvient pas à démarrer après une mise à jour logicielle.

Cet article concerne Cet article ne concerne pas Cet article n’est associé à aucun produit spécifique. Toutes les versions du produit ne sont pas identifiées dans cet article.

Symptômes

Lorsque RabbitMQ ne parvient pas à démarrer après une mise à jour logicielle DPC, l’état affiche le service RabbitMQ (rabbitmq-server) est en cours d’activation, mais ne se termine jamais :
# /usr/local/dpc/bin/dpc status
Version: 19.9.0-13
msm-ui-main: active
msm-monitor: inactive
msm-elg: active
mongod: active
rabbitmq-server: activating
nginx: active
dp-iam: active
FIPS: disabled
#
Le journal RabbitMQ affiche des erreurs lors de l’accès à la base de messages au démarrage. Par exemple, dans l' /var/log/dpc/rabbitmq/rabbit@<DPC Hostname>.log, il montre que RabbitMQ échoue lors de la tentative de reconstruction de l’index :
2024-05-07 23:56:25.408992-04:00 [info] <0.230.0> Running boot step recovery defined by app rabbit
2024-05-07 23:56:25.410137-04:00 [info] <0.423.0> Making sure data directory '/var/lib/dpc/rabbitmq/mnesia/rabbit@<DPC Hostname>/msg_stores/vhosts/628WB79CIFDYO9LJI6DKMI09L' for vhost '/' exists
2024-05-07 23:56:25.412199-04:00 [info] <0.423.0> Starting message stores for vhost '/'
2024-05-07 23:56:25.412425-04:00 [info] <0.428.0> Message store "628WB79CIFDYO9LJI6DKMI09L/msg_store_transient": using rabbit_msg_store_ets_index to provide index
2024-05-07 23:56:25.413720-04:00 [info] <0.423.0> Started message store of type transient for vhost '/'
2024-05-07 23:56:25.413970-04:00 [info] <0.432.0> Message store "628WB79CIFDYO9LJI6DKMI09L/msg_store_persistent": using rabbit_msg_store_ets_index to provide index
2024-05-07 23:56:25.414552-04:00 [warning] <0.432.0> Message store "628WB79CIFDYO9LJI6DKMI09L/msg_store_persistent": rebuilding indices from scratch
2024-05-07 23:56:25.495894-04:00 [error] <0.369.0> ** Generic server <0.369.0> terminating
2024-05-07 23:56:25.495894-04:00 [error] <0.369.0> ** Last message in was {'$gen_cast',
2024-05-07 23:56:25.495894-04:00 [error] <0.369.0>                            {submit_async,
2024-05-07 23:56:25.495894-04:00 [error] <0.369.0>                                #Fun<rabbit_classic_queue_index_v2.11.72031207>,
2024-05-07 23:56:25.495894-04:00 [error] <0.369.0>                                <0.367.0>}}
2024-05-07 23:56:25.495894-04:00 [error] <0.369.0> ** When Server state == undefined
2024-05-07 23:56:25.495894-04:00 [error] <0.369.0> ** Reason for termination ==
2024-05-07 23:56:25.495894-04:00 [error] <0.369.0> ** {function_clause,
2024-05-07 23:56:25.495894-04:00 [error] <0.369.0>        [{rabbit_queue_index,journal_minus_segment1,
2024-05-07 23:56:25.495894-04:00 [error] <0.369.0>             [{no_pub,no_del,ack},
2024-05-07 23:56:25.495894-04:00 [error] <0.369.0>              {{true,
2024-05-07 23:56:25.495894-04:00 [error] <0.369.0>                   <<136,59,154,30,244,191,111,192,154,235,124,189,92,104,1,207,

Cause

RabbitMQ ne parvient pas à démarrer en raison d’un volume élevé de messages bloqués dans la file d’attente.

Dans cet exemple, la file d’attente comporte plus de 800 Mo de données :
<DPC Hostname>:/var/lib/dpc/rabbitmq/mnesia # du -h .
20K     ./rabbit@<DPC Hostname>/quorum/rabbit@<DPC Hostname>
20K     ./rabbit@<DPC Hostname>/quorum
58M     ./rabbit@<DPC Hostname>/msg_stores/vhosts/628WB79CIFDYO9LJI6DKMI09L/msg_store_persistent
824M    ./rabbit@<DPC Hostname>/msg_stores/vhosts/628WB79CIFDYO9LJI6DKMI09L/queues/BV3H25N6AGWF7TDIN2L5RE0DA
824M    ./rabbit@<DPC Hostname>/msg_stores/vhosts/628WB79CIFDYO9LJI6DKMI09L/queues
0       ./rabbit@<DPC Hostname>/msg_stores/vhosts/628WB79CIFDYO9LJI6DKMI09L/msg_store_transient
881M    ./rabbit@<DPC Hostname>/msg_stores/vhosts/628WB79CIFDYO9LJI6DKMI09L
881M    ./rabbit@<DPC Hostname>/msg_stores/vhosts
881M    ./rabbit@<DPC Hostname>/msg_stores
20K     ./rabbit@<DPC Hostname>/coordination/rabbit@<DPC Hostname>
20K     ./rabbit@<DPC Hostname>/coordination
881M    ./rabbit@<DPC Hostname>
0       ./rabbit@<DPC Hostname>-plugins-expand
881M    .
<DPC Hostname>:/var/lib/dpc/rabbitmq/mnesia #

Résolution

Pour résoudre le problème, utilisez la procédure ci-dessous pour reconstruire les ressources RabbitMQ :
  1. Prenez un snapshot de la machine virtuelle DPC ou effectuez une sauvegarde complète du serveur DPC.
  2. Ouvrez une session SSH sur le DPC et connectez-vous en tant qu'« admin », puis passez l’utilisateur sur root :
su -
  1. Arrêtez le service RabbitMQ (rabbitmq-server) à l’aide de la commande suivante :
service rabbitmq-server stop
  1. Remplacez le répertoire par /var/lib/dpc/rabbitmq/mnesia:
cd  /var/lib/dpc/rabbitmq/mnesia
  1. S’il y a suffisamment d’espace libre dans /tmp, copiez les données dans /tmp (facultatif) :
cp -rp * /tmp
  1. Supprimez les données sous /var/lib/dpc/rabbitmq/mnesia à l’aide de la commande suivante :
rm -rf *
  1. Redémarrez le service RabbitMQ, fichiers sous /var/lib/dpc/rabbitmq/mnesia doivent être régénérés :
service rabbitmq-server start
  1. Redémarrez les services DPC :
/usr/local/dpc/bin/dpc restart

Exemple de sortie d’un environnement de laboratoire :
exemple montrant RabbitMQ régénérant la structure de données
Figure 1 : Exemple montrant que RabbitMQ régénère la structure de données sous /var/lib/dpc/rabbitmq/mnesia Pendant le démarrage
  1. Connectez-vous à l’interface utilisateur DPC pour vérifier si le DPC fonctionne comme prévu.
  2. Supprimer les sous-dossiers précédemment déplacés vers /tmp si les données ont été copiées à l’étape 5. 
  3. Lorsque le service revient à la normale, supprimez le snapshot de machine virtuelle DPC s’il a été créé. 
 

Produits concernés

Data Protection Central, PowerProtect DP4400, PowerProtect DP5300, PowerProtect DP5800, PowerProtect DP8300, PowerProtect DP8800, PowerProtect Data Protection Software, Integrated Data Protection Appliance Family , Integrated Data Protection Appliance Software, PowerProtect DP5900, PowerProtect DP8400, PowerProtect DP8900 ...
Propriétés de l’article
Numéro d’article: 000225640
Type d’article: Solution
Dernière modification: 27 juin 2025
Version:  3
Trouvez des réponses à vos questions auprès d’autres utilisateurs Dell
Services de support
Vérifiez si votre appareil est couvert par les services de support.