fundo
Tivemos um incidente em que um cluster de failover do Windows sofreu uma interrupção. Um post-mortem mostrou que o nó foi "removido", conforme descrito neste artigo .
Apenas recentemente migramos esse cluster totalmente para o nosso ambiente VMware, e parece que o evento descrito acima pode ter sido a causa da falha.
O artigo associado da VMware KB sobre isso fala sobre o aumento da configuração Small Rx Buffers
e da Rx Ring #1
configuração, mas adverte que aumentar muito isso pode aumentar drasticamente a sobrecarga de memória no host.
Após uma auditoria dos Network Interface\Packets Received Discarded
contadores de desempenho para nossas ~ 150 VMs do Windows, 22 vNICs em 16 convidados tiveram alguns pacotes descartados.
Uma quantidade pequena o suficiente para não me preocupar em taxar os hosts com uso de memória adicional, mas quero entender como a memória é usada para essas configurações e de onde vem a memória.
Questões
- Qual é a relação entre o número de buffers e o tamanho do anel?
- Como se calcula a quantidade de memória usada para determinados valores dessas configurações?
- Como essas configurações estão na própria NIC no sistema operacional convidado, presumo que sejam configurações de driver. Isso me faz pensar que a RAM usada pode ser um pool paginável ou não paginável.
- Isso está correto?
- Se sim, eu deveria estar preocupado com isso?
- Há preocupações que não estou levando em consideração aqui?
Estamos tentando determinar se há uma desvantagem em defini-los ao máximo nas VMs afetadas, além do uso da memória do host VMware. Se estamos aumentando o risco de a memória do pool ser esgotada no convidado, por exemplo, estamos mais inclinados a começar pequeno.
Algumas (talvez todas) dessas perguntas podem não ser específicas para VMware ou virtualização.