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

来源:互联网 发布:直通车助手软件 编辑:程序博客网 时间:2024/05/29 17:30


 搭建硬件环境: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



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

~       

0 0
原创粉丝点击