Sun Java System Application Server 9.1 高可用性管理指南

使用 HADB 管理代理

管理代理 ma,在 HADB 主机上执行管理命令。管理代理还通过重新启动 HADB 节点监控进程(如果失败)来确保其可用性。

启动管理代理

您可以使用以下方式启动管理代理:

对于每种启动方式,启动过程会因使用的是 Java Enterprise System 还是独立的 Application Server 而有所不同。

将管理代理作为服务启动

将管理代理作为服务启动,可确保它继续运行直到系统关闭或管理代理被明确停止。命令取决于您的安装和平台:

Solaris 或 Linux 上的 Java Enterprise System

要将管理代理作为服务启动,请使用以下命令:

/etc/init.d/ma-initd start

要停止该服务,请使用以下命令:

/etc/init.d/ma-initd stop

Windows 上的 Java Enterprise System

要将管理代理作为 Windows 服务启动,请使用以下命令:HADB_install_dir\bin\ma -i [config-file ]

可选参数 config-file 指定了管理代理配置文件。仅当您希望更改默认管理代理配置时,才使用配置文件。有关更多信息,请参见自定义管理代理配置

要将管理代理(作为服务)停止并删除(注销),请使用以下命令:HADB_install_dir\bin\ma -r [config-file ]

要执行管理,请选择“管理工具”|“服务”,以便能够启动和停止该服务、禁用自动启动等等。

Solaris 或 Linux 上的独立 Application Server

要将管理代理作为服务启动,请使用以下命令:

HADB_install_dir/bin/ma-initd start

要停止该服务,请使用以下命令:

HADB_install_dir/bin/ma-initd stop

要更改默认值,请编辑 shell 脚本 HADB_install_dir/bin/ma-initd。将 ma-initd 复制到目录 /etc/init.d。替换脚本中 HADB_ROOT 和 HADB_MA_CFG 的默认值以对应于您的安装:

Windows 上的独立 Application Server

要将管理代理作为 Windows 服务启动,请使用以下命令:HADB_install_dir\bin\ma -i [config-file ]

可选参数 config-file 指定了管理代理配置文件。仅当您希望更改默认管理代理配置时,才使用配置文件。

要将管理代理(作为服务)停止并删除(注销),请使用以下命令:HADB_install_dir\bin\ma -r [config-file ]

要执行管理,请选择“管理工具”|“服务”,以便能够启动和停止该服务、禁用自动启动等等。

确保管理代理自动重新启动

在生产部署中,将管理代理配置为自动重新启动。这样可确保在 ma 进程失败或操作系统重新引导时管理代理的可用性。

在 Windows 平台上,将管理代理作为服务启动后,您可以使用 Windows 管理工具将服务的启动类型设置为“自动”,然后设置所需的恢复选项。

在 Solaris 和 Linux 平台上,使用本节中的过程可配置管理代理自动重新启动。这些过程确保管理代理仅在系统进入以下两个运行级时才启动:

进入其他运行级将停止管理代理。

Procedure在 Solaris 或 Linux 上使用 Java Enterprise System 配置自动重新启动

开始之前

本节假定您对操作系统初始化和运行级有基本的了解。有关这些主题的信息,请参见您的操作系统文档。

  1. 请确保您系统的默认运行级为 3 或 5。

    要查看系统的默认运行级,请检查文件 /etc/inittab,并在靠近顶部的位置,查找类似于如下所示的行:

    id:5:initdefault:

    本示例显示了默认运行级 5。

  2. 创建指向文件 /etc/init.d/ma-initd 的软链接,如创建软链接中所述。

  3. 重新引导计算机。

接下来的操作

取消激活自动启动和停止代理、删除链接或将链接名称中的字母 K 和 S 更改为小写。

