Redhat5.4 系统上部署 MooseFS分布式文件系统的部署

2024-03-25 06:48

本文主要是介绍Redhat5.4 系统上部署 MooseFS分布式文件系统的部署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第一,               分布式文件系统的介绍

分布式文件系统有数十种方案可供选择。如:ustre hadoopPnfs 等。还有下面要实现的moosfes moosfes 文件系统具有以下几个优点

   1 实施简单。 MFS(即是moosfes) 的部署,配置相对于其他类型的分布式文件系统来数,相对简单。

  2  在不停止服务时,就能对该文件系统进行扩容。 MFS 框架做好后,随时就可以可以对服务器进行扩充容量;在进行扩充  减少容量的同时都不会对现有服务造成影响。注: hadoop 也具有该功能

  3 容易恢复。

  4 高可靠性,将数据分成几个副本存储在不同的计算机中;通过增加计算机或者增加硬盘,动态的扩充可用磁盘空间; 可以设置删除文件的空间回收时间; 同时也能为文件创建快照

 6 mfs 文件系统的组成

     1,原数据服务器。负责管理文件系统

     2 数据服务器,即是chunkserver 。真正存储用户的数据服务器。存储文件时,首先把文件分成数据块,然后这些数据块存在数据服务器chunkserver之间复制。数据服务器可以死多个,并将数据服务器的数量越多,可使用的“磁盘空间”越大,同时可靠性也就越高

      3,客户端。使用MFS文件系统来存储和访问的主机称为mfs 的客户端,成功挂接MFS文件系统后,就可以共享该虚拟性的存储

