Server1.com和Server2.com写入MD3000i上的同一个驱动器。 它们都被安装到的文件夹被标记为/ mnt / files / 。 他们都能正确识别分区大小。
然后, Server1.com将test1.1.txt写入/ mnt / files , Server2.com将test1.2.txt写入/ mnt / files 。 在这种情况下,在ssh连接期间直接在服务器上写入文件。 Server1.com没有看到test1.2.txt没有重新安装。 没有重新挂载,Server2.com没有看到test1.1.txt。
奇怪的是,如果我通过PHP从apache服务器写入文件,并且文件具有唯一的名称,则两个服务器都可以看到它! 但是,如果名称不是唯一的,那么就会出现I / O错误(没有意外)。
我熟悉gfs,gfs2和ocfs2,但远不胜任。 我已经尝试了格式化驱动器和安装它的各种方法。 看来好像我不能得到正确的配方。
你有什么build议? 我已经尝试了许多不同的方式来build立我一直相信的圣杯 – 集群 – 并没有真正的成功。 我知道什么是行不通的。 真的可以真正使用一些有用的提示提升。
简短的回答:GlusterFS
长答:我已经build立了一个DRDB的系统,我认为这是一个理想的解决scheme,因为它是有据可查的,并且可以find一些运行LAMP的例子。
但是这不是一个理想的解决scheme,因为一次只能将文件系统安装在一个盒子上,而当一台机器故障转移到另一台机器时,您必须处理大量的服务。 也只有两台机器。
我在今天的virtualbox中build立了两个虚拟Ubuntu Lucid Lynx机器的testingglusterfs集群,不仅容易设置,您需要的所有东西都在回收站中。
从我的testing到目前为止,它似乎是我想要的一切。
这有点像双向(或实际上是多路)nfs。 你可以拥有尽可能多的节点来访问它,文件系统处理锁等,所以忽略“这是一个坏主意,就像上面有两个并发的Windows安装访问相同的NTFS驱动器…”注释,因为是偏离过程。
确保你得到了服务器 – 客户端的方面! 我错过了FUSE安装点,直到我考虑到文件locking。
我还没有testing它在沉重的MySQL负载下,但到目前为止,我印象深刻。 我的networkingsearch几乎没有发现GlusterFS能胜任这个工作,所以Tom O'Conner的评论也让我感到放心。
如果我明天再find相关信息,我会回复。
好的…你排除了NFS。 类似的可能是AFS。
或者你也可以尝试sshfs。
我不知道他们是否能解决你的问题,但是他们记住他们是件好事:>