KB450086 – Setting ZFS on Linux ARC Limit

Last modified: May 31, 2021
You are here:

Setting ZFS on Linux ARC Limit

Scope/Description:

ZFS on Linux defaults to use only 50% of available RAM in the system.

This should be bumped up to 90% in a sole ZFS server, and 80% if other tasks (non ZFS) are running as well.

Here is a website to convert  bits to gigabits, as the inputted value needs to be in bits. http://www.matisse.net/bitcalc/

Prerequisites:

Linux Server with ZFS 0.8.3 Installed

Steps:

  • To Check the amount of RAM dedicated to the ARC limit currently run the following command, c_min and c_max are the min and max values set for the ARC limit.
cat /proc/spl/kstat/zfs/arcstats |grep c_
  • Create a ZFS conf file.
vim /etc/modprobe.d/zfs.conf
  • Add the following options to the zfs.conf, change the values depending on the use case/amount of RAM in the system.
options zfs zfs_arc_min=[33%*RAM]
options zfs zfs_arc_max=[90%*RAM]
  • Make sure to reboot the system for the changes to take effect.

Verification:

To verify the limits were set, after the reboot run the original command to confirm the values have changed.

cat /proc/spl/kstat/zfs/arcstats |grep c_

Troubleshooting:

If you want to set the value to a specific amount of any percentage of the ram change the max value set.

Was this article helpful?
Dislike 0
Views: 567
Unboxing Racking Storage Drives Cable Setup Power UPS Sizing Remote Access