2014-11-13 4 views
1

Я создал два sepaerate каталогов, в которых я установил сервер Standalone Mule ESB:Mule ESB: Можно ли запустить 2 экземпляров Mule ESB

/ee/mmc-distribution-mule-console-bundle-3.5.2-HF1 
/ee2/mmc-distribution-mule-console-bundle-3.5.2-HF1 

пускает первый сервер, и ниже является статус:

[[email protected] mmc-distribution-mule-console-bundle-3.5.2-HF1]# ./status.sh 
MMC is running as PID=1998. 
Mule Enterprise Edition is running as PID=2619. 

Затем я пытаюсь запустить второй экземпляр:

[[email protected] mmc-distribution-mule-console-bundle-3.5.2-HF1]# ./startup.sh 
Port 8585 is in use, please make it available and try again. 

Таким образом, очевидно порт 8585 используются оригинальным instnace

Так я останавливаюсь первым instnace, и начать второй istance, который идет вверх успешно, следующим образом:

./startup.sh 
Please enter the desired port for Mule [Default 7777]: 

Starting MMC, please wait... 

    class com.sun.jersey.multipart.impl.MultiPartConfigProvider 
    class com.sun.jersey.multipart.impl.MultiPartReader 
    class com.sun.jersey.multipart.impl.MultiPartWriter 
[11-13 16:49:19] WARN HttpSessionSecurityContextRepository [http-bio-8585-exec-1]: Failed to create a session, as response has been committed. Unable to store SecurityContext. 
[11-13 16:49:32] WARN HttpMethodBase [http-bio-8585-exec-12]: Going to buffer response body of large or unknown size. Using getResponseBodyAsStream instead is recommended. 
[11-13 16:49:38] WARN HttpSessionSecurityContextRepository [http-bio-8585-exec-12]: Failed to create a session, as response has been committed. Unable to store SecurityContext. 
Nov 13, 2014 4:49:50 PM org.apache.catalina.core.StandardServer await 
INFO: A valid shutdown command was received via the shutdown port. Stopping the Server instance. 
Nov 13, 2014 4:49:50 PM org.apache.coyote.AbstractProtocol pause 
INFO: Pausing ProtocolHandler ["http-bio-8585"] 

Но обратите внимание, что, похоже, используют 8585 для кота (из которых я знаю немного о, кроме него какого-то сервера приложений, никогда не использовал его)

Я изучил этот сайт:

http://www.mulesoft.org/documentation/display/33X/Running+Multiple+Mule+Instances

, но он не обсуждает проблему., И страница, на которую она указывает, не кажется текущей. Разве я неправильно что-то

Можно ли запустить две отдельные экземпляры Mule ESB одновременно

и если да, то как? (Как бы я изменить порт его помощью, какой файл я должен изменить)

Благодаря


редактирование: мой второй пост в ответ на ответ:

(BTW: Я использую Mule ESB standalone Enterprise Edition 3.5.2)

Чтобы убедиться, что у меня не было приложений, работающих под управлением , на порт 8585, я отключил свой исходный экземпляр и создал два новых экземпляра и убедился, что ни одно приложение не было развернуто ни в одном экземпляре ,

Я воспитывался первый экземпляр без проблем, но второй экземпляр я воспитан по-прежнему дает мне порт 8585 по ошибке использования (от Startup.sh)

Этот сайт говорит, что порт MMC по умолчанию 7777, но порт по умолчанию на кота, который он работает в 8585

http://www.mulesoft.org/documentation/display/current/Setting+Up+MMC-Mule+ESB+Communications 

Я использовал следующую команду, чтобы найти все файлы в моем втором экземпляре Пор т 8585

find . -type f |xargs grep "8585 

Другие, чем файлы журналов я получил два удара

startup.sh 

    and 

/mmc-3.5.2-HF1/apache-tomcat-7.0.52/conf/server.xml 

Я не нашел в любом случае в $ MULE_HOME/приложение/MMC/мул-config.xml (вероятно, потому что у меня нет приложения, развернутого)

В сервер.XML, ММС, по-видимому использует для кот обрабатывать applicaiton MMC и server.xml содержит следующее:

<Connector port="8585" protocol="HTTP/1.1" 

Так что я думаю, я мог изменить 8585 до 8586 на данный момент, но ...

В файле startup.sh есть серверный (около 9 или 10) хард-код для ссылок на 8585, чтобы проверить, работает ли MMC, и предпринимать действия, если он запущен или не работает

Так что я действительно должен изменить весь startup.sh заменить 8585 8586 i вторым экземпляром, а также изменить ссылку server85.xml port 8585?

Благодаря

ответ

3

Вы можете запускать столько экземпляров, сколько вы хотите, до тех пор они не используют одни и те же порты. Похоже, вы развертываете что-то в порту 8585, поэтому во втором случае вам нужно выбрать другой порт. Этот порт используется в любом приложении, которое вы разработали и развернули в среде исполнения Mule?

Кроме того, если вы используете Mule runtime с активированным агентом MMC, вам также необходимо изменить порт для агента во втором экземпляре. Я думаю, что вы можете сделать это в /conf/wrapper.conf или путем передачи в сценарий запуска следующего параметра:

-Dmule.mmc.bind.port=7778 

(или любой порт, который является бесплатным).

+0

Startup.sh запрашивает порт MMC (по умолчанию - 7777), но, как я уже говорил в своем втором редактировании в моем самом начале, MMC имеет порт определения 777, но th etomcat, который имеет полномочия, имеет порт def 8585. Приложения не запущены. Является ли решение, которое я предлагаю в своем втором редактировании моего вопроса, является жизнеспособным решением проблемы 8585? (Я использую автономный EE 3.5.2) – user3407479

+0

mquintas: Теперь, когда я использую ./mule вместо ./startup.sh, все в порядке, и весь ваш ответ работал отлично. спасибо – user3407479

0

Вы можете запускать столько, сколько хотите. В MMC мы можем развернуть и запустить множество приложений. У каждого приложения есть свой собственный экземпляр.