首页 > 解决方案 > 获取同时在两个集群节点(corosync)中运行的星号服务器

问题描述

我使用 corosync、pacemaker、heartbeat 创建了一个包含两个节点的集群。这是一个托管星号的 HA 集群。现在我配置了两个资源,一个星号服务器和一个虚拟 IP 地址。

集群配置

一切都很顺利,但我有一个不足之处。默认情况下,当 node1 启动并运行时,node2 中的星号服务关闭。我想让星号保持活动状态(node1,node2)并控制哪个星号正在使用虚拟 IP 地址呈现服务。我需要这样做,因为每一毫秒都是至关重要的,我不想在 node1 失败时浪费时间在 node2 中启动星号

标签: debianasteriskheartbeatpacemakercorosync

解决方案


1)将ip附加到两个节点

2)在两个节点上启动星号并在该ip上绑定

3)设置将数据包发送到第一个或第二个星号的路由器取决于状态。

但这是无用的,因为 sip 协议不会像你想要的那样在“毫秒”内工作,手机会在几分钟内重新注册。

如果您需要 <1 秒,您应该考虑像 vmware ESX 提供的内存映射技术(如果您需要毫秒 - 您已经投入了 1000000 美元的开发费用并自己进行开发)。


推荐阅读