简介
MooseFS 是一个分布式文件系统,支持以客户端挂载的形式开放给用户使用。
主要角色
master 节点:元数据节点,复制调度和管理元数据。
对应安装包名称:moosefs-master.rpmmetalogger 节点:用于备份 master 的元数据和日志。
对应安装包名称:moosefs-metalogger.rpmchunkserver 节点:数据节点,数据实际存放的节点。
对应安装包名称:moosefs-chunkserver.rpmclient :客户端。通过 FUSE 将 mfs 文件系统挂载到客户端后,客户端可以像使用一个普通的本地路径一样来使用 mfs 。
对应安装包名称:moosefs-client.rpmcgiserver:存储集群监控工具。
对应安装包名称:moosefs-cgiserv.rpm
集群规划
mfsmaster | mfsmetalogger | mfschunkserver | mfsclient |
---|---|---|---|
192.168.20.96 | 192.168.20.97 | 192.168.20.98 192.168.20.99 | 192.168.20.99 |
准备工作
安装fuse模块
确保 client 节点上已经安装了 Linux 内核模块 FUSE 。
若未安装,可通过 yum 或者编译安装的方式进行安装。安装命令如下:
yum install fuse
yum install fuse-libs
创建用户和用户组
每个节点都要创建 mfs 用户和用户组(在96-99上分别执行如下命令)。
groupadd mfs
useradd -g mfs mfs
修改/etc/hosts
在每个节点上为 mfsmaster 所在节点(192.168.20.96)增加一个别名 mfsmaster(在96-99上分别执行如下命令) 。
echo "192.168.20.96 mfsmaster " >> /etc/hosts
解压rpm包
将 mfs.tar.gz 解压到每个节点的 /opt 目录下,解压后会生成 /opt/mfs 目录。
安装配置
- 在节点 192.168.20.96 部署 master 和 cgiserver (执行如下命令):
cd /opt/mfs
rpm -ivh moosefs.rpm moosefs-master.rpm moosefs-cgi.rpm moosefs-cgiserv.rpm
配置元数据存储位置:编辑文件 /etc/mfs/mfsmaster.cfg 的 DATA_PATH项,修改为本机合适的位置(并将该路径权限改为 mfs:mfs)并删除注释符号#(配置路径建议如下):
a. 建议使用单独的数据盘或较大的系统分区存放元数据。
b. 本机如挂载了固态硬盘,可修改为固态硬盘的挂载路径,以提高性能。
然后将 /var/lib/mfs/metadata.mfs 拷贝到 DATA_PATH 路径下。
- 在节点 192.168.20.97 上部署 metalogger (执行如下命令):
cd /opt/mfs
rpm -ivh moosefs.rpm moosefs-metalogger.rpm
配置备份元数据存储位置:编辑文件 /etc/mfs/mfsmetalogger.cfg 的 DATA_PATH项,修改为本机合适的位置(并将该路径权限改为 mfs:mfs)并删除注释符号#。建议使用单独的数据盘或较大的系统分区存放元数据。
- 在所有数据节点(192.168.20.98 、 192.168.20.99)执行如下命令:
cd /opt/mfs
rpm -ivh moosefs.rpm moosefs-chunkserver.rpm
配置数据节点的存储路径(假设将数据存储在 /data/mfs 下):
a. 创建 /data/mfs 目录并修改权限:
mkdir -p /data/mfs
chown -R mfs:mfs /data/mfs
b. 修改 /etc/mfs/mfshdd.cfg ,在末尾位置增加 a 中配置的数据目录(如下):
/data/mfs
c. 如果想配置多个数据存储目录,可重复a、b。
- 如果需要读写存储集群中的数据,请先在本机安装客户端程序并将存储集群挂载到本地目录(假设将存储集群挂载到 192.168.20.99 的 /mnt/mfs 目录下,步骤如下):
创建 /mnt/mfs 目录:
mkdir /mnt/mfs
chown -R mfs:mfs /mnt/mfs/
安装客户端程序:
cd /opt/mfs
rpm -ivh moosefs-client.rpm
启动
- 启动 master(在 192.168.20.96 上执行如下命令)
mfsmaster start
- 启动集群监控(在 192.168.20.96 上执行如下命令)
mfscgiserv start
启动 master 和集群监控后,在浏览器中输入 http://192.168.20.96:9425
查看Web 页面如下 :
- 启动 metalogger(在 192.168.20.97 上执行如下命令)
mfsmetalogger start
- 启动 chunkserver(在所有数据节点上执行如下命令)
mfschunkserver start
- 挂载客户端(在 192.168.20.99 上执行如下命令)
mfsmount /mnt/mfs/ -H mfsmaster
使用
至此,可在客户端节点(192.168.20.99) 的 /mnt/mfs 目录下执行读写操作。