Procedure在 Solaris 或 Linux 上使用独立 Application Server 配置自动重新启动

  1. 在 shell 中,将当前目录更改为 HADB_install_dir/bin

  2. 编辑 shell 脚本 ma-initd

    确保脚本中 HADB_ROOT 和 HADB_MA_CFG 的默认值反映您的安装:

    • HADB_ROOT 为 HADB 安装目录 HADB_install_dir

    • HADB_MA_CFG 为管理代理配置文件的位置。有关更多信息,请参见自定义管理代理配置

  3. ma-initd 复制到目录 /etc/init.d

  4. 创建指向文件 /etc/init.d/ma-initd 的软链接,如创建软链接中所述。

接下来的操作

取消激活自动启动和停止代理、删除链接或将链接名称中的字母 K 和 S 更改为小写。

创建软链接

在 Solaris 上,创建以下软链接:

/etc/rc0.d/K20ma-initd
/etc/rc1.d/K20ma-initd
/etc/rc2.d/K20ma-initd
/etc/rc3.d/S99ma-initd
/etc/rc5.d/K20ma-initd (only for Sun 4m and 4u architecture)
/etc/rc6.d/K20ma-initd
/etc/rcS.d/K20ma-initd

在 Linux 上,创建以下软链接:

/etc/rc0.d/K20ma-initd
/etc/rc1.d/K20ma-initd
/etc/rc3.d/S99ma-initd
/etc/rc5.d/S99ma-initd
/etc/rc6.d/K20ma-initd

在控制台模式下启动管理代理

您可能希望在控制台模式下启动管理代理以便进行评估或测试。请勿在生产环境中以这种方式启动管理代理,因为系统或进程失败后 ma 进程将不会重新启动而且命令窗口关闭时该进程将终止。命令取决于您的平台和安装:

Solaris 或 Linux 上的 Java Enterprise System

要在控制台模式下启动 HADB 管理代理,请使用以下命令:

opt/SUNWhadb/bin/ma [config-file]

管理代理的默认配置文件为 /etc/opt/SUNWhadb/mgt.cfg

要停止管理代理,请中止进程或关闭 shell 窗口。

Windows 上的 Java Enterprise System

要在控制台模式下启动管理代理,请使用以下命令:

HADB_install_dir\bin\ma [config-file]

可选参数 config-file 为管理代理配置文件的名称。有关配置文件的更多信息,请参见自定义管理代理配置

要停止代理,请中止进程。

Windows 上的独立 Application Server

要在控制台模式下启动管理代理,请使用以下命令:

HADB_install_dir\bin\ma [config-file]

可选参数 config-file 为管理代理配置文件的名称;有关更多信息,请参见自定义管理代理配置

要停止管理代理,请中止进程。

Solaris 或 Linux 上的独立 Application Server

要在控制台模式下启动 HADB 管理代理,请使用以下命令:

HADB_install_dir/bin/ma [config-file]

管理代理的默认配置文件为 HADB_install_dir/bin/ma.cfg

要停止管理代理,请中止进程或关闭 shell 窗口。

使用 Solaris 10 服务管理工具运行管理代理

在 Solaris 10 上,服务管理工具 (Service Management Facility, SMF) 提供了重新启动、查看和管理服务的机制。您可以使用 SMF 启动、重新启动和管理 HADB 管理代理。

管理代理的故障管理资源标识符 (fault management resource identifier, FMRI) 为 svc:/application/hadb-ma

管理代理命令语法

管理代理 ma 命令的语法为:

ma [common-options] 
[ service-options] 
config-file

其中:

表 3–1 管理代理通用选项

选项 

说明 

默认值 

--define name=value-D

value 指定给属性 name,其中属性为配置文件中定义的属性之一。此选项可以重复多次。

无 

--help-? 

显示帮助信息。 

False 

--javahome path-j

使用位于 path 的 Java 运行时环境(1.4 版或更高版本)。

无 

--systemroot path-y

通常设置在 %SystemRoot% 中的操作系统根目录的路径。 

无 

--version-V 

