Lustre2.4安装部署文档

来源:互联网 发布:服务商推广淘宝 编辑:程序博客网 时间:2024/06/02 04:17

博客公告:

 (1)本博客所有博客文章搬迁至《博客虫》http://blogchong.com/

                     (2)文章对应的源码下载链接参考博客虫网站首页的“代码GIT”;

                      (3)更多的相关文章更新,以及代码等,请关注博客虫网站,网站中有技术Q群,以及代码共享链接。

                 (4)该博客内容还会继续更新,不过会慢一些。

 


该文档为实实在在的原创文档,转载请注明:http://blog.sina.com.cn/s/blog_8c243ea30101mz8a.html

类型

详细

备注

该文档是以主要用于lustre2.4版本的系统安装部署指导,此外对应版本的所有安装包已经打包在扣扣群中。

 

 

相关描述

² 其他相关文档请参考新浪博客http://blog.sina.com.cn/huangchongyuan

² 有任何其他想法,可以邮件874450476@qq.com

² 文档及相关资料下载请个人360云盘http://yunpan.cn/QGf2GDaRFpcDt及百度文库、新浪爱问搜索。

² 部分文档涉及到源码,有需要的博客留言,关注我的博客。

² 欢迎加入storm-分布式-IT技术交流群(191321336,群中有详细的资料),一起讨论技术,一起分享代码,一起分享设计。

 


目录

1文档说明...1

2 Lustre下载...1

3 Lustre安装过程...1

3.1 服务端安装顺序...1

3.2 客户端安装顺序...2

3.3 安装总结...2

4 Lustre配置...2

4.1 MDS配置:...2

4.2 OSS配置:...3

4.3 系统挂载...3

5 题外话...3

 

1 文档说明


        写该文档的最直接的原因是有网友说网上很难找到lustre的部署文档,我曾答应说要给他整理出一个,所以就~~~

        其实也是,目前lustre想找一个安装部署文档确实很困难,哪怕是英文的也好。网上流行为数不多的lustre的资料是09年以及10年时期的资料,那还是1.X的年代。比较完全的资料是1.8版的安装部署过程,但现在最新的lustre已经更新到2.5.1了。

        造成lustre的资料难以查找的直接原因是lustre的命运太过于坎坷。从1999lustre项目起,他的版权所有者就在不断的变换,从lustre项目组到Sun公司到Oracle再到Whamclound,最终被因特尔收购。一直都没有一个稳定的社区提供很完整的资料。最主要的是lustre的安装过程还比较复杂,因此导致了国内很多想研究它的人都望而却步。并且很多人使用的lustre还是当年的1.8版。

        好吧,既然如此我就整理出一个lustre的安装过程出来,版本呢是2.4的,也算是比较新比较稳定的一个版本。希望能够给大家带来一点点帮助!

 

2 Lustre下载


        由于Whamclound是被因特尔收购了,所以他的官方如今已经自动跳转到了因特尔的官网,但是他的下载地址还是没有变化,从http://downloads.whamcloud.com/public/lustre/依然能够下载到最新的lustre2.5.1版本。

        但是~~~我会告诉你,其实他提供的rpm很多很乱而且还是有些缺失的依赖包吗?

        链接中有二十几个包,很乱很杂,有些是根本需要的,有些是没列出来的,到时候还得自己下去。我自己将2.4相关的所有有用的包加上他没有提供但是又需要的包打了个包放在了群共享中,需要的可以直接去下。

        好了,解决了包的问题,开始安装吧~~~

 

3 Lustre安装过程


        Luster2.4服务端和客户端的安装一共需要14个安装包,当然有几个包服务端和客户端是公用的。


3.1 服务端安装顺序


(1)rpm -Uvhkernel-firmware-2.6.32-358.6.2.el6_lustre.g230b174.x86_64.rpm -f//最好升级安装

(2)rpm -Uvh bfa-firmware-3.0.3.1-1.el6.noarch.rpm-f

(3)rpm -ivhkernel-2.6.32-358.6.2.el6_lustre.g230b174.x86_64.rpm -f//最好重启下机子

(4)rpm -ivhlustre-modules-2.4.0-2.6.32_358.6.2.el6_lustre.g230b174.x86_64_gd3f91c4.x86_64.rpm-f

(5)rpm -ivh libcom_err-1.42.7.wc1-7.el6.x86_64.rpm-f

(6)rpm -ivh e2fsprogs-libs-1.42.7.wc1-7.el6.x86_64.rpm-f

(7)rpm -ivh e2fsprogs-1.42.7.wc1-7.el6.x86_64.rpm-f

