Назад | Перейти на главную страницу

Путаница при настройке простой кластеризации tomcat6 в ubuntu 12.04 с использованием mod_jk: страница статуса не отображается

Я немного запутался при настройке кластера из 2 экземпляров tomcat6 на чистом сервере ubuntu 12.04. я не устанавливал по умолчанию tomcat6 я использовал tomcat6-userс tomcat6-instance-create создать 2 экземпляра. я использую blogs.encodo.ch учебник, к сожалению, я не встречал ни одного учебника по ubuntu с тем, как apache2 настроен как ubuntu 12.o4. я имею в виду структуру sites-available/enabled папка и mods-available/enabled который использует Ubuntu.
я установил libapache2-mod-jk и mods-enabled имеет jk.load, jk.conf.

server instance-1 uses port 8081 for http, port 8009 for ajp with jvmRoute="worker1" and instance-2 uses port 8082 for http, port 8010 for ajp with jvmRoute="worker2"

#/etc/apache2/workers.propeties
 worker.list=loadbalancer,jk-status

#setup instance-1
worker.instance-1.port=8009
worker.instance-1.host=localhost
worker.instance-1.type=ajp13
#worker.instance-1.lbfactor=50

#setup instance-2
worker.instance-2.port=8010
worker.instance-2.host=localhost
worker.instance-2.type=ajp13
#worker.instance-2.lbfactor=100

#setup the load-balancer
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=instance-1,instance-2
worker.loadbalancer.sticky_session=True
#worker.loadbalancer.sticky_session_force=True

# Status worker for managing load balancer
worker.status.type=jk-status

вот /etc/apache2/mods-available/jk.conf

<IfModule jk_module>
    JkWorkersFile /etc/apache2/workers.properties

    JkLogFile /var/log/apache2/mod_jk.log

    JkLogLevel info

    JkShmFile /var/log/apache2/jk-runtime-status

    JkWatchdogInterval 60

    <Location /jk-status>
    # Inside Location we can omit the URL in JkMount
    JkMount jk-status
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1 xxx.xxx.xxx.xxx
    </Location>
    <Location /jk-manager>
    # Inside Location we can omit the URL in JkMount
    JkMount jk-manager
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1 xxx.xxx.xxx.xxx
    </Location>

    # Example for Mounting a context to the worker "balancer"
    # The URL syntax "a|b" instantiates two mounts at once,
    # the first one is "a", the second one is "ab".
    # JkMount /myapp|/* balancer

    # Example for UnMounting requests for all workers
    # using a simple URL pattern
    # Since: 1.2.26
    # JkUnMount /myapp/static/* *

    # Example for UnMounting requests for a named worker
    # JkUnMount /myapp/images/* balancer

    # Example for UnMounting requests using regexps
    # SetEnvIf REQUEST_URI "\.(htm|html|css|gif|jpg|js)$" no-jk

    # Example for setting a reply timeout depending on the requets URL
    # Since: 1.2.27
    # SetEnvIf Request_URI "/transactions/" JK_REPLY_TIMEOUT=600000

    # Example for disabling reply timeouts for certain request URLs
    # Since: 1.2.27
    # SetEnvIf Request_URI "/reports/" JK_REPLY_TIMEOUT=0
</IfModule>

вот мой виртуальный хост

<VirtualHost *:80>
  ServerAdmin support@myserver.com
  ServerAlias live.myserver.com
  #DocumentRoot /var/www
  ServerName go2.myserver.com
  JkMount /* loadbalancer
  JkMount /status/* jk-status
  JkMount /jk-manager/* jk-status
  #Loglevel warn
  ErrorLog /var/log/apache2/go.myserver_error_log
  CustomLog /var/log/apache2/go.myserver_access_log combined
</VirtualHost>

РЕДАКТИРОВАТЬ: после нескольких часов борьбы сама балансировка нагрузки, кажется, работает. просто я не могу получить доступ к странице диспетчера балансировщика нагрузки через xxx.xxx.xxx.xxx/jk-status ни xxx.xxx.xxx.xxx/jk-manager. есть также эти записи в mod_jk.log файл

[Mon May 06 13:34:48.633 2013] [9845:139723554592576] [info] init_jk::mod_jk.c (3252): mod_jk/1.2.32 () initialized
[Mon May 06 13:34:48.633 2013] [9845:139723554592576] [error] uri_worker_map_ext::jk_uri_worker_map.c (506): Could not find worker with name 'jk-manager' in uri map post processing.
[Mon May 06 13:34:48.633 2013] [9845:139723554592576] [error] uri_worker_map_ext::jk_uri_worker_map.c (506): Could not find worker with name 'jk-status' in uri map p/var/log/apache2/mod_jk.log

Вопрос 1 : что мне не хватает? почему не работает?

вопрос 2 : это #DocumentRoot /var/www действительно необходимо?

Вопрос 3 : в чем разница между JkMount в IfModule файла jk.conf и JkMount из virtualhost

Пожалуйста, помогите мне настроить это правильно. Спасибо