The current version, v1.3 of LeoManager depends on Erlang Mnesia, A distributed telecommunications DBMS to manage configurations of a LeoFS system and information of all nodes. LeoManager nodes must keep running to replicate the data for preventing data loss. You need to configure both LeoManager master and the slave.

There are some configuration differences between LeoManager-master and LeoManager-slave. LeoManager-master only has the consistency level and the multi datacenter replication.

The default setting is to launch a LeoFS system on one node, whose setting cannot replicate data because the total number of the replica is one, and data loss could happen with high probability. You need to modify the configuration suitably before launching the LeoFS system on your production or other environments.

The partner of manager's alias. This configuration is necessary for communicationg between LeoManager's master and LeoManager's slave. ( Default: [email protected] )

console.bind_address

The IP address LeoManager listens on. You can set not only a specific IP address but also any which can be used to listen on all interfaces and localhost which can be used to listen on the loopback interface. ( Default: localhost )

console.port.cui

The port number of LeoManager's console for text format( Default: 10010 )

console.port.json

The port number of LeoManager's console for JSON format( Default: 10020 )

console.acceptors.cui

The maximum number of acceptors of LeoManager's console for text format( Default: 3 )

console.acceptors.json

The maximum number of acceptors of LeoManager's console for JSON format( Default:16 )

System

system.dc_id

Datacenter ID is necessary for using the data center replication( Default: dc_1 )

system.cluster_id

Cluster ID is also necessary for using the data center replication( Default: leofs_1 )

-smp enable and -smp start the Erlang runtime system with SMP support enabled.

( Default: enable )

erlang.schedulers.compaction_of_load

Enables or disables scheduler compaction of load. If it's enabled, the Erlang VM will attempt to fully load as many scheduler threads as mush as possible.

( Default: true )

erlang.schedulers.utilization_balancing

Enables or disables scheduler utilization balancing of load. By default scheduler utilization balancing is disabled and instead scheduler compaction of load is enabled, which strives for a load distribution that causes as many scheduler threads as possible to be fully loaded (that is, not run out of work).

( Default: false )

erlang.distribution_buffer_size

Sender-side network distribution buffer size (unit: KB)

( Default: 32768 )

erlang.fullsweep_after

Option fullsweep_after makes it possible to specify the maximum number of generational collections before forcing a fullsweep, even if there is room on the old heap. Setting the number to zero disables the general collection algorithm, that is, all live data is copied at every garbage collection.

( Default: 0 )

erlang.secio

Enables or disables eager check I/O scheduling. The flag effects when schedulers will check for I/O operations possible to execute, and when such I/O operations will execute.

( Default: true )

process_limit

The maxinum number of Erlang processes. Sets the maximum number of simultaneously existing processes for this system if a Number is passed as value. Valid range for Number is [1024-134217727]