Lustre FS简介

2021-03-14  本文已影响0人  帆子_8c3a

历史

  1. Lustre这个词来自LinuxCluster两个词的组合
  2. Lustre最早源于Carnegie Mellon的一个叫做Coda的研究项目
  3. 目前由DDN旗下的Whamcloud团队推动社区开发

组成

obd

obdfilter

每个OST Server初始化的时候会创建一个obdfilter device(注意MDS上没有obdfilter)。每个client和OST连接的时候,obdfilter都会创建一个export,client端都有一个import与之对应。obdfilter维护一个export链表,key是一个UUID。
创建export相关代码参见class_new_export()

部署

部署mgs mds

mkfs.lustre --mgs /dev/sdb # MGT
mkfs.lustre --fsname=litio --mgsnode=192.168.57.3@tcp --mdt --index=0  /dev/sdc # MDT
mkdir /mnt/mgt /mnt/mdt
mount -t lustre /dev/sdb /mnt/mgt # MGS
mount -t lustre /dev/sdc /mnt/mdt # MDS

部署OSS

mkfs.lustre --fsname=litio --ost --mgsnode=192.168.57.3@tcp --index=2 /dev/sdb # /dev/sdb on OSS1 is OST2
mkfs.lustre --fsname=litio --ost --mgsnode=192.168.57.3@tcp --index=3 /dev/sdc # /dev/sdc on OSS1 is OST3

mkdir /mnt/ost2 /mnt/ost3
mount -t lustre /dev/sdb /mnt/ost2/
mount -t lustre /dev/sdc /mnt/ost3/

部署client

mkdir /mnt/litio/
mount -t lustre 192.168.57.3@tcp:/litio  /mnt/litio/

OBDfilter初始化代码

server_fill_super
    server_start_targets
        lustre_start_simple
            do_lcfg //LCFG_ATTACH
            do_lcfg //LCFG_SETUP
do_lcfg
    class_process_config
        class_attach //LCFG_ATTACH handler
            class_newdev //创建OBD对象
        class_setup //LCFG_SETUP handler
            class_new_export //创建新的export
  1. OST mount后,进入server_fill_super => server_start_targets => lustre_start_simple
  2. 这个函数先后调用了class_newdevclass_new_export
上一篇 下一篇

猜你喜欢

热点阅读