没有 DRBD 的 NFS 故障转移?

没有 DRBD 的 NFS 故障转移?

因此,我正在尝试在云环境中设置冗余 NFS 共享(所有链接都在内部,半千兆链接),并且我正在研究使用心跳进行故障转移,但所有指南似乎都是关于结合 DRBD 和心跳来创建一个强大的环境。如果需要,我可以这样做,但由于我的内容几乎完全是静态的,我希望尽可能避免 DRBD 的额外开销和复杂性,但仍然能够在其中一个 NFS 服务器发生故障时进行故障转移。是否可以将心跳与 NFS 结合使用以实现高可用性,而无需使用 DRBD 复制块?我没有使用 NFSv4,因此如果需要通过 UDP 使用 NFSv3,那不会有问题(只有极少数客户端会连接到共享)

欢迎提出任何意见。

答案1

我认为 NFS 不支持在服务器离线时访问共享中的文件。如果最终一致性对您的应用程序来说足够好,您可以使用 csync2 之类的工具在服务器之间同步静态文件。

在我们的环境中,cron 每分钟在一对 Web 服务器上启动 csync2 来同步 /var/apps/nimbus/files 中的文件。配置如下:

group files {
    host    [email protected];
    host    [email protected];
    key     /etc/csync2_ssl_cert.key;

    include /var/apps/nimbus/files/;

    auto    younger;
}

相关内容