VxRail: Os nós podem apresentar alto congestionamento de LSOM
Summary: Os nós do VxRail das versões 4.7.511-526 e 7.0.130-132 podem apresentar alto congestionamento de memória, impactando o desempenho e causando possíveis paralisações do vSAN. Existe uma solução temporária para desabilitar os serviços que causam o problema; o upgrade para a versão 4.7.530/7.0.200 resolve esse problema. Com base no artigo 82619 da KB da VMware ...
Symptoms
Nota: as informações fornecidas baseiam-se na KB 82619da VMware (Link externo). Analise o artigo para ver se há possíveis atualizações mais recentes.
Ao executar o VxRail versões 4.7.511-526 e 7.0.130-132, você pode enfrentar os seguintes problemas:
- "Número de elementos nas tabelas de confirmação" superior a 100 mil, sem diminuir durante determinado período.
- Perda de capacidade para ver arquivos e pastas no repositório de dados do vSAN
- Degradação grave do desempenho
- Um ou mais nós apresentando alto congestionamento de memória do LSOM (Local Log Structured Object Management) (consulte o comando 1).
- "Número de elementos nas tabelas de confirmação" superior a 100 mil (consulte o Comando 2).
- Congestionamento de memória propagado para todos os nós do cluster.
- Registro de mensagens no vmkernel.log:
LSOM: LSOM_ThrowCongestionVOB:3429: Throttled: Virtual SAN node "HOSTNAME" maximum Memory congestion reached.
- Registro de mensagens no vobd.log e no vmkernel.log
LSOM_ThrowAsyncCongestionVOB:1669: LSOM Memory Congestion State: Exceeded. Congestion Threshold: 200 Current Congestion: 204.
Os seguintes comandos com script podem ser usados para verificar se o host está enfrentando esse problema.
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 ;
Exemplo de saída
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$"
Exemplo de resultado
(somente em discos de cache; você pode ignorar quaisquer resultados de discos de capacidade)
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
Os valores de configuração do scrubber foram modificados nas versões do vSAN 6.7 P04 e vSAN 7.0 U1 P02 para limpar objetos com uma frequência mais alta. Essa alteração resulta na persistência do progresso do depurador de cada objeto com mais frequência do que antes. Se houver objetos ociosos no cluster, o depurador acumulará entradas de tabela de confirmação para esses objetos no LSOM. Eventualmente, o acúmulo leva ao congestionamento da memória LSOM.
Objetos ociosos nesse contexto referem-se a objetos que não estão associados, VMs desligadas, objetos replicados e assim por diante.
Resolution
Se um host tiver um grande número de elementos nas tabelas de confirmação, conforme determinado no script 2, uma das duas etapas a seguir é recomendada para limpar o congestionamento.
- Coloque o host com problema no modo de manutenção com a opção Ensure Accessibility e reinicialize o host.
- Desmonte e remonte os grupos de discos de cada host usando a opção Ensure Accessibility.
Solução alternativa:
Se não for possível fazer upgrade, por enquanto ainda implemente as seguintes alterações de configurações avançadas para evitar que esse problema ocorra.
- Altere a frequência do depurador para uma vez por ano:
esxcfg-advcfg -s 1 /VSAN/ObjectScrubsPerYear
- Desative o temporizador de persistência do depurador:
esxcfg-advcfg -s 0 /VSAN/ObjectScrubPersistMin