.TH mfschunkserver.cfg "5" "September 2024" "MooseFS 4.56.6-1" "This is part of MooseFS" .SH NAME mfschunkserver.cfg \- main configuration file for \fBmfschunkserver\fP .SH DESCRIPTION The file \fBmfschunkserver.cfg\fP contains configuration of MooseFS chunkserver process. .SH SYNTAX .PP Syntax is: .TP .IB OPTION " = " VALUE .PP Lines starting with \fB#\fP character are ignored as comments. .SH STARTUP OPTIONS Changes in this section require process restart. .TP .B WORKING_USER user to run daemon as .TP .B WORKING_GROUP group to run daemon as; optional value - if empty then default user group will be used .TP .B SYSLOG_IDENT name of process to place in syslog messages; default is mfschunkserver .TP .B LOCK_MEMORY whether to perform mlockall() to avoid swapping out mfschunkserver process; default is 0, i.e. no .TP .B LIMIT_GLIBC_MALLOC_ARENAS limit malloc arenas to given value - prevents server from using huge amount of virtual memory (Linux only, default is 4) .TP .B DISABLE_OOM_KILLER disable out of memory killer (Linux only, default is 1) .TP .B 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 .TP .B 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 .TP .B DATA_PATH where to store daemon lock file .TP .B 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) .TP .B 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 .SH RUNTIME OPTIONS Changes in this section require only process reload. .TP .B HDD_CONF_FILENAME alternate location/name of \fBmfshdd.cfg\fP file .TP .B HDD_TEST_SPEED Speed of background chunk tests in MB/s per disk (formally entry defined in \fBmfshdd.cfg\fP). Value can be given as a decimal number; default is 1.0 .TP .B 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 .TP .B 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 .TP .B 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. .TP .B HDD_REBALANCE_UTILIZATION percent of total work time the chunkserver is allowed to spend on hdd space rebalancing; default is 20 .TP .B HDD_HIGH_SPEED_REBALANCE_LIMIT maximum simultaneous writes per disk in high speed disk rebalance (0 means use standard rebalance; default is 0) .TP .BR 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 .TP .B HDD_FSYNC_BEFORE_CLOSE enables/disables fsync before chunk closing; default is 0 (off) .TP .B HDD_SPARSIFY_ON_WRITE enables/disables sparsification (skip leading and trailing zeroz) during writing new block; default is 1 (on) .TP .B 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 .TP .B 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 .TP .BR WORKERS_MAX ", " WORKERS_MAX_IDLE maximum number of active workers and maximum number of idle workers; defaults are 250 and 40 .TP .B 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) .TP .B SYSLOG_ELEVATE_TO reported messages of level lower than set by this option will be elevated to this level (i.e. if \fBSYSLOG_MIN_LEVEL\fP is set to DEBUG and \fBSYSLOG_ELEVATE_TO\fP is set to NOTICE, all INFO and DEBUG messages will be sent to syslog as NOTICE ; default is NOTICE) .SH MASTER CONNECTION OPTIONS Changes in this section require only process reload. .TP .B LABELS labels string defined as a set of letters (case insensitive) separated by coma or semicolon; default is empty - no labels .TP .B BIND_HOST local address to use for master connections; default is *, i.e. default local address .TP .B MASTER_HOST MooseFS master host, IP is allowed only in single-master installations; default is mfsmaster .TP .B MASTER_PORT MooseFS master command port; default is 9420 .TP .B MASTER_CONTROL_PORT (pro only) MooseFS master control port; default is 9419 .TP .B 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). .TP .B MASTER_RECONNECTION_DELAY delay in seconds before trying to reconnect to master after disconnection (default is 5) .TP .B AUTH_CODE authentication string (used only when master requires authorization) .TP .B CHUNKS_PER_REGISTER_PACKET maximum number of chunks system will try to put in a single register message (default is 1000, limits 100-10000) .SH CLIENTS CONNECTION OPTIONS Changes in this section require only process reload. .TP .B CSSERV_LISTEN_HOST IP address to listen on for client (mount) connections (\fB*\fP means any) .TP .B CSSERV_LISTEN_PORT port to listen on for client (mount) connections (default is 9422) .SH TIME .PP 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: .PP 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 .PP 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) .PP Notice! For variable \fBHDD_KEEP_DUPLICATES_HOURS\fP 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. .PP Examples: .PP 1.5h is the same as 1h30m, is the same as 90m, is the same as 5400s, is the same as 5400 .PP 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) .PP 1.03m is the same as 62s (61.8 seconds will be rounded up to 62) .SH COPYRIGHT Copyright (C) 2024 Jakub Kruszona-Zawadzki, Saglabs SA This file is part of MooseFS. MooseFS is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2 (only). MooseFS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with MooseFS; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA or visit http://www.gnu.org/licenses/gpl-2.0.html .SH "SEE ALSO" .BR mfschunkserver (8), .BR mfshdd.cfg (5)