The configuration file /opt/mapr/conf/mfs.conf specifies the following parameters about the MapR-FS server on each node.

You must restart the FileServer after making changes to this file.





IP address of the FileServer



Port used for communication with the server


Version 4.0.1:

Version 4.0.2 and later versions: inode:3:meta:6:small:27:dir:15:db:20:valc:3

LRU cache configuration. The default value was changed in Version 4.0.2.

See "Notes on LRU Cache Configuration," below this table.

mfs.cache.memory Amount of system memory, in MB, reserved for use by the MFS cache. By default, this value is set to 20% of the system memory.



Specifies whether MapR-FS is running on a virtual machine


Timeout, in seconds, after which a disk is considered failed and taken offline. This parameter can be increased to tolerate slow disks.



Maximum number of disks supported on a single node.


The maximum amount of disk space that the MFS logs can consume before the oldest log file is deleted; based on the following calculation:

maxSizePerLogFile = maxLogSize / MAX_NUM_OF_LOG_FILES 


  • maxLogSize = total amount of space that MFS log files can consume  
  • MAX_NUM_OF_LOG_FILES = total number of MFS log files



A list of subnets that are allowed to make requests to the FileServer service and access data on the cluster.


The maximum number of outstanding IOs on a disk after throttling.



The amount of time a resync disk read work area waits between disk read operations. This time is based on the following calculation:
WaitTime = C * N * RTT / throttleFactor

  • C A constant with a value of 10.
  • N The number of outstanding resync disk read work areas.
  • RTT Time to complete the current disk read operation.
  • throttleFactor The value of the mfs.disk.resynciothrottle.factor parameter.


Controls the amount of time a resync network send work area waits between network send operations.

mfs.ssd.trim.enabled Set this parameter to 1 to enable TRIM operations for SSD devices.



Notes on LRU Cache Configuration

The cache values are expressed as percentages, which vary based on the expected size of the data the node is required to cache. The goal is to achieve a state in which most of the required data comes directly from the cache. You may need to tune the cache percentages based on your cluster configuration and the workload on specific nodes. Non-default allocations tend to work better for nodes that run only CLDB and nodes that do not have CLDB but do have a heavy MapR-DB workload. Note the following recommendations.

  • For CLDB-only nodes, increase the size of the cache for Dir LRU to 40%: change dir:15 to dir:40
    A CLDB-only node is a fileserver node that hosts only the CLDB volume mapr.cldb.internal (no user volume data is hosted on the node). Dir LRU is used to host B-tree pages.
  • For non-CLDB nodes with no MapR-DB workload, optimize the cache to host as many file pages as possible. Change the value of the parameter to: inode:3:meta:6:small:27:dir:6

The remainder of the cache will be used to cache file data pages.

Note: You need to restart MFS in order for the change in mfs.conf to take effect.