对高可用性的配置
此配置由在集群中运行的单个消息传递引擎组成,该消息传递引擎可故障转移至一个或多个备用服务器。高可用性配置确保集群中的消息传递引擎一直处于运行状态,以便可一直传送消息。
- 可以使用消息传递引擎策略辅助将集群添加至服务集成总线,并使用高可用性消息传递引擎策略。此过程为集群创建单个消息传递引擎,该消息传递引擎配置为可故障转移至集群中的任何其他服务器。系统会自动创建并配置新核心组策略并使这些策略与该消息传递引擎相关联。
- 可在不使用消息传递引擎策略辅助的情况下将集群添加至服务集成总线。系统会自动创建一个消息传递引擎,并且名为“缺省 SIBus 策略”的缺省服务集成策略会提供适当行为以实现高可用性。缺省服务集成策略是“N 中取 1”策略,在此策略中,消息传递引擎在集群中的第一个可用服务器上启动,并可故障转移至集群中的任何其他服务器。可选择更改配置,例如,您想要使用主服务器和备份服务器,或者希望消息传递引擎仅在集群中的部分服务器上运行。要更改配置,请创建新的“N 中取 1”核心组策略并针对消息传递引擎进一步配置该策略。例如:
- 可设置消息传递引擎可在其上运行并可故障转移至的有序首选服务器列表。
- 可指定消息传递引擎是可在集群中的任何服务器上运行,还是只能在首选服务器列表中的服务器上运行。
- 可指定具有更高优先级的首选服务器变为可用时,消息传递引擎能否故障转移回该服务器。
建议您不要更改名为“缺省 SIBus 策略”的缺省服务集成策略,这是因为所作更改将影响该策略管理的所有消息传递引擎。
高可用性消息传递引擎配置中没有工作负载分摊,原因是只有一个消息传递引擎处理流经目标的流量。
下图显示高可用性消息传递引擎配置,在此配置中,带有数据存储器的单个消息传递引擎 ME 在包含三个服务器的集群中运行。每个服务器在单独节点上,所以即使一个节点失效,余下节点上的服务器仍然可用。
集群中的每个服务器包含消息传递引擎配置,并且创建消息传递引擎的实例以便另一服务器失效时该实例准备好激活。
消息传递引擎的消息存储器必须可供集群中的所有服务器访问。对于数据存储器,实现此目标的方法取决于您使用的数据存储器拓扑。如果使用联网数据库服务器,那么必须确保该数据库服务器可供集群中可能运行消息传递引擎的所有服务器访问。或者,可以使用外部高可用性框架来管理使用共享磁盘的数据库。
消息传递引擎最初在其首选位置 server1 中运行。

下图显示 server1 失效时的情况。消息传递引擎在首选服务器列表中的下一个服务器(即 server2)上激活。

下图显示 server1 和 server2 失效时的情况。消息传递引擎在 server3 上激活,因为它是唯一可用的服务器。

如果使用消息传递引擎策略辅助和高可用性消息传递引擎策略,那么会自动设置首选服务器列表。
如果不使用消息传递引擎策略辅助并且希望消息传递引擎使用首选服务器,那么必须对该消息传递引擎指定一个或多个首选服务器。每当首选服务器可用时,高可用性管理器 (HAManager) 都会在其中运行消息传递引擎。没有首选服务器可用时,消息传递引擎在任何其他可用服务器中运行。还可对策略设置故障回退选项以便首选服务器再次变为可用时,HAManager 会将消息传递引擎移回至该服务器。
如果使用消息传递引擎策略辅助和高可用性消息传递引擎策略,那么消息传递引擎不会设置为可故障恢复。