搜索谷歌已经产生了几个不同的项目,但没有关于它们提供的功能的明确信息. CARP提供了故障转移的虚拟接口,我不清楚corosync是做什么的,还是起搏器的作用?
另一方面,我确实得到了保持活跃的工作.但是,我注意到corosync为infiniband提供原生支持.这对我有用.
也许有人可以对以下两者之间的差异有所了解:
> corosync
> keepalive
>起搏器
>心跳
哪种产品最适合路由器故障转移?
编辑:所以我做了一点……
Pacemaker是一个更大的项目,可以使用Corosync&起搏器.
似乎Corosync&心跳基本上做同样的事情.所以你选择其中一个.
Heartbeat似乎是一个较旧的项目,但仍在进行中.
另一方面,Keepalive是一个完全不同的项目,并实现了VRRP协议.它具有比其他功能更强的功能.它似乎仍然被广泛使用,但缺少最近的文档.
不幸的是,对于防火墙/路由器故障转移,只有很少的例子.有没有人找到一些不错的howto’s?我发现一个用西班牙语写的.
解决方法
当您需要真正的活动/备用群集设置(其中只有一个节点实际上“启动”)时,通常会使用心跳.)想想NFS.通常w / Heartbeat前后脚本操作用于启动和停止服务.
Keepalived更简单,通常用于热备用(即以冗余方式保持服务).
我已经成功使用keepalived的一个很好的用法示例是冗余Nginx负载平衡器.在这种情况下,如果节点发生故障,“浮动ip”将移至备份节点.
Keepalived很简单,但它允许您创建自己的检查脚本(这将触发故障转移等).一些信息:https://tobrunet.ch/2013/07/keepalived-check-and-notify-scripts/
哪种方式最适合您取决于您的情况:keepalived非常适合路由器故障转移.