您的位置:首页 > 运维架构

运维笔记_搭建配置Moosefs文件服务器

2015-08-06 09:15 435 查看
 搭建硬件环境:Citrix_Xencenter

     1.找一台性能相对来说不是很差的机器,安装几台Linux服务器就可以完成,是用vmware也一样。



 搭建系统环境:Centos 7

备注:Mfs_Data2server 借用了之前一台zabbix服务器担任了此角色,不在Citrix服务器之内;

 


Moosefs特点:

     moosefs 是一个具备冗余容错功能的分布式网络文件系统,它将数据分别存放多个物理服务器或单独磁盘及分区上,确保

一份数据多个备份副本。对于访问的客户端或者用户来说,整个分布式网络文件系统集群看起来像一个资源一样。关键是可以免费使用不用还钱挺好的!

 1.高冗余,高可用;

 2.安装简单方便;

 3.管理起来也方便;

开始安装:

1.Mfs_Masterserver:10.1.66.13

   因为我的系统是Centos 7 全新安装的,我们需要安装一下编译环境,为了方便做实验我也关闭了selinux和fireall服务

[root@mfs_master ~]# vim /etc/selinux/config

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

#     enforcing - SELinux security policy is enforced.

#     permissive - SELinux prints warnings instead of enforcing.

#     disabled - No SELinux policy is loaded.

#SELINUX=enforcing

SELINUX=disabled  #关闭掉服务

# SELINUXTYPE= can take one of these two values:

#     targeted - Targeted processes are protected,

#     minimum - Modification of targeted policy. Only selected processes are protected. 

#     mls - Multi Level Security protection.

#SELINUXTYPE=targeted 

[root@mfs_master ~]# systemctl disable firewalld.service #禁止firewall开机启动

创建mfs用户和组

useradd mfs -s /sbin/nologin

以下是一些Mfs需要的环境安装包,安装后就可以一路畅通!

下载安装zlib包

wget http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf  zlib-1.2.8.tar.gz

cd zlib-1.2.8

./configure 

make && make install

下载安装fuse包

wget http://ncu.dl.sourceforge.net/project/fuse/fuse-2.X/2.8.1/fuse-2.8.1.tar.gz
tar -zxvf  fuse-2.8.1.tar.gz

cd fuse-2.8.1

./configure 

make && make install

下载安装MFS包:

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
tar -zxvf mfs-1.6.27-1.tar.gz

cd mfs-1.6.27

./configure --prefix=/usr/local/mfs   --with-default-user=mfs --with-default-group=mfs

make && make install

目录结构:

[root@mfs_master ~]# ll /usr/local/mfs

   drw-xr-x 2 root root 4096 Jan 31 04:09 etc   #mfs配置文件目录

    drwxr-xr-x 2 root root 4096 Jan 31 04:09 sbin  #mfs命令路径

    drwxr-xr-x 4 root root 4096 Jan 31 04:09 share #mfs帮助文件目录

    drwxr-xr-x 3 root root 4096 Jan 31 04:09 var   #mfs数据及日志目录

修改配置文件

cp /usr/local/mfs/etc/mfs/mfsmaster.cfg.dist    /usr/local/mfs/etc/mfs/mfsmaster.cfg  #主配置文件

cp /usr/local/mfs/etc/mfs/mfsexports.cfg.dist   /usr/local/mfs/etc/mfs/mfsexports.cfg  #权限配置文件

修改主配置文件:

[root@mfs_master ~]# vim /usr/local/mfs/etc/mfs/mfsmaster.cfg

# WORKING_USER = mfs 运行master server 的用户

 

# WORKING_GROUP = mfs 运行master server 的组

 

# SYSLOG_IDENT = mfsmaster master server 在syslog中的标识,说明是由master serve 产生的

 

# LOCK_MEMORY = 0 是否执行mlockall()以避免mfsmaster 进程溢出(默认为0)

 

# NICE_LEVEL = -19 运行的优先级(如果可以默认是-19; 注意: 进程必须是用root启动)

 

# EXPORTS_FILENAME = /usr/local/mfs/etc/mfsexports.cfg 被挂接目录及其权限控制文件的存放位置

 

# DATA_PATH = /usr/local/mfs/var/mfs 数据存放路径,此目录下大致有三类文件,changelog,sessions和stats;

 

