NFS 高可用性

NFS 高可用性

我现在的情况是希望提供高可用性的 NFS 服务器。

我当前的设置是 VMware 环境,通过使用 iSCSI 的 SAN 共享存储。简单地说,我有一台 debian/centos 服务器,为需要访问此共享数据存储的多个物理服务器提供 NFS 共享。该存储将专门用于这些仅运行一个应用程序的物理服务器,并且该应用程序是集群的,并且知道所服务的存储。换句话说,我实际上并不需要在最低存储级别进行集群,因为应用程序会处理所有文件的丢失和拾取,并通过后端数据库进行跟踪。我的目标实际上是在可能的情况下拥有两个可用的 NFS 服务器,以防虚拟机/主机出现故障。这可能吗?我已经阅读了一些有关使用 GlusterFS 和其他内容的不同内容,但我确实不需要这种级别的复杂性,因为此存储纯粹用于这个单个应用程序,该应用程序具有集群意识,并且在从NFS 共享。

我正在考虑让我的 NFS 服务器在 vmware 中使用原始设备映射,直接映射到我的 san,这样我就可能有两个 NFS 服务器将相同的 LUN 安装在其文件系统中的 /mnt/store/asr 等位置,然后提供服务通过两个路径输出 NFS,并让应用程序处理其余的事情。

答案1

您需要共享存储设备,但您真的需要 NFS 吗?

你可以尝试类似的事情OCFS2(共享磁盘集群文件系统,期望在多台机器上打开相同的块设备,自2.6.16以来一直存在于Linux内核中)或头孢(一种通过以太网或类似方式共享数据的集群文件系统,期望每个节点都有自己的本地块设备,并使用类似 RAID 的方案将数据分布在所有这些节点上)。

还有许多其他方案可以实现高可用的集群存储。当然,哪种选择最适合您取决于您​​的需求。维基百科有一个很好的概述的选项。

答案2

这是任何现代集群应用程序手册中给出的经典示例。实施起来非常简单。

  • 您创建一个两节点集群

  • 您创建一个应用程序,其唯一目的是挂载一个
    或多个文件系统(如果是这种情况)并将它们导出
    为 NFS 共享

  • 您分配此应用程序的 VIP(虚拟 IP 地址)作为 NFS 服务器的服务点。

  • 将集群设置为自动故障转移(在审核几周的稳定性后)

相关内容