使用 Maven 部署到 Weblogic 集群

Posted

技术标签:

【中文标题】使用 Maven 部署到 Weblogic 集群【英文标题】:Using Maven to Deploy to Weblogic Clusters 【发布时间】:2011-01-07 16:59:18 【问题描述】:

org.codehaus.mojo weblogic-maven-插件 2.9.1

我们目前正在成功使用 weblogic maven 插件部署到我们的本地 WebLogic 9.2 实例。

当我们尝试部署到远程环境时,我们遇到了问题。我们使用两台机器集群,管理服务器和托管服务器在一台机器上,另一台托管服务器在单独的机器上。

当您的插件将应用程序上传到管理服务器时,它不会将其复制到单独机器上的第二个托管服务器。这会导致第二个托管服务器出现问题,因为它无法在管理服务器将其保存在自己机器上的位置找到应用程序。

下面的配置

            <configuration>
                <adminServerHostName>$weblogic.adminServerHostName</adminServerHostName>
                <adminServerPort>$weblogic.adminServerPort</adminServerPort>
                <adminServerProtocol>$weblogic.adminServerProtocol</adminServerProtocol>
                <userId>$weblogic.userId</userId>
                <password>$weblogic.password</password>
                <upload>$weblogic.upload</upload>
                <remote>$weblogic.remote</remote>
                <verbose>$weblogic.verbose</verbose>
                <debug>$weblogic.debug</debug>
            <stage>$weblogic.stage</stage>
                <targetNames>$weblogic.targetNames</targetNames>
                <exploded>$weblogic.exploded</exploded>
            </configuration>

<profile>
  <id>localhost</id>
  <properties>
<weblogic.adminServerHostName>localhost</weblogic.adminServerHostName>
    <weblogic.adminServerPort>7001</weblogic.adminServerPort>
    <weblogic.adminServerProtocol>t3</weblogic.adminServerProtocol>
    <weblogic.userId>weblogic</weblogic.userId>
    <weblogic.password>weblogic</weblogic.password>
    <weblogic.upload>false</weblogic.upload>
    <weblogic.remote>false</weblogic.remote>
    <weblogic.verbose>true</weblogic.verbose>
    <weblogic.debug>true</weblogic.debug>
<weblogic.stage>false</weblogic.stage>
    <weblogic.targetNames>AdminServer</weblogic.targetNames>
    <weblogic.exploded>false</weblogic.exploded>
  </properties>
</profile>

<profile>
  <id>dev</id>
  <properties>
<weblogic.adminServerHostName>******</weblogic.adminServerHostName>
    <weblogic.adminServerPort>9141</weblogic.adminServerPort>
    <weblogic.adminServerProtocol>t3</weblogic.adminServerProtocol>
    <weblogic.userId>******</weblogic.userId>
    <weblogic.password>******</weblogic.password>
    <weblogic.upload>true</weblogic.upload>
    <weblogic.remote>true</weblogic.remote>
    <weblogic.verbose>true</weblogic.verbose>
    <weblogic.debug>true</weblogic.debug>
<weblogic.stage>true</weblogic.stage>
    <weblogic.targetNames>dev_cluster01</weblogic.targetNames>
    <weblogic.exploded>false</weblogic.exploded>
  </properties>
</profile>

【问题讨论】:

通过控制台进行远程部署可以正常工作吗? 那么奇怪,因为您的配置看起来不错。有什么要显示的日志吗? 管理服务器没有将应用程序复制到第二台机器,我不知道为什么。它有空间,权限...... 不是一个直接的答案(很难没有痕迹),但我会尝试让 weblogic.Deployer 工具工作,然后复制配置。 这个问题的答案是什么?我也有同样的情况。 属性不起作用(无法按名称部署到集群)。 【参考方案1】:

这可能不相关,因为我的经验只使用过 WebLogic 10,但是...

确保您已正确配置集群,因为它应该是负责将部署的应用程序分发到每个托管服务器的 WebLogic(而不是 Maven 或任何插件)。 maven 插件应该只部署到管理服务器,WebLogic 处理所有其他魔法以确保它知道的每个托管服务器也部署应用程序。我不认为你使用 MOJO 的事实是相关的。

此外,请确保您已正确配置 NodeManager 并且它正在运行。 NodeManager(至少在 WebLogic 10 上)负责节点之间的所有通信。可能是您的 NodeManager 进程在未获取应用程序的托管服务器上挂起或终止。但是,如果您尝试从 Admin Console 进行部署,而您声明您确实在原始问题的 cmets 中进行了尝试,则这种情况不太可能发生。

希望这会引导您朝着正确的方向前进。

【讨论】:

以上是关于使用 Maven 部署到 Weblogic 集群的主要内容,如果未能解决你的问题,请参考以下文章

Weblogic集群部署

weblogic集群问题

weblogic 集群 中 一个域下一个服务 启动报错。错误代码如下,请帮忙

Jenkins+Jdk+Git+Maven持续集成部署Weblogic实例项目

WebLogic部署集群和代理服务器

使用Docker快速部署ES单机或ES集群