免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 16792 | 回复: 18

[Lustre] 用VMWare 实现4节点的Lustre 并行文件系统集群 [复制链接]

论坛徽章:
0
发表于 2006-07-01 00:19 |显示全部楼层
注:这是我附在某一个讨论线索中作为回贴发出的,这几天在整理本版帖子,发现还是有点用,为了便于大家查找,拖出来单独成贴供大家参考。

用VMWare 实现4节点的Lustre 并行文件系统集群
作者:nntp   最后修改于2006/06/30
==========================================================================

简介: 本文介绍了通过2台物理服务器和vmware系统,虚拟出4个独立的linux服务器实现

环境配置: 2台物理服务器, 4个虚拟节点.

Server1: AMD64 ,  host OS SLES9SP3+errata x86-64 version, vmware server beta(latest build)

             vmware guestOS 1 :  RHEL4U3 x86-64 version     => mds
             vmware guestOS 2 :  RHEL4U3 x86-64 version     => client

             lustre的那些rpm包我装的是X86-64的版本(版本1.4.6)

Server2: Intel dual core EM64T, host OS SLES9SP3+errara x86-64 version,vmware server beta(latest build)

            vmware guestOS 1: RHEL4U3 x86 version    => ost1
            vmware guestOS 1: RHEL4U3 x86 version    => ost1

            lustre的那些rpm包我装的是X86的版本(版本1.4.6)

============================================================================
config.sh 文件内容

#!/bin/sh

# config.sh

# Create nodes
rm -f config.xml
lmc -m config.xml --add net --node node-mds --nid n1 --nettype tcp
lmc -m config.xml --add net --node node-ost1 --nid n3 --nettype tcp
lmc -m config.xml --add net --node node-ost2 --nid n4 --nettype tcp
lmc -m config.xml --add net --node client --nid n2 --nettype tcp

# Cofigure MDS
lmc -m config.xml --add mds --node node-mds --mds mds-test --fstype ldiskfs --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 ldiskfs --dev /tmp/ost1-test --size 100000
lmc -m config.xml --add ost --node node-ost2 --lov lov-test --ost ost2-test --fstype ldiskfs --dev /tmp/ost2-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

===============================================================================

所有4个node 的 /etc/hosts 文件内容

[root@n1 ~]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               localhost
192.168.0.31            n1
192.168.0.32            n2
192.168.0.33            n3
192.168.0.34            n4
===============================================================================
产生xml文件之后,分别scp到每个node的/root目录
===============================================================================
启动OST
root 登陆到ost1,运行 lconf --reformat --node node-ost1 config.xml
root 登陆到ost1,运行 lconf --reformat --node node-ost2 config.xml
root 登陆到mds,运行 lconf --reformat --node node-mds config.xml
root 登陆到client,运行 lconf --node client config.xml

这个时候,在client node 上,用root运行 df -hT 命令, 已经看到 client node的 /mnt/lustre 被mount上了,  
===============================================================================
屏幕信息

启动OST1的时候的屏幕信息
[root@n3 ~]# lconf --reformat --node node-ost1 config.xml
loading module: libcfs srcdir None devdir libcfs
loading module: lnet srcdir None devdir lnet
loading module: ksocklnd srcdir None devdir klnds/socklnd
loading module: lvfs srcdir None devdir lvfs
loading module: obdclass srcdir None devdir obdclass
loading module: ptlrpc srcdir None devdir ptlrpc
loading module: ost srcdir None devdir ost
loading module: ldiskfs srcdir None devdir ldiskfs
loading module: fsfilt_ldiskfs srcdir None devdir lvfs
loading module: obdfilter srcdir None devdir obdfilter
NETWORK: NET_node-ost1_tcp NET_node-ost1_tcp_UUID tcp n3
OSD: ost1-test ost1-test_UUID obdfilter /tmp/ost1-test 100000 ldiskfs no 0 0
OST mount options: errors=remount-ro
[root@n3 ~]#