# BACK_LOGS = 50 metadata 的改变log 文件数目(默认是50);

 

# REPLICATIONS_DELAY_INIT = 300 延迟复制的时间(默认是300s)

;

# REPLICATIONS_DELAY_DISCONNECT = 3600 chunkserver 断开的复制延迟(默认是3600);

 

# MATOML_LISTEN_HOST = * metalogger 监听的IP 地址(默认是*,代表任何IP);

 

# MATOML_LISTEN_PORT = 9419 metalogger 监听的端口地址(默认是9419)



# MATOCS_LISTEN_HOST = * 用于chunkserver 连接的IP 地址(默认是*,代表任何IP);

 

# MATOCS_LISTEN_PORT = 9420 用于chunkserver 连接的端口地址(默认是9420);

 

# MATOCU_LISTEN_HOST = * 用于客户端挂接连接的IP 地址(默认是*,代表任何IP);

 

# MATOCU_LISTEN_PORT = 9421 用于客户端挂接连接的端口地址(默认是9421);

 

# CHUNKS_LOOP_TIME = 300 chunks 的回环频率(默认是:300 秒);

 

# CHUNKS_DEL_LIMIT = 100

# CHUNKS_WRITE_REP_LIMIT = 1 在一个循环里复制到一个chunkserver 的最大chunk数目(默认是1)

 

# CHUNKS_READ_REP_LIMIT = 5 在一个循环里从一个chunkserver 复制的最大chunk数目(默认是5)

 

# REJECT_OLD_CLIENTS = 0 弹出低于1.6.0 的客户端挂接(0 或1,默认是0)

修改权限配置文件

root@mfs_master ~]# vim /usr/local/mfs/etc/mfs/mfsexports.cfg

# Allow everything but "meta".
echo 10.1.66.0/24 / rw,alldirs,mapall=mfs:mfs,password=888 >mfsexports.cfg #添加访问网段

修改目录权限:

