Sun JavaTM System Application Server 管理包括许多任务,例如部署应用程序,创建和配置域、服务器实例和资源,控制(启动和停止)域和服务器实例,管理配置文件和群集,监视和管理性能以及诊断和解决问题。本章包含以下几节:
Sun Java System Application Server 为 Java EE 应用程序和 Java Web 服务的开发和部署提供了 Java EE 兼容的服务器。主要功能包括可伸缩的事务管理、容器管理持久性运行时、优秀的 Web 服务、群集、高可用性、安全性以及集成功能。本节包括以下主题:
每个管理域都与标识该域功能的用法配置文件关联。Application Server 提供了以下配置文件:
开发者:如果在开发环境中运行域,而且应用程序不需要 NSS 密钥库或群集功能(如负载平衡和会话持久性),请使用此配置文件。
群集:如果需要创建群集但不需要高可用性数据库 (high-availability database, HADB) 或 NSS 密钥库,请使用此配置文件。
企业:如果需要 HADB 和 NSS,请使用此配置文件。仅当单独安装 HADB 和 NSS 或者将 Application Server 作为 Java Enterprise System (JES) 的一部分安装时,才能够使用此配置文件。有关如何将企业配置文件与 Application Server 9.1 一起使用的信息,请参见使用企业配置文件
只有企业配置文件才支持从 Application Server 8.x Enterprise Edition 升级。如果要从 Application Server 8.x Platform Edition 升级,请使用开发者配置文件。有关升级过程的更多信息,请参见《Sun Java System Application Server 9.1 Update 1 Upgrade and Migration Guide》中的第 2 章 “Upgrading an Application Server Installation”。
域为用户应用程序提供了预配置的运行时。用法配置文件便于区分 Application Server 二进制文件和运行时配置。通过配置文件,可以使用 Application Server 的相同安装,利用适合特定需要的配置文件创建不同的域。例如,某个开发者可能希望使用 Application Server 了解最新的 Java EE 规范。此开发者无需严格的安全设置。另一个希望在生产环境中部署应用程序的用户需要本身安全的环境。
表 1–1 列出了每个配置文件提供的功能:
表 1–1 每个配置文件提供的功能
功能 |
开发者配置文件 |
群集配置文件 |
企业配置文件 |
---|---|---|---|
安全存储 |
JKS |
JKS |
NSS |
群集/独立实例 |
不可用 |
可用 |
可用 |
安全管理器 |
已禁用 |
已启用 |
已启用 |
HADB |
不可用 |
不可用 |
可用 |
负载平衡 |
不可用 |
可用 |
可用 |
节点代理 |
不可用 |
可用 |
可用 |
要使用企业配置文件,请执行以下任务:
分别下载并安装 NSS 和 HADB。
修改 asenv.conf 文件,如下所示:
AS_HADB 指向在其中安装了 HADB 的文件夹。
AS_NSS 指向提供 NSS 共享对象的文件夹。
AS_NSS_BIN 指向存储 NSS 二进制文件(如 certutil)的文件夹。
可以使用 start-domain 命令将 Application Server 8.x 或 9.0 域升级到 Application Server 9.1。使用以下方法之一升级域:
执行 Application Server 二进制文件的就地 (in-place) 升级。
在指向 Application Server 早期版本的域上运行 start-domain 时,asadmin 将调用 asupgrade 命令,自动地就地 (in-place) 升级域。
执行 Application Server 二进制文件的并行 (side-by-side) 升级。
在早期安装的域上运行 start-domain。asupgrade 命令将域升级到最新 Application Server 安装的域根目录。在此方案中,在 asenv.conf 的 AS_DEF_DOMAINS_PATH 中定义升级的目标目录。
Application Server 是支持从 Web 发布到企业规模事务处理等多项服务,同时使开发者能够建立基于 JavaServer Pages (JSPTM)、Java Servlets 和 Enterprise JavaBeansTM (EJBTM) 技术的应用程序的平台。
Application Server 9.1 群集和企业配置文件提供了高级群集和故障转移技术。这些功能可以帮助您运行可伸缩的且具有高可用性的 Java EE 应用程序。
群集-群集是一组应用服务器实例,它们作为一个逻辑实体一起工作。群集中的每个 Application Server 实例都具有相同的配置,并被部署了相同的应用程序。
通过将 Application Server 实例添加到群集来提高系统性能,从而实现了水平缩放。可以在不中断服务的情况下将 Application Server 实例添加到群集。HTTP、RMI/IIOP(通过基于 Internet 的 ORB 间协议的远程方法调用)和 JMS(Java(TM) 消息服务) 负载平衡系统会将请求分发到群集中正常运行的 Application Server 实例中。
高可用性-可用性允许对群集中的 Application Server 实例进行故障转移保护。一个 Application Server 实例出现故障时,其他 Application Server 实例将接管指定给该故障服务器的会话。会话信息存储在高可用性数据库 (HADB) 中。HADB 支持 HTTP 会话和有状态会话 Bean 的持久性。
本节介绍了图 1–1,该图显示了 Application Server 高级体系结构。
容器-容器是一种运行时环境,它为 Java EE 组件提供安全性和事务管理等服务。图 1–1 显示了两种 Java EE 容器:Web 和 EJB。Web 组件(如 JSP 页面和 Servlet)在 Web 容器内运行。企业 Bean(EJB 技术的组件)在 EJB 容器内运行。
客户机访问-在运行时,浏览器客户机通过 HTTP(在 Internet 中使用的协议)与 Web 服务器进行通信来访问 Web 应用程序。HTTPS 协议用于需要安全通信的应用程序。Enterprise Bean 客户机通过 IIOP 或 IIOP/SSL(安全)协议与对象请求代理 (Object Request Broker, ORB) 进行通信。Application Server 具有分别用于 HTTP 协议、HTTPS 协议、IIOP 协议和 IIOP/SSL 协议的侦听器。每个侦听器独占使用特定的端口号。
Web 服务-在 Java EE 平台上,可以部署一个 Web 应用程序,该应用程序提供由 Java API for XML-Based RPC ( JAX-RPC) 实现的 Web 服务。Java EE 应用程序或组件还可以是其他 Web 服务的客户机。应用程序通过用于 XML 注册表的 Java API (JAXR) 访问 XML 注册表。
用于应用程序的服务-Java EE 平台旨在使容器为应用程序提供服务。图 1–1 显示了以下服务:
Java EE 平台使应用程序能够访问应用服务器之外的系统。应用程序通过称为资源的对象连接到这些系统。管理员的职责之一是资源配置。Java EE 平台使得可以通过以下 API 和组件访问外部系统:
JDBC-数据库管理系统 (Database Management System, DBMS) 提供了用于存储、组织和检索数据的工具。大多数商业应用程序将数据存储在关系数据库中,这些应用程序通过 JDBC API 访问关系数据库。由于数据库中的信息保存在磁盘上并在应用程序结束之后仍然存在,因此通常将数据库中的信息称为持久性信息。Application Server 包包括 Java DB 数据库。
消息传送-消息传送是软件组件或应用程序之间的一种通信方法。消息传送客户机可以向任何其他客户机发送消息,也可以从任何其他客户机接收消息。应用程序通过 Java 消息传送服务 (Java Messaging Service, JMS) API 访问消息传送提供者。Application Server 包含一个 JMS 提供者。
连接器-Java EE 连接器体系结构使 Java EE 应用程序和现有企业信息系统 (Enterprise Information Systems, EIS) 之间实现了集成。应用程序通过称为连接器或资源适配器的可移植 Java EE 组件访问 EIS。
JavaMail-应用程序通过 JavaMail API 连接到 SMTP(简单邮件传输协议)服务器以发送和接收电子邮件。
服务器管理-图 1-1 的右下角显示了由 Application Server 管理员执行的一些任务。例如,管理员部署(安装)应用程序并监视服务器的性能。这些任务通过 Application Server 提供的管理工具来执行。
Application Server 提供了以下管理工具和 API:
管理控制台是一种基于浏览器的工具,具有易于浏览的界面和联机帮助。要使用管理控制台,管理服务器(也称为域管理服务器或 DAS)必须处于运行状态。要启动管理控制台,必须知道管理服务器的主机名和端口号。安装 Application Server 时,选择了服务器的端口号,或者使用了默认端口 4848。还指定了用户名和主密码。
要启动管理控制台,请在 Web 浏览器中键入以下内容:
http://hostname:port |
例如:
http://kindness.sun.com:4848 |
如果管理控制台在安装了 Application Server 的计算机上运行,请将 localhost 指定为主机名。
在 Windows 中,从“开始”菜单启动 Application Server 管理控制台。
安装程序将创建默认管理域(名为 domain1),并使用默认端口号 4848,还会创建一个与域管理服务器 (domain administration server, DAS) 分开的实例。安装之后,还可以创建其他管理域。每个域都有自己的域管理服务器,该服务器具有唯一的端口号。为管理控制台指定 URL(统一资源定位器)时,请确保使用要管理的域的端口号。
如果配置中包括远程服务器实例,请创建节点代理以便管理和简化远程服务器实例。节点代理负责创建、启动、停止和删除服务器实例。使用命令行界面 (command line interface, CLI) 命令可以设置节点代理。
asadmin 实用程序是 Sun Java System Application Server 的命令行界面。使用 asadmin 实用程序及其关联命令可以执行管理控制台所提供的相同管理任务集。Solaris 上的默认安装根目录是 /opt/SUNWappserver。
要启动 asadmin 实用程序,请转至 as-install/bin 目录并输入以下内容:
$ ./asadmin |
要列出 asadmin 中的可用命令,请使用:
asadmin> help |
也可以在 shell 的命令提示符下发出 asadmin 命令:
$ asadmin help |
要查看命令的语法和示例,请在命令名称后面键入 help。例如:
asadmin> help create-jdbc-resource |
给定命令的 asadmin help 信息将显示该命令的 UNIX 手册页。在《Sun Java System Application Server 9.1 Reference Manual》中,这些手册页还以 HTML 和 PDF 格式提供。
在 Java 2, Platform Standard Edition 5.0 中,引入了 Java 监视和管理控制台 (JConsole)。JConsole 用于监视 Sun Java System Application Server。您可以使用 JConsole 的“远程”选项卡或“高级”选项卡来连接到 Application Server。
“远程”选项卡:标识用户名、密码、管理服务器主机和 JMS 端口号(默认为 8686),并选择“连接”。
“高级”选项卡:将 JMXServiceURL 标识为 service:jmx:rmi:///jndi/rmi://host:jms-port/jmxrmi,并选择“连接”。JMXServerURL 输出在 server.log 文件中,同时还在域创建命令的命令窗口中输出。
Application Server Management eXtension 是一个 API,公开 Application Server 的所有配置,并将 JMX 管理的 Bean 当作实现 AMX 接口的、易于使用的客户端动态代理进行监视。
有关使用 Application Server Management Extension 的更多信息,请参见《Sun Java System Application Server 9.1 Developer’s Guide》中的第 20 章 “Using the Application Server Management Extensions”。
Application Server 包含一个或多个域。域是管理边界或上下文。每个域都具有一个与其关联的管理服务器(也称为域管理服务器或 DAS),并且由零个或多个独立实例和/或群集组成。每个群集都具有一个或多个同类服务器实例。服务器实例是在一台物理计算机上运行 Application Server 的一个 Java 虚拟机 (Java Virtual Machine, JVM)。域中的服务器实例(无论为独立实例还是群集实例)可以在不同的物理主机上运行。
本节包括以下主题:
域是一组共同进行管理的实例。但是,一个应用程序服务器实例只能属于一个域。除了管理边界以外,域还提供了基本的安全性结构,凭借此结构,不同的管理员可以管理应用服务器实例的特定组(域)。通过将服务器实例分组到单独的域中,不同的组织和管理员可以共享一个 Application Server 安装。每个域都有自己的独立于其他域的配置、日志文件和应用程序部署区域。如果更改某个域的配置,其他域的配置不会受到影响。
Sun Java System Application Server 安装程序会创建默认管理域(名为 domain1)。它还会创建关联的域管理服务器(名为 server)。您必须提供管理服务器端口号。默认管理服务器端口号为 4848。安装程序还将查询管理用户名和主密码。安装之后,还可以创建其他管理域。
每个域都有自己的域管理服务器 (Domain Administrative Server, DAS),该服务器具有唯一的端口号。管理控制台与特定 DAS 进行通信以管理关联的域。每个管理控制台会话都可用于配置和管理特定的域。
域管理服务器 (Domain Administrative Server, DAS) 是专门指定的应用服务器实例,用于托管管理应用程序。DAS 会对管理员进行验证,接受来自管理工具的请求,并与域中的服务器实例进行通信以执行请求。有时,DAS 称为管理服务器或默认服务器。将它称为默认服务器是因为它是在 Sun Java System Application Server 安装时创建并可用于部署的唯一服务器实例。DAS 只是一个具有附加管理功能的服务器实例。
每个管理控制台会话都可用于配置和管理单个域。如果创建了多个域,则必须启动另外一个管理控制台会话以管理其他域。为管理控制台指定 URL 时,请确保使用与要管理的域关联的 DAS 的端口号。
群集是命名的服务器实例集合,这些服务器实例共享同一套应用程序、资源和配置信息。服务器实例只能属于一个群集。通过在多台计算机之间分配负载,群集有助于实现服务器实例负载平衡。通过进行实例级故障转移,群集还有助于实现高可用性。从管理角度看,群集表示一个虚拟化的实体,对群集的操作(如部署应用程序)将对构成群集的所有实例都起作用。
需要对域中每个节点使用轻量代理(例如,仅托管 JMX 运行时),以便于对实例进行远程生命周期管理。它的主要用途是按照 DAS 指示启动、停止和创建服务器实例。节点代理还可用作监视程序并重新启动出现故障的进程。与 DAS 相同,节点代理应仅用于特定的管理操作,并且不应期望它具有高可用性。但是,节点代理是一个“始终运行”的组件,并且必须将其配置为通过本机 O/S 节点引导(例如,Solaris/Linux inetd 或作为 Windows 服务)启动。DAS 不需要节点代理。
服务器实例是在单个节点上托管 Application Server 的单个 Java EE 兼容的 Java 虚拟机。每个服务器实例在域中都具有唯一的名称。群集服务器实例是群集的成员,并从其父群集中接收所有的应用程序、资源和配置,从而确保群集中的所有实例是同类实例。非群集服务器实例不属于群集,并且具有一组独立的应用程序、资源和配置。下图显示了一个应用服务器实例的详细信息。应用服务器实例是 Application Server 的群集、负载平衡和会话持久性功能中的构建模块。
Sun Java System Application Server 在安装时将创建一个称为 server 的应用服务器实例。对于很多用户来说,一个应用程序服务器实例即可满足他们的需要。但是,根据用户环境的不同,可能需要创建一个或多个附加应用程序服务器实例。例如,在开发环境中,可以使用不同的应用程序服务器实例来测试不同的 Application Server 配置,或者比较和测试不同的应用程序部署。由于添加或删除应用服务器实例比较容易,因此可以使用这些实例创建临时的沙箱区来进行试验。
此外,还可以为每个应用服务器实例创建虚拟服务器。在一个已安装的应用程序服务器实例中,您可以提供公司或个人域名、IP 地址和某些管理功能。对于用户,就好比他们拥有自己的 Web 服务器,但无需进行硬件和基础服务器的维护。这些虚拟服务器不能跨应用程序服务器实例使用。有关虚拟服务器的更多信息,请参见第 13 章,配置 HTTP 服务。
在操作部署中,很多情况下都可以使用虚拟服务器代替多个应用程序服务器实例。但是,如果虚拟服务器不能满足需求,您也可以使用多个应用程序服务器实例。停止应用服务器实例后,它将不再接受新的连接,只是等待所有未完成的连接完成。如果您的计算机崩溃或脱机,则服务器将退出,并且正在处理的所有请求都将丢失。
应用程序服务器实例构成了应用程序部署的基础。每个实例均属于一个域,并有自己的目录结构、配置和已部署的应用程序。每个服务器实例还包含了 Java EE 平台的 Web 和 EJB 容器。每个新的服务器实例必须包含对节点代理名称的引用,该名称定义实例将要驻留的计算机。
不能在开发者域上创建 Application Server 实例。开发者域始终仅与默认实例 server1 关联。要创建多个实例,需要创建具有群集配置文件的域。有关创建域的信息,请参见命令 create-domain 的手册页或查看管理控制台联机帮助。
可以创建三种服务器实例:
在独立服务器实例中,任何其他服务器实例或群集都不能共享其配置。
在共享服务器实例中,其他实例或群集可以共享其配置。
在群集服务器实例中,群集中的其他实例可以共享其配置。
群集是共享同一套应用程序、资源和配置信息的一组服务器实例。服务器实例只能属于一个群集。特别值得一提的是,使用群集可以通过在多台计算机上分发负载来促进负载平衡,并可以通过实例级别的故障转移来提供高可用性。
通过“常规”选项卡可以执行以下任务:
单击“启动实例”以启动实例。
单击“停止实例”以停止实例。
单击“查看日志文件”,以打开服务器日志查看器。
单击“轮转日志文件”,以轮转实例的日志文件。
该操作将安排日志文件以进行轮转。实际的轮转将在下一次向日志文件写入条目时发生。默认服务器 (DAS) 的轮转将立即发生,但其他独立服务器的轮转将延迟。
单击“JNDI 浏览”以浏览正在运行的实例的 JNDI 树。
单击“恢复事务”以恢复未完成的事务。
此外,您还可以选择以下选项卡来执行其他任务:
“应用程序”选项卡:部署选定的应用程序。
“JVM 设置”选项卡:配置 Application Server 使用的 JVM 常规设置。
“资源”选项卡:管理选定的资源。
“属性”选项卡:配置实例特定的属性。
“日志”选项卡:配置 Application Server 使用的日志记录级别。
“监视”选项卡:查看 JVM、服务器、线程池、HTTP 服务和事务服务的监视数据。
“高级”选项卡:设置用于部署应用程序的常规属性。
如果基于开发者配置文件运行管理控制台,“启动实例”选项以及“应用程序”和“JVM 设置”等选项卡将不可用。
Application Server 的管理包括创建、配置、控制和管理域、群集、节点代理和服务器实例等任务。本节包括以下主题:
域是使用 create-domain 命令创建的。以下示例命令将创建名为 mydomain 的域。管理服务器在端口 5000 上进行侦听,管理用户名为 admin。该命令提示输入管理密码和主密码。
$ asadmin create-domain --adminport 5000 --adminuser admin mydomain |
要为 mydomain 域启动管理控制台,请在浏览器中输入以下 URL:
http://hostname:5000 |
在 Application Server 9.1 中,每个域都具有与之关联的配置文件。有关配置文件的信息,请参见用法配置文件。只能在创建期间选择域的配置文件。将 --profile 选项与 create-domain 命令一起使用,可以为域指定配置文件。如果不使用 --profile 选项显式指定配置文件,则将默认配置文件与域关联。asadminenv.conf 文件中的 AS_ADMIN_PROFILE 变量定义默认配置文件。
除非具有 HADB 和网络安全服务 (Network Security Services, NSS) 密钥库,否则不要创建企业域。除非具有 HADB 和 NSS,否则将无法启动企业域。
对于前面的 create-domain 示例,域的日志文件、配置文件和部署的应用程序现在位于以下目录中:
domain-root-dir/mydomain
要在其他位置创建域的目录,请指定 --domaindir 选项。有关该命令的完整语法,请键入 asadmin help create-domain 或 create-domain(1)。
使用 asadmin delete-domain 命令可以删除域。只有可以管理域的操作系统用户(即超级用户)可以成功地执行此命令。例如,要删除名为 mydomain 的域,请键入以下命令:
$ asadmin delete-domain mydomain |
使用 asadmin list-domains 命令可以找到在计算机上创建的域。要列出默认 domain-root-dir 目录中的域,请键入以下命令:
$ asadmin list-domains |
要列出在其他目录中创建的域,请指定 --domaindir 选项。
启动域时,将启动管理服务器和应用程序服务器实例。启动应用程序服务器实例之后,应用程序服务器实例将持续运行、侦听并接受请求。必须单独启动各个域。
要启动域,请键入 asadmin start-domain 命令并指定域名。例如,要启动默认域 (domain1),请键入以下命令:
$ asadmin start-domain --user admin domain1 |
如果只有一个域,则可以省略域名。要查看完整的命令语法,请键入 asadmin help start-domain。如果省略了密码数据,系统将提示您提供此数据。
在 Windows“开始”菜单中,依次选择“程序”-> "Sun Microsystems" -> "Application Server" ->“启动管理服务器”。
停止域将关闭该域的管理服务器和应用程序服务器实例。停止域时,服务器实例将停止接收新的连接,然后等待所有未完成的连接完成。由于服务器实例必须完成其关闭进程,因此该进程需要几秒钟时间。当域停止时,管理控制台或大多数 asadmin 命令都无法使用。
要停止域,请键入 asadmin stop-domain 命令并指定域名。例如,要停止默认域 (domain1),请键入以下命令:
$ asadmin stop-domain domain1 |
如果只有一个域,则域名是可选键入项。要查看完整的语法,请键入 asadmin help stop-domain。
查看管理控制台联机帮助以通过管理控制台停止域。
在“开始”菜单中,依次选择“程序”-> "Sun Microsystems" -> "Application Server" ->“停止管理服务器”。
重新启动服务器与重新启动域相同。要重新启动域或服务器,请停止然后再启动域。
群集是使用 create-cluster 命令创建的。以下示例将创建名为 mycluster 的群集。管理服务器主机为 myhost,服务器端口为 1234,管理用户名为 admin。该命令提示输入管理密码。
$ asadmin create-cluster --host myhost --port 1234 --user admin mycluster |
要查看完整的语法,请键入 asadmin help create-cluster。
群集是使用 start-cluster 命令启动的。以下示例将启动名为 mycluster 的群集。该命令提示输入管理密码。
$ asadmin start-cluster --host myhost --port 1234 --user admin mycluster |
要查看完整的语法,请键入 asadmin help start-cluster。
群集是使用 stop-cluster 命令停止的。以下示例将停止名为 mycluster 的群集。该命令提示输入管理密码。
$ asadmin stop-cluster --host myhost --port 1234 --user admin mycluster |
myhost 为管理服务器主机,1234 为管理端口,admin 为管理用户名。
要查看完整的语法,请键入 asadmin help stop-cluster。停止群集时,将停止群集中的所有服务器实例。无法停止没有实例的群集。
节点代理是使用 create-node-agent 命令创建的。以下示例将创建名为 mynodeagent 的节点代理。管理服务器主机为 myhost,管理服务器端口为 1234,管理用户名为 admin。该命令通常会提示您输入管理密码;但是,如果未指定 --savemasterpassword 选项或者它为 false,则该命令不会提示您输入管理密码。
$ asadmin create-node-agent --host myhost --port 1234 --user admin mynodeagent |
要查看完整的语法,请键入 asadmin help create-node-agent。
使用 start-node-agent 命令并指定节点代理名称可以启动节点代理。例如,要启动节点代理 mynodeagent,请键入以下命令:
$ asadmin start-node-agent --user admin mynodeagent |
要查看完整的语法,请键入 asadmin help start-node-agent。
使用 stop-node-agent 命令并指定节点代理名称可以停止节点代理。例如,要停止节点代理 mynodeagent,请键入以下命令:
$ asadmin stop-node-agent mynodeagent |
要查看完整的语法,请键入 asadmin help stop-node-agent。
服务器实例是使用 start-instance 命令启动的。以下示例将启动名为 myinstance 的服务器实例。该命令提示输入管理密码。
$ asadmin start-instance --host myhost --port 1234 --user admin myinstance |
管理服务器主机为 myhost,管理端口为 1234,管理用户名为 admin。服务器实例 myinstance 可以为群集实例,也可以为独立实例。
要查看完整的语法,请键入 asadmin help start-instance。
服务器实例是使用 stop-instance 命令停止的。以下示例将停止名为 myinstance 的服务器实例。该命令提示输入管理密码。
$ asadmin stop-instance --host myhost --port 1234 --user admin myinstance |
管理服务器主机为 myhost,管理端口为 1234,管理用户名为 admin。服务器实例 myinstance 可以为群集实例,也可以为独立实例。
要查看完整的语法,请键入 asadmin help stop-instance。
要重新启动服务器实例,请停止然后再启动实例。
要进行镜像和提供域管理服务器 (DAS) 的工作副本,您必须拥有以下设备:
一台包含原始 DAS 的计算机 (machine1)。
一台包含群集的计算机 (machine2),该群集具有运行应用程序并满足客户机需要的服务器实例。该群集是使用第一台计算机上的 DAS 配置的。
一台备份计算机,当第一台计算机崩溃时,需要在该备份计算机上重新创建 。
必须对第一台计算机上的 DAS 进行备份。使用 asadmin backup-domain 来备份当前域。
以下步骤用于将域管理服务器从第一台计算机 (machine1) 迁移到第三台计算机 (machine3)。
在第三台计算机上安装应用程序服务器,方法与在第一台计算机上安装相同。
为了可以在第三台计算机上正确地恢复 DAS 并且不会发生路径冲突,您必须执行此操作。
将第一台计算机上的备份 ZIP 文件复制到第三台计算机上的 domain-root-dir 中。也可以通过 FTP(文件传输协议)方式传输文件。
执行 asadmin restore-domain 命令将 ZIP 文件恢复到第三台计算机:
asadmin restore-domain --filename domain-root-dir/sjsas_backup_v00001.zip domain1 |
可以备份任何域。但是,在重新创建域时,域名称应与原始域名称相同。
将第三台计算机上的 domain-root-dir/domain1/generated/tmp 目录的权限更改为与第一台计算机上相同目录的权限相匹配。
该目录的默认权限为:?drwx------?(或 700)。
例如:
chmod 700 domain-root-dir /domain1/generated/tmp
以上示例假定您备份的是 domain1。如果备份的是其他名称的域,应使用要备份的域的名称替换上面的 domain1。
更改第三台计算机的 domain.xml 文件中的主机属性值:
更新第三台计算机上的 domain-root-dir/domain1/config/domain.xml。
例如,搜索 machine1 并将其替换为 machine3。这样,您就可以将:
<jmx-connector><property name=client-hostname value=machine1/>...
更改为:
<jmx-connector><property name=client-hostname value=machine3/>...
将:
<jms-service... host=machine1.../>
更改为:
<jms-service... host=machine3.../>
在 上启动已恢复的域:
asadmin start-domain --user admin-user --password admin-password domain1 |
在 machine2 上更改节点代理下的 DAS 主机属性值。
更改 machine2 上 as-install/nodeagents/nodeagent /agent/config/das.properties 中的 agent.das.host 属性值。
在 machine2 上重新启动节点代理。
使用 asadmin start-instance 命令启动群集实例,可以使这些实例与已恢复的域同步。
Sun Java System Application Server 配置存储在 domain.xml 文件中。domain.xml 是一个表示 Application Server 配置状态的文档。它是给定管理域的中心系统信息库。此文档包含 Application Server 域模型的 XML 表示。domain.xml 的内容由以域 DTD 形式表示的规范控制。
本节包括以下主题:
在进行以下任何配置更改时,请重新启动服务器以使更改生效:
更改 JVM 选项
更改端口号
管理 HTTP 服务、IIOP 服务和 JMS 服务
管理线程池
修改以下 JDBC 连接池属性:
datasource-classname
JDBC 驱动程序供应商的特定属性
associate-with-thread
lazy-connection-association
lazy-connection-enlistment
修改以下连接器连接池属性:
resource-adapter-name
connection-definition-name
transaction-support
供应商特定的属性
associate-with-thread
lazy-connection-association
lazy-connection-enlistment
有关说明,请参见重新启动域。
如果使用动态配置,大多数更改在服务器运行时即生效。要进行以下配置更改,请勿重新启动服务器:
部署和取消部署应用程序
添加或删除 JDBC、JMS 和连接器资源和池
更改日志记录级别
添加文件领域用户
更改监视级别
启用和禁用资源和应用程序
请注意,asadmin reconfig 命令已过时,不再需要此命令。配置更改将被动态应用到服务器。
下表介绍了 Application Server 的端口侦听器。
表 1–2 使用端口的 Application Server 侦听器
侦听器 |
默认端口号 |
说明 |
---|---|---|
管理服务器 |
4848
|
通过管理控制台和 asadmin 实用程序访问域的管理服务器。对于管理控制台,请在浏览器的 URL 中指定端口号。远程执行 asadmin 命令时,请使用 --port 选项指定端口号。 |
HTTP |
8080 |
Web 服务器侦听端口上的 HTTP 请求。要访问已部署的 Web 应用程序和服务,客户机应连接到此端口。 |
HTTPS |
8181 |
为安全通信配置的 Web 应用程序在单独的端口上进行侦听。 |
IIOP |
企业 Bean(EJB 组件)的远程客户机通过 IIOP 侦听器访问 Bean。 |
|
IIOP、SSL |
另一个端口由为安全通信配置的 IIOP 侦听器使用。 |
|
IIOP、SSL 和相互验证 |
另一个端口由为双向(客户机和服务器)验证配置的 IIOP 侦听器使用。 |