使用 wsadmin 脚本编制启动 wsadmin 脚本编制客户机
可以使用 wsadmin 工具来配置和管理应用程序服务器、应用程序部署和服务器运行时操作。
有关此任务
- wsadmin 工具仅支持 Jython 和 Jacl 脚本语言。
版本6.1释放WebSphere Application Server表示与 wsadmin 工具关联的 Jacl 语法的弃用过程的开始。 wsadmin 工具的 Jacl 语法继续保留在产品中且至少受两个主要产品发行版支持。 此后,可能会从 wsadmin 工具中移除 Jacl 语言支持。 wsadmin 工具的 Jython 语法是 WebSphere Application Server 管理自动化的策略方向。 应用程序服务器提供了显著增强的管理功能和工具(支持产品自动化和 Jython 语法的使用)。
避免麻烦:并非所有WebSphere® Application Server组件类都打包在同一个.jar文件。 如果您要使用 wsadmin 工具来运行 Jython 脚本,那么在 wsadmin 命令上包括 jython.package.path 系统属性以确保在启动 wsadmin 期间将所有需要的 JAR 文件设置为 jython 程序包路径。./wsadmin.sh -lang jython -javaoption "-Djython.package.path=/usr/WebSphere70/AppServer/plugins/com.ibm.ws.wlm.jar"如果你想调用WebSphere Application Server不同功能WebSphere Application Server打包在.jar除文件之外的其他文件runtime.jar和admin.jar,您可以在指定的路径中包含多个 jar 文件jython.package.path系统属性,并用分号(;)分隔。
./wsadmin.sh -lang jython -javaoption "-Djython.package.path=/usr/WebSphere70/AppServer/plugins/com.ibm.ws.wlm.jar;com.ibm.ws.wccm.jar"如果你想调用WebSphere Application Server使用 ws_ant 在 jython 脚本中创建函数,您可以创建一个.prop文本文件,并在该文件中包含以下行:
jython.package.path=/usr/WebSphere70/AppServer/plugins/com.ibm.ws.wlm.jar然后在 ant 脚本 xml 文件中包括属性文件。 例如:
<taskdef name="wsadmin" classname="com.ibm.websphere.ant.tasks.WsAdmin"/> <target name="main" > <wsadmin conntype="NONE" lang="jython" failonerror="true" properties="/tmp/jython.prop" script="/home/fsgapp/MSTWasBuild/project/scripts/socr/socr/jython/configure.py"> </wsadmin> </target> - wsadmin 工具对运行相同版本或更高版本产品的应用程序服务器的安装、配置、部署和运行时操作进行管理。 wsadmin 工具无法连接至其运行的产品版本低于 wsadmin 工具版本的应用程序服务器。 例如,V7.x wsadmin 客户机无法连接到 V6.x 应用程序服务器。 但是,V6.x wsadmin 客户机能够连接到 V7.x 应用程序服务器。 因为在每个产品发行版中对 wsadmin 工具添加了新功能,所以存在此限制。 无法在运行先前产品版本的应用程序服务器上使用新的命令功能。
过程
- 找到启动 wsadmin 脚本编制客户机的命令。
选择下列其中一个选项:
- 请使用特定概要文件来调用脚本进程。 用于调用脚本进程的 QShell 命令在 profile_root/bin 目录中。 QShell 脚本的名称是
wsadmin。 如果使用此选项,那么不必指定-profileName profile_name参数。 - 请使用缺省概要文件来调用脚本进程。 wsadmin Qshell
命令在 app_server_root/bin 目录中。 如果您不想连接到缺省概要文件,那么必须指定
-profileName profile_name参数来指示要使用的概要文件。
- 请使用特定概要文件来调用脚本进程。 用于调用脚本进程的 QShell 命令在 profile_root/bin 目录中。 QShell 脚本的名称是
- 查看 wsadmin 工具的其他连接选项。您可以用几种不同的方法启动 wsadmin 脚本编制客户机。 要指定运行脚本的方法,执行下列 wsadmin 工具选项中的某个:
- 交互地运行脚本命令
使用除
-f或-c之外的选项运行 wsadmin 或不使用选项运行 wsadmin。 wsadmin 工具通过 wsadmin 提示符来启动和显示交互式 shell。 在 wsadmin 提示下,输入任何 Jacl 或 Jython 命令。 您也可以使用 AdminControl、AdminApp、AdminConfig、AdminTask 或 Help wsadmin 对象调用命令。 要脱离交互式脚本会话,使用 quit 或 exit 命令。 这些命令不带任何参数。以下示例用于启动 wsadmin 工具:- 使用 Jython 启动 wsadmin 工具:
wsadmin -lang jython - 在启用安全性时使用 Jython 启动 wsadmin 工具:
wsadmin -lang jython -user user_name -password password - 不带选项使用 Jacl 启动 wsadmin 工具:
wsadmin -lang jacl
- 使用 Jython 启动 wsadmin 工具:
- 作为各自命令运行脚本命令
使用 -c 选项运行 wsadmin 工具。
以下示例分别运行命令:- 使用 Jython 运行 AdminApp 对象的 list 命令:
wsadmin -lang jython -c "AdminApp.list()" - 使用 Jacl 运行 AdminApp 对象的 list 命令:
wsadmin -c "$AdminApp list"
- 使用 Jython 运行 AdminApp 对象的 list 命令:
- 按脚本运行脚本命令
使用
-f选项运行 wsadmin 工具,并将您要运行的命令放入文件中。以下示例运行脚本:- 使用 Jython 运行 a1.py 脚本:
wsadmin -lang jython -f al.py其中 a1.py 文件包含下列命令:
apps = AdminApp.list() print apps
- 使用 Jython 运行 a1.py 脚本:
- 在概要文件脚本中运行脚本命令
概要文件脚本是一个脚本,它在主脚本之前或在进入交互方式之前运行。 您可以使用概要文件脚本来设置为用户或安装定制的脚本环境。
默认情况下,可能会为以下配置文件脚本文件配置com.ibm.ws.scripting.profiles配置文件属性应用程序服务器根目录/properties/wsadmin.properties文件:- 应用程序服务器根目录/bin/securityProcs.jacl
- 应用程序服务器根目录/bin/LTPA_LDAPSecurityProcs.jacl
缺省情况下,这些文件的格式为 ASCII。 如果使用
profile.encoding选项来运行 EBCDIC 编码的概要文件脚本文件,请将这些文件的编码更改为 EBCDIC。要在概要文件脚本中运行脚本编制命令,使用
-profile选项运行 wsadmin 工具,并将要运行的命令包括在概要文件脚本中。要定制脚本环境,请指定一个或多个要运行的概要文件脚本。
创建概要文件时不要在节点名中使用圆括号。
以下示例运行概要文件脚本:- 使用 Jython 运行 a1prof.py 脚本:
wsadmin -lang jython -profile alprof.py其中 a1prof.py 文件包含下列命令:
apps = AdminApp.list() print "Applications currently installed:\n " + apps
- 使用 Jacl 运行 a1prof.py 脚本:
wsadmin -profile alprof.jacl其中 a1prof.py 文件包含下列命令:
set apps [$AdminApp list] puts "Applications currently installed:\n$apps"
结果
当向服务器进程建立连接时,wsadmin 会返回下列输出:
Applications currently installed:
DefaultApplication
ivtApp
query
WASX70311: For help, enter: "print Help.help()"
wsadmin>Applications currently installed:
DefaultApplication
ivtApp
query
WASX70311: For help, enter: "$Help help"
wsadmin>