我正在为我的实验室建立一个小型Linux集群。目前,我们有一个作业提交的登录节点和3个计算节点,它们通过Gigabit连接(遗憾的是没有infiniband)。
最初,我只是使用NFS为集群用户导出共享存储(主文件夹)。但很快我们发现NFS在实际有效载荷下表现不佳。
事实证明,我的集群用户在共享存储中读写小型图片文件(其中一个是<100 in )的GBs是非常常见的。NFS对于小文件IO的性能非常差。
对于编写小文件,我对NFS/CIFS/SSHFS性能进行了简单的测试。在每个文件系统上卸载20000个小文件(总计约600 on )的时间是:
与NFS相比,CIFS/SSHFS性能非常好。但是,在计算机集群场景中为Linux主文件夹使用CIFS/SSHFS并不是一种普遍的做法(而且CIFS并不是一个真正符合posix的文件系统AFAIK)。
您对小文件有效负载的网络文件系统选择有什么看法?我应该用其他集群/分布式文件系统替换NFS吗?还是有一种方法可以优化小文件的NFS?
发布于 2017-04-12 03:42:00
如果您有一个足够大的设置,我会推荐IBM频谱标度(以前的GPFS),但是考虑到您的操作规模,我建议您使用ZFS,并将其设置为off。如果您不关心在文件上记录访问时间,那么ZFS将在您的场景中执行得很好。
https://unix.stackexchange.com/questions/356769
复制相似问题