第四十九章 镜像配置、故障转移和负载平衡
多个 Web 服务器之间的负载平衡和故障转移
在大多数环境中,多个 Web 服务器用于平衡负载并在 Web 服务器层提供高可用性。通常需要负载平衡器将用户连接定向到参与的 Web 服务器。为了获得最佳性能和弹性,建议使用基于硬件的解决方案。负载平衡系统(例如 Cisco ACE 4710 或 F5 BigIP LTM 设备)放置在一组 Web 服务器前面。在此配置中,如果还有多个 IRIS 服务器实例(例如在分布式缓存集群中),则应将每个 Web 服务器(以及隐含的 Web 网关实例)配置为连接到特定的 IRIS 服务器实例。
基于软件的负载平衡和故障转移系统虽然不如基于硬件的解决方案强大,但部署成本要低得多。基于软件的解决方案的示例包括 HAProxy 和 Apache Group 的 mod_proxy_balancer。有关更多信息,请参阅 HAProxy 站点 www.haproxy.org
重要提示:应始终为 Web 应用程序启用粘性会话。至关重要的是,每个用户会话在会话的生命周期内“坚持”到同一个后端IRIS 服务器 – 当然,除非发生故障转移事件。
尽管上述方法是主要建议,但 Web Gateway 提供了一个基本(基于软件的)系统,用于在多个 IRIS 服务器(即多个 IRIS 实例的 CSP 服务器)之间实现负载平衡和故障转移。此功能将在下一节中描述。
多个 IRIS 服务器实例之间的负载平衡和故障转移
在具有多个(等效) IRIS 服务器实例的配置中(例如在分布式缓存集群中),Web Gateway 提供了基本(基于软件的)工具,用于在 Web 应用程序的这些 IRIS 实例之间实现负载平衡和故障转移。然而,主要建议是使用前面描述的外部解决方案。
在典型的高可用性配置(例如故障转移群集或 IRIS 镜像)中,Web Gateway 提供的故障转移机制对于在多个 IRIS 数据库服务器之间实现故障转移来说不是必需的。这些技术提供基于虚拟 IP 的故障转移,并且可以将 Web 网关配置为连接到该 IP 地址。
本节的其余部分介绍 Web Gateway 提供的负载平衡和故障转移功能。
Web Gateway 负载平衡和故障转移是在 Web Gateway 管理页面的应用程序访问部分中配置的。请参阅配置应用程序访问。
导航到系统管理 > 配置 > Web 网关管理,然后选择应用程序访问。可以为应用程序(路径)定义 IRIS 服务器列表。使用“使用替代服务器”参数下列出的选项来选择它们的使用目的。可以使用以下选项:
-
Fail-Over -
Load-Balancing and Fail-Over
默认操作过程是使用列表中定义的第一个 IRIS 服务器。此默认服务器后面是备用 IRIS 服务器的列表,每个服务器都指定为服务器 #,其中 # 是服务器编号。
配置屏幕最初仅显示三个空服务器插槽,但会出现其他插槽,使能够定义任意数量的备用服务器。每个服务器都可以标记为“启用”或“禁用”。默认设置为启用。
负载平衡以循环方式实现。每个新用户会话都连接到下一个可用的备用服务器。在服务器上建立用户会话后,Web Gateway 会在该服务器上维护该会话,除非该服务器变得不可用,在这种情况下,该会话将故障转移到列表中的下一个可用服务器。状态感知会话(保留模式 = 1)在任何情况下都无法进行故障转移,因此,如果托管服务器不可用,则会话将关闭。
如果 CSP 服务器在服务器响应超时参数指定的时间范围内没有响应,Web Gateway 会将该服务器标记为脱机,并且不会将其用于负载平衡。但是,如果启用了 Web Gateway 注册表功能(默认情况下启用),则 Web Gateway 会定期尝试重新连接到离线的 CSP 服务器。如果与 CSP 服务器的连接成功,Web Gateway 将其标记为在线并自动再次使用它进行负载平衡。