我这里的环境都是 RHEL 5 的环境。

MySQL 数据库 和 tracker 都放到一台服务器上, 为 192.168.2.85

storage server两台, 分别为 192.168.2.98          192.168.2.222

第一:    安装 Mysql 数据库

Mysql的安装请大家直接下载 rpm 安装包最方便, 下载源码安装也很简单。我这里是使用 rpm 包安装。

安装完毕后使用命令   service  mysql  start  启动

启动后使用mysql的客户端进入     mysql  -uroot  -p   , 然后回车, 默认空密码, 接着回车进入到mysql的控制台。

我们把mysql的访问密码修改为 111111

修改命令为 :

use  mysql;

update user set Password=password('111111')   where  user='root';

quit;

然后把mysql 重新启动。

service  mysql  stop

service  mysql  start

第二 :  安装依赖包

执行命令 : perl -MCPAN -e shell   进入 perl 依赖包安装模式

install Danga::Socket
install DBI
install Net::Netmask
install Gearman::Server
install Gearman::Client::Async 
install IO::AIO
install Perlbal

install Mysql

install MogileFS::Server

install MogileFS::Client
install MogileFS::Utils

上述依赖包全部安装完毕后退出。

找到DBD模块所在的目录,我的目录为   /root/.cpan/build/  , 这个目录是上面安装时下载的各种依赖包。

cd  DBD-mysql-3.0008

perl Makefile.PL  --libs="-L/usr/lib64/mysql -lmysqlclient -L/usr/lib64 -lz " --cflags=-I/usr/include/mysql  --mysql_config=/usr/bin/mysql_config  --testhost=127.0.0.1 --testdb=test --testuser=root --testpassword=111111

make

make test

make install

第三: 建立数据库和创建表

进入mysql 的控制台   mysql  -uroot -p111111  , 执行下面的命令

# mysql

mysql> CREATE DATABASE mogilefs;
mysql> GRANT ALL ON mogilefs.* TO 'mogile'@'%';
mysql> SET PASSWORD FOR 'mogile'@'%' = OLD_PASSWORD( '111111' );
mysql> FLUSH PRIVILEGES;
mysql> quit

然后再执行下面的命令创建表

mogdbsetup --dbhost=127.0.0.1 --dbname=mogilefs --dbuser=root --dbpassword=111111 --yes --verbose

第四 : 配置 tracker 的配置文件

用 root 用户执行

adduser mogile

mkdir /etc/mogilefs

  1. <span style="font-size:18px;">[root@redhat1 mogilefs]# vi /etc/mogilefs/mogilefsd.conf
  2. # Enable daemon mode to work in background and use syslog
  3. daemonize = 0
  4. # Where to store the pid of the daemon (must be the same in the init script)
  5. pidfile = /var/run/mogilefsd/mogilefsd.pid
  6. # Database connection information
  7. db_dsn = DBI:mysql:mogilefs:host=127.0.0.1
  8. db_user = root
  9. db_pass = 111111
  10. # IP:PORT to listen on for mogilefs client requests
  11. listen = 192.168.2.85:7001
  12. # Optional, if you don't define the port above.
  13. conf_port = 7001
  14. # Number of query workers to start by default.
  15. query_jobs = 10
  16. # Number of delete workers to start by default.
  17. delete_jobs = 1
  18. # Number of replicate workers to start by default.
  19. replicate_jobs = 5
  20. # Number of reaper workers to start by default.
  21. # (you don't usually need to increase this)
  22. reaper_jobs = 1
  23. # Number of fsck workers to start by default.
  24. # (these can cause a lot of load when fsck'ing)
  25. #fsck_jobs = 1
  26. # Minimum amount of space to reserve in megabytes
  27. # default: 100
  28. # Consider setting this to be larger than the largest file you
  29. # would normally be uploading.
  30. #min_free_space = 200
  31. # Number of seconds to wait for a storage node to respond.
  32. # default: 2
  33. # Keep this low, so busy storage nodes are quickly ignored.
  34. #node_timeout = 2
  35. # Number of seconds to wait to connect to a storage node.
  36. # default: 2
  37. # Keep this low so overloaded nodes get skipped.
  38. #conn_timeout = 2
  39. # Allow replication to use the secondary node get port,
  40. # if you have apache or similar configured for GET's
  41. #repl_use_get_port = 1</span>

