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

用于 Sun Java System Application Server EE (HADB) 的 Sun Cluster HA 概述

本节介绍了用于 Sun Java System Application Server EE (HADB) 的 Sun Cluster HA 数据服务如何使 Sun Java System Application Server EE (HADB) 的 Management Agent 组件在 Sun Cluster 系统中具有高可用性。必须将数据服务配置为由多个节点主控。

有关数据服务的一般信息,请参见《Sun Cluster Data Services Planning and Administration Guide for Solaris OS》中的第 1  章 “Planning for Sun Cluster Data Services”。必须配置数据服务。

Sun Java System Application Server EE (HADB) 软件与 Sun Java System Application Server Enterprise Edition 安装封装在一起。但是,您可以在不同的群集上分别运行 Sun Java System Application Server EE (HADB) 和 Sun Java System Application Server(如果合适)。此文档介绍了如何安装和配置允许您在群集中使用 Sun Java System Application Server EE (HADB) 的数据服务。首先,在群集中启用 Sun Java System Application Server EE (HADB) 以提供会话和 Enterprise Java Bean (EJB) 持久性。有关 Sun Java System Application Server EE (HADB) 的信息,请参阅 Sun Java System Application Server 文档。

用于 Sun Java System Application Server EE (HADB) 的 Sun Cluster HA 的实现并没有假定体系结构所依赖的应用程序的存在(例如数据库和 Web 服务器)。但是,可以将这些应用程序配置为具有高可用性,并可以在不同的群集上运行。

HADB 管理体系结构

下图说明了管理域中具有四个活动节点的数据库的体系结构。

图 1–1 管理系统体系结构

说明:上文介绍了此图形。

该图说明了由数据库和数据库中的四个 HADB 节点进程组成的管理域。用 n0、n1、n2 和 n3 表示这些节点进程。Host A 和 Host B 表示群集节点并为 HADB 形成数据冗余单元 DRU(Host A:DRU0 和 Host B:DRU1)。

管理代理 MA1 管理 n0 和 n2,管理代理 MA2 管理 n1 和 n3。管理代理负责监视节点的运行状况并在必要时重新启动节点。管理代理还处理来自客户机的管理操作请求。

如果管理代理在群集节点上出现故障,则必须在同一节点上重新启动该代理,以便代理可以继续监视 HADB 节点并提供管理操作。因此,必须使管理代理具有高可用性。

具有高可用性的 HADB Management Agent

通过在配置为由多个节点同时主控的资源组中创建数据服务资源,可以使 Sun Java System Application Server EE (HADB) 的 Management Agent 组件具有高可用性。在此资源组中,最大主节点数和所需主节点数必须相同。在注册和配置 用于 Sun Java System Application Server EE (HADB) 的 Sun Cluster HA中详细介绍了此配置。

下图说明了节点上出现任何故障之前的双节点配置。

图 1–2 出现故障前在多个节点上受控的管理代理

说明:上文介绍了此图形。

该图说明了在不同群集节点上由 MA1 和 MA2 表示的两个管理代理。应用程序安装在每个节点上的本地文件系统中。使用 用于 Sun Java System Application Server EE (HADB) 的 Sun Cluster HA 数据服务,可以在由 RS 表示的一个资源中配置两个管理代理,并且此资源配置在一个资源组 RG 中。将资源组配置为同时在多个群集节点(在此例中,为 Node1 和 Node2)上主控。

数据服务将在配置了管理代理的所有节点上启动这些管理代理。管理代理将依次启动节点管理员 (NSUP) 进程,该进程随后将启动 HADB 节点进程。如果管理代理出现故障,数据服务将基于用户定义的参数重新启动它。如果 HADB 节点进程出现故障,管理代理将重新启动这些进程。如果任何数据库已停止,用户必须通过在命令行中发布命令来重新启动这些数据库。

如果用户定义的参数确定数据服务没有在管理代理出现故障后重新启动它,则这些进程将在该节点上保持停止状态。但是,其他受管理的节点上的管理代理进程会继续执行。不会发生故障转移。

下图说明了第一个节点出现故障后的双节点配置。第一个节点上的所有进程将停止,第二个节点将继续执行它的进程。

图 1–3 出现故障后在多个节点上受控的管理代理

说明:上文介绍了此图形。