ZFS ARC in memory usage graph.

sgp

New Member
Oct 9, 2024
7
0
1
Hi there.

Some time ago, I read that if someone wants better monitoring, then they need to set up specialized monitoring software and not rely on PVE graphs. Nevertheless, I do believe that ZFS users without monitoring software (like me) could benefit from showing ARC size in a memory usage graph (at node summary). I do think so, because without that, the graph is not very useful and does not show VMs' actual memory usage. By default, ARC can consume up to 50% of RAM. Thus, it's typical that ARC can eat more RAM than the VMs themselves (on my homelab 32GB-node ARC went to 15.9 GB, and VMs are only 7.2 GB).

So, my question is, is there any way to add the ARC size to the memory graph?
 
For reference:


By default, ARC can consume up to 50% of RAM.

ZFS uses 50 % of the host memory for the Adaptive Replacement Cache (ARC) by default. For new installations starting with Proxmox VE 8.1, the ARC usage limit will be set to 10 % of the installed physical memory, clamped to a maximum of 16 GiB. This value is written to /etc/modprobe.d/zfs.conf.
https://pve.proxmox.com/wiki/ZFS_on_Linux#sysadmin_zfs_limit_memory_usage
 
Thx for your reply. The links were useful.
Regarding the value of 10% -- perhaps I've changed it myself to 50% and just forgot about it :rolleyes:. If I understand it correctly, ARC has a low priority ram usage (it may be true only for freebsd though), thus that isn't very practical to set it only to 10%. OTOH I do believe proxmox devs know what they are doing.
 
If I understand it correctly, ARC has a low priority ram usage (it may be true only for freebsd though), thus that isn't very practical to set it only to 10%.

The ARC should shrink, if other processes need the memory, yes. But, afaik, the shrinking could often start too late respectively be too slow, which might lead to oom situations.

OTOH I do believe proxmox devs know what they are doing.

For reference:
https://bugzilla.proxmox.com/show_bug.cgi?id=4829