执行如下命令来启动

su  mogile

[mogile@redhat1 mogilefsd]$ mogilefsd -c /etc/mogilefs/mogilefsd.conf --daemon
[mogile@redhat1 mogilefsd]$ ps -aux|grep mogilefsd  查看是否启动 mogilefsd 成功

第五:配置 storage server 的配置文件

adduser mogile
mkdir /var/mogdata
mkdir /var/mogdata/dev1   (第二台目录为 /var/mogdata/dev2)
chown mogile:mogile /var/mogdata/dev1
mkdir /etc/mogilefs

  1. <span style="font-size:18px;">[root@localhost mogilefs]# vi /etc/mogilefs/mogstored.conf
  2. maxconns = 10000
  3. httplisten = 0.0.0.0:7500
  4. mgmtlisten = 0.0.0.0:7501
  5. docroot = /var/mogdata
  6. </span>

执行如下命令来启动

找到 MogileFS-Server-2.51 所在的目录,我的为 /root/.cpan/build/

cd  MogileFS-Server-2.51

perl Makefile.PL

make

make test

make install

然后启动storage server

[root@localhost MogileFS-Server-2.51]# mogstored --daemon
[root@localhost MogileFS-Server-2.51]# ps -aux|grep mogstored

第六:添加 storage 服务器到 tracker服务器进行记录

切换到 tracker 服务器 192.168.2.85

执行如下命令

mogadm --trackers=192.168.2.85:7001 host add mogilestorage1 --ip=192.168.2.98 --port=7500 --status=alive

mogadm --trackers=192.168.2.85:7001 host add mogilestorage2 --ip=192.168.2.222 --port=7500 --status=alive

添加完毕后使用下面的命令来检查添加的结果

mogadm --trackers=192.168.2.85:7001 host list

下来添加硬盘设备让tracker服务器进行管理

mogadm --trackers=192.168.2.85:7001 device add mogilestorage1   1

mogadm --trackers=192.168.2.85:7001 device add mogilestorage2   2

执行如下命令 来查看添加的结果

mogadm --trackers=192.168.2.85:7001 device list

还可以执行如下命令来查看详细的硬盘资料

mogadm --trackers=192.168.2.85:7001 check

添加测试域的命令如下

mogadm --trackers=192.168.2.85:7001 domain add testdomain

mogadm --trackers=192.168.2.85:7001 class add testdomain normal

mogilefs 文件系统是与API的形式提供给客户端使用的, 你需要通过自己的代码来集成API。

有第三方封装的PHP的, Java的, RUBY的, PERL的。

我打算使用perl + fuse 的方式来使用, 但是 perl的fuse模块无法编译过去,晕死了。

遇到了这样的错误:

Fuse.xs:43: error: expected specifier-qualifier-list before 'tTHX'

http://blog.csdn.net/langeldep/article/details/6637517

