我正在为一组基于 Ubuntu 18.04 的服务器配置一个新的 SAN。每个节点都可以正常挂载 ext4 格式的分区。
作为多路径和 iSCSI 的新手,我不确定我所看到的是否“正常”。到目前为止我有两个问题。
当我创建一个文件时
touch
,其他节点看不到它。我已经习惯了 NFS 安装驱动器的某种延迟,但基本上,其他节点从未见过它(即,我仍在等待,我猜一个小时已经过去了)。更令人担忧的是,当我列出一个复制的文件
ls
或du
它所在的目录时,我收到一个错误“错误消息”。我环顾互联网,似乎解决方案是卸载驱动器,然后使用fsck
它来检查它。也就是说,可能发生了数据损坏。但是,在我复制文件的计算机(即计算机 A)上,该文件很好。当我ls
使用另一台计算机(即计算机 B)时,我收到此错误。
在 SAN 的管理软件中,我没有看到任何磁盘错误。
所有服务器和 SAN 都连接到本地网络的单个交换机。它们在物理上彼此靠近——它们在同一个机架上。
这两种情况“正常”吗?如果没有,关于我能做什么的任何建议?
这是非集群文件系统的正常行为。
要将 iSCSI SAN 与 Ubuntu 计算服务器一起使用,应使用集群文件系统。
您可能应该了解更多关于 GPFS、GFS2、Lustre、GlusterFS 和 OCFS2 的信息,并在 iSCSI SAN 之上使用其中之一。
编辑:可以在这里找到对正在发生的事情的良好描述:
https://forums.starwindsoftware.com/viewtopic.php?f=5&t=1392
ext 不是一个集群感知的文件系统,所以当第二个节点挂载它时,它就会被破坏。这是因为没有通用的块锁定机制,而集群感知文件系统则没有这种机制
使用 cluster-awre 文件系统。
嗯...
SAN 不是 NFS。除非您使用的是共享/集群文件系统,否则您不能只将 ext4 挂载到多个主机上。