| 威廉 · 汉木头 ( @ 2006-08-14 14:09:00 |
| Entry tags: | danga, distributed filesystem, livejournal, mogilefs |
mogilefs探索
一、下载
$export $CVSROOT=:pserver:anonymous@danga.com:/h
$mkdir ~/danga && cd ~/danga && cvs co .
二、安装配置
1、数据库创建
$pwd
/home/xxx/danga
$cd wcmtools/mogilefs
$ls server
CHANGES.mogilefsd
CHANGES.mogstored
conf
CVS
debian
Makefile.PL
MANIFEST
MANIFEST.SKIP
META.yml
mogautomount
mogdbsetup
mogilefsd
mogstored
$./server/mogdbsetup
mogdbsetup脚本程序默认将会创建mogilefs库,用户名是mog,密码
2、存储的准备
$cpan
install BSD::Resource
install Perlbal
编辑/etc/mogilefs/mogstored.conf配置文件,内容类似下
httplisten=0.0.0.0:7500
mgmtlisten=0.0.0.0:7501
docroot=/var/mogdata
$./server/mogstored --daemon
3、将存储信息注册到数据库中
4、trackerServer的准备
mogilefs体系,是通过tracker访问数据库的。
编辑好配置文件/etc/mogilefs/mogilefsd.conf,内容类似:
daemonize = 1
db_dsn = DBI:mysql:mogilefs:host=127.0.0.1
db_user = mog
db_pass = mogpass
conf_port = 7001
listener_jobs = 10
delete_jobs = 1
replicate_jobs = 3
mog_root = /mnt/mogilefs
reaper_jobs = 1
$./server/mogilefsd -c /etc/mogilefs/mogilefsd.conf --daemon
$ps ax|grep mog
1965 ? S 0:00 perl mogilefsd -c /etc/mogilefs/mogilefsd.conf --daemon
1966 ? S 0:00 mogilefsd [replicate]
1967 ? S 0:00 mogilefsd [replicate]
1968 ? S 0:00 mogilefsd [replicate]
1969 ? S 0:00 mogilefsd [delete]
1970 ? S 0:00 mogilefsd [queryworker]
1971 ? S 0:00 mogilefsd [queryworker]
1972 ? S 0:00 mogilefsd [queryworker]
1973 ? S 0:00 mogilefsd [queryworker]
1974 ? S 0:00 mogilefsd [queryworker]
1975 ? S 0:00 mogilefsd [queryworker]
1976 ? S 0:00 mogilefsd [queryworker]
1977 ? S 0:00 mogilefsd [queryworker]
1978 ? S 0:00 mogilefsd [queryworker]
1979 ? S 0:00 mogilefsd [queryworker]
1980 ? S 0:00 mogilefsd [monitor]
1981 ? S 0:00 mogilefsd [reaper]
在trackServer上,可以看到mogilefsd进程孵化了很多进程,分别用
客户端的API在访问存储时,首先是发请求到trackServer的conf_po
mogilefsd会根据客户端的请求决定如何响应。如果是读写,mogilefsd