启动OST2的屏幕信息
[root@n4 ~]# lconf --reformat --node node-ost2 config.xml
loading module: libcfs srcdir None devdir libcfs
loading module: lnet srcdir None devdir lnet
loading module: ksocklnd srcdir None devdir klnds/socklnd
loading module: lvfs srcdir None devdir lvfs
loading module: obdclass srcdir None devdir obdclass
loading module: ptlrpc srcdir None devdir ptlrpc
loading module: ost srcdir None devdir ost
loading module: ldiskfs srcdir None devdir ldiskfs
loading module: fsfilt_ldiskfs srcdir None devdir lvfs
loading module: obdfilter srcdir None devdir obdfilter
NETWORK: NET_node-ost2_tcp NET_node-ost2_tcp_UUID tcp n4
OSD: ost2-test ost2-test_UUID obdfilter /tmp/ost2-test 100000 ldiskfs no 0 0
OST mount options: errors=remount-ro
[root@n4 ~]#


启动MDS的屏幕信息

[root@n1 ~]# lconf --reformat --node node-mds config.xml
loading module: libcfs srcdir None devdir libcfs
loading module: lnet srcdir None devdir lnet
loading module: ksocklnd srcdir None devdir klnds/socklnd
loading module: lvfs srcdir None devdir lvfs
loading module: obdclass srcdir None devdir obdclass
loading module: ptlrpc srcdir None devdir ptlrpc
loading module: mdc srcdir None devdir mdc
loading module: osc srcdir None devdir osc
loading module: lov srcdir None devdir lov
loading module: mds srcdir None devdir mds
loading module: ldiskfs srcdir None devdir ldiskfs
loading module: fsfilt_ldiskfs srcdir None devdir lvfs
NETWORK: NET_node-mds_tcp NET_node-mds_tcp_UUID tcp n1
MDSDEV: mds-test mds-test_UUID /tmp/mds-test ldiskfs no
recording clients for filesystem: FS_fsname_UUID
Recording log mds-test on mds-test
LOV: lov_mds-test 4f3bf_lov_mds-test_f34d7ba738 mds-test_UUID 0 1048576 0 0 [u'ost1-test_UUID', u'ost2-test_UUID'] mds-test
OSC: OSC_n1_ost1-test_mds-test 4f3bf_lov_mds-test_f34d7ba738 ost1-test_UUID
OSC: OSC_n1_ost2-test_mds-test 4f3bf_lov_mds-test_f34d7ba738 ost2-test_UUID
End recording log mds-test on mds-test
MDSDEV: mds-test mds-test_UUID /tmp/mds-test ldiskfs 50000 no
MDS mount options: errors=remount-ro
[root@n1 ~]#


启动client 的屏幕信息

[root@n2 ~]# lconf --node client config.xml
loading module: libcfs srcdir None devdir libcfs
loading module: lnet srcdir None devdir lnet
loading module: ksocklnd srcdir None devdir klnds/socklnd
loading module: lvfs srcdir None devdir lvfs
loading module: obdclass srcdir None devdir obdclass
loading module: ptlrpc srcdir None devdir ptlrpc
loading module: osc srcdir None devdir osc
loading module: lov srcdir None devdir lov
loading module: mdc srcdir None devdir mdc
loading module: llite srcdir None devdir llite
NETWORK: NET_client_tcp NET_client_tcp_UUID tcp n2
LOV: lov-test e0002_lov-test_a77190f32b mds-test_UUID 0 1048576 0 0 [u'ost1-test_UUID', u'ost2-test_UUID'] mds-test
OSC: OSC_n2_ost1-test_MNT_client e0002_lov-test_a77190f32b ost1-test_UUID
OSC: OSC_n2_ost2-test_MNT_client e0002_lov-test_a77190f32b ost2-test_UUID
MDC: MDC_n2_mds-test_MNT_client 96c98_MNT_client_1567f4dc95 mds-test_UUID
MTPT: MNT_client MNT_client_UUID /mnt/lustre mds-test_UUID lov-test_UUID


检查 client node  文件系统加载情况

[root@n2 ~]# df -hT
Filesystem    Type    Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
              ext3    4.1G  3.0G  920M  77% /
/dev/sda1     ext3     99M   14M   80M  15% /boot
none         tmpfs    187M     0  187M   0% /dev/shm
config lustre_lite    190M  8.5M  171M   5% /mnt/lustre
[root@n2 ~]#

