免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: chutianyin

[Lustre] lustre1.4.5版本放出 [复制链接]

论坛徽章:
0
发表于 2005-12-03 15:39 |显示全部楼层
终于搞定了,整理一下,过两天贴出来!

论坛徽章:
0
发表于 2005-12-03 23:59 |显示全部楼层
Congrates !   More meanful work is to test small file size I/O (<16k) performance on Lustre.

论坛徽章:
0
发表于 2005-12-06 10:26 |显示全部楼层
时间比较紧,先做了个简单的文档放上来。

1MDS,1OST,2client 操作系统为redhatas4

下载(假设都放在/home 下)
kernel-smp-2.6.9-5.0.5.EL_lustre.1.4.5.i686.rpm
lustre-1.4.5-2.6.9_5.0.5.EL_lustre.1.4.5smp.i686.rpm
lustre-modules-1.4.5-2.6.9_5.0.5.EL_lustre.1.4.5smp.i686.rpm

如果需要重新编译内核,可以下载内核源码包(本文省略)
kernel-source-2.6.9-5.0.5.EL_lustre.1.4.5.i686.rpm


安装内核
rpm -ivh /home/kernel-smp-2.6.9-5.0.5.EL_lustre.1.4.5.i686.rpm
修改grub或者lilo
重启

安装lustre
rpm -ivh /home/lustre-1.4.5-2.6.9_5.0.5.EL_lustre.1.4.5smp.i686.rpm
rpm -ivh /home/lustre-modules-1.4.5-2.6.9_5.0.5.EL_lustre.1.4.5smp.i686.rpm

安装完毕!

接下来生成配置文件,文件位置随意,我这边同样也放在/home下面。
vi config.sh
下面是我的配置的文件,直接拿的官方文档上面的配置文件用的,我没有怎么进行修改。
#!/bin/sh

# config.sh

# Create nodes
rm -f config.xml
lmc -m config.xml --add net --node node-mds --nid node-mds --nettype tcp
lmc -m config.xml --add net --node node-ost1 --nid node-ost1 --nettype tcp
lmc -m config.xml --add net --node client --nid '*' --nettype tcp

# Cofigure MDS
lmc -m config.xml --add mds --node node-mds --mds mds-test --fstype ext3 --dev /tmp/mds-test --size 50000

# Configures OSTs
lmc -m config.xml --add lov --lov lov-test --mds mds-test --stripe_sz 1048576 --stripe_cnt 0 --stripe_pattern 0
lmc -m config.xml --add ost --node node-ost1 --lov lov-test --ost ost1-test --fstype ext3 --dev /tmp/ost1-test --size 100000

# Configure client (this is a 'generic' client used for all client mounts)
lmc -m config.xml --add mtpt --node client --path /mnt/lustre --mds mds-test --lov lov-test

lustre可以直接使用物理分区,我这边没有用,如果需要的话,可以修改配置文件把/tmp/mds-test和/tmp/ost1-test,修改成物理分区。
假设使用/dev/sda4和/dev/sda5(实际情况视你的分区情况而定,我这边MDS和OST都是安装在同一台机器,最好是分开安装),配置文件可以如下:
#!/bin/sh

# config.sh

# Create nodes
rm -f config.xml
lmc -m config.xml --add net --node node-mds --nid node-mds --nettype tcp
lmc -m config.xml --add net --node node-ost1 --nid node-ost1 --nettype tcp
lmc -m config.xml --add net --node client --nid '*' --nettype tcp

# Cofigure MDS
lmc -m config.xml --add mds --node node-mds --mds mds-test --fstype ext3 --dev /dev/sda4

# Configures OSTs
lmc -m config.xml --add lov --lov lov-test --mds mds-test --stripe_sz 1048576 --stripe_cnt 0 --stripe_pattern 0
lmc -m config.xml --add ost --node node-ost1 --lov lov-test --ost ost1-test --fstype ext3 --dev /dev/sda5

