mfs分布式管理系统
来源:互联网 发布:ae mac破解版下载 编辑:程序博客网 时间:2024/05/22 08:02
mfs分布式文件管理存储(2014.6.7)上午
(相关文档Moosefs分布式存储)
MFS 特性:
1. Free(GPL)
2. 通用文件系统,不需要修改上层应用就可以使用
3. 可以在线扩容,体系架构可伸缩性极强。
4. 部署简单。
5. 高可用,可设置任意的文件冗余程度(提供比raid1+0更高的冗余级别,而绝对不会影响读或
写的性能,只会加速!)
6.可回收在指定时间内删除的文件(“回收站”提供的是系统级别的服务,不怕误操作了,提供类
似 oralce的闪回等高级dbms的即时回滚特性!)
7. 提供netapp,emc,ibm等商业存储的snapshot特性。(可以对整个文件甚至在正在写入的文
件创建文件的快照)
8. google filesystem 的一个c实现。
9. 提供web gui监控接口。
提高随机读或写的效率。
提高海量小文件的读写效率。
MFS 文件系统结构:
包含 4种角色:
管理服务器managing server (master) 242
元数据日志服务器Metalogger server(Metalogger)
数据存储服务器data servers (chunkservers)
客户机挂载使用client computers 155
各种角色作用:
1.管理服务器:负责各个数据存储服务器的管理,文件读写调度,文件空间回收以及恢复.多节点拷贝。
2. 元数据日志服务器:负责备份master服务器的变化日志文件,文件类型为changelog_ml.*.mfs,以便于在master server 出问题的时候接替其进行工作。
3.数据存储服务器:负责连接管理服务器,听从管理服务器调度,提供存储空间,并为客户提供数据传输。
4. 客户端:通过fuse内核接口挂接远程管理服务器上所管理的数据存储服务器,看起来共享的文件系统和本地unix文件系统使用一样的效果。
MFS部署:
主机环境:RHEL6.5selinux and iptables disabled
Master:192.168.0.242
Metalogger:192.168.0.
Chunkserver:192.168.0.213 192.168.0.194
Client:192.168.0.155
master机子242
yuminstall gcc make rpm-build fuse-devel zlib-devel
rpmbuild -tb mfs-1.6.27.tar.gz
主控服务器Master server安装:
cd rpmbuild/ RPMS/x86_64/
rpm -ivhmfs-cgi-1.6.27-2.x86_64.rpm
mfs-cgiserv-1.6.27-2.x86_64.rpm
mfs-master-1.6.27-2.x86_64.rpm
cd /etc/mfs/
cp mfsexports.cfg.distmfsexports.cfg
cp mfsmaster.cfg.distmfsmaster.cfg
cd /var/lib/mfs/
cp metadata.mfs.emptymetadata.mfs
chown -R nobody .
vim /etc/hosts
192.168.2.242 mfsmaster
mfsmaster 启动(开启三个端口)
此时进入/var/lib/mfs可以看到moosefs所产生的数据:
.mfsmaster.lock
文件记录正在运行的mfsmaster的主进程metadata.mfs, metadata.mfs.back MooseFS文件系统的元数据metadata的镜像
changelog.*.mfs 是MooseFS文件系统元数据的改变日志(每一个小时合并到metadata.mfs中一次)
Metadata文件的大小是取决于文件数的多少(而不是他们的大小)。changelog日志的大小是取决于每小时操作的数目,但是这个时间长度(默认是按小时)是可配置的。
/*启动CGI监控服务*/
cd /usr/share/mfscgi/
chmod +x *.cgi
mfscgiserv (开启CGI监控服务)
在浏览器地址栏输入http://192.168.0.242:9425即可查看master的运行情况
存储块服务器两台Chunkservers(213和194)
两台都执行一下命令
yum install -y openssh-clients
rpm -ivhmfs-chunkserver-1.6.27-2.x86_64.rpm
mkdir /mnt/chunk1
mkdir /var/lib/mfs
在启动chunk server前,需确保用户mfs有权限读写将要被挂接的分区(因为chunk server运行时要在此创建一个.lock的文件)
chown nobody /mnt/chunk1/ /var/lib/mfs/
cd /etc/mfs/
cp mfschunkserver.cfg.distmfschunkserver.cfg
cp mfshdd.cfg.dist mfshdd.cfg
vim mfshdd.cfg 定义mfs共享点
/mnt/chunk1(实际上就是/的容量)
vim /etc/hosts
192.168.2.242 mfsmaster (写master机子IP)
mfschunkserver (开启服务)
现在再通过浏览器访问http://192.168.0.66:9425/应该可以看见这个MooseFS系统的全部信息,包括主控master和存储服务chunkserver
客户机Users’ computers(155)
scp . 192.168.2.242/rpmbuild/RPM/x86_64/mfs-clients-1.6.27-2.x86_64.rpm
yum localinstallmfs-clients-1.6.27-2.x86_64.rpm -y
cd /etc/mfs
cp mfsmount.cfg.dist mfsmount.cfg
vim mfsmount.cfg 定义客户端默认挂载
/mnt/mfs
mkdir /mnt/mfs
vim /etc/hosts
192.168.2.242 mfsmaster
mfsmount (挂载)
df (自动挂载上,客户端端口9421)
MFS测试:
在 MFS挂载点下创建两个目录,并设置其文件存储份数:
# cd /mnt/mfs
# mkdir dir1 dir2
# mfssetgoal -r 2 dir2/ (设置dir2目录会被备份2份)
设置在dir2中文件存储份数为两个,默认是一个dir2/:
对一个目录设定“goal”,此目录下的新创建文件和子目录均会继承此目录的设定,但不会改变已经存在的文件及目录的copy份数。但使用-r选项可以更改已经存在的copy份数。
拷贝同文件到两个目录
# cp /etc/passwd dir1
cd /mnt/mfs
cp /etc/passwd dir1/
cp /etc/fstab dir2/
mfsfileinfo dir1/passwd
mfsfileinfo dir2/fstab
关闭mfschunkserver1(213)后再查看文件信息
mfsfileinfo dir1/passwd
则看不到,显示chunk0: 0000000000000001_00000001 / (id:1 ver:1) no valid copies !!!
(mfssetgoal –r设定目录里文件的副本数:
mfschunkfile 用来检查给定的文件以多少副本数来存储)
启动后又重新恢复
下午
停止MooseFS
为了安全停止MooseFS集群,建议执行如下的步骤:
在所有客户端用Unmount命令先卸载文件系统(本例将是:
umount /mnt/mfs)
停止chunkserver进程:mfschunkserver stop
停止metalogger进程: mfsmetalogger stop
停止主控masterserver进程:mfsmaster stop
- mfs分布式管理系统
- mfs 分布式文件系统
- mfs分布式存储
- 分布式文件系统MFS部署
- MFS分布式文件系统
- MFS分布式文件系统
- MFS分布式文件系统架设笔记
- MFS分布式文件系统的搭建
- 分布式文件系统MFS配置[原创]
- 分布式 文件管理系统
- shadow-mfs系统架构介绍
- 分布式文件系统MFS(moosefs)实现存储共享
- 分布式文件系统MFS(moosefs)实现存储共享
- 分布式文件系统MFS(moosefs)实现存储共享
- 分布式文件系统MFS(moosefs)实现存储共享
- MFS 高可用存储分布式文件系统
- 分布式文件系统MFS安装配置及使用
- 分布式文件系统MFS实现存储共享剖析
- Linux中断(interrupt)子系统之二:arch相关的硬件封装层
- Android开发:碎片Fragment完全解析fragment_main.xml/activity_main.xml
- UITableView和UIImageView
- Android 获取通讯录联系人
- 内存泄露检测之: Valgrind简单用法
- mfs分布式管理系统
- Oracle的导入导出(备份与恢复)
- Linux中断(interrupt)子系统之三:中断流控处理层
- ovs处理openflow消息的流程
- Linux中断(interrupt)子系统之四:驱动程序接口层 & 中断通用逻辑层
- C++格式化输出
- Linux中断(interrupt)子系统之五:软件中断(softIRQ)
- 【LeetCode】Word Search
- 如何用cmd关闭打开的程序