mfschunkserver.cfg

NAME

mfschunkserver.cfg - main configuration file for mfschunkserver

DESCRIPTION

The file mfschunkserver.cfg contains configuration of MooseFS chunkserver process.

SYNTAX

Syntax is:

OPTION = VALUE

Lines starting with # character are ignored as comments.

STARTUP OPTIONS

Changes in this section require process restart.

WORKING_USER

user to run daemon as

WORKING_GROUP

group to run daemon as; optional value - if empty then default user group will be used

SYSLOG_IDENT

name of process to place in syslog messages; default is mfschunkserver

LOCK_MEMORY

whether to perform mlockall() to avoid swapping out mfschunkserver process; default is 0, i.e. no

LIMIT_GLIBC_MALLOC_ARENAS

limit malloc arenas to given value - prevents server from using huge amount of virtual memory (Linux only, default is 4)

DISABLE_OOM_KILLER

disable out of memory killer (Linux only, default is 1)

NICE_LEVEL

nice level to run daemon with; default is -19; note: process must be started as root to increase priority, if setting of priority fails, process retains the nice level it started with

FILE_UMASK

set default umask for group and others (user has always 0); default is 027 - block write for group and block all for others

DATA_PATH

where to store daemon lock file

ALLOW_STARTING_WITH_INVALID_DISKS

when set to one chunkserver will not abort start even when incorrect entries are found in 'mfshdd.cfg' file; default is 0 (do not start with invalid entries)

CAN_USE_MMAP

using mmap for allocation can slightly reduce ram usage and give a silight performance boost, but on certain architectures/kernels can lead to problems - especially on architectures with more than one physical CPU; default is 0

RUNTIME OPTIONS

Changes in this section require only process reload.

HDD_CONF_FILENAME

alternate location/name of mfshdd.cfg file

HDD_TEST_SPEED

Speed of background chunk tests in MB/s per disk (formally entry defined in mfshdd.cfg). Value can be given as a decimal number; default is 1.0

HDD_MIN_TEST_INTERVAL

prevents from testing chunk integrity when last I/O (including test) was performed less than HDD_MIN_TEST_INTERVAL ago; default is 1 day; for value formatting see TIME

HDD_FADVISE_MIN_TIME

If possible use posix_fadvise(POSIX_DONTNEED) after each chunk test (but only if last I/O operation was performed more than HDD_FADVISE_MIN_TIME ago). Using zero will always perform posix_fadvise (flush cache) and using negative value will never flush cache after tests. This setting is valid only for systems that support posix_fadivise; default is 1 day; for value formatting see TIME

HDD_LEAVE_SPACE_DEFAULT

how much space should be left unused on each hard drive; number format: [0-9]*(.[0-9]*)?([kMGTPE]|[KMGTPE]i)?B? ; default is 256MiB; examples: 0.5GB, .5G, 2.56GiB, 1256M etc.

HDD_REBALANCE_UTILIZATION

percent of total work time the chunkserver is allowed to spend on hdd space rebalancing; default is 20

HDD_HIGH_SPEED_REBALANCE_LIMIT

maximum simultaneous writes per disk in high speed disk rebalance (0 means use standard rebalance; default is 0)

HDD_ERROR_TOLERANCE_COUNT, HDD_ERROR_TOLERANCE_PERIOD

how many i/o errors (COUNT) to tolerate in given amount of seconds (PERIOD) on a single hard drive; if the number of errors exceeds this setting, the offending hard drive will be marked as damaged; defaults are 2 and 600

HDD_FSYNC_BEFORE_CLOSE

enables/disables fsync before chunk closing; default is 0 (off)

HDD_SPARSIFY_ON_WRITE

enables/disables sparsification (skip leading and trailing zeroz) during writing new block; default is 1 (on)

HDD_RR_CHUNK_COUNT

how many chunks should be created in one directory before moving to the next one; higher values are better with most OSes caching algorithms, low values lead to more even chunk distribution; default is 10000 which works best in most cases

HDD_KEEP_DUPLICATES_HOURS

