From ec7950a65ecccd4bb8633b4557400bb399d398f1 Mon Sep 17 00:00:00 2001 From: whirigoyen Date: Wed, 24 Jan 2024 16:02:12 +0100 Subject: [PATCH] =?UTF-8?q?Doc=20d=C3=A9sactivation=20ancienne=20directori?= =?UTF-8?q?ve=20legacy=20systemd=20pour=20la=20m=C3=A9moire?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- HowtoMongoDB.md | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/HowtoMongoDB.md b/HowtoMongoDB.md index 5a6bf4f1..654d218b 100644 --- a/HowtoMongoDB.md +++ b/HowtoMongoDB.md @@ -183,7 +183,7 @@ La mémoire utilisée par Mongo se répartit en deux types : * La mémoire résidente : celle nécessaire au stockage des bases de données, requêtes, indexes. * La mémoire cache. -MongoDB n'a pas de plafonnement de la mémoire totale utilisée. Il considère qu'il est le seul service sur le serveurs (!). +**MongoDB n'a pas de plafonnement de la mémoire totale utilisée. Il considère qu'il est le seul service sur le serveurs (!).** Par défaut, il limite la taille de son cache à la moitié de la (RAM - 1G), avec un minimum de 256M. Par exemple, sur un serveur avec 6G, il limitera son cache à `(6-1)/2 = 2.5G`. @@ -196,7 +196,18 @@ Dans ce cas, on peut limiter le processus avec les cgroups dans Systemd : [Service] Restart=always MemoryHigh=xG # RAM * 0.7 -MemoryMax=xG # RAM * 0.8 +MemoryMax=yG # RAM * 0.8 +~~~ + +Attention, il peut aussi être nécessaire de désactiver les directives legacy présentes dans l'unité systemd, sans quoi les nouvelles peuvent ne pas être prises en compte : + +~~ +LimitFSIZE= +LimitCPU= +LimitAS= +LimitNOFILE= +LimitNPROC= +LimitMEMLOCK= ~~~ ~~~ @@ -204,7 +215,7 @@ MemoryMax=xG # RAM * 0.8 # systemctl status mongod.service ● mongod.service - MongoDB Database Server (…) - Memory: 1G (high: 4.4G max: 5G) + Memory: 1G (high: xG max: yG) ~~~