Multi data center replication

Since

LeoFS v1.0.0

Purpose

This section is a step by step guide to setting up the multi data center replication.

Getting Started

Pre-requirement

Note

We have checked this mechanism with CentOS 6.5 and Ubuntu Server 14.04 LTS but we’re goinng to investigate other OS such as FreeBSD and SmartOS.

LeoFS Manager Configuration

Set leo_manager.conf - DC Id and Cluster Id

If you need to change DC’s Id and Cluster’s Id, set system.dc_id and cluster_id

## DC Id
system.dc_id = dc_N

## Cluster Id
system.cluster_id = leofs_N

Set RPC-related configuration

You need to set RPC-related configuration as follows to be able to communicate each cluster with LeoFS’s RPC. Regarding rpc.server.listen_port, which is used by the join-cluster command.

## RPC-Server's acceptors
rpc.server.acceptors = 16

## RPC-Server's listening port number
rpc.server.listen_port = 13075

## RPC-Server's listening timeout(second)
rpc.server.listen_timeout = 5000

## RPC-Client's size of connection pool
rpc.client.connection_pool_size = 16

## RPC-Client's size of connection buffer
rpc.client.connection_buffer_size = 16

LeoFS Storage Configuration

Set RPC-related configuration

You need to set RPC-related configuration as follows to be able to communicate each cluster with LeoFS’s RPC.

## RPC-Server's acceptors
## this value must be determinted by following logic
## rpc.server.acceptor need to be larger than
## rpc.client.connection_pool(buffer)_size * "# of storage nodes + # of manager nodes in your cluster"
## The default value is suitable for less than 16 nodes in a cluster
rpc.server.acceptors = 128

## RPC-Server's listening port number
rpc.server.listen_port = 13077

## RPC-Server's listening timeout(second)
rpc.server.listen_timeout = 30000

## RPC-Client's size of connection pool
rpc.client.connection_pool_size = 8

## RPC-Client's size of connection buffer
rpc.client.connection_buffer_size = 8