Peço desculpas antecipadamente se isso não for claro o suficiente para entender o meu problema, é um pouco longo, mas fiz o meu melhor para torná-lo compreensível.
Estou executando uma CU6 do Exchange 2016 em uma VM do Windows Server 2016 e recebo com frequência um aviso no log do aplicativo dizendo que estou sem memória virtual (arquivo de paginação).
Meumonitoramentomostraqueoarquivodepaginaçãoestáem4GBdesdequeaVMfoicriadaemabril,nuncaaumentoualémde4GBnemdiminuiu.
Parasolucionaresseproblemaeentenderqualéoproblema,crieiduasVMsdetestecomumainstalaçãosimplificadadoWindowsServer2016StandardedoWindowsServer2008R2Enterprise,ambascomamesmaconfiguraçãodememóriafísicaevirtual:
TestarconfiguraçãodaVM
RAM:4GB
DiscoC(dedicadoaosistema):32GB
DiscoG(dedicadoaoarquivodepaginação):8GB
ArquivodepaginaçãoparaaunidadeC:512-1024MB
ArquivodepaginaçãoparaaunidadeG:Tamanhogerenciadopelosistema
MeutesteVM2016estáusandoatualmente512MBnaunidadeC:e1GBnaunidadeG:totalizando5,5damemóriaconfirmada
OtesteVM2008estáatualmenteusando512MBnaunidadeC:e4GBnaunidadeG:totalizando12,5GBdememóriaconfirmada
Depoisdepesquisarmuitosobrememóriacomprometida,encontreiesteartigodeMarkRussinovitch: link
Eu decidi usar a ferramenta testlimit64.exe com a opção -m para ver se o arquivo de paginação aumentaria na VM de teste 2016 e testaria a VM 2008.
O resultado reflete o problema explicado inicialmente, onde o arquivo de paginação na VM de teste 2016 não aumenta na unidade G :, mas na VM de teste 2008:
DeacordocomesteKBdaMicrosoft: link , usando a configuração de despejo automático de memória em Painel de controle- > Sistema- > Configurações avançadas do sistema- > Inicialização e recuperação- > Gravar informações de depuração com o arquivo de paginação configurado como gerenciado pelo sistema, ele pode definir o arquivo de paginação para um tamanho menor que a quantidade ou memória física.
Os testes que realizei não usaram essa configuração, tanto o teste VM 2008 quanto o teste VM 2016 foram configurados com o despejo de memória do Kernel.
Portanto,seeudefiniroarquivodepaginaçãonaunidadeG:paraSistemagerenciadonaVMdeteste2016,seutamanhoserádefinidoautomaticamentepeloWindowsenãoaumentaráquandoestiversobcarga.Esteéonúcleodoproblema,poiséumamudançadecomportamentocomoWindowsServer2008.
MeuúltimotestefoiconfiguraroarquivodepaginaçãonaunidadeG:manualmentepara4096-8100MBeexecutarnovamenteaferramentatestlimit64.execomaopção-m,ecomovocêpodever,oarquivodepaginaçãoaumentade4GBpara~8GB
Então, aqui está a minha pergunta: por que o Windows Server 2016 não está aumentando o tamanho do arquivo de paginação quando definido como gerenciado pelo sistema? O que mudou entre o Windows Server 2008 e 2016 sobre isso?
Muito obrigado por ler todo o caminho e por suas respostas.