项目

来自Lustre文件系统
跳转至: 导航搜索

当前项目

Feature Feature Summary Point of Contact Tracker Target Release
Lazy size on MDT Lazy size on MDT (LSOM)提供一种从MDS上直接获取“lazy”文件大小的方法,而不用再从OSS上获取文件大小。 李希(DDN) LU-9538 2.12
Data on MDT Phase 2 DNE+DoM optimization, migration, read-on-open, stat() and readdir() returning file data, glimpse-ahead, file create improvements. Mike Pershin (Intel) LU-10176 2.12 / 2.13
Enhanced Adaptive Compression in Lustre Introduce compression for the Lustre client and server Anna Fuchs Michael Kuhn (Universität Hamburg) LU-10026 2.13
持久客户端缓存 在Lustre客户端上提供一组本地缓存的新框架。 李希(DDN) LU-10092 2.13
文件级冗余 - 阶段4 纠删除码 基于文件纠删码的数据冗余,比镜像的空间效率更高。 Bobijam Xu (Intel) 2.13
Metadata Writeback Cache Overcome link latency for modifying metadata operations esp. noticeable in interactive type of workloads Oleg Drokin (Intel) LU-10938 TBD
Self Extending Layouts Avoid ENOSPC by leveraging extension spaces in layout Patrick Farrell (Cray) LU-10070 2.13
OST Pool Quotas Limit OST pool usage via quotas Sergey Chermencev (Cray) LU-11023 TBD

将来的项目

Feature Feature Summary Point of Contact Tracker
ZFS ZIL支持 将对ZFS Intent Log(ZIL)的支持添加到Lustre osd-zfs中 Alex Zhuravlev (Intel) LU-4009
RTDS(Real-Time Dynamic Striping,实时动态条带) 基于策略的Lustre条带框架。 李希(DDN) LU-9809
OSP对MDT多重修改请求 提高跨MDT修改操作的性能。 Grégoire Pichon (Atos) LU-6864
OFD读缓存 服务器端基于SSD,NVMe的持久读取缓存,它是带服务器内存的OSS读取缓存和存储之间的一个存储缓存层 李希(DDN)
基于File heat的策略引擎 添加对象的"File Heat"新属性以支持其跟踪“热”文件,作为OFD读取缓存的策略引擎 李希(DDN)
目录级别快照 目录级快照(DL-SNAP)是专为用户级文件备份而设计的,它通过在ldiskfs上使用写入时复制机制来实现,而不是修改磁盘格式。 Kenichiro Sakai (Fujitsu)
File Level Redundancy (FLR) - Phase 2 Immediate Write Mirroring Immediate mirrored writes from the client to multiple OSTs. Bobijam Xu (Intel)
Policy Engine Proposal New policy engine proposal for FLR, HSM, and others Lustre Community

潜在的项目

这些项目是潜在的发展领域,Lustre正在寻找对此感兴趣的合作伙伴或赞助相关开发人员。在开始实施之前,请发邮件至Lustre开发邮件列表来讨论更多细节。

