mogileFS 分布式存储-安装手记

 环境是centos

呃,装个玩意儿走了好多弯路,以为依赖太多的包河模块,搞了很久.

后来发现其实安装可以简化的,yum没有mogilefs,可以通过epel来安装.

第一种安装方法,用epel

# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm

# yum -y install mogilefsd perl-MogileFS-Client perl-MogileFS-Utils

# yum -y install mogstored mogstored-backend-perlbal mogstored-backend-lighttpd mogstored-backend-apache perl-MogileFS-Client perl-MogileFS-Utils

如果后面报错找不到AIO则需补充安装AIO

# cpan  

# cpan> install IO::AIO

______________________________________________________________

第二重安装方法,用cpan

# cpan 
# cpan> install IO::AIO     
# cpan> install DBI 
# cpan> install DBD::mysql 
 
# cpan> install MogileFS::Server 
        install Gearman::Client  
        install Gearman::Server  
        install Sys::Syscall  
        install Perlbal  
        install Net::Netmask  
        install Danga::Socket  
        install Gearman::Client::Async  
     
# cpan> install MogileFS::Utils 
        install MogileFS::Client

______________________________________________________________

第三种方法是传统的一个个依赖包的装的办法:

这种方法比较烦人,就不说了,都是泪啊```研究的我手都抽筋了

______________________________________________________________

下面说说配置:

搞清楚原理后其实配置起来还是蛮容易的.

第一步,初始化数据库
# mogdbsetup --dbhost=127.0.0.1 --dbname=mogilefs --dbuser=mogilefs --dbpass=jongin

第二步,新建tracker配置文件
# vim /etc/mogilefsd.conf
db_dsn DBI:mysql:mogilefs:127.0.0.1
db_user mogilefs
db_pass jongin
conf_port 6001
listener_jobs 5

第三步,启动trackers.

# adduser mogile
# su mogile
# mogilefsd -c /etc/mogilefsd.conf --daemon

第四步,初始化storage server数据

# mogadm --lib=/usr/lib/perl5/5.8.8 --trackers=222.191.251.xx:6001 host add mogilestorage --ip=222.191.251.xx--port=7500 --status=alive
检测是否生效:
# mogadm --lib=/usr/lib/perl5/5.8.8 --trackers=222.191.251.xx:6001 host list
添加设备到storage server
# mogadm -lib=/usr/lib/perl5/5.8.8 -trackers=222.191.251.xx:6001 device add mogilestorage 1
检测是否生效:
# mogadm --lib=/usr/lib/perl5/5.8.8 --trackers=222.191.251.xx:6001 device list

第五步,新建Storage配置文件
# vim
/etc/mogstored.conf

httplisten=0.0.0.0:7500
mgmtlisten=0.0.0.0:7501
docroot=/data/mdata

建立存储目录-> mkdir -p /data/mdata/dev1

第六步,运行MogileFS

# mogstored -c /etc/mogstored.conf --daemon

查看你所有的服务都起来没有
# ps -ef | grep mogilefsd
# ps -ef | grep mogstored

第七部,测试运行

生成domain
# mogadm --lib=/usr/lib/perl5/5.8.8 --trackers=222.191.251.xx:6001 domain add icv.cn
加一个 class 到domain
# mogadm --lib=/usr/lib/perl5/5.8.8 --trackers=222.191.251.xx:6001 class add icv.cn type1

1.安装php-mogileFS  扩展
参考,http://projects.usrportage.de/index.fcgi/php-mogilefs

2.写测试文件
<?php

$client->connect('222.191.251.xxx, 6001, 'jongin.com');

$client->put('http://www.baidu.com/img/logo-yy.gif', 'myFile', 'type1');
$metadata = $client->get('myFile');
print_r($metadata);
$content = file_get_contents($metadata['path1']);
echo $content;

?>

你可能感兴趣的:(mysql,server,centos,vim,Class,分布式存储)