我/dev/mapper/vg0-data
在服务器上有一个块设备 ( )。我打算直接通过Linux挂载将它本地挂载在服务器上,但也通过iSCSI暴露到另一台服务器,它将连接到它两次以进行多路径连接。我想知道这是否可以,或者是否会有任何数据损坏,因为服务器上可能存在本地更改和来自 iSCSI 的远程更改。如果涉及任何缓存,是否可能存在冲突?我是否也应该通过 iSCSI 在本地安装块设备?
块设备包含一个 ext4 分区。
这一切都在 Linux、Ubuntu 16.04 LTS 上。
我/dev/mapper/vg0-data
在服务器上有一个块设备 ( )。我打算直接通过Linux挂载将它本地挂载在服务器上,但也通过iSCSI暴露到另一台服务器,它将连接到它两次以进行多路径连接。我想知道这是否可以,或者是否会有任何数据损坏,因为服务器上可能存在本地更改和来自 iSCSI 的远程更改。如果涉及任何缓存,是否可能存在冲突?我是否也应该通过 iSCSI 在本地安装块设备?
块设备包含一个 ext4 分区。
这一切都在 Linux、Ubuntu 16.04 LTS 上。
在没有集群文件系统的情况下使用一个驱动器进行多个连接是一种自杀。数据损坏是您在几次数据迭代后首先看到的。您必须运行集群文件系统以避免此类问题。有很多主题可以回答这种情况,但这是我最喜欢的一个。https://forums.starwindsoftware.com/viewtopic.php?f=5&t=1392
简短的回答:不要那样做
长答案:要在两台不同的机器上双重挂载块设备,您需要使用集群文件系统,如 OCFS 或 GFS2。另一方面,EXT4 不是集群文件系统:同时将其安装在两台不同的机器上会立即导致扩展损坏。最新的 EXT4 版本甚至具有多重安装保护机制,或者
mmp
,明确拒绝任何形式的双重安装。因此,您要么需要使用集群文件系统,要么放弃块设备共享的想法,转而支持文件共享,例如通过 NFS。