Feature Feature Summary Complexity Tracker
ioctl()号码清理 清理Linux IOC编号以正确使用“size”字段,以便32位和64位的ioctl调用都能正常工作。 需要注意,多个版本的用户空间兼容性应得到保障,因此不能简单地删除旧的ioctl() 号。 1 b=20731
更新手册页 更新Lustre用户工具和lustreapi库的在线用户手册。 将现有的lfs.1和lctl.8手册页拆分为每个子命令的单独页面,同时添加每个选项的描述,提供使用示例。 2 LU-4315
提高测试效率 改进acceptance-small.sh测试脚本的性能、效率和覆盖范围。 可从以下着手:查看在acceptance-small.sh测试中每个测试脚本的所占用的时间。 3 b=23051
配置的保存、编辑和恢复 在writeconf之后,需要能够备份、编辑、恢复客户端或 MDS、OSS的 配置日志文件。 原因之一,如果配置日志文件损坏,则需要对其进行修复;原因之二,所有的文件系统可调参数(包括所有OST池的定义)都存储在配置日志中,而它们在writeconf完成后将会丢失。 将配置日志转存至YAML格式的纯文本文件,并进行编辑、恢复,使管理变得更加简单。 3 b=17094
改进错误信息 审查和改进Lustre错误日志,发挥其更大的效用。 项目可升级成,更改核心Lustre错误日志处理机制,生成更好的结构化错误日志,使得这些错误日志便于管理、易于解析。 4
改进QOS轮训对象分配器 改善LOV QOS分配器,使其永远进行加权轮询分配,而不是一旦OST空闲空间不平衡就退化为加权随机分配。 这样可以保持不断的平稳分配,避免QOS激活时OST分配出现失控的不平衡,同时也可为当前负载以及OST RAID重建等事件增加权重。 5 LU-9
RPC 回放签名 通过在处理时进行数字签名以及在重放时验证签名,让MDS/OSS决定客户端是否可以合法进行RPC回放。 6 b=18547
简化的互操作性 增加功能性,使服务器可以强制客户端丢弃所有锁,并删除未回应的RPC。 这将减少服务器执行彻底关闭时的恢复操作,而且可以避免Lustre服务器升级时的RPC回放问题。 已打开文件的恢复应通过在客户端生成新的open RPC来完成,而不是回放存储在回放列表中的RPC。这么一来,就可以移除一些处理打开RPC的特殊情况处理代码。 6 b=18496 LU-5703
虚拟Lustre块设备 Lustre对象lloop驱动将块设备导出到用户空间,绕过文件系统。 相关代码部分有效,已并入Lustre中。但存在正确性问题和潜在的性能问题,因此需要移植到新内核。 6 LU-6585
基于Lustre的交换分区 依赖于Lustre块设备。当内存紧张时无法正常工作,在这个问题解决前,该功能基本无效。 7 b=5498
目录readdir+ B为了加速“ls -l”操作,提供大块元数据readdir/stat接口。 把目录项的所有inode属性,作为扩展的目录项数据的一部分,发送回去。而且在客户端上集成相关API。 每个目录项都将会返回更多的数据,因此需要更高效的大型Readdir RPC来传输数据。 7 b=17845
小文件IO聚合 小文件IO聚合(多对象RPC),大抵先从数据写入入手,也许之后提供数据读出,并与statahead结合。 7 b=944
客户端数据加密 在发送到服务器之前,加密客户端上的文件和目录(或仅目录中的文件名)。 这样可以避免在网络上发送未加密的数据,或在服务器上有明文数据(以防从网络解密又在磁盘加密)。 或许可行的是:利用现有的GSS API sptlrpc_cli_wrap_bulk() 及相关函数,使用每文件独立的密钥(自身由用户密钥加密,该密钥存储在MDS上的文件中),而不是用每回话独立的密钥,在客户端上进行批量数据加密/解密,配合以OST对象ID,或配合以条带索引及对象偏移,然后在数据写入磁盘前服务器上的数据不进行解密。 7 []
本地对象零拷贝I/O 客户端和本地OST对象之间的高效数据读写; 针对本地客户的优化;预计实现OSC和本地OFD / OSD之间的快速路径连接。 读取缓存应该保存在OSD上,而不是在客户端VFS级别上,以实现缓存在该OST所有使用者之间的共享。 9

历史项目

