首页 > 代码库 > mfs

mfs

mfs

Server1.example.com 172.25.23.1 Master

Server2.example.com 172.25.23.2 Chunkserver

Server3.example.com 172.25.23.3Chunkserver

Server4.example.com 172.25.23.4 Client

Selinux iptables disabled 加解析 rhel6.5

 

一.Master设置

1.安装软件

yum install -y rpm-build

rpmbuild -tb moosefs-3.0.80-1.tar.gz

技术分享 

#安装包的名称链接成指定的,不要太死板了

rpmbuild -tb moosefs-3.0.80.tar.gz

注意:需要解决依赖性有fuse-devel zlib-devel libpcap-devel libpcap gcc

   没有安装包的需要自己去官网下载 pkgs.org

技术分享 

 

技术分享 

注意:*.cgi要加执行权限

2.启动服务 ( 注意:不是在/etc/init.d )

技术分享 

技术分享 

# 在关闭任务的时候,最好不要kill master,安全停止执行mfsmaster stop ,否则下次启动因metadata.mfs.back而出现问题。

error: 32 (Data mismatch)

此时无法修复也无法启动 master 服务,有个应急的办法是将 metadata.mfs.back 复制成metadata.mfs,然后再启动 master。这样将会丢失那些正在传输的数据

3.访问

访问:172.25.23.19425

技术分享 

Error:加解析

技术分享 

再次访问

技术分享 

 

二.Chunkserver设置

1.安装软件

技术分享 

其中有前2个是依赖性

2.修改配置文件

技术分享 

技术分享 

技术分享 

设置共享点

3.启动服务

技术分享 

# 权限限制,在启动 chunk server ,需确保用户 mfs 有权限读写将要被挂接的分区(因为 chunk server 运行时要在此创建一个.lock 的文件)

技术分享 

# 修改解析(在master的后端加上 mfsmaster

技术分享 

4.在另外一个chunkserver做相同操作(只改变共享点 /mnt/chunk2

5.访问

技术分享 

 

三.Client端配置

1.安装软件

 yum install -y moosefs-client-3.0.80-1.x86_64.rpm

2.设置挂载点

 (1) vim /etc/mfs/mfsmount.cfg

/mnt/mfs   

 (2) 创建挂载点  mkdir /mnt/mfs

3.挂载 mfsmount

4.查看 df -h

技术分享 

技术分享 

 

5.测试

/mnt/mfs创建2个目录,并设置其文件存储份数

a)cd /mnt/mfs

mkdir dir1 dir2

b) 设置文件存储份数 dir12  dir21

技术分享

技术分享 

 

c)拷贝文件,查看信息

技术分享

技术分享  

d)关闭一个chunkserver( 172.25.23.3 )后,查看信息

 技术分享

e)chunkserver重新启动后,恢复正常

技术分享 

 

四.恢复垃圾箱文件

1.误删

rm -fr /mnt/mfs/dir2/fstab

2.查看垃圾箱中文件的保留时间

技术分享 

86400 s = 1 day

3.创建文件  /mnt/mfsmeta

4.挂载mfsmount -m /mnt/mfsmeta

   技术分享 

5. 可以看到有trash这个目录

技术分享 

cd /mnt/mfsmeta/trash

6. 找到误删的文件

技术分享 

......

技术分享 

7. 将该文件移动到undel中即可

技术分享 

 

五.Master安装HA (iscsi + corosync + pacemaker)

共享存储  server2.example.com 172.25.23.2

Master1 server1.example.com 172.25.23.1

Master2 server8.example.com 172.25.23.8

1.设置一个共享存储iscsi

技术分享 

2.Master1master2分别进行发现,连接,格式化

  master2上只需安装 moosefs-master及其相应的依赖性软件即可

yum install -y iscsi-*

iscsiadm -m discovery -t st -p 172.25.23.2

iscsiadm -m node -l

fdisk -cu /dev/sdb

mkfs.ext4 /dev/sdb1

mount /dev/sdb1 /mnt------- 测试

chown mfs.mfs /mnt/*

umount /mnt

3.修改yum

vim /etc/yum.repos.d/rhel-source.repo------ 具体修改细节见HA

yum repolist  ----- 列出可用的包

--> 可查看到有3819可用

4.添加解析

vim /etc/hosts

172.25.23.100 mfsmaster

5.编辑启动脚本

vim  /etc/init.d/mfsd

技术分享 

技术分享 

技术分享        技术分享                      技术分享 

技术分享 

chmod +x /etc/init.d/mfsd

/etc/init.d/mfsd start----- 测试启动脚本是否正确

6.设置pacemaker

a) 安装软件

yum install -y pacemaker corosync crmsh pssh

b) 修改配置文件

vim /etc/corosync.conf------只修改部分内容

......

 bindnetaddr: 172.25.23.0

 mcastport: 5428

service { name: pacemaker 

 ver: 0}

/etc/init.d/corosync start

c) 设置策略

    技术分享 

分别为:关闭fence机制;设置VIP;设置服务;设置存储;设置资源组

    技术分享 

7.测试

(1)crm_mon

技术分享 

(2)server8上执行

crm node standby

crm_mon

技术分享 

(3)server8上再执行

crm node online

crm_mon

可发现仍工作在server1上,除非server1 standby后,才重新回到server8

(4)在查看时若出现服务启动失败,可做如下操作

技术分享 


本文出自 “11841085” 博客,转载请与作者联系!

mfs