我有一个设置,我在一组WebLogic 9.2服务器上运行Oracle BPELstream程pipe理器。 我在另一台服务器上有一个发布pipe理系统,使用Ant构build和部署BPEL服务器到这些服务器。 Oracle的build议是将行李箱显式部署到BPEL PM集群中的第一个节点,随后重新启动所有其他节点(而不是直接将行李箱部署到每个节点中)。
我在Ant脚本中执行以下任务来执行这组活动:
<wlserver host="${node.hostname}" port="${node.port}" configFile="${user.home}/.ant/weblogic/config/${env}/${node.config}" username="${bpel.cluster.user}" password="${bpel.cluster.password}" action="reboot"/>
但是,此任务似乎要启动本地服务器,然后发出“重新启动”命令,而不是连接到远程实例并重新启动它。 事实上,到目前为止,我发现几乎所有的例子似乎都假定我要在工作站上部署/configuration/pipe理一个域,或者我要在域名所在的服务器上执行Ant脚本configuration。 我不想要这些。
有没有一种方法来从Ant中以编程方式pipe理远程WebLogic域?
您可以通过wlserver ANT任务远程重新启动WebLogicpipe理的服务器,但这些请求必须通过域pipe理服务器完成。 例如:
<wlserver adminserverurl="t3://myadminhost:7001" username="weblogicAdminUser" password="weblogicPassword" servername="MyManagedServer" action="reboot" noExit="true"/>
话虽如此,使用ANT任务重新启动托pipe服务器可能是不可靠的。 我build议使用Weblogic脚本工具(WLST)来代替。
答案是肯定的。 有可能更好的方法,但这是我如何做到这一点:
我的Ant设置使用maverick-ssh库来打开服务器的ssh连接(ssh任务)。 然后它将我们的部署(zip和war文件)传输到服务器,然后exec是一个使用WLST将其部署到“本地”服务器上的shell脚本。
这是ant的任务:
<target name="transfer-build" description=""> <property name="transfer.host" value="${deploy.host}"/> <property name="transfer.user" value="${deploy.user}"/> <property name="transfer.pass" value="${deploy.pass}"/> <property name="transfer.cwd" value="${dir.war.tmp}"/> <property name="transfer.conf" value="${file.conf_zip}"/> <property name="transfer.war" value="${file.tds_war}"/> <ssh host="${transfer.host}" username="${transfer.user}" password="${transfer.pass}" version="2"> <sftp action="put" remotedir="${dir.deploy}" verbose="false"> <fileset dir="${transfer.cwd}" > <include name="${transfer.conf}"/> <include name="${transfer.war}"/> </fileset> </sftp> <exec cmd="~/deploy-build.sh ${transfer.conf} ${transfer.war}"/> </ssh> </target>
以及deploy-build.sh脚本中的相关部分:
# issue the redeploy command java weblogic.Deployer -adminurl t3://`hostname`:9000 -user weblogic -password weblogicadmin -name fooapp -deploy /path/to/weblogic/user_projects/domains/mydomain/fooapp.war
对于WLST命令调用的信任转到了一些我找不到的BEA帮助文档。