how many hours duplicate chunks should be kept before deleting (default is one week); changing this value and reloading will reset the counter; for value formatting see TIME

WORKERS_MAX, WORKERS_MAX_IDLE

maximum number of active workers and maximum number of idle workers; defaults are 250 and 40

SYSLOG_MIN_LEVEL

minimum level of messages that will be reported by chunkserver; levels in order of importance: ERROR, WARNING, NOTICE, INFO, DEBUG (default is INFO)

SYSLOG_ELEVATE_TO

reported messages of level lower than set by this option will be elevated to this level (i.e. if SYSLOG_MIN_LEVEL is set to DEBUG and SYSLOG_ELEVATE_TO is set to NOTICE, all INFO and DEBUG messages will be sent to syslog as NOTICE ; default is NOTICE)

MASTER CONNECTION OPTIONS

Changes in this section require only process reload.

LABELS

labels string defined as a set of letters (case insensitive) separated by coma or semicolon; default is empty - no labels

BIND_HOST

local address to use for master connections; default is *, i.e. default local address

MASTER_HOST

MooseFS master host, IP is allowed only in single-master installations; default is mfsmaster

MASTER_PORT

MooseFS master command port; default is 9420

MASTER_CONTROL_PORT

(pro only) MooseFS master control port; default is 9419

MASTER_TIMEOUT

timeout in seconds for master connections (if not 0); If this value is zero then chunkserver sets it initially to 10 and asks master for this value. default is 0 (ask master).

MASTER_RECONNECTION_DELAY

delay in seconds before trying to reconnect to master after disconnection (default is 5)

AUTH_CODE

authentication string (used only when master requires authorization)

CHUNKS_PER_REGISTER_PACKET

maximum number of chunks system will try to put in a single register message (default is 1000, limits 100-10000)

CLIENTS CONNECTION OPTIONS

Changes in this section require only process reload.

CSSERV_LISTEN_HOST

IP address to listen on for client (mount) connections (* means any)

CSSERV_LISTEN_PORT

port to listen on for client (mount) connections (default is 9422)

NOTES

TIME

For config variables that define time without requiring a single, specific unit, time can be defined as a number of seconds (integer) or a time period in one of two possible formats:

first format: #.#T where T is one of: s-seconds, m-minutes, h-hours, d-days or w-weeks; fractions of seconds will be rounded to full seconds

second format: #w#d#h#m#s, any number of definitions can be ommited, but the remaining definitions must be in order (so #d#m is still a valid definition, but #m#d is not); ranges: s,m: 0 to 59, h: 0 to 23, d: 0 t o 6, w is unlimited and the first definition is also always unlimited (i.e. for #d#h#m d will be unlimited)

Notice! For variable HDD_KEEP_DUPLICATES_HOURS only h,d and w time units are accepted and a value without a time unit is treated as hours; fractions are rounded to full hours.

Examples:

1.5h is the same as 1h30m, is the same as 90m, is the same as 5400s, is the same as 5400

2.5d is the same as 2d12h, is the same as 60h; 1d36h is not a valid time period (h is not the first definition, so it is bound by range 0 to 23)

1.03m is the same as 62s (61.8 seconds will be rounded up to 62)

Copyright Jakub Kruszona-Zawadzki, Saglabs SA

This file is part of MooseFS.

READ THIS BEFORE INSTALLING THE SOFTWARE. BY INSTALLING, ACTIVATING OR USING THE SOFTWARE, YOU ARE AGREEING TO BE BOUND BY THE TERMS AND CONDITIONS OF MooseFS LICENSE AGREEMENT FOR VERSION 1.7 AND HIGHER IN A SEPARATE FILE. THIS SOFTWARE IS LICENSED AS PROPRIETARY SOFTWARE. YOU DO NOT ACQUIRE ANY OWNERSHIP RIGHT, TITLE OR INTEREST IN OR TO ANY INTELLECTUAL PROPERTY OR OTHER PROPRIETARY RIGHTS.

SEE ALSO

mfschunkserver(8), mfshdd.cfg(5)