如何在Linux中进行客户端NFS故障转移?


12

我有一个需要访问NFS存储的CentOS 6.3客户端。有两个NFS服务器通过群集文件系统提供存储在SAN中的相同内容。如果需要,我如何设置CentOS以故障转移到备用NFS服务器?当我使用Google时,我一直读到Linux不支持此功能,但是这很奇怪,因为那里有很多有关如何设置群集Linux NFS服务器场的信息。


4
使用心跳和浮动虚拟IP会帮助您吗?它不仅限于NFS,而是更通用的方法。参见例如Arch Linux Wiki:带有Heartbeat的简单IP故障转移
gertvdijk 2012年

2
我通过@gertvdijk发表评论。您可以通过在主服务器和故障转移服务器上配置相同的IP地址和主机名来配置主动/被动故障转移。这就是商业NFS文件管理器(例如EMC VG-2存储网关)的工作方式。
德米特里·丘巴罗夫

心跳将起作用,但这是一个奇怪的特殊情况。NFS服务器是OS X 10.8 Xsan设置,他们在10.8中删除了心跳(10.7拥有了)。
Doug

Answers:


8

这听起来像automount(8)守护程序的工作。请参见“复制的服务器”下的autofs(5)手册页(来自autofs rpm)。我相信如果您添加一行

fileserv host1,host2:/server/export/point

到客户端上的/etc/auto.misc并(重新)启动autofs服务,您的NFS存储将显示在/ misc / fileserv下。如果要挂载只读(当然也可以是其他挂载选项),则可以添加-ro作为挂载选项。


这样就足够确定了!谢谢。如果它可以在恢复联机时又恢复到主服务器,那将很酷,但这足以完成工作。
Doug

0

做到这一点的正确方法是使用GlusterFS,它是一个横向扩展文件系统,它在用户空间中运行在诸如NFS或CIFS之类的基础文件系统之上。

所有这些听起来令人印象深刻且复杂,但实际上设置起来非常简单。老实说,您应该花不到15分钟的时间。您将有两台服务器,每台服务器都定义了一个“砖”(存储单元)。然后,将在该服务器池中定义一个卷。服务器之间的数据复制是自动进行的,如果其中一台服务器死了,客户端上的故障转移也会自动进行。


另一个正确的方法是Ceph RBD
雪球2014年

您可以使用MooseFS。它是开源且容错的分布式文件系统。
TechGeek
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.