Limit ZFS Memory Usage
ZFS uses 50 % of the host memory for the Adaptive Replacement Cache (ARC) by default. Allocating enough memory for the ARC is crucial for IO performance, so reduce it with caution. As a general rule of thumb, allocate at least 2 GiB Base + 1 GiB/TiB-Storage. For example, if you have a pool with 8 TiB of available storage space then you should use 10 GiB of memory for the ARC.
use this CLI to check existing value
arc_summary
You can change the ARC usage limit for the current boot (a reboot resets this change again) by writing to the zfs_arc_max module parameter directly:
nano /etc/modprobe.d/zfs.conf
insert below value to zfs conf and value should be in bytes. below max value is 15GB and Min is 14GB.
options zfs zfs_arc_min=15032385536
options zfs zfs_arc_max=16106127360
If your root file system is ZFS you must update your initramfs every time this value changes:
update-initramfs -u
reboot the server finally