Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2120718
  • 博文数量: 317
  • 博客积分: 5670
  • 博客等级: 大校
  • 技术积分: 3677
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-10 17:51
文章分类

全部博文(317)

文章存档

2016年(2)

2015年(44)

2014年(68)

2013年(42)

2012年(23)

2011年(51)

2010年(67)

2009年(17)

2008年(3)

分类: 服务器与存储

2014-08-11 20:47:44

转自:http://3160997.blog.51cto.com/3150997/1109794

      系统环境
系统:RHEL4.6
MFS Master192.168.1.116
MFS Log: 192.168.1.117
MFS chunk server :192.168.1.118
Client :192.168.1.119
环境所需要用到的软件包 mfs-1.6.15.tar.gz
客户端挂载所需要的软件 fuse-2.7.3.tar.gz
Python软件包:python-2.7.1.tar.bz2
升级python
[root@lg src]# tar -jxvf  Python-2.7.1.tar.bz2
[root@lg Python-2.7.1]# cd  Python-2.7.1.tar.bz2
[root@lg Python-2.7.1]# ./configure   --prefix=/usr/local/python  && make && make install
一,元数据服务器的安装和配置
[root@lg src]# groupadd mfs
[root@lg src]# useradd -g mfs mfs
[root@lg src]# tar zxvf mfs-1.6.15.tar.gz
[root@lg src]# cd mfs-1.6.15
[root@lg mfs-1.6.15]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --disable-mfsmount
[root@lg mfs-1.6.15]# make  &&  make  installs
[root@lg etc]# pwd
/usr/local/mfs/etc
拷贝模板文件重命名得到主配置文件
[root@letc]# cp mfsmaster.cfg.dist mfsmaster.cfg
拷贝模板文件重命名得到权限控制文件
[root@lg etc]# cp mfsexports.cfg.dist mfsexports.cfg
现在来查看主配置文件的内容以及含义
[root@lg etc]# vi mfsmaster.cfg
权限控制文件的存放位置
# EXPORTS_FILENAME = /usr/local/mfs/etc/mfsexports.cfg
数据存放路就路径,指元数据的存放路径
# DATA_PATH = /usr/local/mfs/var/mfs
用于备份元数据服务器的变化日志
# MATOML_LISTEN_PORT = 9419
监听和接受存储服务器的链接
# MATOCS_LISTEN_PORT = 9420
接受客户端的挂接
# MATOCU_LISTEN_PORT = 9421
配置文件mfsexports.cfg指定那些客户端主机可以远程挂接MooseFS文件系统,以及赋予客户端什么样的访问权限
例如。我们指定只有192.168.1.*网段的主机可以以读写模式访问MooseFS的整个共享资
[root@localhost etc]# vi mfsexports.cfg
192.168.1.0/24 / rw,alldirs,maproot=0
首次安装Master时,会自动生成一个名为metadata.mfs.empty的元数据文件,mfs的运行必须有metadata.mfs,这个文件是从metadata.mfs.empty改名而来
[root@lgmfs]# pwd
/usr/local/mfs/var/mfs
[root@lg mfs]# cp metadata.mfs.empty metadata.mfs
启动元数据服务器Master
[root@lg mfs]# /usr/local/mfs/sbin/mfsmaster start
working directory: /usr/local/mfs/var/mfs
lockfile created and locked
initializing mfsmaster modules ...
loading sessions ... ok
sessions file has been loaded
exports file has been loaded
loading metadata ...
create new empty filesystemmetadata file has been loaded
no charts data file - initializing empty charts
master <-> metaloggers module: listen on *:9419
master <-> chunkservers module: listen on *:9420
main master server module: listen on *:9421
mfsmaster daemon initialized properly*为了监控MooseFS当前的运行状态,我们可以运行CGI监控服务,这样就可以用浏览器来查看整个MooseFS的运行
情况:
[root@lmfs]# /usr/local/mfs/sbin/mfscgiserv
在启动CGI监控服务时,提示TypeError: 'str' object is not callable错误,如下
starting simple cgi server (host: any , port: 9425 , rootpath: /usr/share/mfscgi)
Traceback (most recent call last):
File "/usr/sbin/mfscgiserv", line 399, in ?
exit(0)
TypeError: 'str' object is not callable
Traceback (most recent call last):
File "/usr/sbin/mfscgiserv", line 392, in ?
exit(0)
TypeError: 'str' object is not callable
这时虽然可以用看到整个MooseFS的运行状况.自带Python 版本太低,那么我们就升级下PYthon由于软件包过大,我这里就不在上传了,可以去网上找
[root@lg src]# tar jxvf Python-2.7.1.tar.bz2
[root@lg src]# cd Python-2.6.4
[root@lg Python-2.6.4]# ./configure --prefix=/usr/local/python && make && make install
[root@lg src]#/usr/local/python/bin/python   /usr/local/mfs/sbin/mfscgiserv   #这里很重要
设置开机启动编辑/etc/rc.local添加
/usr/local/mfs/sbin/mfsmaster start
/usr/local/mfs/sbin/mfscgiserv
二:元数据日志服务器的安装和配置
[root@lg src]# groupadd mfs
[root@lg src]# useradd -g mfs mfs
[root@lg src]# tar zxvf mfs-1.6.15.tar.gz
[root@lg src]# cd mfs-1.6.15
[root@lg mfs-1.6.15]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --disable-mfsmount
[root@lg mfs-1.6.15]# make  &&  make  installs
下面我们就来生成MFS备份服务器的配置文件
[root@lg mfs-1.6.15]# cd /usr/local/mfs/etc/
[root@lg etc]# cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
查看并修改配置文件
[root@lg etc]# vi mfsmetalogger.cfg
从元数据服务器抓回文件,然后进行存放的路径
# DATA_PATH = /usr/local/mfs/var/mfs
存放备份日志的总个数为50,超出50则轮转,
# BACK_LOGS = 50
每隔一天从元数据服务器下载一个metadata.mfs.back文件
# META_DOWNLOAD_FREQ = 24
元数据服务器的地址
MASTER_HOST = 192.168.1.116
连接元数据服务器的9419端口
MASTER_PORT = 9419
启动元数据日志服务
[root@lg etc]# /usr/local/mfs/sbin/mfsmetalogger start
working directory: /usr/local/mfs/var/mfs
lockfile created and locked
initializing mfsmetalogger modules ...
mfsmetalogger daemon initialized properly
可以查看日志验证备份服务器是否安装成功
[root@lg etc]# tail -f /var/log/messages
Dec  7 22:38:43 lg mfsmetalogger[1825]: set uid to 500
Dec  7 22:38:59 lg mfsmetalogger[1827]: set gid to 501
Dec  7 22:38:59 lg mfsmetalogger[1827]: set uid to 500
Dec  7 22:38:59 lg mfsmetalogger[1829]: connecting ...
Dec  7 22:38:59 lg mfsmetalogger[1829]: open files limit: 5000
Dec  7 22:38:59 lg mfsmetalogger[1829]: connected to Master
Dec  7 22:38:59 lg mfsmetalogger[1829]:  sessions downloaded 8B/0.006885s (0.002 MB/s)
Dec  7 22:38:59 lg mfsmetalogger[1829]: sessions downloaded 8B/0.000427s (0.023 MB/s)
可以看到我们的备份服务器正常启动
设置开机启动服务编辑/etc/rc.local添加
/uar/local/mfs/sbin/mfsmetalogger start

