分布式文件系统是否必须由位于不同计算机上的多个文件系统组成?

分布式文件系统是否必须由位于不同计算机上的多个文件系统组成?

分布式文件系统的概念是否要求分布式文件系统由位于不同计算机上的多个文件系统组成?

NFS 文件系统是否仅由一个文件系统组成?(见下图)

如果是,那么 NFS 文件系统是分布式文件系统吗?

谢谢。

答案1

NFS 是一种分布式文件系统,因为它使用网络协议来管理服务器和客户端之间的数据访问。但是,与 ceph 或 glusterfs 等现代分布式文件系统相比,它非常基础。NFS 仅提供对位于 NFS 服务器上的本地文件系统的分布式访问,而 ceph 和 glusterfs 提供对分布式数据存储的访问,其中数据分布在多个服务器之间。

答案2

过去分布式文件系统就是我们今天所说的共享文件系统. 无论如何,在分布式文件系统我们假设文件系统分布在多台服务器之间。

NFS 是一种网络附加存储,其中文件系统暴露给多个客户端。虽然底层文件系统可以分布在多个节点上,例如当 cephfs 通过 NFS 导出时,但使用 NFS v2、v3 和 v4.0,客户端通过单个 NFS 节点访问数据。因此,使用 NFS 导出大型分布式文件系统效率不高。

NFSv4.1/pNFSnfs 服务器上的数据可以分布在多个所谓的数据服务器上。pNFS 有一个概念元数据服务器, 或者骨髓增生异常综合征数据服务器-DS。客户端与 MDS 通信以进行命名空间操作,并与数据服务器通信以进行实际 IO。带宽和存储空间随着数据服务器数量的增加而增长。

有几种解决方案提供 NFSv4.1/pNFS。例如,缓存(我是开发人员之一),这会暴露分布在数十台数据服务器上的数百 PB 数据,或者锤子空间,它允许将现有的 nfsv3 服务器聚合到单个分布式存储中。

pNFS 支持内置于 Linux 内核 3.9 中。

相关内容