(8)rpm -ivhlustre-ldiskfs-4.1.0-2.6.32_358.6.2.el6_lustre.g230b174.x86_64_gd3f91c4.x86_64.rpm-f

(9)rpm -ivhlustre-osd-ldiskfs-2.4.0-2.6.32_358.6.2.el6_lustre.g230b174.x86_64_gd3f91c4.x86_64.rpm-f

(10)rpm -ivhlustre-2.4.0-2.6.32_358.6.2.el6_lustre.g230b174.x86_64_gd3f91c4.x86_64.rpm-f

//至此,服务端的所有包安装完毕。

 

3.2 客户端安装顺序


(1) rpm -Uvh kernel-firmware-2.6.32-358.6.2.el6.noarch.rpm-f

(2)rpm -Uvh bfa-firmware-3.0.3.1-1.el6.noarch.rpm-f

(3)rpm -ivh kernel-2.6.32-358.6.2.el6.x86_64.rpm -f//重启机器

(4)rpm -ivhlustre-client-modules-2.4.0-2.6.32_358.6.2.el6.x86_64_gd3f91c4.x86_64.rpm-f

(5)rpm -ivhlustre-client-2.4.0-2.6.32_358.6.2.el6.x86_64_gd3f91c4.x86_64.rpm-f

//客户端安装完毕,客户端也需要升级内核,不过需要的包少多了。

 

3.3 安装总结


        对比好几个开源的分布式文件系统,Lustre的安装算是比较复杂的了。不仅需要升级内核进行安装,而且还需要众多的依赖包。需要注意的是bfa-firmware的安装,最好进行覆盖安装,不然低版本的bfa-firmware会影响安装进度。

 

4 Lustre配置


lustre的配置也是一个繁琐的过程。Lustre是基于内核的分布式文件系统,而不是像其他一些用户态的分布式文件系统那样直接建立在ext3或者是ext4之上。Lustre需要对磁盘进行格式化,并且在格式化的过程中进行参数配置。

        假设共有四台机器,分别为192.168.1.100/192.168.1.101/192.168.1.102/192.168.1.103四台,并且前三台各有一个空余磁盘sdb103为客户端。

        100/101/102中安装服务端rpm包,103中安装客户端rpm包,具体安装过程参考如上。


4.1 MDS配置:


192.168.1.100mkfs.lustre--fsname=lustrefs --mgs --mdt --index=0 /dev/sdb

//解释下格式化磁盘的参数吧

fsname指定的是创建lustre时的文件系统名

mgs指定该机器为元数据服务器,即该机器为mds

mdt指定/dev/sdb为元数据实际数据存储位置

至于index则指定该mgs的索引号,mgs可以设置主备模式,但mdt需要在主备mds之间共享


4.2 OSS配置:


Mkfs.lustre

192.168.1.101mkfs.lustre--fsname=lustrefs --mgsnode=192.168.1.100@tcp --ost --index=0/dev/sdb

192.168.1.102mkfs.lustre--fsname=lustrefs --mgsnode=192.168.1.100@tcp --ost --index=1/dev/sdb

//解释格式化参数

fsname不多说

mgsnode指定oss请求元数据节点,并指明访问协议tcp

ost指定/dev/sdb为存储数据的实际位置

index这个参数可以看到两个节点是不一样的

//整个系统的实际容量是101+102/dev/sdb的容量

 

4.3 系统挂载


MDS(192.168.1.100):

mount -t lustre /dev/sdb /mnt/mdt

OSS(192.168.1.101/102):

mount -t lustre /dev/sdb /mnt/ost0

mount -t lustre /dev/sdb /mnt/ost1

Client(192.168.1.103):

mount -t lustre 192.168.1.100@tcp:/lustrefs/mnt/lustre

//在客户端的/mnt/lustre上就可以看到101/102/dev/sdb的容量聚合了。

OK 至此 配置完毕,可以存储东西了~~~

 

5 题外话


        对于lustre个人还是想说两句,它是我迄今为止用过的最快的分布式文件系统,其他开源的分布式的性能跟他比起来差的可不是一星半点。但它最致命的弱点在于没有很好的数据冗余保护机制,部分节点宕机的话很容易造成数据丢失。

        推荐一个提高lustre系统数据安全性的架构,即底层直接配置两个lustre系统,数据一式两份,这样子的架构是一个成本比较低的提高lustre数据安全性的方案。并且我所知道的是已经有不少朋友都是这么设计的。不过这样做需要花费成本的地方在于数据如何正确的同步。

 

OK了,废话到此为止。

下一次博文更新应该是关于集群共享层高可用方面的,主要就是CTDB这个组件。有兴趣的可以继续关注博客。

0 0
原创粉丝点击