Suite du sujet Gestion de la mémoire RAM Jeedom :
Bonjour,
Je relance ce sujet un peu volontairement car j’ai plus ou moins la même problématique et les intervenant avait l’air de maitriser ce sujet.
Je suis en recherche pour optimiser la RAM de mon Jeedom, car j’avais 2/2.5GB d’affectée à ma VM sous Proxmox et je voyais depuis quelques temps le swap se remplir.
Dans un premier temps j’ai augmenté mon swap de 1GB à 2GB mais je me suis vite dis c’est une mauvaise idée le SSD ne vas pas aimer ça.
J’avais modifié les montages tmpfs dans /etc/fstab en espérant libérer un peu de RAM.
Du coup, j’ai rajouter de la RAM sur mon serveur et j’ai alloué 4GB pour Jeedom et je me retrouve avec ce type de graph dans Proxmox :
Lorsque je reboot, la RAM descend, la pointe a été à 3.66GB d’après Proxmox.
Comme ma machine recommençait a swapper légèrement, j’ai changé le Swapiness de 10 à 5% en espérant que ça sera suffisant. De mémoire les process qui utilisait le swap avant mon reboot était mariaDb et apache.
Pourtant dans Jeedom je n’ai pas vu la RAM en dessous de 36% donc pour identifier la cause c’est un peu compliqué.
J’ai l’impression que si j’augmente la RAM je ne suis pas sur que cela soit vraiment suffisant. J’aimerai identifier le process en cause de cette surconsommation que je n’avais pas avant.
J’ai redémarré donc la commande free -m n’est pas parlante pour voir la consommation du swap.
$free -m
$free -m
total utilisé libre partagé tamp/cache disponible
Mem: 3919 1302 1725 98 891 2271
Partition d'échange: 2023 0 2023
$df -h
$df -h
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
udev 1,9G 0 1,9G 0% /dev
tmpfs 196M 860K 196M 1% /run
/dev/sda1 14G 11G 2,9G 79% /
tmpfs 1,6G 0 1,6G 0% /dev/shm
tmpfs 5,0M 0 5,0M 0% /run/lock
tmpfs 256M 15M 242M 6% /tmp/jeedom
tmpfs 392M 8,0K 392M 1% /run/user/1000
J’avais rien de spécial dans les répertoires tmp (monté sur le tmpfs). J’avais déjà modifié un peu pour réduire l’utilisation de la RAM.
J’essaye d’identifié s’il n’y a pas de fuite mémoire sur des process (mis à part xiaomihome que je relance dès qu’il dépasse 200MB) le reste a l’air stable.
$ps -eo size,pid,user,command --sort -size
$ps -eo size,pid,user,command --sort -size
SIZE PID USER COMMAND
529216 625 mysql /usr/sbin/mariadbd
207144 2493 www-data homebridge
183108 2902 root /usr/bin/node --preserve-symlinks server/bin/www.js
174668 6019 root node index.js
158840 2763 www-data /var/www/html/plugins/ttscast/core/class/../../resources/venv/bin/python3 /var/www/html/plugins/ttscast/resources/ttscastd/ttscastd.py --logl
148744 2604 www-data homebridge-config-ui-x
129728 2879 root node /usr/local/bin/yarn start
125532 2570 root /usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel warning --socketport 55035 --mqtt_server mqtts://127.0.0.1:88
114928 2037 www-data node /var/www/html/plugins/alexaapi/resources/alexaapi.js http://192.168.1.22 amazon.fr alexa.amazon.fr ********* 1000
109688 492 root /usr/bin/python3 /usr/bin/fail2ban-server -xf start
105548 2597 root /usr/bin/node /var/www/html/plugins/philipsHue/resources/philipsHued/philipsHued.js --loglevel warning --socketport 55090 --callback http://1
102832 2685 www-data node /var/www/html/plugins/rflink/resources/rflink.js http://127.0.0.1:80/plugins/rflink/core/api/rflink.php?apikey=**********
91324 2818 www-data /usr/bin/python3 /var/www/html/plugins/xiaomihome/resources/xiaomihomed/xiaomihomed.py --loglevel warning --socketport 55019 --callback http:
89376 5990 root npm start
87576 2341 root node /var/www/html/plugins/gsh/core/class/../../resources/gshd/gshd.js --udp_discovery_port 3311 --udp_discovery_packet 4A_______6D --pid /t
85416 2278 www-data /usr/bin/python3 /var/www/html/plugins/eufy/resources/eufyd/eufyd.py --loglevel warning --socketport 60600 --callback http://127.0.0.1:80/plu
51188 5795 www-data /var/www/html/plugins/kroomba/core/class/../../resources/venv/bin/python3 /var/www/html/plugins/kroomba/resources/kroomba/kroombad.py --logle
34664 495 root /usr/sbin/ModemManager
31556 464 root /opt/TheengsGateway/bin/python3 -m TheengsGateway
29596 199 root /lib/systemd/systemd-journald
26044 403 root /sbin/dhclient -4 -v -i -pf /run/dhclient.ens18.pid -lf /var/lib/dhcp/dhclient.ens18.leases -I -df /var/lib/dhcp/dhclient6.ens18.leases ens18
25772 471 root /usr/libexec/polkitd --no-debug
25576 2542 www-data /var/www/html/plugins/MQTTDiscovery/core/class/../../resources/venv/bin/python3 /var/www/html/plugins/MQTTDiscovery/resources/mqttdiscoveryd.
22912 121253 jeedom (sd-pam)
MariaDb est consommateur de ressource, il conseille de sur leur site de passer la valeur swappiness à 1 (mais comme le serveur héberge Jeedom, j’ai préféré mettre 5 dans un premier temps)
Que me conseillez-vous ? J’ajouterai bien 512MB de RAM en plus mais j’ai l’impression que ça ne va pas résoudre mon problème de swap (Et j’aimerai bien comprendre le pourquoi du comment ).
Je n’ai pas vu la RAM descendre en dessous de 35% dans la page santé (ce qui m’aurait permis d’identifier un process ou autre).
A force de lire des articles un peu partout, on déconseille de mettre du swap avec un SSD (avant comme ça ne bougeait pas je ne m’inquiétait pas plus que ça).
Mais je me dis si je désactive le swap, la machine ne risque t’elle pas de cracher ? Idéalement j’aimerai revenir a une situation ou le swap est présent mais n’est pas utilisé, mais j’ai besoin d’identifier la RAM nécessaire par rapport à mon installation.
Merci pour vos retours.