MFS server:192.168.209.18
groupadd mfs
useradd -g mfs mfs
cd /usr/src
tar xzvf mfs-1.6.27-5.tar.gz
cd mfs-1.6.27
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --disable-mfsmount
make
make install
cd /etc/mfs
cp mfsmaster.cfg.dist mfsmaster.cfg
cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
cp mfsexports.cfg.dist mfsexports.cfg
vi mfsexports.cfg
配置文件 mfsexports.cfg 指定那些客户端主机可以远程挂接 MooseFS 文件系统,以及授予
挂接客户端什么样的访问权限。例如,我们指定只有 192.168.209.x 网段的主机可以以读写模式
访问 MooseFS 的整个共享结构资源(/)。在配置文件 mfsexports.cfg 文件的第一行,先
取消注释,然后把星号(*)改成 192.168.209.0/24,以便我们可以得到下面的文本行:
192.168.209.0/24 / rw,alldirs,maproot=0
cd /var/lib/mfs
cp metadata.mfs.empty metadata.mfs
修改/etc/hosts 文件,以绑定主机名 mfsmaster 与 ip 地址 192.168.209.18:
192.168.209.18 mfsmaster
/usr/sbin/mfsmaster start
/usr/sbin/mfscgiserv
启动web,查看mfs状态
MFS metalogger:192.168.209.19
groupadd mfs
useradd -g mfs mfs
cd /usr/src
tar xzvf mfs-1.6.27-5.tar.gz
cd mfs-1.6.27
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --disable-mfsmount
make
make install
cd /etc/mfs
cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
类似地,修改/etc/hosts 文件,增加下面的行:
192.168.209.18 mfsmaster
现在,我们来试着运行备份服务 mfsmetaloger:
#/usr/sbin/mfsmetalogger start
存储块服务器 Chunk servers 安装
192.168.209.20
192.168.209.21
每台服务器执行:
groupadd mfs
useradd -g mfs mfs
cd /usr/src
tar -zxvf mfs-1.6.27.tar.gz
cd mfs-1.6.27
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib --with-default-user=mfs --with-default-group=mfs --disable-mfsmaster
make
make install
cd /etc/mfs/
cp mfschunkserver.cfg.dist mfschunkserver.cfg
cp mfshdd.cfg.dist mfshdd.cfg
此处我们假定要使用两个共享点(每台服务器一个chunk)/mnt/mfschunks1 和
/mnt/mfschunks2,为此,我们在 mfshdd.cfg 加入下面的文本行
/mnt/mfschunks1
和/mnt/mfschunks2
在启动 chunk server 前,需确保用户 mfs 有权限读写将要被挂接的分区(因为 chunk server 运
行时要在此创建一个.lock 的文件):
chown -R mfs:mfs /mnt/mfschunks1
chown -R mfs:mfs /mnt/mfschunks2
类似地,修改/etc/hosts 文件,增加下面的行:
192.168.209.18 mfsmaster
开始启动 chunk server:
#/usr/sbin/mfschunkserver start
MFS client:192.168.209.22
需要fuse,如果是yum安装,需要fuse-devel
groupadd mfs
useradd -g mfs mfs
cd /usr/src
tar -zxvf mfs-1.6.27.tar.gz
cd mfs-1.6.27
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib --with-default-user=mfs --with-default-group=mfs --disable-mfsmaster --disable-mfschunkserver --enable-mfsmount
make
make install
修改文件/etc/hosts ,增加如下的文本行:
192.168.209.18 mfsmaster
假定客户端的挂接点是/mnt/mfs,我们将以下面的指令来使用 MooseFS 分布式共享文件系统:
1、创建挂接点
#mkdir -p /mnt/mfs
2、开始挂接操作
#/usr/bin/mfsmount /mnt/mfs -H mfsmaster
执行命令 df –h | grep mfs 检查分区情况,可能的输出如下:
/storage/mfschunks/mfschunks1
2.0G 69M 1.9G 4% /mnt/mfschunks1
/storage/mfschunks/mfschunks2
2.0G 69M 1.9G 4% /mnt/mfschunks2
mfs#mfsmaster:9421 3.2G 0 3.2G 0% /mnt/mfs
查看目录当前回收时间:
mfsgettrashtime /mnt/mfs
/mfsdata: 86400
设置目录当前回收时间为600秒:
mfsrsettrashtime 600 /mnt/mfs
/mnt/mfs:
inodes with trashtime changed: 3 (3)
inodes with trashtime not changed: 0 (0)
inodes with permission denied: 0 (0)
查看更改后空间回收时间:
mfsgettrashtime /mnt/mfs
/mnt/mfs: 600
MooseFS 基础用法
在 MooseFS 挂接点下创建目录 folder1, 在该目录,我们将以一个副本的方式存放文件 (设置
goal=1):
#mkdir -p /mnt/mfs/folder1
再在挂接点创建第 2 个目录 folder2, 在该目录,我们将以两个个副本的方式存放文件(设置
goal=2):
#mkdir -p /mnt/mfs/folder2
使用命令 mfssetgoal –r 设定目录里文件的副本数:
1、副本数为 1
#mfssetgoal -r 1 /mnt/mfs/folder1
/mnt/mfs/folder1:
inodes with goal changed: 0
inodes with goal not changed: 1
inodes with permission denied: 0
2、副本数为 2
#mfssetgoal -r 2 /mnt/mfs/folder2
/mnt/mfs/folder2:
inodes with goal changed: 0
inodes with goal not changed: 1
inodes with permission denied: 0
拷贝同一个文件到两个目录:
cp /usr/src/mfs-1.6.27.tar.gz /mnt/mfs/folder1
cp /usr/src/mfs-1.6.27.tar.gz /mnt/mfs/folder2
命令 mfschunkfile 用来检查给定的文件以多少副本数来存储。对应目录 folder1 来说,
有一个副本存储在一个 chunk 里:
#mfscheckfile /mnt/mfs/folder1/mfs-1.6.27.tar.gz
/mnt/mfs/folder1/mfs-1.6.27.tar.gz:
1 copies: 1 chunks
而在目录 folder2 中,文件 mfs-1.6.27.tar.gz 是以两个副本保存的:
#mfscheckfile /mnt/mfs/folder2/mfs-1.6.27.tar.gz
/mnt/mfs/folder2/mfs-1.6.27.tar.gz:
2 copies: 1 chunks
附加信息。当所有的组件被安装到同一个物理主机的时候,即便设定了 goal=2 来到达保存两个
副本的目的,但你可能看到的只是一个副本而已—这是合理的,尽管有两个磁盘,但它只是一
个 chunk server 啊!
几乎照搬官方网站上推荐的田逸大神的文档。