7 MooseFS(即是mfs 架构(如下图)

        mfs 包括四种类型的机器

l   Mangaging Server master server

l   Data servers chunk servers

l   Metadata backup servers (metalogger server)

l   Client

          

 



 


 

第二.Master server(元数据服务器) 的安装

1 首先创建用户mfs

  #useradd –s /sbin/nologin  mfs

2 配置安装数据源服务器

    #tar  -xvf   mfs-1.6.17.tar.gz

    # cd mfs-1.6.17

    # ./configure  --prefix=/usr/local/mfs  --disable-mfschunkserver  --disable-mfsmount –with-default-user=mfs  --with-default-group=mfs 

    #make  && make install

3 配置数据服务器的相关配置文件

     #cd /usr/local/mfs/etc

     #cp   mfsexports.cfg.dist    mfsexports.cfg

     #cp   mfsmaster.cfg.dist     mfsmaster.cfg

     #cd  /usr/local/mfs/var/mfs

     #cp  metadata.mfs.empty  metadata.mfs

   4 修改mfsexports.cfg  mfsmaster.cfg

     IP      /    rw,alldirs,maproot=0

     注:IP 是允许 挂载的主机,该处可以是域名,主机名,IP地址

         #vim  mfsmaster.cfg

          mfsmaster.cfg 每行都是被注释掉了,但是都是配置文件的默认值。

Ø  LOCK_FILE=/var/run/mfs/mfsmaster.lock 

       注:文件锁在的位置,该文件主要是避免多次启动同一个守护进程。

Ø  DATA_PATH=/user/local/mfs/var/mfs 数据存储路径,只是元数据的存放路径,

Ø  MATOCS_LISTEN_PORT = 9420  即元数据服务使用9420 这个端口来接受数据储存服务器chunkserver端的连接

Ø  MATOCU_LISTEN_PORT = 9421  元数据服务器在9421 端口监听,用用以接受客户端对于MFS进行远程挂接(客户端以mfsmount 挂接MFS

        5 启动元数据服务器master

                    #/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 ...

loading objects (files,directories,etc.) ... ok

loading names ... ok

loading deletion timestamps ... ok

checking filesystem consistency ... ok

loading chunks data ... ok

connecting files and chunks ... ok

all inodes: 6

directory inodes: 2

                             file inodes: 4

chunks: 46

metadata file has been loaded

stats file has been loaded

master <-> metaloggers module: listen on *:9419

master <-> chunkservers module: listen on *:9420

main master server module: listen on *:9421

mfsmaster daemon initialized properly

 

 

 

   6 关闭原数据服务器master 

 

 

       在关闭元数据服务器master 务必使用/usr/local/mfs/sbin/mfsmaster –s

 

 

       如果直接使用kill 杀死进程,导致下次启动时出现找不到相关文件,而不能正常启动服务器。 如果使用kill 杀死进程,时出现上面的问题时,可以通过mfsmetastore 来恢复

第三,安装数据 储存服务器 chunkserver

1         解压mfs

#tar  -xvf  mfs-1.6.17.tar.gz

#cd  mfs-1.6.17

2         创建mfs 用户

   #useradd  -s /sbin/nologin mfs

3         配置安装mfs

  #  ./configure –prefix=/usr/local/mfs   --disable-mfsmaster –disable-mfsmount –with-default-user=mfs  --with-default-group=mfs

  #make  && make install

4         修改相关的配置文件

   #cd  /usr/local/mfs/etc

   #cp   mfschunkserver.cfg.dist   mfschunkserver.cfg

   #cp  mfshdd.cfg.dist     mfsshdd.cfg

   #vim  mfschunkserver.cfg

        取消下列注释

      MASTER_HOST= 192.168.2.1

        注: 该处的ip地址为元数据服务器的IP地址,此处可以设置元数据服务器的域名等

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

                        注:文件锁在的位置,该文件主要是避免多次启动同一个守护进程

 

         CSSERV_LISTEN_PORT=9422 该端口用于与其他数据储存服务器间的连接,通常是数据复制 

 

 

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

 

                注: 分配给MFS使用的磁盘空间配置文件的位置

 

5         修改配置文件mfshdd.cfg 服务分区挂接点 /data ,并修改属主

#chown  -R mfs:mfs  /data

 注:mfshdd.cfg 文件存的是用来给MooseFs 使用的空间,如果是单个chunkserver的储存空间最好大于2g,否则无法写入空间

6         启动数据储存服务器chunkserver

#/usr/local/mfs/sbin/mfschunkserver  start

 working directory: /usr/local/mfs/var/mfs

lockfile created and locked

initializing mfschunkserver modules ...

hdd space manager: scanning folder /mnt/data/ ...

hdd space manager: /mnt/data/: 46 chunks found

hdd space manager: scanning complete

main server module: listen on *:9422

stats file has been loaded

mfschunkserver daemon initialized properly

7         数据储存服务器chunkserver 监听的端口为9422 ,同样关闭数据储存服务器时同样和元数据服务器的方法类似

#/usr/local/mfs/sbin/mfschunkserver –s

第四,安装元数据日志服务器 mfsmetalogger

      1 创建mfs 用户

         #useradd  -s /sbin/nologin  mfs

      2 安装元数据日志服务器

          # tar –xvf  mfs-1.6.17.tar.gz

          #cd mfs-1.6.17

          # ./configure  --prefix=/usr/local/mfs   --disable-mfschunkserver  --disable-mfsmount  --with-default-user=mfs   --with-default-user=mfs  

          # make  && make install

       3 修改相关配置

          #cd  /usr/local/mfs/etc

           #cp  mfsmetalogger.cfg.dist  mfsmetalogger.cfg

            #vim mfsmetalogger.cfg

             并把修改下面的选项

                MASTER_HOST = mfsmaster

                 MASTER_HOST = 192.168.2.1 此地址为mfsmaster ip地址

                并保存

                back_logs =50 

               META_DOWNLOAD_FREQ=24 注:元数据备份文件下载请求频率,默认为24 小时,即每个一天重元数据服务器 (master) 下载一个metadata.mfs.back 文件。但元数据服务器关闭或者故障时,matedata.mfs.back文件将消失,如果要回复整个 mfs。则需要从metalogger服务器取得该文件。该文件与日志文件在一起时,才能恢复整个被损坏的分布式文件系统

     4 启动元数据日志服务器

        #/usr/local/sbin/mfsmetalogger start

          working directory: /usr/local/mfs/var/mfs

lockfile created and locked

initializing mfsmetalogger modules ...

mfsmetalogger daemon initialized properly

 注: metalogger 连接的master9419 端口  

 

第五.MFS客户端的安装 

 

 

   1 创建,mfs 用户

 

    #useradd  -s /sbin/nologin mfs

  2 解压安装fuse 

      # tar –xvf fuse-2.8.5.tar.gz

      #cd fuse-2.8.5

      #./configure  -prefix=/usr/local/fuse

      #make && make install

3 设置fuse 的环境

   #vim  /etc/profile 并在其尾部添加如下配置

     export PKG_CONFIG_PATH=/usr/local/fuse/lib/pkgconfig:$PKG_CONFIG_PATH

      保存并执行

     #source  /etc/profile

4解压,安装mfs客户端

     #tar –xvf  mfs-1.6.17.tar.gz

     #cd  mfs-1.6.17

     #./configure  --prefix=/user/local/mfs   --disable-mfsmaster –disable-mfschunkserver –enable-mfsmount  --with-default-user=mfs  --with-default-group=mfs

     #make  && make install

5 挂载MooseFs

    #mkdir  /mnt/mfs

  #/usr/local/mfs/bin/mfsmount –H  192.168.2.1 /mnt/mfs

 

mfsmaster accepted connection with parameters:read-write,restricted_ip;root mapped to root:root

这篇关于Redhat5.4 系统上部署 MooseFS分布式文件系统的部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/844166

相关文章

JWT + 拦截器实现无状态登录系统

《JWT+拦截器实现无状态登录系统》JWT(JSONWebToken)提供了一种无状态的解决方案:用户登录后,服务器返回一个Token,后续请求携带该Token即可完成身份验证,无需服务器存储会话... 目录✅ 引言 一、JWT 是什么? 二、技术选型 三、项目结构 四、核心代码实现4.1 添加依赖(pom

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux查询服务器系统版本号的多种方法

《Linux查询服务器系统版本号的多种方法》在Linux系统管理和维护工作中,了解当前操作系统的版本信息是最基础也是最重要的操作之一,系统版本不仅关系到软件兼容性、安全更新策略,还直接影响到故障排查和... 目录一、引言:系统版本查询的重要性二、基础命令解析:cat /etc/Centos-release详

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到

更改linux系统的默认Python版本方式

《更改linux系统的默认Python版本方式》通过删除原Python软链接并创建指向python3.6的新链接,可切换系统默认Python版本,需注意版本冲突、环境混乱及维护问题,建议使用pyenv... 目录更改系统的默认python版本软链接软链接的特点创建软链接的命令使用场景注意事项总结更改系统的默

在Linux系统上连接GitHub的方法步骤(适用2025年)

《在Linux系统上连接GitHub的方法步骤(适用2025年)》在2025年,使用Linux系统连接GitHub的推荐方式是通过SSH(SecureShell)协议进行身份验证,这种方式不仅安全,还... 目录步骤一:检查并安装 Git步骤二:生成 SSH 密钥步骤三:将 SSH 公钥添加到 github

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方