概述
LeoFS由三部分组成,LeoStorage、LeoGateway和LeoManager。如果是生产环境,或者资源充裕,建议部署成集群,增加服务的稳定性和可靠性。当然,如果是简单的测试,或者资源有限,也可以部署在一台服务器上。
环境信息:
IP:10.16.x.x
操作系统:CentOS7.x
部署
关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
安装nc工具
yum install -y nc
安装
cd /opt/
wget https://github.com/leo-project/leofs/releases/download/1.3.7/leofs-1.3.7-1.erl-19.3.el7.x86_64.rpm
sudo rpm -ivh leofs-1.3.7-1.erl-19.3.el7.x86_64.rpm
ls -l /usr/local/leofs/
total 4
drwxr-xr-x. 6 root root 4096 Oct 30 02:58 1.3.7
配置
从v1.3.3版本开始,可以将一些配置文件和日志文件指向目录树之外(/usr/local/leofs/<version>
),这样则简化了以后的升级,使升级变得简单,升级到新版本的过程就像放置leo_*.environment文件到新版本etc路径下一样简单,以leo_manager_0为例:
## Stop the process of LeoManager
$ /usr/local/leofs/<old_version>/leo_manager_0/bin/leo_manager stop
## Overwrite the environment file
$ cp /usr/local/leofs/<old_version>/leo_manager_0/etc/leo_manager.environment \
/usr/local/leofs/<new_version>/leo_manager_0/etc/
## Restart the process of LeoManager
$ /usr/local/leofs/<new_version>/leo_manager_0/bin/leo_manager start
manager_0配置
==更改environment路径指向
vi /usr/local/leofs/1.3.7/leo_manager_0/etc/leo_manager.environment
# Directory with main .conf file. It must be writable by $RUNNER_USER
RUNNER_ETC_DIR=/etc/leofs/leo_manager_0
# Directory for .schema file.
# RUNNER_SCHEMA_DIR=
# Directory for erlang log files (erlang.log.* and run_erl.log)
# RUNNER_LOG_DIR=
RUNNER_ETC_DIR // 存放配置文件的
==创建配置文件存放路径,并更改用户和组
mkdir -p /etc/leofs/leo_manager_0
cp /usr/local/leofs/1.3.7/leo_manager_0/etc/leo_manager.conf /etc/leofs/leo_manager_0/
chown -R leofs:leofs /etc/leofs/leo_manager_0/
==修改配置文件
默认即可。
==启动leo_manager_0
/usr/local/leofs/1.3.7/leo_manager_0/bin/leo_manager start
Manager_1配置
slave部署和manager一样,只是少了如下4个配置项:
consistency.num_of_replicas = 1 // 存储份数,只有leo_manager_0有,启动后不可更改
consistency.write = 1 // 写成功数,只有leo_manager_0有,启动后可修改## A number of replicas needed for a successful READ operationconsistency.read = 1 // 读成功数,只有leo_manager_0有,启动后可修改## A number of replicas needed for a successful DELETE operationconsistency.delete = 1 // 删除成功数,只有leo_manager_0有,启动后可修改
默认即可。
==启动leo_manager_1
/usr/local/leofs/1.3.7/leo_manager_1/bin/leo_manager start
Storage配置
==更改environment路径指向
vi /usr/local/leofs/1.3.7/leo_storage/etc/leo_storage.environment
# Directory with main .conf file. It must be writable by $RUNNER_USER
RUNNER_ETC_DIR=/etc/leofs/leo_storage
# Directory for .schema file.
# RUNNER_SCHEMA_DIR=
# Directory for erlang log files (erlang.log.* and run_erl.log)
# RUNNER_LOG_DIR=
RUNNER_ETC_DIR // 存放配置文件的
==创建配置文件存放路径,并更改用户和组
mkdir -p /etc/leofs/leo_storage
cp /usr/local/leofs/1.3.7/leo_storage/etc/leo_storage.conf /etc/leofs/leo_storage/
chown -R leofs:leofs /etc/leofs/leo_storage/
==修改配置文件
默认即可。
==启动leo_storage
/usr/local/leofs/1.3.7/leo_storage/bin/leo_storage start
Gateway配置
==更改environment路径指向
vi /usr/local/leofs/1.3.7/leo_storage/etc/leo_gateway.environment
# Directory with main .conf file. It must be writable by $RUNNER_USER
RUNNER_ETC_DIR=/etc/leofs/leo_gateway
# Directory for .schema file.
# RUNNER_SCHEMA_DIR=
# Directory for erlang log files (erlang.log.* and run_erl.log)
# RUNNER_LOG_DIR=
RUNNER_ETC_DIR // 存放配置文件的
==创建配置文件存放路径,并更改用户和组
mkdir -p /etc/leofs/leo_gateway
cp /usr/local/leofs/1.3.7/leo_gateway/etc/leo_gateway.conf /etc/leofs/leo_gateway/
chown -R leofs:leofs /etc/leofs/leo_gateway/
==修改配置文件
端口默认。
默认即可。
==启动leo_gateway
/usr/local/leofs/1.3.7/leo_gateway/bin/leo_gateway start
检测部署
启动后,可在leo_manager_0上查看整体情况。
命令:leofs-adm status
==查看状态
leofs-adm status
[System Confiuration]
-----------------------------------+----------
Item | Value
-----------------------------------+----------
Basic/Consistency level
-----------------------------------+----------
system version | 1.3.7
cluster Id | leofs_1
DC Id | dc_1
Total replicas | 1
number of successes of R | 1
number of successes of W | 1
number of successes of D | 1
number of rack-awareness replicas | 0
ring size | 2^128
-----------------------------------+----------
Multi DC replication settings
-----------------------------------+----------
[mdcr] max number of joinable DCs | 2
[mdcr] total replicas per a DC | 1
[mdcr] number of successes of R | 1
[mdcr] number of successes of W | 1
[mdcr] number of successes of D | 1
-----------------------------------+----------
Manager RING hash
-----------------------------------+----------
current ring-hash |
previous ring-hash |
-----------------------------------+----------
[State of Node(s)]
-------+--------------------------+--------------+----------------+----------------+----------------------------
type | node | state | current ring | prev ring | updated at
-------+--------------------------+--------------+----------------+----------------+----------------------------
S | storage_0@127.0.0.1 | attached | | | 2017-10-30 08:58:14 +0000
-------+--------------------------+--------------+----------------+----------------+----------------------------
可以看到准备就绪
==启动服务
leofs-adm start
Generating RING...
Generated RING
OK 100% - storage_0@127.0.0.1
OK
==再次查看状态
leofs-adm status
[System Confiuration]
-----------------------------------+----------
Item | Value
-----------------------------------+----------
Basic/Consistency level
-----------------------------------+----------
system version | 1.3.7
cluster Id | leofs_1
DC Id | dc_1
Total replicas | 1
number of successes of R | 1
number of successes of W | 1
number of successes of D | 1
number of rack-awareness replicas | 0
ring size | 2^128
-----------------------------------+----------
Multi DC replication settings
-----------------------------------+----------
[mdcr] max number of joinable DCs | 2
[mdcr] total replicas per a DC | 1
[mdcr] number of successes of R | 1
[mdcr] number of successes of W | 1
[mdcr] number of successes of D | 1
-----------------------------------+----------
Manager RING hash
-----------------------------------+----------
current ring-hash | 433fe365
previous ring-hash | 433fe365
-----------------------------------+----------
[State of Node(s)]
-------+--------------------------+--------------+----------------+----------------+----------------------------
type | node | state | current ring | prev ring | updated at
-------+--------------------------+--------------+----------------+----------------+----------------------------
S | storage_0@127.0.0.1 | running | 433fe365 | 433fe365 | 2017-10-30 09:04:06 +0000
G | gateway_0@127.0.0.1 | running | 433fe365 | 433fe365 | 2017-10-30 09:04:08 +0000
-------+--------------------------+--------------+----------------+----------------+----------------------------
至此,单机部署完!
网友评论