Использование Maven для развертывания в кластерах Weblogic

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>

person Mark Sailes    schedule 21.01.2010    source источник
comment
Удаленное развертывание через консоль работает нормально?   -  person Pascal Thivent    schedule 21.01.2010
comment
Тогда странно, потому что ваша конфигурация выглядит нормально. Логи показать?   -  person Pascal Thivent    schedule 21.01.2010
comment
Сервер администратора не копирует приложение на вторую машину, я не знаю почему. У него есть место, разрешения...   -  person Mark Sailes    schedule 26.01.2010
comment
Не прямой ответ (жесткий без следов), но я бы попытался заставить работать инструмент weblogic.Deployer, а затем воспроизвести конфигурацию.   -  person Pascal Thivent    schedule 27.01.2010
comment
Что ответили на это? Я в такой же ситуации. Атрибут ‹weblogic.targetNames› не работает (невозможно выполнить развертывание в кластере по имени).   -  person 8bitjunkie    schedule 24.10.2013


Ответы (1)


Это может не иметь отношения, потому что мой опыт был только с WebLogic 10, но...

Убедитесь, что вы правильно настроили кластер, потому что это должен быть WebLogic (а не Maven или какой-либо плагин), который отвечает за распространение развернутого приложения на каждый управляемый сервер. Плагин maven должен когда-либо развертываться только на сервере администратора, а WebLogic обрабатывает всю остальную магию, чтобы убедиться, что каждый управляемый сервер, о котором он знает, также развертывает приложение. Я не думаю, что тот факт, что вы используете MOJO, имеет значение.

Кроме того, убедитесь, что NodeManager правильно настроен и работает. NodeManager (по крайней мере, в WebLogic 10) отвечает за всю связь между узлами. Возможно, ваш процесс NodeManager завис или убит на управляемом сервере, который не получает приложение. Однако это маловероятно, если вы пытались выполнить развертывание из консоли администратора, о чем вы заявили, что пытались в своих комментариях к исходному вопросу.

Надеюсь, это приведет вас в правильном направлении.

person Jesse Webb    schedule 07.01.2011