O MongoDB tenderá para 100% de memória residente ao longo do tempo, desde que o conjunto de dados (dados mais índices) exceda a RAM disponível. Eventualmente, ele encontrará um "estado estável" no qual dados novos (recentemente tocados) são colocados na memória ou mantidos na RAM e os dados antigos (Menos recentemente usados) são paginados. A única maneira de evitar isso é ter um conjunto de dados menor que a memória disponível, caso contrário, isso acontecerá eventualmente (embora possa levar horas / dias / semanas / meses dependendo da rapidez com que você acessa os dados).
Isso não é nada para se preocupar, e é semelhante a como há relatórios errôneos em torno de arquivos mapeados na memória e consumo de memória em geral - o kernel gerencia a alocação de memória e elimina dados do MongoDB se outros processos precisarem. É bom ter em mente ao escrever coisas como alarmes de alta utilização de memória - na maioria dos casos para sistemas MongoDB eles não têm sentido. Você ficaria muito melhor olhando para as taxas de falha de página ou disco IO como proxy (consulte as métricas em MMS para saber mais).