chown -R mfs:mfs /usr/local/mfs/*

启动与关闭mfs服务:

/usr/local/mfs/sbin/mfsmaster start #开启

/usr/local/mfs/sbin/mfsmaster -s    #关闭

加入到开机自动启动:

echo "#startup master" >> /etc/rc.local 

echo "/usr/local/mfs/sbin/mfsmaster start " >>/etc/rc.local 

查看MFS监听端口是否成功开启:

root@mfs_master ~]# netstat -antlpe |grep mfs

tcp        0      0 0.0.0.0:9419            0.0.0.0:*               LISTEN      1001       23210      2642/mfsmaster      

tcp        0      0 0.0.0.0:9420            0.0.0.0:*               LISTEN      1001       23211      2642/mfsmaster      

tcp        0      0 0.0.0.0:9421            0.0.0.0:*               LISTEN      1001       23212      2642/mfsmaster

开启mfsmaster图形监控服务:

[root@mfs_master ~]# /usr/local/mfs/sbin/mfscgiserv restart

sending SIGTERM to lock owner (pid:17831)

lockfile created and locked

starting simple cgi server (host: any , port: 9425 , rootpath: /usr/local/mfs/share/mfscgi)

使用浏览器访问:10.1.66.13:9425



2安装MFS_Backupserver IP:10.1.66.14 

安装backup和master步骤完全一致,需要注意的是配置文件的改动

[root@mfs_backup~]# vim /etc/selinux/config

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

#     enforcing - SELinux security policy is enforced.

#     permissive - SELinux prints warnings instead of enforcing.

#     disabled - No SELinux policy is loaded.

#SELINUX=enforcing

SELINUX=disabled  #关闭掉服务

# SELINUXTYPE= can take one of these two values:

#     targeted - Targeted processes are protected,

#     minimum - Modification of targeted policy. Only selected processes are protected. 

#     mls - Multi Level Security protection.

#SELINUXTYPE=targeted 

[root@mfs_backup ~]# systemctl disable firewalld.service #禁止firewall开机启动

创建mfs用户和组

useradd mfs -s /sbin/nologin

以下是一些Mfs需要的环境安装包

下载安装zlib包

wget http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf  zlib-1.2.8.tar.gz

cd zlib-1.2.8

./configure 

make && make install

下载安装fuse包

wget http://ncu.dl.sourceforge.net/project/fuse/fuse-2.X/2.8.1/fuse-2.8.1.tar.gz
tar -zxvf  fuse-2.8.1.tar.gz

cd fuse-2.8.1

./configure 

make && make install

下载安装MFS包:

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
tar -zxvf mfs-1.6.27-1.tar.gz

cd mfs-1.6.27

./configure --prefix=/usr/local/mfs   --with-default-user=mfs --with-default-group=mfs

make && make install

修改配置文件:
cp /usr/local/mfs/etc/mfs/mfsmetalogger.cfg.dist  /usr/local/mfs/etc/mfs/mfsmetalogger.cfg

[root@mfs_backup ~]# vim /usr/local/mfs/etc/mfs/mfsmetalogger.cfg

# WORKING_USER = mfs

# WORKING_GROUP = mfs

# SYSLOG_IDENT = mfsmetalogger

# LOCK_MEMORY = 0

# NICE_LEVEL = -19

# DATA_PATH = /usr/local/mfs/var/mfs

# BACK_LOGS = 50

# BACK_META_KEEP_PREVIOUS = 3

# META_DOWNLOAD_FREQ = 24

# MASTER_RECONNECTION_DELAY = 5

MASTER_HOST = 10.1.66.13 #master主机IP地址或域名

# MASTER_PORT = 9419

# MASTER_TIMEOUT = 60

# deprecated, to be removed in MooseFS 1.7

# LOCK_FILE = /var/run/mfs/mfsmetalogger.lock

启动服务:
/usr/local/mfs/sbin/mfsmetalogger start

加入开启启动:

 echo "#start mfsmetalogger " >>/etc/rc.local

 echo "/usr/local/mfs/sbin/mfsmetalogger start"  >>/etc/rc.local

查看监听端口是否正常启动:

root@mfs_backup ~]# netstat -antlpe |grep mfs

tcp        0      0 10.1.66.14:57895        10.1.66.13:9419         ESTABLISHED 1001       111713     32302/mfsmetalogger

安装Mfs_Dataserver IP:10.1.66.16和105

Mfs_Dataserver (chunk server) 安装步骤和master完全一致,只是配置文件不同

[root@mfs_data~]# vim /etc/selinux/config

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

#     enforcing - SELinux security policy is enforced.

#     permissive - SELinux prints warnings instead of enforcing.

#     disabled - No SELinux policy is loaded.

#SELINUX=enforcing

SELINUX=disabled  #关闭掉服务

# SELINUXTYPE= can take one of these two values:

#     targeted - Targeted processes are protected,

#     minimum - Modification of targeted policy. Only selected processes are protected. 

#     mls - Multi Level Security protection.

#SELINUXTYPE=targeted 

[root@mfs_data ~]# systemctl disable firewalld.service #禁止firewall开机启动

创建mfs用户和组

useradd mfs -s /sbin/nologin

以下是一些Mfs需要的环境安装包

下载安装zlib包

wget http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf  zlib-1.2.8.tar.gz

cd zlib-1.2.8

./configure 

make && make install

下载安装fuse包

wget http://ncu.dl.sourceforge.net/project/fuse/fuse-2.X/2.8.1/fuse-2.8.1.tar.gz
tar -zxvf  fuse-2.8.1.tar.gz

cd fuse-2.8.1

./configure 

make && make install

下载安装MFS包:

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
tar -zxvf mfs-1.6.27-1.tar.gz

cd mfs-1.6.27

./configure --prefix=/usr/local/mfs   --with-default-user=mfs --with-default-group=mfs

make && make install

修改配置文件:

cp /usr/local/mfs/etc/mfs/mfschunkserver.cfg.dist /usr/local/mfs/etc/mfs/mfschunkserver.cfg

cp /usr/local/mfs/etc/mfs/mfshdd.cfg.dist /usr/local/mfs/etc/mfs/mfshdd.cfg

[root@mfs_data ~]vim /usr/local/mfs/etc/mfs/mfschunkserver.cfg

# WORKING_USER = mfs

# WORKING_GROUP = mfs

# SYSLOG_IDENT = mfschunkserver

# LOCK_MEMORY = 0

# NICE_LEVEL = -19

# DATA_PATH = /usr/local/mfs/var/mfs

# MASTER_RECONNECTION_DELAY = 5

# BIND_HOST = *
MASTER_HOST = 10.1.66.13

# MASTER_PORT = 9420

# MASTER_TIMEOUT = 60

# CSSERV_LISTEN_HOST = *

# CSSERV_LISTEN_PORT = 9422

# HDD_CONF_FILENAME = /usr/local/mfs/etc/mfs/mfshdd.cfg

# HDD_TEST_FREQ = 10

# deprecated, to be removed in MooseFS 1.7

# LOCK_FILE = /var/run/mfs/mfschunkserver.lock

# BACK_LOGS = 50

# CSSERV_TIMEOUT = 5

 [root@mfs_data ~]vim /usr/local/mfs/etc/mfs/mfshdd.cfg

# mount points of HDD drives

#

#/mnt/hd1

#/mnt/hd2

#etc.
/mfsdata
添加挂载点目录:

[root@mfs_data ~]#mkdir /mnt/mfs

[root@mfs_data ~]#mkdir /mfsdata

[root@mfs_data ~]#chown -R mfs.mfs /mfsdata

 [root@mfs_data ~]# mount /dev/sda5      /mnt/mfsdata  #/dev/sda5 /是我的跟目录,实际环境中建议单独分区方便管理;

[root@mfs_data ~]#vim /etc/fstab 

/dev/sda5               /mfsdata               ext3     defaults      0 0  #添加一条

echo "/mfsdata " >mfshdd.cfg  #添加共享挂载点

启动服务:

[root@mfs_data ~]#/usr/local/mfs/sbin/mfschunkserver start

检查端口是否启动:

[root@mfss_data ~]# netstat -tunlp |grep 9422

tcp        0      0 0.0.0.0:9422            0.0.0.0:*               LISTEN

安装MFs_client ip:10.1.66.15

[root@mfs_data~]# vim /etc/selinux/config

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

#     enforcing - SELinux security policy is enforced.

#     permissive - SELinux prints warnings instead of enforcing.

#     disabled - No SELinux policy is loaded.

#SELINUX=enforcing

SELINUX=disabled  #关闭掉服务

# SELINUXTYPE= can take one of these two values:

#     targeted - Targeted processes are protected,

#     minimum - Modification of targeted policy. Only selected processes are protected. 

#     mls - Multi Level Security protection.

#SELINUXTYPE=targeted 

[root@mfs_data ~]# systemctl disable firewalld.service #禁止firewall开机启动

创建mfs用户和组

useradd mfs -s /sbin/nologin

以下是一些Mfs需要的环境安装包

下载安装zlib包

wget http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf  zlib-1.2.8.tar.gz

cd zlib-1.2.8

./configure 

make && make install

下载安装fuse包

wget http://ncu.dl.sourceforge.net/project/fuse/fuse-2.X/2.8.1/fuse-2.8.1.tar.gz
tar -zxvf  fuse-2.8.1.tar.gz

cd fuse-2.8.1

./configure 

make && make install

下载安装MFS包:

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
tar -zxvf mfs-1.6.27-1.tar.gz

cd mfs-1.6.27

./configure --prefix=/usr/local/mfs   --with-default-user=mfs --with-default-group=mfs --enable-mfsmount #注意不同地方

make && make install

创建挂载步骤:
mkdir /mnt/mfs -p

chown -R mfs.mfs /mnt/mfs 权限赋予

加载fuse 模块到内核:modprobe fuse

/usr/local/mfs/bin/mfsmount /mnt/mfs -H 10.1.66.13 -p

输入密码:888

检查是否挂载成功:

[root@localhost ~]# df -h

文件系统                 容量  已用  可用 已用% 挂载点

/dev/mapper/centos-root   18G  4.0G   14G   23% /

devtmpfs                 486M     0  486M    0% /dev

tmpfs                    495M   80K  495M    1% /dev/shm

tmpfs                    495M  6.9M  488M    2% /run

tmpfs                    495M     0  495M    0% /sys/fs/cgroup

/dev/xvda1               497M  118M  380M   24% /boot
10.1.66.13:9421          118G     0  118G    0% /mnt/mfs

暂时先到这里,留个记号有时间在来完成后续操作;

~       
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  moosefs 运维