首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Lustre:向不同的OST发送不同的写请求

Lustre:向不同的OST发送不同的写请求
EN

Stack Overflow用户
提问于 2013-06-27 00:34:17
回答 2查看 230关注 0票数 1

我有一个典型的场景,其中可以并行写入请求,并且每个文件的大小为几百GB。

我的测试系统是一个Lustre文件系统,它有4个OST(每个3TB)和1个MDS。

我实际观察到的是,在禁用条带化的情况下,除非OST已满,否则Lustre会将所有文件写入单个OST。

是否可以配置Lustre,使得当并行或重叠写请求出现时,MDS会自动选择当前不忙的目标?

我很好奇为什么Lustre没有默认这样做,或者可能是因为我错过了什么?

EN

回答 2

Stack Overflow用户

发布于 2018-04-06 03:33:31

如果您的文件系统上通常有大文件(例如,> 32MB),则应该为文件系统适当地设置默认条带计数。您可以在每个目录、每个文件系统的基础上指定默认条带化(取决于您的权限和使用情况),或者指定创建单个文件的时间。

使用lfs setstripe -c N /path/to/directorydirectory上的默认条带数设置为N,这将仅影响该目录中的所有新文件。如果您只有有限数量的OST(在您的示例中为4),或者您的所有文件都很大(在您的示例中在GB范围内),那么您可以使用-c -1,这意味着“在所有OST上进行条带化”,而不是显式的条带数。

使用lfs setstripe -c N /mnt/lustre (或文件系统的任何挂载点)为整个文件系统中的新文件设置默认条带计数(除非目录级别的默认布局另有指定,或者在创建文件时明确指定)。

在Lustre 2.10和更高版本中,您可以使用复合文件布局,以便条带数量随着文件变大而增加,例如:

代码语言:javascript
复制
lfs setstripe -E64M -c 1 -E4G -c 4 -E-1 -S 4M -c -1

这意味着对于文件的第一个64MB,仅使用1个条带,对于文件的64MB-4GB部分,使用4个条带,在4GB之后,使用4MB的条带大小,并在所有OST上使用条带(在您的示例中也是4,但在某些文件系统上,它可能是数百个OST)。

票数 2
EN

Stack Overflow用户

发布于 2013-07-01 13:40:10

是的,如果您启用了条带化,那么Lustre将根据您想要的条带数(取决于您设置的条带数)将写操作分布到任意多个OST中。由于您已禁用条带化,因此文件的所有IO都将限制到单个OST。

如果我误解了,您看到的是发送到同一OST的所有文件的所有IO,那么您可能无意中将"index“选项设置为-1以外的值。此选项将覆盖默认设置,默认设置将允许MDS在所有OST之间平衡文件创建。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17325698

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档