可以使用脚本编制和 wsadmin 工具来传播节点更改。
开始之前
可通过两种方法来完成本任务。本主题使用 AdminControl
对象来同步节点。或者,可以使用 AdminNodeManagement 脚本库中的节点管理脚本来同步特定节点,或同步所有活动的节点。
关于此任务
节点同步是必需的,这样才能将配置更改传播到受影响的一个或几个节点。缺省情况下,只要节点可与 Deployment Manager 通信,此情况就会定期地发生。可以通过运行用于同步配置的命令来显式地传播更改。
过程
- 为节点同步设置变量。
使用 Jacl:
set Sync1 [$AdminControl completeObjectName type=NodeSync,process=nodeagent,node=myNodeName,*]
使用 Jython:
Sync1 = AdminControl.completeObjectName('type=NodeSync,process=nodeagent,node=myNodeName,*')
表 1. AdminControl completeObjectName 命令描述. 从 wsadmin 命令行运行命令。属性 |
定义 |
set |
是 Jacl 命令 |
Sync1 |
是变量名 |
$ |
是使用其值替换变量名的 Jacl 运算符 |
AdminControl |
是一个对象,它启用产品进程中运行的 MBean 的操作 |
completeObjectName |
是 AdminControl 命令 |
type=NodeSync,process=nodeagent,node=myNodeName |
是对象名的片段。此命令会返回完整名称。此片段用来查找匹配的对象名,该对象是节点 myNodeName 的 SyncNode 对象,其中 myNodeName 是用来使配置更改同步的节点名称。例如:type=Server, name=serv1。
它可以是域和键属性的任何有效组合。例如,类型、名称、单元、节点以及进程等。 |
示例输出:
WebSphere:platform=common,cell=myNetwork,version=5.0,name=node
Sync,mbeanIdentifier=nodeSync,type=NodeSync,process=nodeagent,node=myBaseNode,
process=nodeagent
- 通过发出以下命令来使节点同步:
表 2. AdminControl invoke 命令描述. 从 wsadmin 命令行运行命令。属性 |
定义 |
$ |
是使用其值替换变量名的 Jacl 运算符 |
AdminControl |
是一个对象,它启用运行在产品进程中的 MBean 的操作 |
invoke |
是 AdminControl 命令 |
Sync1 |
对步骤 1 中指定的服务器标识所求的值 |
sync |
是 modify 命令的属性 |
示例输出:
true
如果同步完成,那么接收到的输出值为
true。
结果
同步完成后,在 Deployment Manager 的 config 目录中创建的文件现在必须存在于 myNodeName 节点上的 app_server_root/config 目录中。