# Configure client (this is a 'generic' client used for all client mounts)
lmc -m config.xml --add mtpt --node client --path /mnt/lustre --mds mds-test --lov lov-test

注意,确保两个分区里面没有任何的数据,否则过一会儿lconf --reformat的时候会被全部格式化,还有,要确保这两个分区没有被mount,否则lconf --reformat会出错!


ok,保存配置文件。

sh config.sh(生成config.xml配置文件,每台机器的配置文件都相同)

接下来有个比较关键的环节,修改hosts文件(呵呵,我认为比较关键,因为我在这边卡了整整一个星期)

假设两台机器的ip是192.168.1.111和192.168.1.112(111上面1MDS,1OST,1client;112上面1client)

vi /etc/hosts(两台机器都需要修改)

添加

192.168.1.111      node-mds node-ost1

这边不能使用127.0.0.1,我原来直接把node-mds node-ost1加到127.0.0.1后面(在111上),另外一个客户端(112设置的是192.168.1.111      node-mds node-ost1)怎么都连不上。

保存。

接下来启动lustre,启动的顺序为OST->MDS->client
在111上
lconf --reformat --node node-ost1 config.xml
lconf --reformat --node node-mds config.xml
lconf --node client config.xml
这里是第一次加载,所以加了--reformat,重新格式化,如果不是第一次,就要去掉--reformat,改成如下的形式:
lconf --node node-ost1 config.xml
lconf --node node-mds config.xml
lconf --node client config.xml
在112上
lconf --node client config.xml

全部加载完毕!

可以用df查看

[ 本帖最后由 chutianyin 于 2006-3-15 15:56 编辑 ]

论坛徽章:
0
发表于 2005-12-06 10:28 |显示全部楼层
性能测试要过一段时间才能做了
最近年底,公司的事情开始多了,不好意思,如果谁有条件,可以进行测试!

顺便牢骚一下,其实官方的文档写的已经比较全面了,但是谁叫我以前没有好好学习E文呢,所以在看了官方文档的情况下,还满天下的找安装说明,因为我看不明白啊,但是每次都被大侠们一句“去看官方文档,很详细”就顶回来了,当时那个郁闷啊,后来在suran007的帮助下,才好不容易完成安装,所以各位,还是好好学习,努力的学习E文吧。

[ 本帖最后由 chutianyin 于 2005-12-6 10:37 编辑 ]

论坛徽章:
0
发表于 2005-12-07 10:01 |显示全部楼层
呵呵,写得挺详细的,其实我们往往是大的地方注意了,却忽略了一些小的地方,而往往是这些小的地方能困住我们很久,还是希望那位朋友有条件的,可以帮忙测试一下性能,大家互相学习~~~~

论坛徽章:
0
发表于 2005-12-09 17:16 |显示全部楼层
看了看lustre的maillist,说lustre在大文件写入和很多client的时候,才能充分体现lustre的性能优势,而他在小文件和单个client的性能方面并不是很出色,不知道对不对,那位朋友做过测试的,把测试结果贴出来看看,由于我手头没有pc,所以用虚拟机作的测试,是1个ost,1个mds,1个client和1个ost,1个mds,2个client分别作了测试,但是测试结果怎么反而是2个client(方式)比1个client(方式)更慢呢,按理说client多,应该性能更好一些才对呀,测试copy的文件是640兆。

论坛徽章:
0
发表于 2005-12-10 06:25 |显示全部楼层
原帖由 suran007 于 2005-12-9 17:16 发表
看了看lustre的maillist,说lustre在大文件写入和很多client的时候,才能充分体现lustre的性能优势,而他在小文件和单个client的性能方面并不是很出色,不知道对不对,那位朋友做过测试的,把测试结果贴出来看看, ...


没错,的确如此。目前在整个行业,要找到一个对大量小文件并发读写的解决方案,还非常困难。
所以你所言的确不假,其实我对lustre实际的性能是心里有数的,只不过也在观望是否有朋友创造了"奇迹"