.存储服务器Chunk Server的安装.
[root@lg src]# groupadd mfs
[root@lg src]# useradd -g mfs mfs
[root@lg src]# tar zxvf mfs-1.6.15.tar.gz
[root@lg src]# cd mfs-1.6.15
[root@lg mfs-1.6.15]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfsmaster
[root@lg mfs-1.6.15]# make  &&  make  install
准备Chunk Server所需要的配置文件
[root@lg mfs-1.6.15]# cd /usr/local/mfs/etc/
[root@lg etc]# cp mfschunkserver.cfg.dist mfschunkserver.cfg
[root@lg etc]# cp mfshdd.cfg.dist mfshdd.cfg
编辑主配置文件
[root@localhost etc]# vi mfschunkserver.cfg
MASTER_HOST = 192.168.1.1
MASTER_PORT = 9420
修改mfshdd.cfg文件,添加上给MFS使用的磁盘,我这里独立分出来一个data的分区,专门给MFS使用
[root@lg etc]# vi mfshdd.cfg
/data
启动数据存储服务器
[root@lg etc]# /usr/local/mfs/sbin/mfschunkserver start
working directory: /usr/local/mfs/var/mfs
lockfile created and locked
initializing mfschunkserver modules ...
init: hdd space manager failed !!!
error occured during initialization - exiting
结果出现错误,通过检查得知/data挂载点的属主和属组没有修改成mfs小时
[root@lg etc]# chown mfs:mfs /data
[root@lg etc]# /usr/local/mfs/sbin/mfschunkserver start
working directory: /usr/local/mfs/var/mfs
lockfile created and locked
initializing mfschunkserver modules ...
scanning folder /data/ ...
/data/: 0 chunks found
scanning complete
main server module: listen on *:9422
no charts data file - initializing empty charts
mfschunkserver daemon initialized properly
设置开机启动服务编辑/etc/rc.local添加
/uar/local/mfs/sbin/mfschunkserver start
可以看到数据存储服务器也安装成功,
, MFS客户端的安装配置以及挂载
安装fuse
[root@lg src]# tar zxvf fuse-2.7.3.tar.gz
[root@lg src]# cd fuse-2.7.3
[root@lg fuse-2.7.3]# ./configure && make  && make install
[root@lg fuse-2.7.4]# lsmod | grep fuse  #查看fuse模块是否被加入到内核
[root@lg fuse-2.7.4]# modprobe fuse    #保证fuse模块被加入到内核
安装客户端软件Mfsmount,需要修改下环境变量,不然在编译的时候会出错
出错configure: error: mfsmount build was forced, but fuse library is too old or not installed
解决方法:修改环境变量
[root@lg src]# touch /etc/ld.so.conf.d/fuse
[root@lg src]#vim  /etc/ld.so.conf.d/fuse
[root@lg src]#/usr/local/lib             #这里也需要注意一下,有时候要创建fuse文件
[root@lg src]# vi /etc/profile
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
[root@lg src]# source /etc/profile
[root@lg src]# groupadd mfs
[root@lg src]# useradd -g mfs mfs
[root@lg src]# tar zxvf mfs-1.6.15.tar.gz
[root@lg src]# cd mfs-1.6.15
[root@lg mfs-1.6.15]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs   --disable-mfsmaster  --disable-mfschunkserver   --enable-mfsmount
[root@lg mfs-1.6.15]# make  &&  make  install
创建挂载点
[root@localhost mfs-1.6.15]# mkdir /mfs
挂接MFS文件系统
[root@lg mfs-1.6.15]# /usr/local/mfs/bin/mfsmount   /mnt  -H 192.168.1.116
mfsmaster accepted connection with parameters: read-write,restricted_ip ; root m apped to root:root
这时就可以用CGI站点监控,mfsmaster主机登陆http://127.0.0.1:942
观看到整个MFS系统的运行状况,谢谢大家!!!
阅读(1150) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~