用于 Sun Java System Application Server 的 Sun Cluster 数据服务指南(适用于 Solaris OS)

用于 Sun Java System Application Server 的 Sun Cluster HA 概述

本节说明了 用于 Sun Java System Application Server 的 Sun Cluster HA 如何使 Sun Java System Application Server 具有高度可用性。有关任何新的 用于 Sun Java System Application Server 的 Sun Cluster HA 安装和配置的信息,请参阅 《Sun Cluster 数据服务发行说明(适用于 Solaris OS)》。

有关数据服务、资源组、资源和其他相关主题的一般信息,请参见《Sun Cluster Data Services Planning and Administration Guide for Solaris OS》中的第 1  章 “Planning for Sun Cluster Data Services”《Sun Cluster 概述(适用于 Solaris OS)》

Sun Java System Application Server 为企业应用程序的开发、部署和管理提供了强健的 Java 2 Enterprise Edition (J2EE™) 平台。主要功能包含事务管理、性能、可伸缩性、安全性和集成。

Sun Java System Application Server 支持从 Web 发布到企业级事务处理的多种服务,而且允许开发者基于 JavaServer PagesTM (JSPTM)、Java Servlet 和 Enterprise JavaBeanTM (EJBTM) 技术构建应用程序。Sun Java System Application Server Enterprise Edition 提供了高级群集和故障转移技术。利用这些功能,用户可以运行可伸缩的、具有高可用性的 J2EE 应用程序。

许多客户机可直接连接到 Sun Java System Application Server。通过前端 Web 服务器可以将 Web 客户机连接定向到 Sun Java System Application Server。Sun Java System Application Server 提供一个中间插件来与 Sun Java System Web Server 一同使用。

具有高可用性的组件

Sun Java System Application Server 8.1 的支持版本包括若干个组件。

用于 Sun Java System Application Server 的 Sun Cluster HA 的实现假设您的体系结构所依赖的程序不存在。您的体系结构所依赖的程序(例如,数据库和 Web 服务器)应配置为具有高度可用性,但可在另一个群集上运行。

具有高可用性的 DAS 和 NA

用于 Sun Java System Application Server 的 Sun Cluster HA 提供了用于补充 Sun Java System Application Server Enterprise Edition 所提供的高可用性的高可用性。通过将域管理服务器作为故障转移 Sun Cluster 数据服务运行,用于 Sun Java System Application Server 的 Sun Cluster HA 使域管理服务器具有了高可用性。通过将节点代理作为故障转移 Sun Cluster 数据服务运行,使节点代理具有了高可用性。作为 Sun Java System Application Server Enterprise Edition 提供的功能,节点代理将依次使 Sun Java System Application Server 实例具有高可用性。

具有高可用性的事务日志

用于 Sun Java System Application Server 的 Sun Cluster HA 可以使事务具有高可用性。当运行 Sun Java System Application Server 实例的节点崩溃时,事务将丢失,除非通过运行在其他节点上的其他正在运行的实例将其恢复。也可以通过在同一节点或不同节点上重新启动崩溃的服务器实例来恢复事务。由于节点代理被配置为故障转移数据服务,该数据服务将把崩溃的实例故障转移到其他 Sun Cluster 节点上,这样当服务器在新的 Sun Cluster 节点上启动时将恢复事务。

具有高可用性的消息队列和 HADB

Sun Java System Application Server EE 将安装 Sun Java System Message Queue 和 Sun Java System Application Server EE (HADB)。

有关配置 Sun Java System Message Queue 以获得高可用性的信息,请参见《用于 Sun Java System Message Queue 的 Sun Cluster 数据服务指南(适用于 Solaris OS)》

有关配置 Sun Java System Application Server EE (HADB) 以获得高可用性的信息,请参见《用于 Sun Java System Application Server EE (HADB) 的 Sun Cluster 数据服务指南(适用于 Solaris OS)》

支持的配置

通过将域管理服务器 (DAS) 配置为故障转移数据服务,用于 Sun Java System Application Server 的 Sun Cluster HA 使 DAS 组件具有了高可用性。必须将 DAS 配置为在故障转移 IP 地址进行侦听。当 用于 Sun Java System Application Server 的 Sun Cluster HA 检测到出现故障的 DAS 时,数据服务将在本地重新启动 DAS 或将其故障转移到其他节点(这取决于重试计数和重试间隔的值)。

节点代理 (NA) 组件也被配置为故障转移数据服务。节点代理可能会被配置为管理多个 Application Server 实例,并且 用于 Sun Java System Application Server 的 Sun Cluster HA 数据服务将间接管理所有这些实例。所有节点代理和所有 Application Server 实例必须被配置为在故障转移 IP 地址上进行侦听。

如果 Application Server 实例被关闭,节点代理将重新启动这些实例。实例重新启动时,将恢复所有丢失的事务。在节点代理和 Application Server 实例运行所在的 Sun Cluster 节点崩溃的情况下, 用于 Sun Java System Application Server 的 Sun Cluster HA 将把节点代理和 Application Server 实例故障转移到其他 Sun Cluster 节点上。


注 –

对于为一个故障转移 IP 地址配置的所有节点代理,将仅创建一个节点代理资源。数据服务将自动检测在故障转移 IP 地址上配置的节点代理,该故障转移 IP 地址是在故障转移资源组中创建的。

以下示例是由四个节点代理组成的配置。

在本示例中,为 NA1NA2 及其所有服务器实例创建一个资源;为 NA3NA4 及其所有服务器实例创建另一个资源。

在 用于 Sun Java System Application Server 的 Sun Cluster HA 中创建故障转移节点代理组件的示例中提供了为四个节点代理创建资源的详细示例。

在以下各节中,说明的是仅包含两个节点代理的情况。


节点出现故障之前

下图说明了在出现任何节点故障之前的故障转移 DAS 和故障转移节点代理配置。

图 1–1 在出现节点故障之前配置为故障转移的 DAS 和节点代理

上文介绍了此图形。

该图说明了以下设置。

使这些资源组联机将启动节点代理,即依次启动这些节点代理管理的 Application Server 实例。

出现节点故障之后

下图说明了在出现节点故障之后的故障转移 DAS 和故障转移节点代理配置。

图 1–2 出现节点故障之后配置为故障转移的 DAS 和节点代理

上文介绍了此图形。

Node1 上出现故障后,资源组 RG1RG2 将故障转移到 Node2。资源组 RG1 包含 DAS 及其故障转移地址 IP1。资源组 RG2 包含节点代理 NA1、实例 I1I2 及其故障转移地址 IP2