• MooseFS分布式文件系统安装小记


    Moose File System 是一个具备容错功能的网络分布式文件系统,它将数据分布在网络中的不同服务器上,MooseFS 通过 FUSE 使之看起来就是一个 Unix 的文件系统。

    MooseFS文件系统结构包括以下四种角色:

      1 管理服务器managing server (master):负责各个数据存储服务器的管理,文件读写调度,文件空间回收以及恢复.多节点拷贝

      2 元数据日志服务器Metalogger server(Metalogger): 负责备份master服务器的变化日志文件,文件类型为changelog_ml.*.mfs,以便于在master server出问题的时候接替其进行工作

      3 数据存储服务器data servers (chunkservers):负责连接管理服务器,听从管理服务器调度,提供存储空间,并为客户提供数据传输.

      4 客户机mount:通过fuse内核接口挂接远程管理服务器上所管理的数据存储服务器,可以直接mount.看起来共享的文件系统和本地unix文件系统使用一样的效果.


    安装MooseFS:
    参考官方文档:http://www.moosefs.org/reference-guide.html
    wget http://pro.hit.gemius.pl/hitredir/id=BxY7_eM43EskGBuSFtz3YNVqP1JNYK7dbkJhAZiPIXH.w7/url=moosefs.org/tl_files/mfscode/mfs-1.6.25.tar.gz
    tar -zvxf mfs-1.6.25.tar.gz
    groupadd mfs
    useradd -g mfs mfs
    cd mfs-1.6.25
    ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib --with-default-user=mfs --with-default-group=mfs
    make && make install

    master配置:
    cd /etc
    cp mfsmaster.cfg.dist mfsmaster.cfg
    cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
    cp mfsexports.cfg.dist mfsexport.cfg
    被注释掉的行,即是MooseFS内置的默认配置
    配置文件mfsexpots.cfg,指定哪些客户端主机可以远程挂载MooseFS系统
    192.168.1.0/24 / rw,alldirs,maproot=0
    cd /var/lib/mfs
    cp metadata.mfs.empty metadata.mfs
    修改/etc/hosts
    192.168.1.6 mfsmaster
    启动master服务
    /usr/sbin/mfsmaster start
    查询MooseFS运行情况:
    /usr/sbin/mfscgiserv
    http://192.168.1.6:9425

    metalogger(备份服务器)安装:
    在master失效情况下,只要导入changelogs到元数据文件,备份服务器metalogger将能接替master
    http://www.moosefs.org/minihowtos.html#redundant-master
    cd /etc
    cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
    修改/etc/hosts
    192.168.1.6 mfsmaster
    启动备份服务:
    /usr/sbin/mfsmetalogger start

    chunk server(存储块服务)安装:
    cd /etc/
    cp mfscunkserver.cfg.dist mfschunkserver.cfg
    cp mfshdd.cfg.dist mfshdd.cfg
    修改mfshdd.cfg,去掉这行注释/mnt/hd1
    mkdir -p /mnt/hd1
    chown -R mfs:mfs /mnt/hd1
    修改/etc/hosts
    192.168.1.6 mfsmaster
    启动chunk server
    /usr/sbin/mfschunkserver start

    客户端安装
    为挂载MooseFS文件系统,需要安装fuse
    安装fuse
    yum -y install fuse-devel
    yum -y install fuse
    modprobe fuse
    安装mfs完后
    修改/etc/hosts
    192.168.1.6 mfsmaster
    创建挂载点
    mkdir -p /mnt/mfs
    /usr/bin/mfsmount /mnt/mfs -H mfsmaster
    用df -h 检查分区情况

    MooseFS使用:
    mkdir -p /mnt/mfs/test
    cp /usr/src/mfs-1.6.25.tar.gz /mnt/mfs/test/
    mfssetgoal -r 设定目录里文件的副本数:
    mfssetgoal -r 2 /mnt/mfs/test
    mfschunkfile用来检查给定的文件以多少副本来存储
    mfscheckfile /mnt/mfs/test/mfs-1.6.25.tar.gz
    查看某文件
    mfsgetgoal /mnt/mfs
    查看目录信息
    mfsdirinfo -H /mnt/mfs

    写入性能测试
    dd if=/dev/zero of=/mnt/mfs/test/1.img bs=1M count=300
    读性能测试
    dd if=/mnt/mfs/test/1.img of=/dev/null bs=1M


    RHEL4安装fuse

    有一台机器是RHEL4,不能使用yum,只能手工编译fuse了:
    wget http://sourceforge.net/projects/fuse/files/fuse-2.X/2.7.4/fuse-2.7.4.tar.gz/download
    tar zxvf fuse-2.7.4.tar.gz
    ./configure
    make;make install
    先编辑/etc/profile在此文件中加入如下条目:
    export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
    然后再利用source命令 /etc/profile使修改生效:source /etc/profile
    加载fuse模块到内核:modprobe fuse

  • 相关阅读:
    一个高级的makefile文件
    poj3616题(动态规划),看了别人的提示,自己又写了一遍
    浅谈C++ IO标准库(1)
    https证书安装踩坑
    一个简单通知服务的开发和搭建
    WCF学习笔记
    线程(Thread)、线程池(ThreadPool)技术
    BackgroundWorker与线程使用
    使用ITextSharp生成PDF文件心得
    值类型与引用类型
  • 原文地址:https://www.cnblogs.com/langke93/p/2552033.html
Copyright © 2020-2023  润新知