Mogilefs学习

 

安装
安装还是很简单的,我用FreeBSD系统,只安装这三个ports即可
/usr/ports/sysutils/p5-mogilefs-server
/usr/ports/sysutils/p5-MogileFS-Client
/usr/ports/sysutils/p5-MogileFS-Utils
运行时,如果提示你没有找到Gearman::Server.pm,那么再安装这三个ports
/usr/ports/devel/p5-Gearman
/usr/ports/devel/p5-Gearman-Server
/usr/ports/devel/p5-Gearman-Client-Async

配置
重点参考这篇文章http://durrett.net/mogilefs_setup.html,我就不废话了

介绍
首先可以去看官方的wiki:http://mogilefs.pbwiki.com/。(有可能被GFW了,那么你就安装一个Firefox的gladder插件就可以看了)。偶简单记录一下对Mogilefs的理解,Mogilefs分为几部分。
0) 数据库(MySQL)部分
你可以用mogdbsetup程序来初始化数据库。数据库保存了Mogilefs的所有元数据,你可以单独拿数据库服务器来做,也可以跟其他程序跑在一起,数据库部分非常重要,类似邮件系统的认证中心那么重要,如果这儿挂了,那么整个Mogilefs将处于不可用状态。因此最好是HA结构。
1)存储节点
mogstored程序的启动将使本机成为一个存储节点。启动时默认去读/etc/mogilefs/mogstored.conf ,具体配置可以参考配置部分。mogstored启动后,便可以通过mogadm增加这台机器到cluster中。一台机器可以只运行一个mogstored作为存储节点即可,也可以同时运行其他程序。
2)trackers(跟踪器)
mogilefsd即trackers程序,类似mogilefs的wiki上介绍的,trackers做了很多工作,Replication ,Deletion,Query,Reaper,Monitor等等。mogadm,mogtool的所有操作都要跟trackers打交道,Client的一些操作也需要定义好trackers,因此最好同时运行多个trackers来做负载均衡。trackers也可以只运行在一台机器上,也可以跟其他程序运行在一起,只要你配置好他的配置文件即可,默认在/etc/mogilefs/mogilefsd.conf。
3)工具
主要就是mogadm,mogtool这两个工具了,用来在命令行下控制整个mogilefs系统以及查看状态等等。
4)Client
Client实际上是一个Perl的pm,可以写程序调用该pm来使用mogilefs系统,对整个系统进行读写操作。

概念定义
可以参考官方wiki的这儿,简单说一下偶的粗略理解。
domain:最高域,在一个域下key是唯一的。
class:包含在domain中,可以针对每一个class定义保存的份数。
key:对文件的唯一标识。
file:文件。

适用性
由于Mogilefs不支持对一个文件的随机读写,因此注定了只适合做一部分应用。比如图片服务,静态HTML服务。即文件写入后基本上不需要修改的应用,当然你也可以生成一个新的文件覆盖上去。

你可能感兴趣的:(数据库,负载均衡,存储,domain,FreeBSD,数据库服务器)