在高性能存储领域,Lustre是一个如雷贯耳的名字。据统计(2011年7月),世界十大超级计算中心当中的七个以及超过50%的全球top50超级计算机都在使用Lustre。
Lustre是一个基于对象的,分布式文件系统,一般用于大规模集群计算。Lustre的名字是由Linux和集群(cluster)融合得来。该项目旨在为有成千上万的节点的集群提供一个支持PB的存储容量的文件系统,同时又不损害其速度、安全性和可用性。
基于对象的文件系统将文件的元数据和文件数据分离开来,存储在不同的服务器上。文件元数据存储在元数据服务器里,而文件数据则存储在对象存储服务器(object storage server)里。文件系统的客户利用元数据服务器和对象存储服务器来为用户提供一个完整的文件系统抽象。基于对象的文件系统具有性能优势。例如,文件系统客户直接通过对象存储服务器来访问文件内容,而元数据服务器只有在文件打开时才需要连接,从而消除了数据瓶颈。
从体系结构上看,Lustre文件系统包括三种主要的功能部件:
1. 系统中唯一的元数据目标(metadatatarget,MDT),MDT存储元数据,例如文件名,文件夹,访问权限,文件布局(file layout等)。
2. 一个或者多个的对象存储目标(objectstorage target,OST),OST在一个或者多个对象存储服务器上(object storage server,OSS)存储文件数据。根据服务器硬件的不同,一个OSS为两到八个OST提供服务,为每个OST提供容量达到8万亿字节(Terabyte)的本地磁盘文件系统。Lustre文件系统的容量是这些OST提供的存储容量之和。
3. 客户(client)。客户存取和使用数据。Lustre为每个客户提供标准的POSIX语义和并行读写存取文件系统中文件的功能。
MDT、OST和客户可以处于同一个节点或者不同的节点,但是在典型安装里,这些功能部件处于分离的节点中,而每个OSS节点有两个到四个OST通过网络相互通信。Lustre支持多种网络类型,包括Infiniband,以太网上的TCP/IP,Myrinet,Quadrics和其他专有技术。Lustre能够