Application Server 的管理包括创建、配置、控制和管理域、群集、节点代理和服务器实例等任务。本节包括以下主题:
域是使用 create-domain 命令创建的。以下示例命令将创建名为 mydomain 的域。管理服务器在端口 1234 上进行侦听,管理用户名为 hanan。该命令提示输入管理密码和主密码。
$ asadmin create-domain --adminport 1234 --adminuser hanan mydomain |
要为 mydomain 域启动管理控制台,请在浏览器中输入以下 URL:
http://主机名:1234 |
对于前面的 create-domain 示例,域的日志文件、配置文件和部署的应用程序现在位于以下目录中:
domain-root-dir/mydomain
要在其他位置创建域的目录,请指定 --domaindir 选项。要查看完整的命令语法,请键入 asadmin help create-domain。
使用 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 |
myhost 为管理服务器主机,1234 为管理端口,admin 为管理用户名。
要查看完整的语法,请键入 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。该命令提示输入管理密码。
$ 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。
服务器实例是使用 create-instance 命令创建的。以下示例将创建名为 myinstance 的实例。管理服务器主机为 myhost,管理服务器端口为 1234,管理用户名为 admin。该命令提示输入管理密码。
以下示例将创建名为 myinstance 的群集服务器实例。该命令提示输入管理密码。
$ asadmin create-instance --host myhost --port 1234 --user admin --cluster mycluster --nodeagent mynodeagent myinstance |
myhost 为管理服务器主机,管理端口为 1234,管理用户名为 admin,此服务器实例所属的群集为 mycluster,管理此服务器实例的节点代理为 mynodeagent。
要查看完整的语法,请键入 asadmin help create-instance。
要创建独立服务器实例,请不要指定 --cluster 选项。
以下示例将创建名为 myinstance 并由名为 mynodeagent 的节点代理管理的独立服务器实例。
$ asadmin create-instance --host myhost --port 1234 --user admin --nodeagent mynodeagent myinstance |
服务器实例是使用 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。
要重新启动服务器实例,请停止然后再启动实例。
要进行镜像和提供域管理服务器 (Domain Administration Server, DAS) 的工作副本,您必须拥有以下设备:
一台包含原始 DAS 的计算机 (machine1)。
一台包含群集的计算机 (machine2),该群集具有运行应用程序并满足客户机需要的服务器实例。该群集是使用第一台计算机上的 DAS 配置的。
一台备份计算机 (machine3),当第一台计算机崩溃时,需要在该备份计算机上重新创建 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.../>
在 machine3 上启动已恢复的域:
asadmin start-domain --user admin-user --password admin-password domain1 |
在 machine2 上更改节点代理下的 DAS 主机属性值。
更改 machine2 中 install-dir/nodeagents/nodeagent/agent/config/das.properties 中的 agent.das.host 属性值。
在 machine2 上重新启动节点代理。
使用 asadmin start-instance 命令启动群集实例,可以使这些实例与已恢复的域同步。
要重新设置管理员密码,必须停止域中的所有节点代理。这将停止所有关联的服务器实例。此时,所有的服务器实例和节点代理均停止,只有域管理服务器 (Domain Administration Server, DAS) 在运行。
现在,您可以按如下方式更改管理用户的密码:
使用命令行界面更改管理密码:
asadmin update-file-user --authrealmname admin-realm ... --userpassword newpassword <admin-user-name>
使用管理控制台更改管理密码:
选择管理服务器的配置节点>“安全性”>“领域”>“管理领域”>“编辑文件领域用户”。
将显示一条指示您已经成功更改了管理员密码的消息。
按如下方式使用新密码重新启动域管理服务器 (Domain Admin Server, DAS):
使用命令行界面:asadmin start-domain --user admin --password newpassword domain1
假设进行了以下配置:域中具有两个节点代理 (i1na, c1-na) 以及三个实例(c1i1 和 c1i2 位于名为 c1 的相同群集中,i1 为独立服务器实例)。
使用新密码重新启动代理节点而不启动实例。
例如:
asadmin start-node-agent --user admin --password newpassword --startinstances=false i1-na asadmin
asadmin start-node-agent --user admin --password newpassword --startinstances=false c1-na
重新启动服务器和群集。
asadmin start-node-agent --user admin --password newpassword ... c1
asadmin start-node-agent --user admin --password newpassword i1