我并不是想问这个基于观点的问题。
我想知道在希望让多个 Linux FTP 服务器在同一个共享 NFS 磁盘上写入,并具有在节点之间移动的高可用性公共 IP 地址的情况下,使用面向网络的工具(keepalived
)而不是面向集群的工具(heartbeat
)的假设是否正确。
这个帖子提到其他 StackExchange 答案s 解释说,这heartbeat
对于确保共享服务可用非常有用最多始终放在一个地方,并keepalived
确保随时可用至少始终在一个地方。
不同之处在于故障转移的情况:
heartbeat
确保故障节点上的 IP 地址(我计划实现高可用性的服务)在新主节点上启动之前处于关闭状态,同时keepalived
尽其所能确保服务始终在至少一个节点上正常运行
我将其解释为 keepalived 的故障转移速度要快得多,但不能保证切换时服务不会同时在多个节点上“启动”?
我这样说对吗?这是keepalived
适合这个工作的工具吗?(我应该将它安装在节点本身上吗?)
我将至少拥有三个节点。这是为了用 SAN 上的 GFS 文件系统替换 5 节点 RedHat 集群。我想用带有 NAS (NFS) 存储的虚拟服务器替换它。所有节点上运行着基于简单 shell 脚本的应用程序,它们使用锁定文件来防止彼此窃取工作,但我想确保集群始终可以通过相同的 IP 地址访问。哪个主机应答并不重要。
答案1
1:你需要知道你的环境需要什么样的集群解决方案
2:heartbeat 已弃用,您需要在新发行版上使用 corosync+pacemaker
3:如果您希望在集群中保护数据,则需要配置集群隔离(stonith)
4:Redhat 也正在转向 Pacemaker,我不知道是否可以使用 keepalive 替换具有 5 个节点的 Redhat 集群
For more information you can read http://clusterlabs.org/