大块的文件,非常得益于这种分布式的存储方式,client 发起I/O请求之后,只需要MDS按照优化的检索设计就可以获取目标的所有信息,然后因为做成了横跨多个OST的striping 的方式,加上每个OST自己也可以用external RAID stroage,做单个OST硬件上的raid striping,比如RAID10. 所以并发访问的时候,基本上效果和单独一个storage上访问一个RAID0差不多. 如果的ADM, MDS, OSTs之间,通过Infiniband联结,性能会好很多.

小文件则完全不同,比如我关心的<16k的文件,不可能stripe到多个OSTs上,也就是说,只有一个OST存放这个文件,更糟糕的时候,本来我single client 读写single server上同样大小的小文件的时候,metadata直接在fs上可以获得,没有外部延迟,现在MDS在ethernet上了,读写这样的小文件,我还要跨过一个ethernet来和MDS打交道. 等于是额外的开销增加了,当然同大文件一样,infiniband会好很多. 你可以想象读写海量的这样的文章,网络和来自单独设备上的延迟叠加起来会有多大.

然后,还有糟糕的事情,嘿嘿。 小文件在single OST上,因为我们现在的常规hardware 设备+现代OS,读写小文件本来性能就不会好.所以还会有一个延迟。

总而言之,如果你想要看到我上面说的这些状况,硬件上至少建议4个PC,最好6个, 1xADM, 1xMDS, 2/4 x OST. 你可以try try 大文件和小文件的区别. 就会发现结果还是会令人沮丧。换句话说,要想得到大并发,小文件多client的超级效果,目前还是要掏大把银子从硬件上解决.

vmware里面建议不要做性能的测试,因为根本没有意义。没有网络的区别,没有脱离Host OS 的fs 对guest OS的影响,你很难得到一个正确的基础数据。

single client or large amount client 的问题,我觉得没有必要担忧,毕竟没有人花了大把的银子,请了做lustre的顾问来设计和实施系统,然后只让很少的client 来访问的。现实应用中不太可能。

我看按照目前的性能表现,国内现在做游戏和数码电影的中小型公司比较多了,可以用廉价的设备来搭建这样一套东西,比如作DCC的 rendering Farm之类的。好歹也不用每次都购买上百万的硬件存储设备了.

SATAII马上就要变成mainstream乐,听说对小文件的i/o performance 让人惊讶,虽然MTBF及不上SCSI, 但是便宜就是硬道理。每个OST到时候挂上2个SATAII的external storage, 就可以把整套TB级的Lustre控制在100万人民币以内了,这样还是有很高的现实意义的。

就是配套的擅长lustre应用的顾问并不多,在这里能够看到有对lustre感兴趣的朋友震得很好。 希望多做交流。

[ 本帖最后由 nntp 于 2005-12-10 06:34 编辑 ]

论坛徽章:
0
发表于 2005-12-13 16:36 |显示全部楼层

我在看lustrehowto时,看见上面这个图片,是将2个oss,一共6六个分区,分别作成三个lov,最后client挂载lustre文件系统时,是3个lustre文件系统(3个lustre挂载点),我不明白为什么要作3个lustre文件系统,为什么不作成一个大的lustre文件系统,难道作成3个比1个有性能方面的优势?
不好意思,上面的图片挂了,以下是这个howto的pdf地址
http://www.ncsa.uiuc.edu/News/datalink/0507/LustreHowTo.pdf

[ 本帖最后由 nntp 于 2005-12-14 06:47 编辑 ]

论坛徽章:
0
发表于 2005-12-14 06:47 |显示全部楼层
原帖由 suran007 于 2005-12-13 16:36 发表

我在看lustrehowto时,看见上面这个图片,是将2个oss,一共6六个分区,分别作成三个lov,最后client挂载lustre文件系统时,是3个lustre文件系统(3个lustre挂载点) ...


对,效率问题,架设应用的确是针对分布式fs的情况下,striping 的效果越大,效率越高.

论坛徽章:
0
发表于 2006-11-03 16:59 |显示全部楼层
1.60简化了很多大家有空测试一下多交流
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP