我们目前在单个节点上运行 FreePBX。我想要一个星号实例集群来共享负载,但主要用于故障转移。我很好奇其他人是如何解决这个问题的。理想情况下,我想使用“免费”(如啤酒)软件。
谢谢你的帮助!
编辑
要求提供更多信息......但老实说,如果这是一个好的解决方案,我们会尝试任何事情:)
我们并不关心在故障转移期间呼叫是否中断。这将是理想的,但我可以想象,由于必须在节点之间复制大量的状态,因此实现这一点将非常复杂。
我不认为我们不使用 SIP 重新邀请。尽管运行 freepbx 一年多了,但我从未真正遇到过这个术语。我们的用例只是允许人们使用软电话拨打外线电话,并根据 DID 路由一些内线电话。
现在我们在 LXC 容器中运行 FreePBX。这是因为我们的上游运营商也是 SIP(不是 ISDN)。我们有使用 KVM 的经验,但出于效率原因,我们最好希望在 LXC 容器中运行。
首先看一下这个 voip-info 网页:高可用性设计。它将在 Asterisk 的上下文中解释什么是高可用性,什么不是。(它很容易将高可用性与负载平衡混淆)
接下来,查看这个 voip-info 网页:高可用性产品。它将解释高可用性 Asterisk 的开源/商业解决方案有哪些内容。
没有解决方案声称在故障转移期间保持呼叫(同时保持在标准 SIP 协议内而不引入新的单点故障)。SIP 重新邀请用于允许端点之间直接的 RTP 媒体流 - 但 Asterisk 通常停留在 SIP 流中。不是真正的 HA 问题。
需要考虑的其他事情是定义“失败”。用最简单的术语来说,就是 Asterisk 进程正在消亡。但通常 Asterisk 进程是活着的,只是没有桥接调用(所以要避免简单的进程监控脚本)。如果本地数据中心的网络连接中断(或防火墙出现故障)怎么办。您的 HA 解决方案应该能够考虑上游路由等环境因素,以确定对等方是否可以不再提供电话服务。一些使用通用 Linux 心跳软件的解决方案没有任何深入的星号可见性或环境可见性。
如何在对等点之间保持数据同步?从语音邮件到配置数据,再到电话机固件等。像 DRBD 这样的解决方案使事情变得容易,但是一个对等方的破坏会立即破坏另一个。例如,如果一个对等点上的损坏进程损坏了关键的星号文件,那么另一个对等点是否会启动(如果他们使用 DRBD,则不会)。所以避免使用基于 DRBD 的“解决方案”。
如果您引入负载平衡(即多个活动对等方),如果 2 个对等方同时收到用户 123 的语音邮件 #1,那么哪一个会“获胜”?这需要您引入用于呼叫桥接的前端服务器、用于语音邮件的后端等。而且您仍然存在单点故障或共享组件。
如果您从故障中恢复并且集群需要重新组装,如果每个对等点都将数据写入其共享“磁盘”的副本会发生什么?您是否手动开始协调?如果同时出现 2 个对等方(双主动)——哪一个获胜并接管,该怎么办?如果您引入共享磁盘解决方案(DRBD、NFS、iSCSI),那么您就消除了 HA 解决方案中最大和最重要的元素之一:对等自治。所以寻找“同步”,而不是“共享磁盘”。
最便宜的星号“HA”解决方案倾向于使用共享虚拟磁盘(例如:DRBD/NFS/SMB)和/或共享通道库(例如:Astribank)。正如您将在上面读到的,真正的 HA 解决方案(如 911/PSAP 呼叫中心使用的解决方案)需要完全自主的对等点和呼叫路径。有一个(商业)FreePBX 模块,它使用共享磁盘(因此,如果一个对等点出现故障并损坏磁盘,那么另一个对等点也会损坏)和基本检测 - 但对于家庭用户来说,它既便宜又易于安装;但是,FreePBX 几年前就停止了对该产品的支持(仅适用于非常旧的 FreePBX 版本)。 弹性体免费提供与 FreePBX 类似的模块。(如果您精通 Linux,那么您可以使用免费的 Linux DRBD 和 Heartbeat 软件包免费创建相同的“模块”)但是 Elastix 现在是 Isabbel(新产品名称),所以我认为操作指南现在已经消失了. 高端的是HAAst(免费/商业)产品,它没有共享组件并使用复杂的健康检测,并且与所有 Asterisk 发行版兼容 - 但需要更多的 Linux 技能才能安装,并且可能更昂贵,具体取决于版本(更多用于企业电话系统)。旁边是一个(免费脚本)翻转安装简单的脚本,但称其为“HA”有点牵强。还有 VMware 提供通用 HA(但它不支持 PBX/trunk/SIP/等),您还会发现一些供应商提供 RAID 1 作为 PBX 的“HA”,但这是一个延伸。在这个范围内也有更多的产品。没有供应商“批准”或“认可”或“证明”任何其他产品,因此您必须在购买前尝试。
您还会发现人们提供“容器”作为 HA 解决方案,但这并不是真正的 HA。容器是部署软件的便捷方式,您可以准备好备用的 PBX 容器进行部署;但是,您没有任何设置/语音邮件/等同步,没有检测到故障等。
当您评估产品时,请务必提出正确的问题!没有一种产品适合所有人 - 但 voip-info HA 设计页面将帮助您根据正确的权衡选择一种产品。如果您需要满足 911/PSAP 标准或正在建设大容量呼叫中心,请查看高端 HAAst 产品。如果它是供家庭使用的,请先尝试使用 Flipit 或其中一种商业产品的免费版本。