共享块设备文件系统(无networking群集文件系统)

有什么文件系统可以多次挂载,并支持Linux的并发文件访问? 基本上我想要一个像集群文件系统的东西,但不需要有一个分布式锁pipe理器正在运行的networking。 对于可以与主机或另一个虚拟机共享数据的虚拟机而言,这非常方便,而无需创buildnetworking链接。 这我想避免保持networking架构的安全(虚拟机在DMZ中),但共享大文件。 没有必要扩展它,只有两台机器安装相同的设备。

不应该有可能在磁盘上有文件locking信息吗?

我猜你可以给N个虚拟机并访问同一个块设备,但只能读取。 你注意到这个词的猜测。

如果有任何虚拟机开始修改内容,事情会很快发生,因为任何磁盘caching其他虚拟机现在都将失效。

在磁盘上有文件locking信息的困难是没有人做过。 没有深入的思考,在磁盘上进行primefaces读取/修改/写入事务的想法可能是基本问题。

我想你可以采用一个已经是multithreading的典型的文件系统,找出锁的使用位置,并在磁盘上进行某种读取/修改/写入操作。

在磁盘上读取/修改/写入的另一个问题是,如果你做了很多的locking,你的性能将是非常糟糕的,因为每一个改变的磁盘上的任何东西都需要:

  • locking磁盘(寻找,读取/修改/写入)
  • 读取您想要更改的部分(查找/读取)
  • 做改变和写(写)
  • 解锁磁盘(寻找,读取/修改/写入)

这可能没有帮助,但是如果你真的不想联网的话,我会把BSD Jails看作是一个更轻量级的虚拟机系统。

为了回答我自己的问题:在(段)虚拟化的情况下,有一些共享的文件系统正在发展,可以用来在实例之间没有networking的情况下共享文件。 我想,XenFS是一种不积极发展的方法。 但是对于KVM,希望XEN很快有一个基于virtio库的文件夹共享机制9p_virtio 。