2013-07-24 3 views
0

Новичкам к этой технологии, следовательно, pls будет нежным. Цель - настроить балансировку нагрузки Tomcat с помощью mod_jk. Моя установка находится ниже (все на одной машине):Tomcat load-balancing с mod_jk

Win7 x64 Apache HTTPD 2.2 Tomcat 6 mod_jk 1.2.37 (для httpd2.2.x) 2 экземпляра Tomcat (та же машина)

Я правильно настроил Tomcat и могу получить доступ к webapps через localhost: 8080 и localhost: 8081. Но когда я пытаюсь получить доступ к webapps через Httpd (localhost/dept1 или localhost/dept2), я получаю «404 Not Found». Запрошенный URL/dept1 не найден на этом сервере. Httpd работает при доступе по URL-адресу, http: // localhost «Это работает!»

Единственные линии добавлены в httpd.conf (apache2.2) являются:

LoadModule jk_module modules/mod_jk.so 
JkWorkersFile C:/ApacheHTTPD/conf/workers.properties 
JkLogFile C:/ApacheHTTPD/logs/mod_jk.log 
JkLogLevel emerg 
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]" 
JkOptions +ForwardKeySize +ForwardURICompat +ForwardDirectories 
JkRequestLogFormat "%w %V %T %p %q %r %v %U" 
JkMount /%CATALINA_HOME%/webapps/dept1/* tomcatbase 
JkMount /%CATALINA_HOME2%/webapps/dept2/* tomcat1 

workers.properties файл содержит:

worker.list=tomcatbase,tomcat1 
worker.tomcatbase.type=ajp13 
worker.tomcatbase.host=localhost 
worker.tomcatbase.port=8009 
worker.tomcat1.type=ajp13 
worker.tomcat1.host=localhost 
worker.tomcat1.port=8010 

Все остальные установка (Apache и примеры 2 Tomcat) по умолчанию. Теперь, http: // localhost: 8080/dept1 работает. Так что перенаправление с Apache на Tomcat не работает?

Заранее спасибо Bharath

+0

Не в тему, но я бы неплохо посмотрел на mod_proxy и mod_proxy_balancer. Он делает то же самое, и на порядок легче настраивать. – EJP

+0

спасибо. Я также попытаюсь понять mod_proxy/balancer. Я пытаюсь разобраться с этим сейчас, так как я работаю над обучением балансировщиков. – user2613730

ответ

0

Попробуйте это:

JkMount /dept1/* tomcatbase 
JkMount /dept2/* tomcat1 

Первый параметр директивы JkMount является URL префиксом, а не локальный путь.

JkMount [URL prefix] [Worker name] 

Для получения более подробной информации, см. http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html.

+0

, который помог! Спасибо! Я удалил «/» в JkMount «/ dept1/*», чтобы при вводе только localhost/dept1 я получаю веб-приложение. Таким образом, это означает, что Apache получает путь от webapps от Tomcat через перенаправление портов AJP. Это верно? Я пытаюсь понять, как все это связывает вместе. Я читаю онлайн, но иногда базовые руки при настройке дают более четкое изображение. – user2613730

+0

Нет, mod_jk не получает путь к веб-папкам. Он перенаправляет запросы на порт ajp Tomcat. BTW, [это сообщение в блоге] (http://www.tomcatexpert.com/blog/2010/06/16/deciding-between-modjk-modproxyhttp-and-modproxyajp) может помочь вам узнать разницу между mod_jk и mod_proxy_xxx. –

Смежные вопросы