名称 功能摘要 联系人 跟踪号 合并版本
Imperative Recovery Servers notify clients (via MGS) where a failed target has restarted to reduce waiting time during recovery. Jinshan Xiong (Intel) LU-19 2.2
LFSCK Phase 1 - OI Scrub Solution Architecture Check and repair Object Index on ldiskfs filesystems via OI Scrub to allow file-level backup/restore of MDT filesystems. Fan Yong (Intel) LU-957 2.3
LFSCK Phase 1.5 - FID-in-Dirent and LinkEA Consistency Enhance LFSCK to work with DNE filesystems, checking the Lustre FID stored in MDT directory entries and the parent LinkEA entries for hard links. Fan Yong (Intel) LU-1866 2.4
LFSCK Phase 2 - MDT-OST consistency Enhance LFSCK to check layout consistency between MDT file layouts and OST objects. Fan Yong (Intel) LU-1267 2.6
LFSCK阶段3 - DNE一致性 增强LFSCK以便支持DNE,包括远程目录项,以及多MDT情况下的的OST孤立对象。 Fan Yong (Intel) LU-2307 2.6
动态LNET配置 引入一个用户空间的脚本,从配置文件读取路由信息,并使用lctl程序将这些路由动态添加到LNET。 这使得支持非常大的路由表成为可能。 Amir Shehata (Intel) LU-2456 2.7
LFSCK阶段4 - 性能调试 增强LFSCK性能和效率。 Fan Yong (Intel) LU-6361 2.8
多个元数据RPC 支持一个客户端上对多个元数据进行修改(在last_rcvd文件中),以改善单个客户端的多线程元数据性能。 Grégoire Pichon (Bull/Atos) LU-5319 2.8
DNE Phase IIb 跨MDT更新的异步提交以提高性能。 远程重命名和远程硬链接功能。 Wang Di (Intel) LU-3534 2.8
Kerberos Revival 修复现有的Kerberos代码,经测试可用了。 Sébastien Buisson (Bull/Atos) LU-6356 2.8
文件系统默认的OST池 允许指定整个文件系统的默认OST池。 Lai Siyao (Intel) LU-7660, LU-7335 2.9
[http://wiki.opensfs.org/index.php?title=Contract_SFS-DEV-002#Summary UID/GID映射 将远程客户端节点的UID/GID映射到MDS和OSS上的本地UID/GID,使得单个Lustre文件系统可在具有不同管理域的多个客户端间共享。 Stephen Simms (Indiana University) LU-3291 2.9
子目录挂载 客户端能够挂载Lustre文件系统的子目录 Wang Shilong (DDN) LU-28 2.9
服务器端建议和提示 添加了API和工具,可以向服务器或存储端,发送关于文件的访问模式的相关建议和提示 李希(DDN) LU-4931 2.9
大块I/O 将OST大块I/O的最大数据量增加到16MB或更大,以提高磁盘I/O 提交的效率。 Shuichi Ihara (DDN) LU-7990 2.9
共享密钥加密 基于GSSAPI,使用对称共享密钥,进行节点验证或加密RPC, 避免了配置复杂的跨域Kerberos。 Stephen Simms (Indiana University) LU-3289 2.9
多轨LNet 同时使用多个LNet网络接口来提高可靠性和性能 Amir Shehata (Intel), Olaf Weber (SGI) LU-7734 2.10
TBF策略优化 优化NRS / TBF策略,在TBF策略中增加基于NID/JOBID的复杂表达式 李希(DDN) LU-5620 LU-7470 LU-8236 2.10
简化的用户空间快照 实现以文件系统的形式挂载ZFS对象的快照 Fan Yong (Intel) LU-8900 2.10
文件布局的改进 实现单个文件上的复合布局,用于文件级复本,Data on MDT,PFL等。 Jinshan Xiong, Niu Yawei (Intel) LU-3480 2.10
渐进的文件布局 允许复合文件布局在文件写入期间逐步具体化 Jinshan Xiong, Niu Yawei (Intel) LU-8998 2.10
项目配额 允许为文件指定一个“项目”或“子树”标识符,以对一个项目的磁盘使用进行核算和限制,独立于基于UID/GID的配额。 Shuichi Ihara (DDN) LU-4017 2.10
NRS延迟策略 使用NRS进行故障植入。 有意延迟请求以模拟服务器负载。 Chris Horn (Cray) LU-6283 2.10
无补丁服务器 删除Lustre内核补丁,使Lustre服务器更容易地移植到新的内核,而无须改变供应商的内核RPM包。 Oleg Drokin (Intel) LU-20 2.10
异步的Lock ahead 允许用户空间的程序在需要使用之前,提前请求LDLM范围锁。 旨在优化共享文件IO。 Patrick Farrell (Cray) LU-6179 2.11
Data on MDT 将小文件直接存储在MDT中,以减少RPC数量并提高性能。 Mikhail Pershin (Intel) LU-3285 2.11
File Level Redundancy (FLR) - Phase 1 Delayed Mirroring Files can be mirrored on multiple OSTs in the same namespace, with delayed resync of files using userspace tools. Jinshan Xiong (Intel) LU-3254 2.11
Lustre Audit with Changelogs Introduce Lustre Audit feature to be able to track all accesses to files residing on Lustre Sebastien Buisson (DDN) LU-9727 2.11