分布式文件系统 Mogilefs 安装步骤的更多相关文章

  1. 分布式文件系统glusterfs安装步骤

    我的系统是 RHEL5 , 可能环境不一样, 需要安装的第三方依赖不一样啊, 反正大家在安装的过程中缺少什么就去安装什么, 一般都会有提示的. 下载   glusterfs-3.2.0.tar.gz  ...

  2. 分布式文件系统MooseFS安装步骤

    1.    安装 1.1 准备安装环境 首先选择一台比较好的服务器做master,如果可以在选择一台做为master的备份服务器最好.然后其他的服务器当chunkserver. 为了方便说明问题,我这 ...

  3. 分布式文件系统 fastDFS 安装步骤

    安装 fastDFS 很简单. 先安装 libevent, 安装成功后,安装fastDFS. ./make.sh ./make.sh install 我使用一台tracker服务器  192.168. ...

  4. Dubbo入门到精通学习笔记(八):ActiveMQ的安装与使用(单节点)、Redis的安装与使用(单节点)、FastDFS分布式文件系统的安装与使用(单节点)

    文章目录 ActiveMQ的安装与使用(单节点) 安装(单节点) 使用 目录结构 edu-common-parent edu-demo-mqproducer edu-demo-mqconsumer 测 ...

  5. FastDFS 分布式文件系统的安装与使用(单节点)

    FastDFS 分布式文件系统的安装与使用(单节点) 跟踪服务器:192.168.4.121 (edu-dfs-tracker-01) 存储服务器:192.168.4.125 (edu-dfs-sto ...

  6. centos 6.5环境下分布式文件系统MogileFS工作原理及分布式部署实现过程

    MogileFS是一套高效的文件自动备份组件,由Six Apart开发,广泛应用在包括LiveJournal等web2.0站点上 MogileFS由3个部分组成:    第1个部分:是server端, ...

  7. 分布式文件系统 ~MogileFS~

    一.分布式文件系统 分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连,也就是集群文件系统,可以支持 ...

  8. 分布式文件系统FastDFS安装教程

    前言 FastDFS(Fast Distributed File System)是一款开源轻量级分布式文件系统,本文不讲解原理和架构,只是在个人使用部署过程中耗费了好长时间和精力,遇到了很多的坑,于是 ...

  9. 分布式文件系统fastdfs安装以及python调用

    fastfds的安装和使用 一.所需依赖 操作系统:centos7.x(注意的是centos使用yum安装相关依赖) fastdfs:V6.06.tar.gz libfastcommon:V1.0.4 ...

随机推荐

  1. HDU 3401 Trade(单调队列优化)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3401 题意:炒股.第i天买入一股的价钱api,卖出一股的价钱bpi,最多买入asi股,最多卖出bsi股 ...

  2. Pawn Brotherhood

    Pawn Brotherhood 1 alpha_table = "abcdefgh" 2 3 def safe_pawns(pawns): 4 safe_count = 0 5 ...

  3. android的原理--为什么我们不需要手动关闭程序

    内容搜集自网络,有所删改       不用在意剩余内存的大小,其实很多人都是把使用其他系统的习惯带过来来了.android大多应用没有退出的设计其实是有道理的,这和系统对进程的调度机制有关系.如果你知 ...

  4. 【转】git 学习笔记( 随时更新中…… 最后更新日期201304281518)--不错

    原文网址:http://blog.csdn.net/yasin_lee/article/details/5975070 GIT 是版本管理的未来!   推荐几个GIT教程网站 http://www-c ...

  5. HTTP常见的状态码

    状态码的职责是当客户端向服务器端发送请求时,描述返回请求结果.借助状态码,用户可以知道服务器端是正常处理了请求,还是出现了什么错误.RFC2616定义的状态码,由3位数字和原因短信组成.数字中的第一位 ...

  6. Hdu3812-Sea Sky(深搜+剪枝)

    Sea and Sky are the most favorite things of iSea, even when he was a small child.  Suzi once wrote: ...

  7. ora-28056 (Writing audit records to Windows Event Log failed)

    系统:windows xp oracle 版本 SQL> select * from v$version; BANNER ------------------------------------ ...

  8. Linux usb子系统(一):子系统架构

    一.USB协议基础知识   前序:USB概念概述 USB1.0版本速度1.5Mbps(低速USB) USB1.1版本速度12Mbps(全速USB)  USB2.0版本速度480Mbps(高速USB). ...

  9. Chosen 基本使用

    点击下载Chosen 引入文件 chosen.css jquery-1.7.1.min.js chosen.jquery.js 绑定数据: for (var i = 0; i < data.le ...

  10. PC--CSS命名

    头:header内 容:container尾:footer导航:nav侧栏:sidebar栏目:column页 面外围控制整体布局宽度:wrapper左右中:left right center登录条: ...