[ 本帖最后由 nntp 于 2006-7-1 00:21 编辑 ]

论坛徽章:
0
发表于 2006-07-01 11:50 |显示全部楼层
真是不错,要是图文并茂就更好了。

论坛徽章:
0
发表于 2006-07-01 13:49 |显示全部楼层
找个时间试试~~.

论坛徽章:
0
发表于 2006-07-01 14:19 |显示全部楼层
原帖由 chinesecai 于 2006-7-1 11:50 发表
真是不错,要是图文并茂就更好了。


你可以动手做完后,把图补上.

论坛徽章:
0
发表于 2006-07-03 23:36 |显示全部楼层
作个记号,明天试试!

论坛徽章:
0
发表于 2006-07-24 09:35 |显示全部楼层
楼主装的是哪个版本的lustre?1.4.6.1还是???
楼主有尝试做failover么?

论坛徽章:
0
发表于 2006-07-24 15:18 |显示全部楼层
呵呵。很好噢。

论坛徽章:
0
发表于 2006-07-24 16:11 |显示全部楼层

回复 7楼 molecar 的帖子

啊,就做4个节点了,俺两个节点有点问题,向牛人请教:
我安装完oracle cluster软件后的状态
-bash-3.00$ ./crs_stat -t
Name           Type           Target    State     Host        
------------------------------------------------------------
ora.db1.gsd    application    ONLINE    ONLINE    db1         
ora.db1.ons    application    ONLINE    ONLINE    db1         
ora.db1.vip    application    ONLINE    ONLINE    db1         
ora.db2.gsd    application    ONLINE    ONLINE    db2         
ora.db2.ons    application    ONLINE    ONLINE    db2         
ora.db2.vip    application    ONLINE    ONLINE    db2   


-bash-3.00$ olsnodes -n
db1     1
db2     2
-bash-3.00$ ls -l /etc/init.d/init.*
-r-xr-xr-x  1 root root  1951 Jul 23 22:09 /etc/init.d/init.crs*
-r-xr-xr-x  1 root root  4721 Jul 23 22:09 /etc/init.d/init.crsd*
-r-xr-xr-x  1 root root 35401 Jul 23 22:09 /etc/init.d/init.cssd*
-r-xr-xr-x  1 root root  3197 Jul 23 22:09 /etc/init.d/init.evmd*


完后安装oracle 软件无法选节点,只能装单机,偶不是很明白,请赐教....

论坛徽章:
0
发表于 2006-07-25 19:28 |显示全部楼层
楼上这个是啥意思?

另外,请问nntp:
1,--dev /tmp/mds-test --size 50000  这个是什么意思?
2,lmc -m config.xml --add lov --lov lov-test --mds mds-test --stripe_sz 1048576 --stripe_cnt 0 --stripe_pattern 0
这句中的--stripe_sz 1048576 --stripe_cnt 0 --stripe_pattern 0也没看明白。
3,很明显,这个例子并没说明它并行实际实现,只能算是一个练习。我想ost1和ost2应该分区和为df -h看到的值,这个理解应该是正确的吧?

我刚看完lustre howto,跟multiple nodes例子一样,所以只能请教了。
我明天会去看看mannul,也许到时候可以得到释疑。

lustre文件系统,我初步有了一些印象。
1.mds相当于一个 调度器,为了实现冗余,应该这里做双机(HA),lustre肯定有实现。
2,ost相当于GFS的GNDB servers,它是实际负责IO的服务器。

一个理想的结构应该如下:
         storage1        storage2
                   |                    |
                  ----fc switch---
                            |
             __________________
            |       |        |         |       |
           ost1  ost2 ost3    ost4  ost5
            |        |       |         |        |
            ___________________  
                              | ethernet Gb
                ------------------------
                  |                    |
                mds1  (HA)  mds2
                   |                    |
    -------------------------------------------------
    |        |          |           |         |                |
  client1 client2 client3 client4 client5 ....clientn

论坛徽章:
0
发表于 2006-07-25 19:42 |显示全部楼层
ost  上面一层还应可以考虑lvm2等实现动态分区调整(也许在lustre文件层可以调整)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP