当前位置:文档之家› lustre文件系统简介

lustre文件系统简介

lustre文件系统简介•分布式文件系统主要分为三大类:-网络文件系统(瓶颈在存储服务器端)
・NFS、Coda、Sprite LFS
-存储区域网文件系统(瓶颈在元数据服务器)・GPFS
-基于对象的分布式文件系统
・Lustre> Google File System和HDFS
什么是Lustre
•基于对象存储的分布式文件系统
•基于廉价的SATA磁盘驱动器构建超大规模存储集群,不需要专门的硬件支持
•支持大多数高速网络类型
•高吞吐量、高扩展性和高性能
•有效的数据管理机制、全局数据共享、失效替代和系统可快速配置等功能
Lustre文件系统体系结构
•兀数据服务器MDS(Meta Data Server)
•对象存储服务器OSS(Object Storage Server) •客户端(Client)
•元数据目标设备MDT(Meta Data Target)
•对象存储目标设备OST(Object storage Target) •连接这些组件的高速网络
Metadata Server (MDS)
Target (MDT)
Ob)ed Storage
Servers (OSS)
Object Storage
largets (OST)
元数据服务器MDS
•负责元数据服务,同时管理整个文件系统的命名空间
•多个MDS之间共享访问一个MDT
•每个MDT保存文件元数据对象,例如文件名称、目录结构和访问权限等
• Client通过MDS读取到保存于MDT上的元数据
OSS 和Client
•OSS负责客户端和物理存储之间的交互及数据的存储,向外提供数据的I/O接口
•每个OSS管理一个或者多个OST,存储文件数据
•Client通过OSS访问保存在OST上的文件数据•Client挂载了Lustre文件系统的任意节点,实现了可移植POSIX文件系统接口
•用户通过client可以透明的访问整个文件系统时数据
•客户端与MDS之间进行元数据的•客户端与OSS之间进行文件数交互、目录管理、文件的打开和据的交互,包括文件I/O锁操作
关闭、并发访问控制等。

和数据的读写等。

MDS
Lustre文件系统逻辑结构
LNET责将这些信息送到实际的网络传输线路中
PTR-RPC负责处理三部分之间的RPC 请求与应答
MDS模块将客户端请求进行分发元数据请求交由日志模块Journal处理,记录元数据操作日志将元数据操作由Fsfilt wrapper模块记录在后端存储端
锁请求交由Ldlm处理,获得文件的意图锁
Fsflit定义了一个一般性API,从而将Lustre特有的请求翻译为后端文件系统特有的请求
OSS
•OST模块主要将来自客户端的请求进行
分发,其中的数据请求交给OBDfilter
模块处理;
•OBDfilter模块主要实现Lustre和其运
行平台的高效通信,结合Idiskfs可以
提供应用层一般的文件操作接口
• Idiskfs是Linux ext3和ext4文件系统
的超集,用在服务器端,作为底层的
本地文件系统
•锁请求交由分布式锁管理器Ldlm处理,
获得文件的范围锁
Lustre文件系统逻辑结构
・客户端节点的Llite模块主要提供与支持
标准可移植POSIX语法的linux的VFS层相兼
容的接口;
・逻辑对象卷LOV模块主要通过其下层的对
象存储客户端OSC为Llite提供对象存储的
API接口;
・元数据客户端MDC模块主要被Llite用来
与元数据服务器进行通信,为用户提供与各
个元数据服务器进行命名空间操作交互的元
数据对象API接口;
・OSC模块主要用来与对象存储设备进行文
件数据I/O以及锁服务的交互,每一个OSC
都对应一个OST
Lustre文件系统逻辑结构
Lustre的分布式锁管理者(LDLM) •意图锁:用于文件元数据的访问,通过执行锁的意图减少元数据访问所需的消息传递次数,从而减少每次操作的延迟
•范围锁:保护细粒度的文件数据并发访问, 为所有用户提供一致性的文件系视图
Lustre客户端缓存机制
・Lustre在客户端的内存空间开辟一段缓存区,客户端把首次访问的文件对象保存在自己的高速缓存中, 尽量减少与服务器的交互次数,从而降低网络开销。

•客户端执行文件读取操作时
-1.向MDS发送元数据请求,获得元数据信息,并保存到
客户端本地的高速缓存中;
-2•客户端与相应的OST建立连接,将实际的文件数据读
入高速缓存,应用程序再从高速缓存中执行文件读取操
作。

VTS
Rertiote MDS
Lustre客户端缓存一致性问题
图4.1并发写引发的数据不一致图4.2读•写•读引发的数据不一致
致性问题解决方法
・并发写造成的不一致:
-采用分布式锁管理机制LDLM,通过对元数据加意图锁, 对数
据加范围锁,保证元数据并发操作的一致性
-对长期占有锁资源的进程,采用锁回调callback机制释放
锁资源
・读写读造成的不一致:
-客户端对本地已经缓存过的文件进行再次访问时,仍需要
与MDS进行一次交互获得最新的元数据信息,之后再和本地缓存的元数据信息进行比对
-如果一致就从本地缓存中读取文件数据,否则就与相应的
OST建立连接重新获取文件数据
备份服务器Failover
・Lustre系统中的每个节点(MDS/OST)—般都可以配置备份服务器
・两个服务器采用共享磁盘存储的方式来存放数据・当服务器或网络连接发生失效时,就会导致客户端数
据访问超时,客户端会查询备份服务器的数据・得到信息后,立即将后续的请求重定向到备份服务器
图4高能所Lustre部署图
高能所的Lustre部署有四个特点:
・(1)元数据服务器MDS分为主从,但是无法在线备份和容错;• (2)米用万兆以太网;
・(3)没有采用分片存储,一个文件仅存储在一个OST上;
・(4)存储设备采用廉价的SATA盘,通过RAID6实现数据可靠性。

相关主题