显示版本信息。 

False 

表 3–2 介绍了用于将管理代理作为 Windows 服务启动的选项。-i、-r 和 -s 选项相互排斥,即每次只能使用其中一个选项。

在 Windows 上为配置文件或命令行中的属性值指定路径时,使用双引号 (") 为包含空格的文件路径进行转义。使用双引号和反斜杠:"\: 和\"为驱动器和目录分隔符(: 和 \)进行转义。

表 3–2 管理代理服务选项(仅限于 Windows)

选项 

说明 

默认值 

--install-i 

将代理作为 Windows 服务来安装并启动该服务。仅使用 -i、-r 和 -s 选项之一。 

False 

--name servicename-n

在主机上运行多个代理时,将指定名称用于服务。 

HADBMgmtAgent 

--remove-r 

停止服务并从 Windows 服务管理器中删除代理。仅使用 -i、-r 和 -s 选项之一。 

False 

--service-s 

将代理作为 Windows 服务来运行。仅使用 -i、-r 和 -s 选项之一。 

False 

自定义管理代理配置

HADB 包含可用于自定义管理代理设置的配置文件。未指定配置文件而启动管理代理时,将使用默认值。如果指定了配置文件,管理代理将使用该文件中的设置。您可以在域中所有主机上重复使用该配置文件。

Procedure在 HADB 主机上自定义管理代理配置

  1. 编辑管理代理配置文件并设置所需的值。

  2. 启动管理代理(将自定义的配置文件指定为参数)。

配置文件

使用 Java Enterprise System 时,配置文件中的所有条目都被注释掉。使用默认配置时无需任何更改。要自定义管理代理配置,请从文件删除注释,并按需要更改值,然后启动将配置文件指定为参数的管理代理。

管理代理配置文件安装在:

使用独立安装程序将管理代理配置文件安装在:

下表介绍了配置文件中的设置。

表 3–3 配置文件设置

设置名称 

说明 

默认值 

console.loglevel

控制台的日志级别。有效值为 SEVERE、ERROR、WARNING、INFO、FINE、FINER、FINEST 

WARNING 

logfile.loglevel

日志文件的日志级别。有效值为 SEVERE、ERROR、WARNING、INFO、FINE、FINER、FINEST 

INFO 

logfile.name

日志文件的名称和位置。必须为具有读取/写入权限的有效路径。 

Solaris 和 Linux:/var/opt/SUNWhadb/ma/ma.log

Windows:HADB_install_dir\ma.log

ma.server.type

客户机协议。仅支持 JMXMP。 

jmxmp 

ma.server.
jmxmp.port

用于内部 (UDP) 和外部 (TCP) 通信的端口号。必须为正整数。建议范围为 1024-49151。 

1862 

ma.server.
mainternal.interfaces

具有多个接口的计算机的内部通信接口。必须为有效的 IPv4 地址掩码。同一个域的所有管理代理必须使用相同的子网。 

例如,如果主机有两个接口 10.10.116.61 和 10.10.124.61,使用 10.10.116.0/24 可以使用第一个接口。斜杠后的数字表示子网掩码的位数。 

无 

ma.server.
dbdevicepath

存储 HADB 设备信息的路径。 

Solaris 和 Linux:/var/opt/SUNWhadb/4

Windows:HADB_install_dir\device

ma.server.
dbhistorypath

存储 HADB 历史文件的路径。 

Solaris 和 Linux:/var/opt/SUNWhadb

Windows:REPLACEDIR(运行时由实际 URL 替换。) 

ma.server.
dbconfigpath

存储节点配置数据的路径。 

Solaris 和 Linux:/var/opt/SUNWhadb/dbdef

Windows:C:\Sun\SUNWhadb\dbdef

repository.dr.path

域系统信息库文件的路径。 

Solaris 和 Linux:/var/opt/SUNWhadb/repository

Windows:C:\Sun\SUNWhadb\repository