VxRail : Nodes May Experience High LSOM Congestion
Summary: Les nœuds VxRail des versions 4.7.511-526 et 7.0.130-132 peuvent subir une congestion élevée de la mémoire, ce qui entraîne des performances et de potentielles pannes vSAN. Il existe une solution de contournement pour désactiver les services à l’origine du problème. La mise à niveau vers 4.7.530/7.0.200 résout ce problème, d’après l’article 82619 de la base de connaissances VMware. ...
Symptoms
Remarque : les informations fournies sont basées sur l’article 82619de la base de connaissances VMware (lien externe). Consultez l’article pour connaître les éventuelles mises à jour plus récentes.
Lors de l’exécution des versions 4.7.511-526 et 7.0.130-132 de VxRail, vous pouvez rencontrer les problèmes suivants :
- Le nombre d’éléments dans les tables de validation est supérieur à 100 000 et ne diminue pas sur une période de quelques heures.
- Perte de la capacité de visualisation des fichiers et dossiers sur le datastore vSAN
- Grave dégradation des performances
- Un ou plusieurs nœuds présentant une congestion de la mémoire LSOM (Local Log Structured Object Management) élevée (voir la commande 1).
- Le nombre d’éléments dans les tables de validation est supérieur à 100 000 (voir la commande 2).
- Congestion de la mémoire propagée à tous les nœuds du cluster.
- Messages de journal dans vmkernel.log :
LSOM: LSOM_ThrowCongestionVOB:3429: Throttled: Virtual SAN node "HOSTNAME" maximum Memory congestion reached.
- Messages de journal dans vobd.log et vmkernel.log
LSOM_ThrowAsyncCongestionVOB:1669: LSOM Memory Congestion State: Exceeded. Congestion Threshold: 200 Current Congestion: 204.
Vous pouvez utiliser les commandes scriptées suivantes pour déterminer si l’hôte peut rencontrer ce problème.
Script 1
while true; do echo "================================================"; date; for ssd in $(localcli vsan storage list |grep "Group UUID"|awk '{print $5}'|sort -u);do echo $ssd;vsish -e get /vmkModules/lsom/disks/$ssd/info|grep Congestion;done; for ssd in $(localcli vsan storage list |grep "Group UUID"|awk '{print $5}'|sort -u);do llogTotal=$(vsish -e get /vmkModules/lsom/disks/$ssd/info|grep "Log space consumed by LLOG"|awk -F : '{print $2}');plogTotal=$(vsish -e get /vmkModules/lsom/disks/$ssd/info|grep "Log space consumed by PLOG"|awk -F : '{print $2}');llogGib=$(echo $llogTotal |awk '{print $1 / 1073741824}');plogGib=$(echo $plogTotal |awk '{print $1 / 1073741824}');allGibTotal=$(expr $llogTotal + $plogTotal|awk '{print $1 / 1073741824}');echo $ssd;echo " LLOG consumption: $llogGib";echo " PLOG consumption: $plogGib";echo " Total log consumption: $allGibTotal";done;sleep 30; done ;
Exemple de sortie
Fri Feb 12 06:40:51 UTC 2021
529dd4dc--xxxx-xxxx-xxxx-xxxxxxxxxxxx
memCongestion:0 >> This value is higher than 0 ( ranger 0-250 )
slabCongestion:0
ssdCongestion:0
iopsCongestion:0
logCongestion:0
compCongestion:0
memCongestionLocalMax:0
slabCongestionLocalMax:0
ssdCongestionLocalMax:0
iopsCongestionLocalMax:0
logCongestionLocalMax:0
compCongestionLocalMax:0
529dd4dc-xxxx-xxxx-xxxx-xxxxxxxxxxxxxx
LLOG consumption: 0.270882
PLOG consumption: 0.632553
Total log consumption: 0.903435
Script 2
vsish -e ls /vmkModules/lsom/disks/ 2>/dev/null | while read d ; do echo -n ${d/\//} ; vsish -e get /vmkModules/lsom/disks/${d}WBQStats | grep "Number of elements in commit tables" ; done | grep -v ":0$"
Exemple de sortie
(sur les disques de cache uniquement ; vous pouvez ignorer les résultats des disques capacitifs)
52f395f3-03fd-f005-bf02-40287362403b/ Number of elements in commit tables:300891 526709f4-8790-8a91-2151-a491e2d3aec5/ Number of elements in commit tables:289371
Cause
Les valeurs de configuration de l’outil de nettoyage ont été modifiées dans les versions vSAN 6.7 P04 et vSAN 7.0 U1 P02 pour nettoyer les objets à une fréquence plus élevée. Cette modification entraîne la persistance de la progression du défilement de chaque objet plus fréquemment qu’auparavant. S’il existe des objets inactifs dans le cluster, le nettoyage accumule des entrées de table de validation pour ces objets au niveau LSOM. L’accumulation finit par entraîner une congestion de la mémoire LSOM.
Dans ce contexte, les objets inactifs font référence à des objets qui ne sont pas associés, à des machines virtuelles hors tension, à des objets répliqués, etc.
Resolution
Si un hôte dispose d’un nombre élevé d’éléments dans les tables de validation, comme déterminé dans le script 2, l’une des deux étapes suivantes est recommandée pour éliminer la congestion.
- Mettez l’hôte problématique en mode maintenance avec Ensure Accessibility, puis redémarrez l’hôte.
- Démontez et remontez les groupes de disques de chaque hôte à l’aide d’Ensure Accessibility.
Contournement:
Si vous ne parvenez pas à effectuer la mise à niveau, mettez toujours en œuvre les modifications des paramètres avancées suivantes pour éviter que ce problème ne se produise.
- Modifiez la fréquence de l’épuration à une fois par an :
esxcfg-advcfg -s 1 /VSAN/ObjectScrubsPerYear
- Disable scrubber persist timer :
esxcfg-advcfg -s 0 /VSAN/ObjectScrubPersistMin