执行控制性故障转移
要执行控制性复制故障转移,以便将客户端从一个站点的消息 VPN(具有活动复制状态)切换到另一个站点的相应消息 VPN,必须采取以下步骤:
- 第1步:验证复制桥是否绑定到复制队列
- 第2步:将消息 VPN 复制状态切换为备用
- 第3步:等待以前活动的消息 VPN 的复制队列排空
- 第4步:启发式提交或回滚任何正在进行的事务
- 第5步:使以前复制备用的消息 VPN 复制活动
- 第6步:删除启发式完成的事务
要实现真正的控制性,将接管活动的复制站点的复制桥连接必须绑定到另一个复制站点的复制队列。在执行控制性故障转移之前,应尽一切努力最小化断开复制桥的可能性。在通过配置消息 VPN 放弃活动并设置为复制备用状态后,如果复制桥连接在复制队列排空之前断开,故障转移将变为非控制性故障转移。
在这些步骤中使用的例子中,客户端从一个站点(纽约)的消息 VPN(Trading_VPN
)具有活动复制状态,切换到另一个站点(波士顿)的相应消息 VPN,该消息 VPN 具有备用复制状态。
虽然这个简单的例子只显示了具有单个消息 VPN 的复制站点,在现实世界的场景中,这些步骤必须通过 CLI 为参与复制站点故障转移的每个消息 VPN 执行。
第1步:验证复制桥是否绑定到复制队列
验证您希望激活的具有复制备用消息 VPN 的事件代理的复制桥是否绑定到具有活动复制状态的消息 VPN 的复制队列。
这里假设 NY_EventBroker1
和 BOS_EventBroker
在各自站点上为启用保证消息传递的虚拟路由器处于活动状态。
纽约数据中心
NY_EventBroker1> show message-vpn Trading_VPN replication
标志图例:
A - 管理状态(U=上,D=下)
C - 配置状态(A=活动,S=备用)
B - 本地桥状态(U=上,Q=队列未绑定,D=下,-=N/A)
R - 远程桥状态(U=上,D=下,-=N/A)
Q - 队列状态(U=上,D=下,-=N/A)
S - 同步复制合格(Y=是,N=否,-=N/A)
M - 同步不合格时拒绝消息(Y=是,N=否)
T - 事务复制模式(A=异步,S=同步,-=N/A)
消息 VPN A C B R Q S M T
-------------------------------- - - - - - - - - -
Trading_VPN U A - U U - N A
NY_EventBroker1>
波士顿数据中心
BOS_EventBroker> show message-vpn Trading_VPN replication
标志图例:
A - 管理状态(U=上,D=下)
C - 配置状态(A=活动,S=备用)
B - 本地桥状态(U=上,Q=队列未绑定,D=下,-=N/A)
R - 远程桥状态(U=上,D=下,-=N/A)
Q - 队列状态(U=上,D=下,-=N/A)
S - 同步复制合格(Y=是,N=否,-=N/A)
M - 同步不合格时拒绝消息(Y=是,N=否)
T - 事务复制模式(A=异步,S=同步,-=N/A)
消息 VPN A C B R Q S M T
-------------------------------- - - - - - - - - -
Trading_VPN U S U - - N A
BOS_EventBroker>
第2步:将消息VPN复制状态切换为备用
将当前复制活动的消息 VPN 切换为备用状态。
纽约数据中心
NY_EventBroker1(configure)# message-vpn Trading_VPN
NY_EventBroker1(configure/message-vpn)# replication state standby