Lustre FS简介

历史

  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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容