第1章 MFS 安装配置 mfs master
官网下载路径 https://moosefs.com/download/sources.html
考虑到生产是1.6,所以安装1.6版本
#进入软件安装目录(自己而定) [root@mfs-master home]# cd /home/yunwei/tools/ #下载 [root@mfs-master tools]# wget wget http://pro.hit.gemius.pl/hitredir/id=.WCbG2t.7Ln5k1s3Q9xPg8cPfX.wVMc5kyXfrKcJTDH.c7/url=moosefs.org/tl_files/mfscode/mfs-1.6.27-1.tar.gz #查看 [root@mfs-master tools]# ls -lrth 总用量 16K -rw-r--r-- 1 root root 13K 8月 21 00:32 mfs-1.6.27-1.tar.gz
#创建mfs组和用户
[root@mfs-master tools]# groupadd mfs [root@mfs-master tools]# useradd -g mfs mfs -s /sbin/nologin </h3> #解压 [root@mfs-master tools]# tar xf mfs-1.6.27-5.tar.gz [root@mfs-master tools]# ls -llrth 总用量 772K drwxr-xr-x 15 501 games 4.0K 11月 26 2013 mfs-1.6.27 -rw-r--r-- 1 root root 767K 8月 20 16:47 mfs-1.6.27-5.tar.gz #进入编译安装 [root@mfs-master tools]# cd mfs-1.6.27 #创建安装目录 (可以自己修改) [root@mfs-master tools]mkdir -p /application/ [root@mfs-master mfs-1.6.27]# ./configure --prefix=/application/mfs-1.6.27 --with-default-user=mfs --with-default-group=mfs [root@mfs-master mfs-1.6.27]# make && make install
#备注:如果出现错误,建议大家百度并查看。
#做软连接 查看 [root@mfs-master mfs-1.6.27]# ln -s /application/mfs-1.6.27/ /application/mfs [root@mfs-master mfs-1.6.27]# ls -l /application/ 总用量 4 lrwxrwxrwx 1 root root 24 8月 21 00:55 mfs -> /application/mfs-1.6.27/ drwxr-xr-x 6 root root 4096 8月 21 00:55 mfs-1.6.27 #查看mfs 目录结构 [root@mfs-master mfs-1.6.27]# cd /application/mfs [root@mfs-master mfs]# ls -l 总用量 16 drwxr-xr-x 3 root root 4096 8月 21 00:55 etc #mfs 配置文件所在,很多模板文件。 drwxr-xr-x 2 root root 4096 8月 21 00:55 sbin #mfs命令路径 drwxr-xr-x 4 root root 4096 8月 21 00:55 share #这里是mfs 帮助文件 drwxr-xr-x 3 root root 4096 8月 21 00:55 var #这里是mfs 数据及日志目录,如metadata数据
提示:etc 和 var 目录需要备份
#展开etc/mfs 目录下结构 [root@mfs-master mfs]# ls -l etc/mfs/ 总用量 24 -rw-r--r-- 1 root root 572 8月 21 00:55 mfschunkserver.cfg.dist -rw-r--r-- 1 root root 4060 8月 21 00:55 mfsexports.cfg.dist -rw-r--r-- 1 root root 57 8月 21 00:55 mfshdd.cfg.dist -rw-r--r-- 1 root root 1047 8月 21 00:55 mfsmaster.cfg.dist -rw-r--r-- 1 root root 449 8月 21 00:55 mfsmetalogger.cfg.dist -rw-r--r-- 1 root root 1123 8月 21 00:55 mfstopology.cfg.dist
提示:配置文件样列文件以.dist后缀命名的,这些文件,我们后续会用到。
#安装tree 命令查看目录结构
[root@mfs-master mfs]# yum install -y tree [root@mfs-master mfs]# tree #sbin 下面主要是mfs 启动命令及相关命令 ├── sbin │ ├── mfscgiserv │ ├── mfschunkserver │ ├── mfsmaster │ ├── mfsmetadump │ ├── mfsmetalogger │ └── mfsmetarestore #提示 mfscgi 是master 图形监控界面的程序 │ └── mfscgi │ ├── chart.cgi │ ├── err.gif │ ├── favicon.ico │ ├── index.html │ ├── logomini.png │ ├── mfs.cgi │ └── mfs.css
5.1 配置主服务器MFS master
#进入mfs 配置目录 [root@mfs-master mfs]# cd /application/mfs/etc/mfs/ [root@mfs-master mfs]# ls -l 总用量 24 -rw-r--r-- 1 root root 572 8月 21 00:55 mfschunkserver.cfg.dist -rw-r--r-- 1 root root 4060 8月 21 00:55 mfsexports.cfg.dist #对外挂载的文件 -rw-r--r-- 1 root root 57 8月 21 00:55 mfshdd.cfg.dist -rw-r--r-- 1 root root 1047 8月 21 00:55 mfsmaster.cfg.dist -rw-r--r-- 1 root root 449 8月 21 00:55 mfsmetalogger.cfg.dist #主配置文件 -rw-r--r-- 1 root root 1123 8月 21 00:55 mfstopology.cfg.dist #cp 拷贝(不要用mv) [root@mfs-master mfs]# cp mfsexports.cfg.dist mfsexports.cfg [root@mfs-master mfs]# cp mfsmaster.cfg.dist mfsmaster.cfg
5.1.1 mfsmaster.cfg配置讲解
[root@mfs-master mfs]# cat mfsmaster.cfg # WORKING_USER = mfs #用户 # WORKING_GROUP = mfs #和组 # SYSLOG_IDENT = mfsmaster #在syslog 中的标识说明日志由master产生 # LOCK_MEMORY = 0 #锁,防止mfsmaster 进程溢出 # NICE_LEVEL = -19 #运行的优先级 #导出的文件目录及权限控制文件的存放位置 # EXPORTS_FILENAME = /application/mfs-1.6.27/etc/mfs/mfsexports.cfg # TOPOLOGY_FILENAME = /application/mfs-1.6.27/etc/mfs/mfstopology.cfg #数据存放路径,此目录大致有几类文件,metadata,changelog,sessions,stats # DATA_PATH = /application/mfs-1.6.27/var/mfs # BACK_LOGS = 50 #metadata 的更改log文件数目 # BACK_META_KEEP_PREVIOUS = 1 # REPLICATIONS_DELAY_INIT = 300 #延迟复制的时间(默认是300s) # REPLICATIONS_DELAY_DISCONNECT = 3600 #《=断开的复制延迟(默认3600) # MATOML_LISTEN_HOST = * #监听的IP地址 # MATOML_LISTEN_PORT = 9419 #监听的端口metalogger # MATOML_LOG_PRESERVE_SECONDS = 600 # MATOCS_LISTEN_HOST = * # MATOCS_LISTEN_PORT = 9420 #监听的端口chunkserver # MATOCL_LISTEN_HOST = * # MATOCL_LISTEN_PORT = 9421 #监听的端口用于 客户端连接的端口地址 # CHUNKS_LOOP_MAX_CPS = 100000 # CHUNKS_LOOP_MIN_TIME = 300 # CHUNKS_SOFT_DEL_LIMIT = 10 # CHUNKS_HARD_DEL_LIMIT = 25 # CHUNKS_WRITE_REP_LIMIT = 2 # CHUNKS_READ_REP_LIMIT = 10 # ACCEPTABLE_DIFFERENCE = 0.1 # SESSION_SUSTAIN_TIME = 86400 # REJECT_OLD_CLIENTS = 0 # deprecated: # CHUNKS_DEL_LIMIT - use CHUNKS_SOFT_DEL_LIMIT instead # LOCK_FILE - lock system has been changed, and this option is used only to search for old lockfil <pre class="prettyprint linenums" > <h3>5.1.2 查看mfsexports.cfg 配置文件</h3> [root@mfs-master mfs]# egrep -v "^$|#" mfsexports.cfg * / rw,alldirs,maproot=0 * . rw 参数详解 第一部分:mfs 客户端IP 地址或地址范围 * 所有的IP 地址 172.16.1.11 单个IP地址 172.16.1.11/24 IP网络地址、位数掩码 172.16.1.11/255.255.255.255 网络地址/子网掩码 172.16.1.11-172.16.3.11 IP断 第二部分:被挂载的目录 目录部门需要注意两点: /标识MooseFS 根: .标识MFSmeta文件系统。 第三部分:设置mfs客户端可以拥有的访问权限 ro 只读模式共享 rw 读写模式共享 alldirs 挂载任何指定的子目录 maproot 映射为root,还是指定的用户 password 指定客户端密码
修改配置文件
cat >mfsexports.cfg<<EOF #Allow "meta". * . rw # Allow everything but "meta". 172.16.1.0/24 / rw,alldirs,mapall=mfs:mfs,password=111111 EOF
5.1.3 启动 mfs master
问题一:启动mfs master报错需要 修改metadata.mfs 步骤如下
[root@mfs-master /]# /application/mfs/sbin/mfsmaster start working directory: /application/mfs-1.6.27/var/mfs lockfile created and locked initializing mfsmaster modules ... loading sessions ... file not found if it is not fresh installation then you have to restart all active mounts !!! exports file has been loaded mfstopology configuration file (/application/mfs-1.6.27/etc/mfstopology.cfg) not found - using defaults loading metadata ... can't open metadata file if this is new instalation then rename /application/mfs-1.6.27/var/mfs/metadata.mfs.empty as /application/mfs-1.6.27/var/mfs/metadata.mfs init: file system manager failed !!! <pre class="prettyprint linenums" >问题二:启动mfs 遇到Permission denied 权限错误 解决办法:chown –R mfs.mfs /application/mfs/<pre class="prettyprint linenums" > #进入mfs var目录下 [root@mfs-master /]# cd /application/mfs/var/mfs/ [root@mfs-master mfs]# ls -l 总用量 8 -rw-r--r-- 1 root root 8 8月 21 00:55 metadata.mfs.empty -rw-r----- 1 mfs mfs 10 8月 21 03:17 sessions.mfs #复制metadata.mfs记得是去掉后缀.empty [root@mfs-master mfs]# cp metadata.mfs.empty metadata.mfs #修改后查看 [root@mfs-master mfs]# ls -l 总用量 12 -rw-r--r-- 1 root root 8 8月 21 03:19 metadata.mfs -rw-r--r-- 1 root root 8 8月 21 00:55 metadata.mfs.empty -rw-r----- 1 mfs mfs 10 8月 21 03:17 sessions.mfs
#再次启动
[root@mfs-master mfs]# /application/mfs/sbin/mfsmaster start #查看端口 [root@mfs-master mfs]# netstat -lntup|grep mfs tcp 0 0 0.0.0.0:9419 0.0.0.0:* LISTEN 9527/mfsmaster tcp 0 0 0.0.0.0:9420 0.0.0.0:* LISTEN 9527/mfsmaster tcp 0 0 0.0.0.0:9421 0.0.0.0:* LISTEN 9527/mfsmaster
5.1.4 mfs master 停止主服务器
安全的停止 master server 是非常必要的 一定不要用kill -9。可以使用mfsmaster –s 或者 mfsmaster stop 来安全停止msster进程。
#停止mfs
[root@mfs-master /]# /application/mfs/sbin/mfsmaster stop sending SIGTERM to lock owner (pid:9527) waiting for termination ... terminated
#查询
[root@mfs-master /]# netstat -lntup|grep mfs
5.1.5 再次启动
[root@mfs-master /]# /application/mfs/sbin/mfsmaster start stats file has been loaded master <-> metaloggers module: listen on *:9419 master <-> chunkservers module: listen on *:9420 main master server module: listen on *:9421
5.1.6 增加环境变量
[root@mfs-master /]# echo "export PATH=$PATH:/application/mfs/sbin:/application/mfs/bin" >>/etc/profile #重启 profile 并查看 [root@mfs-master /]# . /etc/profile [root@mfs-master /]# echo $PATH /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/application/mfs/sbin:/application/mfs/bin
根据需要加入开机自动启动项
[root@mfs-master /]# echo "/application/mfs/sbin/mfsmaster start" >>/etc/rc.local [root@mfs-master /]# [root@mfs-master /]# tail -2 /etc/rc.local
5.1.7 开启主服务器mfs master的图形监控
主服务器 mfs master 的图形监控就是 mfscgiserv 监听端口92
因为之前做了开机自动启动项
[root@mfs-master /]# mfscgiserv start lockfile created and locked starting simple cgi server (host: any , port: 9425 , rootpath: /application/mfs-1.6.27/share/mfscgi) 启动后查看端口 [root@mfs-master /]# netstat -lntup|grep 9425 tcp 0 0 0.0.0.0:9425 0.0.0.0:* LISTEN 9884/python
5.1.8 浏览器打开
输入自己IP 加 9425端口,打开有点慢
http://172.16.1.80:9425


