PowerFlex : Comment supprimer un consommateur NATS sdnas-gw orphelin
Résumé: Cet article explique comment supprimer le consommateur NATS sdnas-gw orphelin
Instructions
Étape 0 : Prenez un snapshot VMware des 3 MVM avant d’apporter des modifications.
Étape 1 : Vérifiez que le consommateur orphelin existe :
kubectl exec -it -n powerflex $(kubectl get pods -n powerflex | grep -i "nats-server-box" | awk '{print $1}') -- nats consumer report pfxm-events
Confirmez que sdnas-gw est répertorié avec un nombre élevé d’attentes. S’il n’est pas répertorié, il s’agit d’un autre problème — arrêtez-vous et enquêtez.
Étape 2 : Supprimez le consommateur sdnas-gw orphelin :
kubectl exec -it -n powerflex $(kubectl get pods -n powerflex | grep -i "nats-server-box" | awk '{print $1}') -- nats consumer rm pfxm-events sdnas-gw
Si cela réussit, passez à l’étape 3.
En cas d’échec (les messages en attente peuvent bloquer la suppression), passez à l’étape 2a.
Étape 2a : Forcer le retrait (uniquement en cas d’échec de l’étape 2) :
Tout d’abord, supprimez la ressource personnalisée du consommateur de Kubernetes afin que l’opérateur NACK ne la recrée pas après la suppression forcée :
kubectl get consumer -n powerflex
kubectl delete consumer -n powerflex sdnas
Ensuite, forcez la suppression du consommateur de NATS avec l’indicateur --force :
kubectl exec -it -n powerflex $(kubectl get pods -n powerflex | grep -i "nats-server-box" | awk '{print $1}') -- nats consumer rm --force pfxm-events sdnas-gw
Si la CR n’a pas été supprimée avant la suppression forcée de NATS, l’opérateur NACK recréera le consommateur. Dans ce cas, supprimez la CR maintenant et redémarrez le pod NACK pour le resynchroniser :
kubectl delete consumer -n powerflex sdnas
kubectl delete pod -n powerflex $(kubectl get pods -n powerflex | grep nats-nack | awk '{print $1}')
Étape 3 : Purgez les messages accumulés :
kubectl exec -it -n powerflex $(kubectl get pods -n powerflex | grep -i "nats-server-box" | awk '{print $1}') -- nats stream purge pfxm-events
Étape 4 : Vérifiez qu’il ne reste que 3 consommateurs :
kubectl exec -it -n powerflex $(kubectl get pods -n powerflex | grep -i "nats-server-box" | awk '{print $1}') -- nats consumer report pfxm-events
Consommateurs attendus : alert-service, event-history-external-events, notifier-external-events. Pas de sdnas-gw.
Étape 5 : Exécutez à nouveau le diagnostic d’intégrité du bus de messages à partir de l’interface utilisateur de PFxM et confirmez qu’il renvoie OK.
Étape 6 : Surveillez pendant 24 à 48 heures pour confirmer que les messages ne s’accumulent pas à nouveau.
Étape 7 : Une fois la stabilité confirmée, supprimez les snapshots VMware.