<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Chifeng's Blog &#187; mogstored</title>
	<atom:link href="http://blog.chifeng.name/tag/mogstored/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.chifeng.name</link>
	<description></description>
	<lastBuildDate>Wed, 08 Sep 2010 08:32:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Mogilefs学习</title>
		<link>http://blog.chifeng.name/2008/02/mogilefs%e5%ad%a6%e4%b9%a0/</link>
		<comments>http://blog.chifeng.name/2008/02/mogilefs%e5%ad%a6%e4%b9%a0/#comments</comments>
		<pubDate>Fri, 15 Feb 2008 05:25:45 +0000</pubDate>
		<dc:creator>chifeng</dc:creator>
				<category><![CDATA[Cluster]]></category>
		<category><![CDATA[mogadm]]></category>
		<category><![CDATA[mogilefs]]></category>
		<category><![CDATA[mogilefsd]]></category>
		<category><![CDATA[mogstored]]></category>
		<category><![CDATA[mogtool]]></category>

		<guid isPermaLink="false">http://b.chifeng.name/?p=220</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p><b>Mogilefs</b>（<a href="http://www.danga.com/mogilefs">http://</a><font size="-1"><span class="a"><a href="http://www.danga.com/mogilefs">www.danga.com</a><b><a href="http://www.danga.com/mogilefs">/mogilefs</a>)</b></span></font></p>
<p>从昨天下午到今天都在折腾Mogilefs（当然昨晚顺便看了《杀手47》，通过游戏改编的一个很酷的电影）。我在两台FreeBSD的机器上装了，也测试了一下，基本弄明白了各个组件的作用，以及Mogilefs的运作机制。</p>
<p><b>安装</b><br />安装还是很简单的，我用FreeBSD系统，只安装这三个ports即可<br />/usr/ports/sysutils/p5-mogilefs-server<br />/usr/ports/sysutils/p5-MogileFS-Client<br />/usr/ports/sysutils/p5-MogileFS-Utils<br />运行时，如果提示你没有找到Gearman::Server.pm，那么再安装这三个ports<br />/usr/ports/devel/p5-Gearman<br />/usr/ports/devel/p5-Gearman-Server<br />/usr/ports/devel/p5-Gearman-Client-Async</p>
<p><b>配置</b><br />重点参考这篇文章<a href="http://durrett.net/mogilefs_setup.html">http://durrett.net/mogilefs_setup.html</a>，我就不废话了</p>
<p><b>介绍<br /></b>首先可以去看官方的wiki：<a href="http://mogilefs.pbwiki.com/">http://mogilefs.pbwiki.com/</a>。（有可能被GFW了，那么你就安装一个Firefox的gladder插件就可以看了）。偶简单记录一下对Mogilefs的理解，Mogilefs分为几部分。<br /><b>0） 数据库（MySQL）部分</b><br />你可以用mogdbsetup程序来初始化数据库。数据库保存了Mogilefs的所有元数据，你可以单独拿数据库服务器来做，也可以跟其他程序跑在一起，数据库部分非常重要，类似邮件系统的认证中心那么重要，如果这儿挂了，那么整个Mogilefs将处于不可用状态。因此最好是HA结构。<br /><b>1）存储节点</b><br />mogstored程序的启动将使本机成为一个存储节点。启动时默认去读/etc/mogilefs/mogstored.conf ，具体配置可以参考配置部分。mogstored启动后，便可以通过mogadm增加这台机器到cluster中。一台机器可以只运行一个mogstored作为存储节点即可，也可以同时运行其他程序。<br /><b>2）trackers（跟踪器）</b><br />mogilefsd即trackers程序，类似mogilefs的<a href="http://uprox.info/index.php?hl=f5&amp;q=uggc%3A%2F%2Fzbtvyrsf.cojvxv.pbz%2FUvtuYriryBireivrj">wiki上介绍的</a>，trackers做了很多工作，Replication ，Deletion，Query，Reaper，Monitor等等。mogadm,mogtool的所有操作都要跟trackers打交道，Client的一些操作也需要定义好trackers，因此最好同时运行多个trackers来做负载均衡。trackers也可以只运行在一台机器上，也可以跟其他程序运行在一起，只要你配置好他的配置文件即可，默认在/etc/mogilefs/mogilefsd.conf。<br /><b>3）工具</b><br />主要就是mogadm，mogtool这两个工具了，用来在命令行下控制整个mogilefs系统以及查看状态等等。<br /><b>4）Client</b><br />Client实际上是一个Perl的pm，可以写程序调用该pm来使用mogilefs系统，对整个系统进行读写操作。</p>
<p><b>概念定义</b><br />可以参考官方wiki的<a href="http://uprox.info/index.php?hl=f5&amp;q=uggc%3A%2F%2Fzbtvyrsf.cojvxv.pbz%2FQrsvavgvbaf">这儿</a>，简单说一下偶的粗略理解。<br />domain：最高域，在一个域下key是唯一的。<br />class：包含在domain中，可以针对每一个class定义保存的份数。<br />key：对文件的唯一标识。<br />file：文件。</p>
<p><b>适用性<br /></b>由于Mogilefs不支持对一个文件的随机读写，因此注定了只适合做一部分应用。比如图片服务，静态HTML服务。即文件写入后基本上不需要修改的应用，当然你也可以生成一个新的文件覆盖上去。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chifeng.name/2008/02/mogilefs%e5%ad%a6%e4%b9%a0/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
	</channel>
</rss>

