Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
moosefs(7)		     This is part of MooseFS		      moosefs(7)

NAME
     MooseFS - fault tolerant, highly reliable, near indefinitely scalable, fast
     distributed file system in User Space

DESCRIPTION
     MooseFS  is a fault tolerant, distributed file system. It spreads data over
     several physical locations (servers), which are visible to user as one  re-
     source.  For  standard  file operations MooseFS acts as any other Unix-like
     filesystem:

     -	    hierarchical structure (directory tree)

     -	    stores POSIX file attributes (permissions, last access and modifica-
	    tion times)

     -	    supports special files (block and character devices, pipes and sock-
	    ets)

     -	    supports symbolic links (file names pointing to  target  files,  not
	    necessarily  on  MooseFS)  and  hard links (different names of files
	    that refer to the same data on MooseFS)

     -	    supports ACLs

     -	    supports file locks across all connected client processes

     -	    access to the file system can be limited based on IP address  and/or
	    password

     Distinctive features of MooseFS are:

     -	    high  reliability (several copies of the data can be stored on sepa-
	    rate physical machines)

     -	    capacity is dynamically expandable by adding new computers/disks

     -	    deleted files are retained for a configurable period of time (a file
	    system level atrash bina)

     -	    coherent snapshots of files, even while  the  file	is  being  writ-
	    ten/accessed

     MooseFS consists of 4 key components:

     Master Servers
	    in	MooseFS  CE  one  machine, in MooseFS Pro any number of machines
	    running the mfsmaster binary, which is managing the  whole	filesys-
	    tem,  storing  metadata for every file (information on size, attrib-
	    utes and file location(s), including all information about non-regu-
	    lar files, i.e. directories, sockets, pipes and devices)

     Chunk Servers
	    any number of commodity servers running the  mfschunkserver  binary,
	    which  is  storing filesa data and synchronizing it among themselves
	    (if a certain file is supposed to exist in more than one copy).

     Metalogger Servers
	    any number of servers running the mfsmetalogger binary, all of which
	    store metadata changelogs and periodically	download  main	metadata
	    file

     Client Processes
	    machines  running  the  mfsmount  processes,  that	access the files
	    stored on MooseFS file system and expose them via  a  regular  mount
	    point inside a client's machine local directory tree

     Additionally,  a  number of tools can be installed to aid in using the sys-
     tem:

     GUI    a web based statistic and diagnostic tool (mfsgui, acts as a  simple
	    HTTP server)

     CLI    command line statistic and diagnostic tool mfscli

     Block device
	    Linux  only  special client process mfsbdev that maps single MooseFS
	    files into block devices

     TOOLS  various command line administrative tools

   ARCHITECTURE
     From the useras point of view, MooseFS behaves like a regular,  POSIX  com-
     pliant file system with almost indefinitely expandable capacity. To achieve
     this,  the  system was designed as a distributed network file system, where
     different processes run on different machines, perform  specific  tasks  to
     assure  proper  performance  of  the whole file system. Master Sever stores
     metadata information about files and manages the whole file system. In case
     of MooseFS Pro installation, with several Master Servers, only one of  them
     (in  the  role  of Leader) manages the system at any given time, the others
     (Followers) just keep up, ready to pick up the Leader role at any time. The
     managing Master Server has following tasks: it stores all the  metadata  of
     the  file	system (information about files and directories), it answers the
     requests of client (mount) processes when they want to perform  any  opera-
     tion  on the file system, it monitors the state of Chunk Servers and stored
     data, sending replication	or  deletion  requests	to  Chunk  Servers  when
     needed.

     Metadata  is  stored  in the memory of the Master Server and simultaneously
     saved on a local disk (as a periodically updated binary  file  and  immedi-
     ately  updated  incremental logs). The main binary file as well as the logs
     are synchronized to the  Metaloggers  (if	present)  and  to  spare  Master
     Servers  in  MooseFS Pro version. Chunk Servers store actual file data. All
     data on the filesystem is divided	into  chunks  (hence  the  name  of  the
     servers  that  keep them) of maximum size of 64 MiB. The chunks are kept in
     several copies on different servers according to  appropriate  policies  to
     ensure  safety of the data. Chunk Servers communicate with client processes
     (on clientas request, as directed by the master)  to  write  or  read  file
     data. The chunks themselves are stored as regular files on local hard drive
     or drives.

     All  file	operations  on	a client computer that has mounted a MooseFS in-
     stance are exactly the same as they would be with any  other  file  system.
     The  operating  systemas  kernel  transfers all file operations to the FUSE
     module, which communicates with the mfsmount process. The mfsmount  process
     communicates  through the network subsequently with the managing server and
     data servers. This entire process is fully transparent to the user.

     At any point in time new Chunk Servers can be added to the system to expand
     the total available space. Also, new hard drives can be added  to	existing
     Chunk Servers. The Master Server will add the anewa space to the filesystem
     automatically.  Thus, the systemas data capacity can be expanded almost in-
     definitely, as long as the Master Server is able to store all the	relevant
     metadata  information. The Master Server will ensure that all the available
     physical disk space is used in as balanced manner as possible.

     In such a big system hardware failures will occur. MooseFS  will  automati-
     cally  react  in  case of hard drive failure or whole Chunk Server failure.
     The safety of the data is ensured by storing it in several copies,  accord-
     ing  to  defined  storage	policies. After a failure the Master Server will
     start replication of the still existing copies in	accordance  with  endan-
     gered  fileas  storage  policy,  to  restore its required safety redundancy
     level as soon as possible.

     Failures of a client machine (that runs the mfsmount process) will have  no
     influence	on the coherence of the file system or on the other clientsa op-
     erations. In the worst case scenario the data that has not  yet  been  sent
     from  the	failed client computer to the Master Server and/or Chunk Servers
     may be lost.

   SUPPORTED PLATFORMS
     mfsmount is based on the  FUSE  mechanism	(Filesystem  in  USErspace),  so
     MooseFS  client  is available on every Operating System with a working FUSE
     implementation.

     The Master Server, Metalogger and Chunk Servers can be  run  on  any  POSIX
     compliant	OS  on	most  major  processor	types  and architectures. 32-bit
     processors will work too, but beware of RAM handicap and  the  consequences
     of it. Use of 64-bit versions of operating systems is highly recommended.

REPORTING BUGS
     Report bugs to <bugs@moosefs.com>.

COPYRIGHT
     Copyright (C) 2026 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  Soft-
     ware 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 de-
     tails.

     You should have received a copy of the GNU  General  Public  License  along
     with this program; if not, see <https://www.gnu.org/licenses/>.

SEE ALSO
     mfsmaster(8), mfschunkserver(8), mfsmetalogger(8), mfsmount(8), mfsbdev(8)

MooseFS 4.59.1-1		    May 2026			      moosefs(7)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=moosefs&sektion=7&manpath=FreeBSD+Ports+15.1.quarterly>

home | help