以下示例显示了由连接管理器执行的故障转移的配置示例。
以下示例显示了将连接管理器配置为在原始主服务器遇到问题时将辅助服务器提升为主服务器的多种方法。每个服务级别协议 (SLA) 都应该定义故障转移配置。
如果使用多个连接管理器来管理集群的故障转移,请在集群的主服务器上设置 HA_FOC_ORDER 配置参数。HA_FOC_ORDER 配置参数的值会替换连接到主服务器的每个连接管理器的配置文件中
FOC ORDER= 的值。
对于以下示例,所有服务器上的 HA_FOC_ORDER 配置参数都是缺省值 SDS,HDR,RSS(依次为共享磁盘辅助服务器、高可用性数据复制辅助服务器和远程独立辅助服务器)。
示例 1:立即故障转移
FOC ORDER=ENABLED TIMEOUT=0
在此示例中,指定了以下行为:
- 如果连接管理器检测到主服务器因在 EVENT_TIMEOUT 值指定的时间量内未发生任何主服务器事件而脱机,那么由于 TIMEOUT 值设置为 0,因此故障转移处理将立即启动。
- 连接管理器首先尝试将最适合的 SDS 服务器转换为主服务器。如果没有任何 SDS 服务器联机,那么连接管理器会尝试将 HDR 服务器转换为主服务器。
如果 HDR 服务器未联机,那么连接管理器会尝试将最适合的 RSS 服务器转换为主服务器。
- 由于未指定 RETRY 属性,因此连接管理器将在 ORDER 属性值中循环一次。
示例 2:包含延长的超时的故障转移
FOC ORDER=ENABLED TIMEOUT=10
在此示例中,指定了以下行为:
- 如果连接管理器检测到主服务器因在 EVENT_TIMEOUT 值指定的时间量内未发生任何主服务器事件而脱机,那么 TIMEOUT 值会使连接管理器再等待 10 秒,以等待主服务器恢复联机,然后才能开始故障转移处理。
- 故障转移处理期间,连接管理器首先尝试将最适合的 SDS 服务器转换为主服务器。如果没有任何 SDS 服务器联机,那么连接管理器会尝试将 HDR 服务器转换为主服务器。
如果 HDR 服务器未联机,那么连接管理器会尝试将最适合的 RSS 服务器转换为主服务器。
- 由于未指定 RETRY 属性,因此连接管理器将在 ORDER 属性值中循环一次。
示例 3:包含延长的超时、重试和警报的故障转移
FOC ORDER=ENABLED TIMEOUT=20 RETRY=2
CMALARMPROGRAM ${GBASEDBTDIR}/etc/cmalarmprogram.sh
在此示例中,指定了以下行为:
- 如果连接管理器检测到主服务器因在 EVENT_TIMEOUT 值指定的时间量内未发生任何主服务器事件而脱机,那么 TIMEOUT 值会使连接管理器再等待 20 秒,以等待主服务器恢复联机,然后才能开始故障转移处理。
- 故障转移处理期间,连接管理器首先尝试将最适合的 SDS 服务器转换为主服务器。如果没有任何 SDS 服务器联机,那么连接管理器会尝试将 HDR 服务器转换为主服务器。
如果 HDR 服务器未联机,那么连接管理器会尝试将最适合的 RSS 服务器转换为主服务器。
- 连接管理器在等待成功完成故障转移期间,最多会在 ORDER 列表 SDS,HDR,RSS 中循环两次。
- 如果在 ORDER 列表中循环两次后,故障转移仍未完成,那么将调用 cmalarmprogram.sh 程序来生成警报,并且连接管理器会终止故障转移。