我有一个仅在Linux上运行的应用程序,它将在下一年生成大约500 up的数据,所有这些数据都必须每天保存和备份。
使用ZFSonLinux或btrfs只是暂时的,但它们并不是真正稳定的。
一种选择可能是有一个带有ZFS的OmniOS主机,并将其挂载到NFS上,但也存在文件锁定问题。
AFS隐藏了它的分布式特性,因此处理AFS文件看起来和感觉都像处理存储在本地机器上的文件。
这是否意味着,我可以使用OpenAFS而不是NFS,而不需要NFS带来的文件锁定问题?
发布于 2015-04-15 23:29:09
我对NFS还不太熟悉,不知道您可能引用了哪些特定的锁定问题,但我通常听说OpenAFS对整个文件锁更有效,是的。
但是,OpenAFS不能很好地处理跨不同机器的字节范围锁(也就是说,锁定文件中的某些字节范围,而不是锁定整个文件)。如果您只从一个Linux客户端访问锁定的文件,那么应该没有问题,但是如果您试图跨多个OpenAFS客户端协调锁,那么这是行不通的。
我也不太清楚为什么要使用任何网络文件系统,或者为什么不考虑其他传统的本地文件系统,比如XFS,甚至ext4 (这些系统可能不能满足您的需求,但不清楚您的需求超过了存储500 to数据……)。为了说明这一点,OpenAFS不像NFS那样导出本地文件系统。存储在OpenAFS文件服务器中的数据是以自己的格式存储的,因此您不能在使用OpenAFS客户端之外访问数据。也就是说,即使您与承载文件的服务器访问同一台计算机上的文件,您也必须通过AFS协议通过OpenAFS客户端来访问这些文件,等等。
还要注意的是,人们通常会发现设置OpenAFS比NFS更复杂(至少对于非Kerberized来说是如此)。
https://serverfault.com/questions/683021
复制相似问题