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

Балансировка нагрузки с использованием Httpd mod_cluster и tomcat не работает

Я пытаюсь настроить балансировщик нагрузки с помощью Httpd, mod_cluster и Tomcat. Мой Httpd работает на том же сервере с IP 192.168.9.73, на котором запущен tomcat. Вот моя конфигурация Httpd -

Listen *:9999

<VirtualHost *:9999>

 ManagerBalancerName cluster

 <Directory />
  Order deny,allow
  Deny from none
  Allow from all
 </Directory>

 ProxyPass / balancer://cluster/ stickysession=JSESSIONID|jsessionid nofailover=On
 ProxyPassReverse / balancer://cluster/

 KeepAliveTimeout 300
 MaxKeepAliveRequests 0
 ServerAdvertise On
 AdvertiseGroup 224.0.1.105:23364
 AdvertiseFrequency 5
 <Location /mod_cluster_paas>
  SetHandler mod_cluster-manager
  Order deny,allow
  Deny from none
  Allow from all
 </Location>

</VirtualHost>

и Tomcat server.xml-

<Engine name="jboss.web" defaultHost="localhost" jvmRoute="node1">
    <Listener className="org.jboss.modcluster.container.catalina.standalone.ModClusterListener" advertise="true" proxyList="192.168.9.73:9999"/>

    <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="6">

          <Manager className="org.apache.catalina.ha.session.BackupManager" expireSessionsOnShutdown="false" notifyListenersOnReplication="true" mapSendOptions="6"/>

         <Channel className="org.apache.catalina.tribes.group.GroupChannel">

         <Membership className="org.apache.catalina.tribes.membership.McastService" address="228.0.0.4" port="45564" frequency="500" dropTime="3000"/>

          <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver" address="auto" port="5000" selectorTimeout="100" maxThreads="6"/>

         <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">

         <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>

          </Sender>

          <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>

          <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>

     <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>

     </Channel>

     <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>

     </Cluster>
</Engine>

Я следил за этим руководством, чтобы настроить балансировщик нагрузки, но он не работает. После запуска httpd и tomcat в журнале ошибок httpd я получаю это сообщение об ошибке:

[Wed Mar 13 18:23:51 2013] [error] proxy: CLUSTER: (balancer://cluster). All workers are in error state

Когда когда-нибудь пытаюсь открыть 192.168.9.73:9999

В моей конфигурации была ошибка. Последовал руководству на странице mod_cluster и добавил атрибут EnableMCPMReceive.

mod_cluster ссылка на ссылку.