Re: workers.properties load balancing
Hi Steve, not a bug in 1.2.6 either: You have used the attribute balance_workers: worker.router.balance_workers=worker1,worker2 Version 1.2.6 only knew about balanced_workers. See the tiny difference? In 1.2.14 you can use either of both and balance_workers take precendence. Steve Dodge wrote: JK 1.2.14 with Tomcat 5.0.28 and Apache 2.0.52 on Linux RH AS4, Tomcats are installed on different machines. I cannot get a load balancing worker to work. mod_jk forwards request to tomcat just fine as long as I don't try and use a load balancing worker in my worker.list. The mod_jk.log says did not find a worker. ==workers.properties worker.list=router # Set properties for worker1 (ajp13) worker.worker1.type=ajp13 worker.worker1.host=server.ip1 worker.worker1.port=8009 worker.worker1.lbfactor=1 worker.worker1.cachesize=10 # Set properties for worker2 (ajp13) worker.worker2.type=ajp13 worker.worker2.host=server.ip2 worker.worker2.port=8009 worker.worker2.lbfactor=1 worker.worker2.cachesize=10 worker.router.type=lb worker.router.balance_workers=worker1,worker2 #worker.router.sticky_seesion=True worker.status.type=status =mod_jk.config== JkWorkersFile /etc/httpd/conf.d/workers.properties JkLogFile /var/log/httpd/mod_jk.log JkLogLeveltrace JkLogStampFormat [%a %b %d %H:%M:%S %Y] JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories JkRequestLogFormat %w %V %T JkMount /jmx-console/*.jsp router JkMount /jkstatus/* status When I use worker.list=worker1,worker1 and replace JkMount /jmx-console/*.jsp worker1 requests are forwarded, but I loose load balancing. Its like the minute I put the load balancer worker into the list, the whole workers configuration is bad. Thanks in advance, Steve I have some clarification on my workers.properties issue. It's not an Issue! The version of JK connectors was not JK 1.2.14, it was JK 1.2.6. Sorry to leave anyone scratching their head. I told my system admin to build from source JK 1.2.14, but to save time he found a pre-packaged rpm from RedHat containing JK 1.2.6. I wasn't aware of the fact that I had debugged version 6 instead of 14. So for those who are interested, JK 1.2.6 had BUGS. -Building mod_jk On another note, compiling JK connectors went very smooth on a stock redhat box with RPM devel packages. All we had to do was install the httpd-devel-2.0.52-12.2.ent.i386.rpm and any rpm's required by it (to get a list type rpm -qp --requires httpd-devel-2.0.52-12.2.ent.i386.rpm ) Then download and extract the JK source code. Navigate to the native directory type in |*./configure --with-apxs=/usr/sbin/apxs, the corresponding Apache2.0.x mod_jk.so resulted. Instructions are found at http://jakarta.apache.org/tomcat/connectors-doc/howto/apache.html Steve *| - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: workers.properties load balancing
Thanks for the answer. In the future, I'm wondering if you know where I could find some debug output that will tell me my workers.properties was misconfigured. The only output I was getting was through the mod_jk.log which told me JkMount was handling the request but could not find the worker. Thanks, Steve Rainer Jung wrote: Hi Steve, not a bug in 1.2.6 either: You have used the attribute balance_workers: worker.router.balance_workers=worker1,worker2 Version 1.2.6 only knew about balanced_workers. See the tiny difference? In 1.2.14 you can use either of both and balance_workers take precendence. Steve Dodge wrote: JK 1.2.14 with Tomcat 5.0.28 and Apache 2.0.52 on Linux RH AS4, Tomcats are installed on different machines. I cannot get a load balancing worker to work. mod_jk forwards request to tomcat just fine as long as I don't try and use a load balancing worker in my worker.list. The mod_jk.log says did not find a worker. ==workers.properties worker.list=router # Set properties for worker1 (ajp13) worker.worker1.type=ajp13 worker.worker1.host=server.ip1 worker.worker1.port=8009 worker.worker1.lbfactor=1 worker.worker1.cachesize=10 # Set properties for worker2 (ajp13) worker.worker2.type=ajp13 worker.worker2.host=server.ip2 worker.worker2.port=8009 worker.worker2.lbfactor=1 worker.worker2.cachesize=10 worker.router.type=lb worker.router.balance_workers=worker1,worker2 #worker.router.sticky_seesion=True worker.status.type=status =mod_jk.config== JkWorkersFile /etc/httpd/conf.d/workers.properties JkLogFile /var/log/httpd/mod_jk.log JkLogLeveltrace JkLogStampFormat [%a %b %d %H:%M:%S %Y] JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories JkRequestLogFormat %w %V %T JkMount /jmx-console/*.jsp router JkMount /jkstatus/* status When I use worker.list=worker1,worker1 and replace JkMount /jmx-console/*.jsp worker1 requests are forwarded, but I loose load balancing. Its like the minute I put the load balancer worker into the list, the whole workers configuration is bad. Thanks in advance, Steve I have some clarification on my workers.properties issue. It's not an Issue! The version of JK connectors was not JK 1.2.14, it was JK 1.2.6. Sorry to leave anyone scratching their head. I told my system admin to build from source JK 1.2.14, but to save time he found a pre-packaged rpm from RedHat containing JK 1.2.6. I wasn't aware of the fact that I had debugged version 6 instead of 14. So for those who are interested, JK 1.2.6 had BUGS. -Building mod_jk On another note, compiling JK connectors went very smooth on a stock redhat box with RPM devel packages. All we had to do was install the httpd-devel-2.0.52-12.2.ent.i386.rpm and any rpm's required by it (to get a list type rpm -qp --requires httpd-devel-2.0.52-12.2.ent.i386.rpm ) Then download and extract the JK source code. Navigate to the native directory type in |*./configure --with-apxs=/usr/sbin/apxs, the corresponding Apache2.0.x mod_jk.so resulted. Instructions are found at http://jakarta.apache.org/tomcat/connectors-doc/howto/apache.html Steve *| - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: workers.properties load balancing
Steve Dodge wrote: JK 1.2.14 with Tomcat 5.0.28 and Apache 2.0.52 on Linux RH AS4, Tomcats are installed on different machines. I cannot get a load balancing worker to work. mod_jk forwards request to tomcat just fine as long as I don't try and use a load balancing worker in my worker.list. The mod_jk.log says did not find a worker. ==workers.properties worker.list=router # Set properties for worker1 (ajp13) worker.worker1.type=ajp13 worker.worker1.host=server.ip1 worker.worker1.port=8009 worker.worker1.lbfactor=1 worker.worker1.cachesize=10 # Set properties for worker2 (ajp13) worker.worker2.type=ajp13 worker.worker2.host=server.ip2 worker.worker2.port=8009 worker.worker2.lbfactor=1 worker.worker2.cachesize=10 worker.router.type=lb worker.router.balance_workers=worker1,worker2 #worker.router.sticky_seesion=True worker.status.type=status =mod_jk.config== JkWorkersFile /etc/httpd/conf.d/workers.properties JkLogFile /var/log/httpd/mod_jk.log JkLogLeveltrace JkLogStampFormat [%a %b %d %H:%M:%S %Y] JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories JkRequestLogFormat %w %V %T JkMount /jmx-console/*.jsp router JkMount /jkstatus/* status When I use worker.list=worker1,worker1 and replace JkMount /jmx-console/*.jsp worker1 requests are forwarded, but I loose load balancing. Its like the minute I put the load balancer worker into the list, the whole workers configuration is bad. Thanks in advance, Steve I have some clarification on my workers.properties issue. It's not an Issue! The version of JK connectors was not JK 1.2.14, it was JK 1.2.6. Sorry to leave anyone scratching their head. I told my system admin to build from source JK 1.2.14, but to save time he found a pre-packaged rpm from RedHat containing JK 1.2.6. I wasn't aware of the fact that I had debugged version 6 instead of 14. So for those who are interested, JK 1.2.6 had BUGS. -Building mod_jk On another note, compiling JK connectors went very smooth on a stock redhat box with RPM devel packages. All we had to do was install the httpd-devel-2.0.52-12.2.ent.i386.rpm and any rpm's required by it (to get a list type rpm -qp --requires httpd-devel-2.0.52-12.2.ent.i386.rpm ) Then download and extract the JK source code. Navigate to the native directory type in |*./configure --with-apxs=/usr/sbin/apxs, the corresponding Apache2.0.x mod_jk.so resulted. Instructions are found at http://jakarta.apache.org/tomcat/connectors-doc/howto/apache.html Steve *| - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
workers.properties load balancing
JK 1.2.14 with Tomcat 5.0.28 and Apache 2.0.52 on Linux RH AS4, Tomcats are installed on different machines. I cannot get a load balancing worker to work. mod_jk forwards request to tomcat just fine as long as I don't try and use a load balancing worker in my worker.list. The mod_jk.log says did not find a worker. ==workers.properties worker.list=router # Set properties for worker1 (ajp13) worker.worker1.type=ajp13 worker.worker1.host=server.ip1 worker.worker1.port=8009 worker.worker1.lbfactor=1 worker.worker1.cachesize=10 # Set properties for worker2 (ajp13) worker.worker2.type=ajp13 worker.worker2.host=server.ip2 worker.worker2.port=8009 worker.worker2.lbfactor=1 worker.worker2.cachesize=10 worker.router.type=lb worker.router.balance_workers=worker1,worker2 #worker.router.sticky_seesion=True worker.status.type=status =mod_jk.config== JkWorkersFile /etc/httpd/conf.d/workers.properties JkLogFile /var/log/httpd/mod_jk.log JkLogLeveltrace JkLogStampFormat [%a %b %d %H:%M:%S %Y] JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories JkRequestLogFormat %w %V %T JkMount /jmx-console/*.jsp router JkMount /jkstatus/* status When I use worker.list=worker1,worker1 and replace JkMount /jmx-console/*.jsp worker1 requests are forwarded, but I loose load balancing. Its like the minute I put the load balancer worker into the list, the whole workers configuration is bad. Thanks in advance, Steve - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Tomcat and IIS load balancing configuration
I am testing a load balancing configuration with Tomcat and IIS using the isapi_redirector. My configuration works if I have a single worker defined in my workers.properties file but it fails if I try to add a second worker (ie, I change the balance_workers entry near the bottom of the file to the one that is currently commented out). One of the symptoms I see of the problem is that when my servlet calls request.getRequestedSessionId() I get back a null. Here is my workers.properties file: workers.tomcat_home=d:\tomcat workers.java_home=c:\progra~1\java\jre15~1.0_0 ps=\ worker.list=wlb worker.ajp13w.type=ajp13 worker.ajp13w.host=localhost worker.ajp13w.port=8009 worker.ajp13w.cachesize=500 worker.ajp13w.cache_timeout=600 worker.ajp13w.socket_keepalive=1 worker.ajp13w.recycle_timeout=300 worker.ajp13w.lbfactor=1 worker.ajp13w.debug=9 worker.ajp13x.type=ajp13 worker.ajp13x.host=localhost worker.ajp13x.port=8010 worker.ajp13x.cachesize=500 worker.ajp13x.cache_timeout=600 worker.ajp13x.socket_keepalive=1 worker.ajp13x.recycle_timeout=300 worker.ajp13x.lbfactor=1 worker.ajp13x.debug=9 worker.wlb.type=lb #worker.wlb.balance_workers=ajp13w,ajp13x worker.wlb.balance_workers=ajp13w worker.wlb.sticky_session=1 worker.jkstatus.type=status - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: session problems when using mod_jk (1.2.14) load balancing
Hi, I'm using the domain property in the same situation as the one discussed in this thread. Any reason why I shouldn't use the domain property and rely on the worker names instead? Thanks in advance, -- Edgar Alves Rainer Jung wrote: That should not work! The correct way to configure session stickyness is to use jvmRoute (which you already did) and then giving the workers the same names as the jvmRoute. That is instead of bl_worker_dev use dev_alexis and instead of bl_worker_noah use noah_alexis as the worker names. You should check, that the URLs produced by your application include the ;jsessionid=32Characters.jvmRoute or - in case you use cookies - the same info is in your session cookie. mod_jk then automatically strips the jvmRoute part from the session identifier and lloks for a worker of the same name. You will only need to use the domain attribute in case you have a lot of tomcat instances and some of them have the sessions replicated, others not. Then you can give all members of a replication domain the same domain name and mod_jk will know, that in case the correct worker is down, which alternatives are good. Beautiful - worked like a charm. That might take the cake as far as longest question to quickest, shortest answer goes. ha. Thanks a bunch. I might have to gripe about doucmentation in a second (nother thread).. Noah Edgar Alves wrote: Try adding these two lines to worker.properties: worker.bl_worker_dev.domain=dev_alexis worker.bl_worker_noah.domain=noah_alexis -- Edgar Alves - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: session problems when using mod_jk (1.2.14) load balancing
Edgar Alves wrote: Hi, I'm using the domain property in the same situation as the one discussed in this thread. Any reason why I shouldn't use the domain property and rely on the worker names instead? Domain is supposed to be used with multiple workers sharing the same jvmRoute having session replication between them, thus forming 'cluster groups' to lower the session data replication transfer. You can use the domain, but it's a trick rather then a proper usage. Regards, Mladen. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: session problems when using mod_jk (1.2.14) load balancing
Hi Mladen, I've used the domain property because it seemed the more general approach (i.e., supports clusters but can be used with a single worker). What this thread got me curious about is if using the domain property in this fashion is officially supported, or on the other hand if it can only be used reliably with clusters. After reading the documentation (http://jakarta.apache.org/tomcat/connectors-doc/config/workers.html), I got the idea that using the domain property with only one worker wouldn't be a trick but another way tell mod_jk which jvmRoute to use: If sticky_session is used, then the domain name is used as session route.. Naming the worker after the intended jvmRoute (even though it used to be the only way) seems more of a trick than explicitly specifying the jvmRoute with the domain property. However, since the same documention mentions that the domain property is used for large systems with clustering, do you know of any side effects (like lower performance) of using this approach as opposed to simply naming the workers after the jvmRoute? -- Edgar Alves Mladen Turk wrote: Edgar Alves wrote: Hi, I'm using the domain property in the same situation as the one discussed in this thread. Any reason why I shouldn't use the domain property and rely on the worker names instead? Domain is supposed to be used with multiple workers sharing the same jvmRoute having session replication between them, thus forming 'cluster groups' to lower the session data replication transfer. You can use the domain, but it's a trick rather then a proper usage. Regards, Mladen. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
load balancing 2 tomcats on 1 machine question
Hi, I thought I had this sussed but it seems I haven't :( 2 tomcats, 1 machine, JK to balance with stick sessions. The following configuration works in that JK routes requests to both the tomcats and so on. The issue is that if I look in the access logs for each tomcat I can see that 1 session gets spread across both tomcats rather than staying on one. This question is ever so slightly related to a post earlier today by a poster who was seeing JK actually stay with the same tomcat, but still create a new session. My issue is that the requests do not stay with the same tomcat. Is anyone able to suggest why this is? Regards, Allistair. workers.tomcat_home=d:\jakarta-tomcat workers.java_home=c:\Program Files\Java\jdk1.5.0 ps=\ worker.list=loadbalancer worker.tomcat1.port=8009 worker.tomcat1.host=localhost worker.tomcat1.type=ajp13 worker.tomcat1.lbfactor=1 worker.tomcat1.cachesize=1 worker.tomcat2.port=8109 worker.tomcat2.host=localhost worker.tomcat2.type=ajp13 worker.tomcat2.lbfactor=1 worker.tomcat2.cachesize=1 worker.loadbalancer.type=lb worker.loadbalancer.sticky_session=true worker.loadbalancer.method=R worker.loadbalancer.balanced_workers=tomcat1,tomcat2 worker.inprocess.type=jni worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)tomcat.jar worker.inprocess.cmd_line=start worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll worker.inprocess.stdout=$(workers.tomcat_home)$(ps)logs$(ps)inprocess.stdout worker.inprocess.stderr=$(workers.tomcat_home)$(ps)logs$(ps)inprocess.stderr FONT SIZE=1 FACE=VERDANA,ARIAL COLOR=BLUE --- QAS Ltd. Registered in England: No 2582055 Registered in Australia: No 082 851 474 --- /FONT
Re: load balancing 2 tomcats on 1 machine question
Allistair Crossley wrote: Hi, I thought I had this sussed but it seems I haven't :( 2 tomcats, 1 machine, JK to balance with stick sessions. The following configuration works in that JK routes requests to both the tomcats and so on. Did you set the jvmRoute=tomcat1 inside server.xml Engine tag for the first and jvmRoute=tomcat2 for the second instance. workers.tomcat_home=d:\jakarta-tomcat workers.java_home=c:\Program Files\Java\jdk1.5.0 ps=\ You don't need that worker.inprocess.type=jni worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)tomcat.jar worker.inprocess.cmd_line=start worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll worker.inprocess.stdout=$(workers.tomcat_home)$(ps)logs$(ps)inprocess.stdout worker.inprocess.stderr=$(workers.tomcat_home)$(ps)logs$(ps)inprocess.stderr You don't need that too. Regards, Mladen. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: load balancing 2 tomcats on 1 machine question
Hi Mladen, Damn, no, I didn't :) Thanks very much indeed, seems to have done the trick :) Cheers, Allistair. -Original Message- From: Mladen Turk [mailto:[EMAIL PROTECTED] Sent: 18 August 2005 17:17 To: Tomcat Users List Subject: Re: load balancing 2 tomcats on 1 machine question Allistair Crossley wrote: Hi, I thought I had this sussed but it seems I haven't :( 2 tomcats, 1 machine, JK to balance with stick sessions. The following configuration works in that JK routes requests to both the tomcats and so on. Did you set the jvmRoute=tomcat1 inside server.xml Engine tag for the first and jvmRoute=tomcat2 for the second instance. workers.tomcat_home=d:\jakarta-tomcat workers.java_home=c:\Program Files\Java\jdk1.5.0 ps=\ You don't need that worker.inprocess.type=jni worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps )tomcat.jar worker.inprocess.cmd_line=start worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$ (ps)classic$(ps)jvm.dll worker.inprocess.stdout=$(workers.tomcat_home)$(ps)logs$(ps)in process.stdout worker.inprocess.stderr=$(workers.tomcat_home)$(ps)logs$(ps)in process.stderr You don't need that too. Regards, Mladen. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] FONT SIZE=1 FACE=VERDANA,ARIAL COLOR=BLUE --- QAS Ltd. Registered in England: No 2582055 Registered in Australia: No 082 851 474 --- /FONT - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: session problems when using mod_jk (1.2.14) load balancing
OK, thanks Mladen: I have to correct myself. 1) Traditional use Until mod_jk 1.2.6 there was no concept of domains. You had to specify the worker name to be exactly the same as the jvmRoute to make sticky sessions work. This way of configuring stickyness is wel known to mod_jk users. 2) I introduced domains to allow mod_jk to make good failover decisions in the case where you have many tomcats, but session replication only between subset, like 2 Tomcat clusters with three instances each (T1_1, T1_2, ..., T3_3) where T1_1, T1_2 and T1_3 replicate their sessions between each other etc. Then you can configure a common domain name for T1_1, T1_2 and T1_3 (e.g. T1) and is mod_jk is not able to correctly route a sticky request (e.g. T1_1 goes down) it will choose another worker with the same domain name. Moreover in this case it will load balance betweeen all those workers (in my example between T1_2 and T1_3). 1) and 2) still work in 1.2.14. 3) Mladen improved mod_jk a lot and during that time introduced another additional way of using the domain attribute: If stickyness for sessions is required and mod_jk does not find a worker with the name of the jvmRoute contained in the session id, then it will next try to find any worker whose domain name is equal to the jvmRoute. If there are multiple such workers, mod_jk loadbalances between them. Summary: If there is a one-to-one relationship between jvmRoutes and workers, there is no functional difference between giving the worker the same name as the jvmRoute, or giving it the same domain attribute as the jvmRoute. The first way is more compatible with what people used to do since a long time and it will be marginally faster, because that check is done first. It's always good to look at the code, in fact when I first discovered the use of the jvmRoute as a domain name in the code I thought it's a bug. I now understand, that it's at least a feature :-) Hi Mladen, I've used the domain property because it seemed the more general approach (i.e., supports clusters but can be used with a single worker). What this thread got me curious about is if using the domain property in this fashion is officially supported, or on the other hand if it can only be used reliably with clusters. After reading the documentation (http://jakarta.apache.org/tomcat/connectors-doc/config/workers.html), I got the idea that using the domain property with only one worker wouldn't be a trick but another way tell mod_jk which jvmRoute to use: If sticky_session is used, then the domain name is used as session route.. Naming the worker after the intended jvmRoute (even though it used to be the only way) seems more of a trick than explicitly specifying the jvmRoute with the domain property. However, since the same documention mentions that the domain property is used for large systems with clustering, do you know of any side effects (like lower performance) of using this approach as opposed to simply naming the workers after the jvmRoute? -- Edgar Alves Mladen Turk wrote: Edgar Alves wrote: Hi, I'm using the domain property in the same situation as the one discussed in this thread. Any reason why I shouldn't use the domain property and rely on the worker names instead? Domain is supposed to be used with multiple workers sharing the same jvmRoute having session replication between them, thus forming 'cluster groups' to lower the session data replication transfer. You can use the domain, but it's a trick rather then a proper usage. Regards, Mladen. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
session problems when using mod_jk (1.2.14) load balancing
Hi - I'm unable to get mod_jk load balancing working. The usual mod_jk setup works just fine, but using a load balancing worker however, is not. [Oddly, my webserver crashed during testing of this, but that could very well be unrelated] The problem is with user sessions. The instances (nodes) do not seem to recognize an already established session with the user and are creating new sessions. It's possible that is a session-stickiness issue, but it appears like the requests are hitting the same instance, just not getting the previously established session. As a result, I can't even reliably login to my application. I created a session listener for debugging purposes and it reports -no- destroyed sessions, but plenty of newly created sessions on both instances that make up the cluster. The session IDs, I noticed, have the jvmRoute name attached to them, which should be a good sign. I have a webserver running Apache (1.3.33), mod_jk (1.2.14), and an application server running the cluster -- 2 instances tomcat (5.0.28) on different ports. I added a unique jvmRoute to both instances in the server.xml: Engine name=Catalina defaultHost=localhost jvmRoute=dev_alexis Engine name=Catalina defaultHost=localhost jvmRoute=noah_alexis My worker.properties loadbalancer settings: worker.list=load_balancer_test worker.load_balancer_test.type=lb worker.load_balancer_test.balance_workers=bl_worker_dev,bl_worker_noah worker.load_balancer_test.sticky_session=true worker.load_balancer_test.sticky_session_force=false worker.bl_worker_dev.type=ajp13 worker.bl_worker_dev.host=alexis worker.bl_worker_dev.port=9003 worker.bl_worker_dev.lbfactor=1 worker.bl_worker_dev.socket_keepalive=1 worker.bl_worker_dev.recycle_timeout=300 worker.bl_worker_noah.type=ajp13 worker.bl_worker_noah.host=alexis worker.bl_worker_noah.port=8063 worker.bl_worker_noah.lbfactor=3 worker.bl_worker_noah.socket_keepalive=1 worker.bl_worker_noah.recycle_timeout=300 Any ideas, things I could try would be much appreciated. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: session problems when using mod_jk (1.2.14) load balancing
Try adding these two lines to worker.properties: worker.bl_worker_dev.domain=dev_alexis worker.bl_worker_noah.domain=noah_alexis -- Edgar Alves Mott Leroy wrote: Hi - I'm unable to get mod_jk load balancing working. The usual mod_jk setup works just fine, but using a load balancing worker however, is not. [Oddly, my webserver crashed during testing of this, but that could very well be unrelated] The problem is with user sessions. The instances (nodes) do not seem to recognize an already established session with the user and are creating new sessions. It's possible that is a session-stickiness issue, but it appears like the requests are hitting the same instance, just not getting the previously established session. As a result, I can't even reliably login to my application. I created a session listener for debugging purposes and it reports -no- destroyed sessions, but plenty of newly created sessions on both instances that make up the cluster. The session IDs, I noticed, have the jvmRoute name attached to them, which should be a good sign. I have a webserver running Apache (1.3.33), mod_jk (1.2.14), and an application server running the cluster -- 2 instances tomcat (5.0.28) on different ports. I added a unique jvmRoute to both instances in the server.xml: Engine name=Catalina defaultHost=localhost jvmRoute=dev_alexis Engine name=Catalina defaultHost=localhost jvmRoute=noah_alexis My worker.properties loadbalancer settings: worker.list=load_balancer_test worker.load_balancer_test.type=lb worker.load_balancer_test.balance_workers=bl_worker_dev,bl_worker_noah worker.load_balancer_test.sticky_session=true worker.load_balancer_test.sticky_session_force=false worker.bl_worker_dev.type=ajp13 worker.bl_worker_dev.host=alexis worker.bl_worker_dev.port=9003 worker.bl_worker_dev.lbfactor=1 worker.bl_worker_dev.socket_keepalive=1 worker.bl_worker_dev.recycle_timeout=300 worker.bl_worker_noah.type=ajp13 worker.bl_worker_noah.host=alexis worker.bl_worker_noah.port=8063 worker.bl_worker_noah.lbfactor=3 worker.bl_worker_noah.socket_keepalive=1 worker.bl_worker_noah.recycle_timeout=300 Any ideas, things I could try would be much appreciated. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: session problems when using mod_jk (1.2.14) load balancing
Beautiful - worked like a charm. That might take the cake as far as longest question to quickest, shortest answer goes. ha. Thanks a bunch. I might have to gripe about doucmentation in a second (nother thread).. Noah Edgar Alves wrote: Try adding these two lines to worker.properties: worker.bl_worker_dev.domain=dev_alexis worker.bl_worker_noah.domain=noah_alexis -- Edgar Alves Mott Leroy wrote: Hi - I'm unable to get mod_jk load balancing working. The usual mod_jk setup works just fine, but using a load balancing worker however, is not. [Oddly, my webserver crashed during testing of this, but that could very well be unrelated] The problem is with user sessions. The instances (nodes) do not seem to recognize an already established session with the user and are creating new sessions. It's possible that is a session-stickiness issue, but it appears like the requests are hitting the same instance, just not getting the previously established session. As a result, I can't even reliably login to my application. I created a session listener for debugging purposes and it reports -no- destroyed sessions, but plenty of newly created sessions on both instances that make up the cluster. The session IDs, I noticed, have the jvmRoute name attached to them, which should be a good sign. I have a webserver running Apache (1.3.33), mod_jk (1.2.14), and an application server running the cluster -- 2 instances tomcat (5.0.28) on different ports. I added a unique jvmRoute to both instances in the server.xml: Engine name=Catalina defaultHost=localhost jvmRoute=dev_alexis Engine name=Catalina defaultHost=localhost jvmRoute=noah_alexis My worker.properties loadbalancer settings: worker.list=load_balancer_test worker.load_balancer_test.type=lb worker.load_balancer_test.balance_workers=bl_worker_dev,bl_worker_noah worker.load_balancer_test.sticky_session=true worker.load_balancer_test.sticky_session_force=false worker.bl_worker_dev.type=ajp13 worker.bl_worker_dev.host=alexis worker.bl_worker_dev.port=9003 worker.bl_worker_dev.lbfactor=1 worker.bl_worker_dev.socket_keepalive=1 worker.bl_worker_dev.recycle_timeout=300 worker.bl_worker_noah.type=ajp13 worker.bl_worker_noah.host=alexis worker.bl_worker_noah.port=8063 worker.bl_worker_noah.lbfactor=3 worker.bl_worker_noah.socket_keepalive=1 worker.bl_worker_noah.recycle_timeout=300 Any ideas, things I could try would be much appreciated. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: session problems when using mod_jk (1.2.14) load balancing
That should not work! The correct way to configure session stickyness is to use jvmRoute (which you already did) and then giving the workers the same names as the jvmRoute. That is instead of bl_worker_dev use dev_alexis and instead of bl_worker_noah use noah_alexis as the worker names. You should check, that the URLs produced by your application include the ;jsessionid=32Characters.jvmRoute or - in case you use cookies - the same info is in your session cookie. mod_jk then automatically strips the jvmRoute part from the session identifier and lloks for a worker of the same name. You will only need to use the domain attribute in case you have a lot of tomcat instances and some of them have the sessions replicated, others not. Then you can give all members of a replication domain the same domain name and mod_jk will know, that in case the correct worker is down, which alternatives are good. Beautiful - worked like a charm. That might take the cake as far as longest question to quickest, shortest answer goes. ha. Thanks a bunch. I might have to gripe about doucmentation in a second (nother thread).. Noah Edgar Alves wrote: Try adding these two lines to worker.properties: worker.bl_worker_dev.domain=dev_alexis worker.bl_worker_noah.domain=noah_alexis -- Edgar Alves Mott Leroy wrote: Hi - I'm unable to get mod_jk load balancing working. The usual mod_jk setup works just fine, but using a load balancing worker however, is not. [Oddly, my webserver crashed during testing of this, but that could very well be unrelated] The problem is with user sessions. The instances (nodes) do not seem to recognize an already established session with the user and are creating new sessions. It's possible that is a session-stickiness issue, but it appears like the requests are hitting the same instance, just not getting the previously established session. As a result, I can't even reliably login to my application. I created a session listener for debugging purposes and it reports -no- destroyed sessions, but plenty of newly created sessions on both instances that make up the cluster. The session IDs, I noticed, have the jvmRoute name attached to them, which should be a good sign. I have a webserver running Apache (1.3.33), mod_jk (1.2.14), and an application server running the cluster -- 2 instances tomcat (5.0.28) on different ports. I added a unique jvmRoute to both instances in the server.xml: Engine name=Catalina defaultHost=localhost jvmRoute=dev_alexis Engine name=Catalina defaultHost=localhost jvmRoute=noah_alexis My worker.properties loadbalancer settings: worker.list=load_balancer_test worker.load_balancer_test.type=lb worker.load_balancer_test.balance_workers=bl_worker_dev,bl_worker_noah worker.load_balancer_test.sticky_session=true worker.load_balancer_test.sticky_session_force=false worker.bl_worker_dev.type=ajp13 worker.bl_worker_dev.host=alexis worker.bl_worker_dev.port=9003 worker.bl_worker_dev.lbfactor=1 worker.bl_worker_dev.socket_keepalive=1 worker.bl_worker_dev.recycle_timeout=300 worker.bl_worker_noah.type=ajp13 worker.bl_worker_noah.host=alexis worker.bl_worker_noah.port=8063 worker.bl_worker_noah.lbfactor=3 worker.bl_worker_noah.socket_keepalive=1 worker.bl_worker_noah.recycle_timeout=300 Any ideas, things I could try would be much appreciated. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: session problems when using mod_jk (1.2.14) load balancing
Ok - noted. I changed it. It works without the domain as you noted. Thanks. Rainer Jung wrote: That should not work! The correct way to configure session stickyness is to use jvmRoute (which you already did) and then giving the workers the same names as the jvmRoute. That is instead of bl_worker_dev use dev_alexis and instead of bl_worker_noah use noah_alexis as the worker names. You should check, that the URLs produced by your application include the ;jsessionid=32Characters.jvmRoute or - in case you use cookies - the same info is in your session cookie. mod_jk then automatically strips the jvmRoute part from the session identifier and lloks for a worker of the same name. You will only need to use the domain attribute in case you have a lot of tomcat instances and some of them have the sessions replicated, others not. Then you can give all members of a replication domain the same domain name and mod_jk will know, that in case the correct worker is down, which alternatives are good. Beautiful - worked like a charm. That might take the cake as far as longest question to quickest, shortest answer goes. ha. Thanks a bunch. I might have to gripe about doucmentation in a second (nother thread).. Noah Edgar Alves wrote: Try adding these two lines to worker.properties: worker.bl_worker_dev.domain=dev_alexis worker.bl_worker_noah.domain=noah_alexis -- Edgar Alves Mott Leroy wrote: Hi - I'm unable to get mod_jk load balancing working. The usual mod_jk setup works just fine, but using a load balancing worker however, is not. [Oddly, my webserver crashed during testing of this, but that could very well be unrelated] The problem is with user sessions. The instances (nodes) do not seem to recognize an already established session with the user and are creating new sessions. It's possible that is a session-stickiness issue, but it appears like the requests are hitting the same instance, just not getting the previously established session. As a result, I can't even reliably login to my application. I created a session listener for debugging purposes and it reports -no- destroyed sessions, but plenty of newly created sessions on both instances that make up the cluster. The session IDs, I noticed, have the jvmRoute name attached to them, which should be a good sign. I have a webserver running Apache (1.3.33), mod_jk (1.2.14), and an application server running the cluster -- 2 instances tomcat (5.0.28) on different ports. I added a unique jvmRoute to both instances in the server.xml: Engine name=Catalina defaultHost=localhost jvmRoute=dev_alexis Engine name=Catalina defaultHost=localhost jvmRoute=noah_alexis My worker.properties loadbalancer settings: worker.list=load_balancer_test worker.load_balancer_test.type=lb worker.load_balancer_test.balance_workers=bl_worker_dev,bl_worker_noah worker.load_balancer_test.sticky_session=true worker.load_balancer_test.sticky_session_force=false worker.bl_worker_dev.type=ajp13 worker.bl_worker_dev.host=alexis worker.bl_worker_dev.port=9003 worker.bl_worker_dev.lbfactor=1 worker.bl_worker_dev.socket_keepalive=1 worker.bl_worker_dev.recycle_timeout=300 worker.bl_worker_noah.type=ajp13 worker.bl_worker_noah.host=alexis worker.bl_worker_noah.port=8063 worker.bl_worker_noah.lbfactor=3 worker.bl_worker_noah.socket_keepalive=1 worker.bl_worker_noah.recycle_timeout=300 Any ideas, things I could try would be much appreciated. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Blog: JK1.2 load balancing as solution to 100% uptime
Hi Chaps, If anyone is interested, I blogged last night on my experience setting up 2 tomcats on 1 server and then load balancing them with JK 1.2, and tested that bringing 1 down, and then back up did not lose any requests. This for my web application is an ideal way to avoid downtime during class patching or full builds, although for those needing session replication, the blog does not cover that. Take it or leave it :), I've also added this to the Tomcat links wiki. Allistair FONT SIZE=1 FACE=VERDANA,ARIAL COLOR=BLUE --- QAS Ltd. Registered in England: No 2582055 Registered in Australia: No 082 851 474 --- /FONT
Re: Blog: JK1.2 load balancing as solution to 100% uptime
Allistair Crossley wrote: Hi Chaps, If anyone is interested, I blogged last night on my experience setting up ... It would be great if you provide a link to your blog :) Regards, Mladen. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Blog: JK1.2 load balancing as solution to 100% uptime
From one of Allistair's posts yesterday: www.adcworks.com/blog Mladen Turk wrote: Allistair Crossley wrote: Hi Chaps, If anyone is interested, I blogged last night on my experience setting up ... It would be great if you provide a link to your blog :) Regards, Mladen. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Blog: JK1.2 load balancing as solution to 100% uptime
Oops! :) http://www.adcworks.com/blog/index.php/archives/2005/08/03/load-balancing-with-tomcat-55-and-jk-12/ Cheers, Allistair. -Original Message- From: Mladen Turk [mailto:[EMAIL PROTECTED] Sent: 04 August 2005 12:42 To: Tomcat Users List Subject: Re: Blog: JK1.2 load balancing as solution to 100% uptime Allistair Crossley wrote: Hi Chaps, If anyone is interested, I blogged last night on my experience setting up ... It would be great if you provide a link to your blog :) Regards, Mladen. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] FONT SIZE=1 FACE=VERDANA,ARIAL COLOR=BLUE --- QAS Ltd. Registered in England: No 2582055 Registered in Australia: No 082 851 474 --- /FONT - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Apache mod_rewrite + Tomcat clustering/ load balancing.
Hi, I hv clustered 2 Tomcat (version 5.0.18) instances on 2 physically different machines A and B. Individually accessible as http://machineA:8080 http://machinea:8080/ and http://machineB:8080 http://machineb:8080/ I have Apache 2.0.54 installed on machine A and following the tomcat doc http://jakarta.apache.org/tomcat/tomcat-5.0-doc/balancer-howto.html I am trying to use Apache mod_rewrite to load balance/ failover between my 2 tomcat instances. As per the doc modified the engine element in server.xml to include the jvmRoute attribute Configuring Apache was a headache. The documentation assumes the reader is an expert with Apache. It is not completely accurate. The reader cannot use it as is. For instance it talks of creating balancer.conf but uses servers.conf in http. Anyways I discovered it and created a balancing.conf for mod_rewrite as explained. Edited apache's httpd.conf as given in the tomcat doc. And with both tomcat instances working browsed to http://localhost/servlets-examples/servlet/RequestInfoExample But it did not work. Error log gave: File does not exist: proxy:http://machineA:8080/servlets-examples/servlet/RequestInfoExample But I could get the expected page when I replaced [P, L] in the RewriteRule for Location /servlets-examples with only [L] The funny thing however is I browse to http://localhost/servlets-examples/servlet/RequestInfoExample but that later automatically changes to either http://machineA:8080/servlets-examples/servlet/RequestInfoExample or http://machineB:8080/servlets-examples/servlet/RequestInfoExample depending upon which Tomcat instance served my request. Any clues as to why the URL in the browser changes? PS: My entries in httpd.conf RewriteMap SERVERS rnd:path to the balancer.conf created above Location /servlets-examples RewriteEngine On RewriteCond %{HTTP_COOKIE} (^|;\s*)jsessionid=\w*\.(\w+)($|;) RewriteRule (.*) http://${SERVERS:%2}%{REQUEST_URI}; [P,L] RewriteRule ^.*;jsessionid=\w*\.(\w+)($|;) http://${SERVERS:$1}%{REQUEST_URI}; [P,L] RewriteRule (.*) http://${SERVERS:ALL}%{REQUEST_URI}; [P,L] /Location I had to replace [P,L] with [L] to make it work rgds, G1 This e-mail and any files transmitted with it are for the sole use of the intended recipient(s) and may contain confidential and privileged information. If you are not the intended recipient, please contact the sender by reply e-mail and destroy all copies of the original message. Any unauthorised review, use, disclosure, dissemination, forwarding, printing or copying of this email or any action taken in reliance on this e-mail is strictly prohibited and may be unlawful. Visit us at http://www.cognizant.com
Tomcat clustering load balancing
Hi, I am experimenting with Tomcat clustering I easily implemented a tomcat cluster un-commenting the cluster element in server.xml I now have 2 tomcat instances (on 2 physically different boxes) machineA and machineB I noted they can keep track of each other and get notified the other is down - for e.g. when I pull out the network cord. With clustering enabled I expect my request sent to say machineA (http://machineA:8080 http://machinea:8080/ ) to be served by the other tomcat instance. But this does not happen. 1. Am I missing something? Load balancing? 2. But how to configure load balancing? In non-clustered environment I would browse to http://machineA:8080 http://machinea:8080/ or http://machineB:8080 http://machineb:8080/ (The machine name is specified in the url EXPLICITLY.) With load balancing app should I browse to some other URL? 3. How and who will route the request? 4. Do I need to run my own specialized version of the load balancing app on a third tomcat instance? 5. What if the third tomcat instance on which the load balancing app is running comes down? rgds, G1 This e-mail and any files transmitted with it are for the sole use of the intended recipient(s) and may contain confidential and privileged information. If you are not the intended recipient, please contact the sender by reply e-mail and destroy all copies of the original message. Any unauthorised review, use, disclosure, dissemination, forwarding, printing or copying of this email or any action taken in reliance on this e-mail is strictly prohibited and may be unlawful. Visit us at http://www.cognizant.com
Re: Tomcat clustering load balancing
Hi Jeevan, 1. Am I missing something? Load balancing? Lot of ways to do load balancing : a. U can use balancer apps, it's bundled on tomcat sample b. U can use apache with mod_jk So, yes, you browse to some other URL. For example, if U run the balancer apps from tomcat, U should be redirected to some URL. Clustering and load balancing is two separated different things. A request, usually goes into the load balancer first, and after that, the load balancer redirect it to the real tomcat, it can be within the same machine but different port, or it can be to another machine. The Real tomcat, it can be clustered, or stand alone. If it's clustered, then those tomcat's are sharing their sesion state, means that if your request is handled by tomcatA and then suddenly tomcatA is dead, then the load balancer will redirect your request to tomcatB, tomcatB knows, what has been done with your request by tomcatA, and will continue to process your request. 2. But how to configure load balancing? Google ? :D I have written my documentation with load balancing and clustering,but in Indonesian language, hehehe :D sorry On 8/3/05, Sunkersett, Jeevan (Cognizant) [EMAIL PROTECTED] wrote: Hi, I am experimenting with Tomcat clustering I easily implemented a tomcat cluster un-commenting the cluster element in server.xml I now have 2 tomcat instances (on 2 physically different boxes) machineA and machineB I noted they can keep track of each other and get notified the other is down - for e.g. when I pull out the network cord. With clustering enabled I expect my request sent to say machineA (http://machineA:8080 http://machinea:8080/ ) to be served by the other tomcat instance. But this does not happen. 1. Am I missing something? Load balancing? 2. But how to configure load balancing? In non-clustered environment I would browse to http://machineA:8080 http://machinea:8080/ or http://machineB:8080 http://machineb:8080/ (The machine name is specified in the url EXPLICITLY.) With load balancing app should I browse to some other URL? 3. How and who will route the request? 4. Do I need to run my own specialized version of the load balancing app on a third tomcat instance? 5. What if the third tomcat instance on which the load balancing app is running comes down? rgds, G1 This e-mail and any files transmitted with it are for the sole use of the intended recipient(s) and may contain confidential and privileged information. If you are not the intended recipient, please contact the sender by reply e-mail and destroy all copies of the original message. Any unauthorised review, use, disclosure, dissemination, forwarding, printing or copying of this email or any action taken in reliance on this e-mail is strictly prohibited and may be unlawful. Visit us at http://www.cognizant.com -- --- http://www.psychotazkia.or.id
Beginner Load Balancing w/ apache
Hi , Im hoping someone can give me some pretty detailed instructions on how to load balance 2 tomcat servers with 1 apache web server in front. I wanted to use mod_jk. First question, is , is this the best way to load balance? Second question. Where do i start. Im having trouble finding clear instrcution on how to get mod_jk working with apache. Can anyone help? I know tomcat pretty well, but am new to load balancing with apache, so the more detail the better.. thanks -B
Re: Basic load balancing
Yeah, it's a mix of load balancing and clustering. SNIP - lots of good stuff Regards, Will Hartung ([EMAIL PROTECTED]) Thank you for posting that reply, Will. What load balancing system would you recommend? (Is there some consensus, cost issues aside, as to what the best type of load balancing system is?) Kind regards Harry Mantheakis London, UK - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Basic load balancing
Thanks for the tip, we will look at it. -Mark -Original Message- From: Wade Chandler [mailto:[EMAIL PROTECTED] Sent: Wednesday, May 11, 2005 1:40 PM To: Tomcat Users List Subject: Re: Basic load balancing Joe Plautz wrote: From what I understand load balancing is done at the router, where clustering is a tomcat setup issue. Joe Faine, Mark wrote: Tomcat 5.0.28 We seem to often have to make minor changes that cause us to have to restart our tomcat server (the whole server, not just a web application) and this has lead me to decide to research load balancing. The idea would be to have two servers that would be exact duplicates. One of the servers would only become available when the other was not running. This way we could make the change on server2 (and restart it) and then bring server1 down and make the change to it as well. This would prevent any real downtime for our users. Where should I look for info on how to implement this type of failover? Thanks for your help -Mark - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] . - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] You can also use an Apache server as a front end to multiple servers/tomcats. I'm not talking about using mod_jk either, but using Apache as a traffic router. It works well, and you will be using mod_rewrite and/or mod_proxy. Check them out. Wade - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Basic load balancing
From: Harry Mantheakis [EMAIL PROTECTED] Sent: Thursday, May 12, 2005 1:51 AM What load balancing system would you recommend? (Is there some consensus, cost issues aside, as to what the best type of load balancing system is?) I wish I could say. We use a pair of redundant BigIP's from F5 (which are eleventy zillion dollars), so, they're quite sophisticated. I know Cisco has some as well (which are probably eleventy and a half zillion dollars). 3 common paths are to use Apache's mod_proxy, mod_jk, or the Tomcat balancer app. I don't think any of them provide sticky sessions (though, obviously, the Tomcat webapp could probably be reasonably modified to support that -- but I don't know if anyone uses the Tomcat balancer in production). I don't think any of them let you easily bring down an individual server on your own, though you might be able to reconfigure mod_proxy on the fly with Apache and do a graceful restart after you've taken your downed server out of the mix in the httpd.conf file. The children should finish their requests normally and safely. The biggest problem with load balancing and such is that it opens up a HUGE kettle of fish with regards to testing and such. For example, you'll get it all set up, type http://myhost/webapp/page.jsp and it'll magically appear and then you'll go Yea, but WHERE did it come from? We modified all of our JSPs, for example, to put the host of the server they came from in an HTML comment. It really starts getting confusing. You should have a good set of web based tests for your application so that you can be sure that it's still working the same when you add the new servers. Then you can start testing things like yanking network cables from your tomcat servers to see if failover happens (or not), and other effects, and then decide if you're happy with it. You also can see if you perhaps gained any capacity by splitting the tomcats (if you're app is DB bound, then the bottleneck may be your DB server and the extra tomcat may not help you at all, for example). But, either way, testing is the key here to make sure everything is working as planned (and unplanned) since the new configuration is that much more complicated than it was before. Regards, Will Hartung ([EMAIL PROTECTED]) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Basic load balancing
If you can afford it, go with hardware load balancing. it's easier to setup and configure. it's also more reliable and robust. of course, you have to open up your wallet and let the money fall out. if you really want sophisticated load balancing that allows you to schedule a server to go down, i would recomend Resonate. I've used them in the past and their product is solid. peter On 5/12/05, Will Hartung [EMAIL PROTECTED] wrote: From: Harry Mantheakis [EMAIL PROTECTED] Sent: Thursday, May 12, 2005 1:51 AM What load balancing system would you recommend? (Is there some consensus, cost issues aside, as to what the best type of load balancing system is?) I wish I could say. We use a pair of redundant BigIP's from F5 (which are eleventy zillion dollars), so, they're quite sophisticated. I know Cisco has some as well (which are probably eleventy and a half zillion dollars). 3 common paths are to use Apache's mod_proxy, mod_jk, or the Tomcat balancer app. I don't think any of them provide sticky sessions (though, obviously, the Tomcat webapp could probably be reasonably modified to support that -- but I don't know if anyone uses the Tomcat balancer in production). I don't think any of them let you easily bring down an individual server on your own, though you might be able to reconfigure mod_proxy on the fly with Apache and do a graceful restart after you've taken your downed server out of the mix in the httpd.conf file. The children should finish their requests normally and safely. The biggest problem with load balancing and such is that it opens up a HUGE kettle of fish with regards to testing and such. For example, you'll get it all set up, type http://myhost/webapp/page.jsp and it'll magically appear and then you'll go Yea, but WHERE did it come from? We modified all of our JSPs, for example, to put the host of the server they came from in an HTML comment. It really starts getting confusing. You should have a good set of web based tests for your application so that you can be sure that it's still working the same when you add the new servers. Then you can start testing things like yanking network cables from your tomcat servers to see if failover happens (or not), and other effects, and then decide if you're happy with it. You also can see if you perhaps gained any capacity by splitting the tomcats (if you're app is DB bound, then the bottleneck may be your DB server and the extra tomcat may not help you at all, for example). But, either way, testing is the key here to make sure everything is working as planned (and unplanned) since the new configuration is that much more complicated than it was before. Regards, Will Hartung ([EMAIL PROTECTED]) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
load balancing
Hi, I have an application server that maintains session and I'd like to make it scalable. The clients and the application server are communicating using TCP. When a client tries to connect, I'd like the load balancer to connect to a random AppServer node, and from that moment on - that node should handle the session. The client can disconnect and reconnect and the load balancer should connect it with the node that handled the session before the disconnection. Is it possible implementing these requirements using the model described in http://jakarta.apache.org/tomcat/tomcat-5.0-doc/cluster-howto.html? Is there a better architecture that you can recommend which is more suitable to what I just described? Thanks. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: load balancing
Hello I don't know if this solution is more effictive than the other one (load balancing by using Apache server with different Tomcat instances) But the two one don't realise a random access : -cluster uses rules -apache uses a simple round-robin scheduling algorithm ; so after a disconnection the new one is not certain to be affected to the same Tomcat's instance Jean-Claude -Message d'origine- De : Zohar Amir [mailto:[EMAIL PROTECTED] Envoyé : mercredi 11 mai 2005 09:14 À : Tomcat Users List Objet : load balancing Hi, I have an application server that maintains session and I'd like to make it scalable. The clients and the application server are communicating using TCP. When a client tries to connect, I'd like the load balancer to connect to a random AppServer node, and from that moment on - that node should handle the session. The client can disconnect and reconnect and the load balancer should connect it with the node that handled the session before the disconnection. Is it possible implementing these requirements using the model described in http://jakarta.apache.org/tomcat/tomcat-5.0-doc/cluster-howto.html? Is there a better architecture that you can recommend which is more suitable to what I just described? Thanks. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Basic load balancing
Tomcat 5.0.28 We seem to often have to make minor changes that cause us to have to restart our tomcat server (the whole server, not just a web application) and this has lead me to decide to research load balancing. The idea would be to have two servers that would be exact duplicates. One of the servers would only become available when the other was not running. This way we could make the change on server2 (and restart it) and then bring server1 down and make the change to it as well. This would prevent any real downtime for our users. Where should I look for info on how to implement this type of failover? Thanks for your help -Mark - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Basic load balancing
From what I understand load balancing is done at the router, where clustering is a tomcat setup issue. Joe Faine, Mark wrote: Tomcat 5.0.28 We seem to often have to make minor changes that cause us to have to restart our tomcat server (the whole server, not just a web application) and this has lead me to decide to research load balancing. The idea would be to have two servers that would be exact duplicates. One of the servers would only become available when the other was not running. This way we could make the change on server2 (and restart it) and then bring server1 down and make the change to it as well. This would prevent any real downtime for our users. Where should I look for info on how to implement this type of failover? Thanks for your help -Mark - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] . - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Basic load balancing
Joe Plautz wrote: From what I understand load balancing is done at the router, where clustering is a tomcat setup issue. Joe Faine, Mark wrote: Tomcat 5.0.28 We seem to often have to make minor changes that cause us to have to restart our tomcat server (the whole server, not just a web application) and this has lead me to decide to research load balancing. The idea would be to have two servers that would be exact duplicates. One of the servers would only become available when the other was not running. This way we could make the change on server2 (and restart it) and then bring server1 down and make the change to it as well. This would prevent any real downtime for our users. Where should I look for info on how to implement this type of failover? Thanks for your help -Mark - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] . - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] You can also use an Apache server as a front end to multiple servers/tomcats. I'm not talking about using mod_jk either, but using Apache as a traffic router. It works well, and you will be using mod_rewrite and/or mod_proxy. Check them out. Wade - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Basic load balancing
From: Faine, Mark [EMAIL PROTECTED] Sent: Wednesday, May 11, 2005 11:24 AM Tomcat 5.0.28 We seem to often have to make minor changes that cause us to have to restart our tomcat server (the whole server, not just a web application) and this has lead me to decide to research load balancing. The idea would be to have two servers that would be exact duplicates. One of the servers would only become available when the other was not running. This way we could make the change on server2 (and restart it) and then bring server1 down and make the change to it as well. This would prevent any real downtime for our users. Where should I look for info on how to implement this type of failover? Thanks for your help Yeah, it's a mix of load balancing and clustering. The primary challenge you have to deal with is session replication so that when you fail your primary Tomcat, the stand by will have the same sessions in play. Once you have the sessions clustered, then it's a matter of redirecting traffic from the primary to secondary. This is what a load balancer system can do for you, in that it can help you cleanly switch over. What you need to do here is tell the load balancer to direct all new traffic to the secondary Tomcat, but still let any pending transactions go to your primary. Once the load balancer has shifted the traffic, you bounce the primary, let the primary add itself back in to your cluster and resynchronize the sessions, then you finally have the load balancer start shifting traffic back to the primary. Now, note that at some point during your switchover, you will be having both Tomcats live and working against the same DB or whatever your backend, so you need to make sure that it can handle that (if it's just a DB it's typically not a problem). Finally, once you've gone to all of this trouble, frankly, I'd just run both machines 100% and load balance between them, either round robin, or you can use session pinning (so that when a request comes in, their session sticks to a single machine barring machine failure). The reason I would do this is simply that I'm just philisophically opposed to having idle machines do nothing and waiting for something to happen. To me, an idle machine is simply a room heater. I don't need a $2000 room heater. In this case, since you need to have cluster aware sessions and replication anyway, and you have to have a load balancer fronting them anyway, why not simply double your performance (ideally) and run both machines if you're going to keep one idle anyway? You have to go through all the configuration headache anyway, so you may as well get some free performance out of it. It is my understanding that you can do most of this with 3 machines and stock Tomcat, as it already supports clustering, and there is a load-balancing application as well, but I don't know how good or featureful the load balancer is. Of course, you can do a function test on only a single machine with 3 interfaces as well. Regards, Will Hartung ([EMAIL PROTECTED]) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Load Balancing ..
Am I correct that Tomcat is not setup to do load balancing without the use of an Apache fronting? The mod_jk module is the best way to load-balance requests on multiple servers using the Tomcat container, either standalone or embedded in JBoss? David L. Whitehurst - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Load Balancing ..
Not exactly. Apache itself can't do load balancing. You could use a dedicated Tomcat instance to loadbalance to backend Tomcats in the same way as you described using Apache however either way you are still left with a single point of failure. Neither Tomcat nor Apache can loadbalance by themselves for various reasons including issues with IP address sharing a MAC address caching. David Whitehurst wrote: Am I correct that Tomcat is not setup to do load balancing without the use of an Apache fronting? The mod_jk module is the best way to load-balance requests on multiple servers using the Tomcat container, either standalone or embedded in JBoss? David L. Whitehurst - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: tomcat load-balancing maintenance strategy?
Filip, Yes, That would be awesome. Thanks, Dan -Original Message- From: Filip Hanik - Dev Lists [mailto:[EMAIL PROTECTED] Sent: Fri 3/11/2005 2:11 PM To: Tomcat Users List Cc: Subject: Re: tomcat load-balancing maintenance strategy? its fixed in 5.5.x, you need a patch for 5.0.x? Dan Carwin wrote: I also experienced cluster failure when restarting a downed cluster member in 5.0. I tested with Tomcat 5.0.30. Randall, what version of Tomcat did you succeed with? Thanks, Dan -Original Message- From: Richard Mixon (qwest) [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 08, 2005 10:45 AM To: Tomcat Users List Subject: RE: tomcat load-balancing maintenance strategy? Jim, Also check the archives for my post on restarting a downed Tomcat cluster member. This was not working well prior to Tomcat 5.5.8. When the instance was restarted it would throw exceptions trying to re-synchronize vi session replication. - Richard -Original Message- From: Randall Svancara [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 08, 2005 9:40 AM To: Tomcat Users List Subject: RE: tomcat load-balancing maintenance strategy? You need to implement either in memory session replication or persist the session in a database or a shared file system. I have finally got my tomcat cluster working and session replication is functional. Randall - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: tomcat load-balancing maintenance strategy?
I also experienced cluster failure when restarting a downed cluster member in 5.0. I tested with Tomcat 5.0.30. Randall, what version of Tomcat did you succeed with? Thanks, Dan -Original Message- From: Richard Mixon (qwest) [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 08, 2005 10:45 AM To: Tomcat Users List Subject: RE: tomcat load-balancing maintenance strategy? Jim, Also check the archives for my post on restarting a downed Tomcat cluster member. This was not working well prior to Tomcat 5.5.8. When the instance was restarted it would throw exceptions trying to re-synchronize vi session replication. - Richard -Original Message- From: Randall Svancara [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 08, 2005 9:40 AM To: Tomcat Users List Subject: RE: tomcat load-balancing maintenance strategy? You need to implement either in memory session replication or persist the session in a database or a shared file system. I have finally got my tomcat cluster working and session replication is functional. Randall - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: tomcat load-balancing maintenance strategy?
its fixed in 5.5.x, you need a patch for 5.0.x? Dan Carwin wrote: I also experienced cluster failure when restarting a downed cluster member in 5.0. I tested with Tomcat 5.0.30. Randall, what version of Tomcat did you succeed with? Thanks, Dan -Original Message- From: Richard Mixon (qwest) [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 08, 2005 10:45 AM To: Tomcat Users List Subject: RE: tomcat load-balancing maintenance strategy? Jim, Also check the archives for my post on restarting a downed Tomcat cluster member. This was not working well prior to Tomcat 5.5.8. When the instance was restarted it would throw exceptions trying to re-synchronize vi session replication. - Richard -Original Message- From: Randall Svancara [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 08, 2005 9:40 AM To: Tomcat Users List Subject: RE: tomcat load-balancing maintenance strategy? You need to implement either in memory session replication or persist the session in a database or a shared file system. I have finally got my tomcat cluster working and session replication is functional. Randall - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: load-balancing
I am using jk 1.2.8 My workers.properties === ps=\ worker.list=loadbalancer worker.tomcat1.type=ajp13 worker.tomcat1.host=localhost worker.tomcat1.port=8009 worker.tomcat1.lbfactor=1 worker.tomcat1.socket_timeout=5 worker.tomcat1.recycle_timeout=10 worker.tomcat2.type=ajp13 worker.tomcat2.host=localhost worker.tomcat2.port=8209 worker.tomcat2.lbfactor=1 worker.tomcat2.socket_timeout=5 worker.tomcat2.recycle_timeout=10 worker.loadbalancer.type=lb worker.loadbalancer.balanced_workers=tomcat1,tomcat2 - Jim -Original Message- From: Mladen Turk [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 09, 2005 9:46 PM To: Tomcat Users List Subject: Re: load-balancing Sng Wee Jim wrote: I am using IIS 5.0 on Win2k Server edition. Will jk 1.2.9 solve the issue for IIS too? IIS and Apache on Windows are single child systems so the runtime data was already shared among all clients. I speak here about 1.2.8. Previous versions have lb code broken. You'll have to give more details if jk 1.2.8 is what you are using, at least the config params, etc... Regards, Mladen The information in this email is confidential and is intended solely for the addressee(s). Access to this email by anyone else is unauthorized. If you are not an intended recipient, please notify the sender of this email immediately. You should not copy, use or disseminate the information contained in the email. Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Capco. http://www.capco.com/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: load-balancing
I am using IIS 5.0 on Win2k Server edition. Will jk 1.2.9 solve the issue for IIS too? - Jim From: Mladen Turk [mailto:[EMAIL PROTECTED] Sent: Wed 3/9/2005 2:30 AM To: Tomcat Users List Subject: Re: load-balancing Sng Wee Jim wrote: I am load-balancing tomcat 5.0.28 using JK1.2/AJP1.3. Cool ;) I noticed the loadbalancer virtual JK worker redirect requests to the tomcat instances in a round-robin fashion, without taking into account which tomcat has a higher number of active sessions. You must note what jk version and web server you are using. If using 1.2.8 you will have up to 20% load-presumption error if using Apache prefork or worker mpm, because the load balancing data is maintained per child process. The 1.2.9 (not released yet, but will be this week I hope) has that resolved using shared memory. Regards, Mladen The information in this email is confidential and is intended solely for the addressee(s). Access to this email by anyone else is unauthorized. If you are not an intended recipient, please notify the sender of this email immediately. You should not copy, use or disseminate the information contained in the email. Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Capco. http://www.capco.com/
Re: load-balancing
Sng Wee Jim wrote: I am using IIS 5.0 on Win2k Server edition. Will jk 1.2.9 solve the issue for IIS too? IIS and Apache on Windows are single child systems so the runtime data was already shared among all clients. I speak here about 1.2.8. Previous versions have lb code broken. You'll have to give more details if jk 1.2.8 is what you are using, at least the config params, etc... Regards, Mladen - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: tomcat load-balancing maintenance strategy?
Sng Wee Jim wrote: 1. Is it possible to pass the session information to TomcatA before shutting down TomcatB? For eg. we want to perform servers upgrade, so we down TomcatB, upgrade it, start TomcatB, before doing the same to TomcatA. This is what a cluster does. See http://jakarta.apache.org/tomcat/tomcat-5.0-doc/cluster-howto.html for more information. Kind regards, Wolfgang - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
load-balancing
Hi, I am load-balancing tomcat 5.0.28 using JK1.2/AJP1.3. I noticed the loadbalancer virtual JK worker redirect requests to the tomcat instances in a round-robin fashion, without taking into account which tomcat has a higher number of active sessions. For eg. TomcatATomcatB --- --- session1 comes in: 1 session session2 1 session1 session session3 2 sessions 1 session session4 2 sessions 2 sessions Round-robin, so next session will be handled by TomcatA. Now if the users log out session 2 and 4, TomcatATomcatB --- --- we have: 2 sessions 0 session session5 comes: 3 sessions 0 session My question is, is it possible for the loadbalancer worker to detect that after session 2 and 4 are invalidated, that tomcatB has lesser number of active sessions and that the next session should be handled by tomcatB? - Jim The information in this email is confidential and is intended solely for the addressee(s). Access to this email by anyone else is unauthorized. If you are not an intended recipient, please notify the sender of this email immediately. You should not copy, use or disseminate the information contained in the email. Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Capco. http://www.capco.com/
RE: tomcat load-balancing maintenance strategy?
You need to implement either in memory session replication or persist the session in a database or a shared file system. I have finally got my tomcat cluster working and session replication is functional. Randall -Original Message- From: Sng Wee Jim [mailto:[EMAIL PROTECTED] Sent: Monday, March 07, 2005 10:50 PM To: tomcat-user@jakarta.apache.org Subject: tomcat load-balancing maintenance strategy? Hi, I am load-balancing tomcat 5.0.28 using JK1.2 / AJP1.3. For discussion, let's assume I have 2 tomcats (TomcatA and TomcatB) load-balanced. When I shutdown one of the tomcats (Tomcat B), future requests for TomcatB is correctly redirected and handled by the TomcatA. However, the original session on TomcatB is not passed over to TomcatA, and a re-login is required. My question: 1. Is it possible to pass the session information to TomcatA before shutting down TomcatB? For eg. we want to perform servers upgrade, so we down TomcatB, upgrade it, start TomcatB, before doing the same to TomcatA. - Jim The information in this email is confidential and is intended solely for the addressee(s). Access to this email by anyone else is unauthorized. If you are not an intended recipient, please notify the sender of this email immediately. You should not copy, use or disseminate the information contained in the email. Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Capco. http://www.capco.com/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: tomcat load-balancing maintenance strategy?
I thought /distributable XML element in web.xml does that automatically. -Original Message- From: Randall Svancara [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 08, 2005 9:40 AM To: Tomcat Users List Subject: RE: tomcat load-balancing maintenance strategy? You need to implement either in memory session replication or persist the session in a database or a shared file system. I have finally got my tomcat cluster working and session replication is functional. Randall -Original Message- From: Sng Wee Jim [mailto:[EMAIL PROTECTED] Sent: Monday, March 07, 2005 10:50 PM To: tomcat-user@jakarta.apache.org Subject: tomcat load-balancing maintenance strategy? Hi, I am load-balancing tomcat 5.0.28 using JK1.2 / AJP1.3. For discussion, let's assume I have 2 tomcats (TomcatA and TomcatB) load-balanced. When I shutdown one of the tomcats (Tomcat B), future requests for TomcatB is correctly redirected and handled by the TomcatA. However, the original session on TomcatB is not passed over to TomcatA, and a re-login is required. My question: 1. Is it possible to pass the session information to TomcatA before shutting down TomcatB? For eg. we want to perform servers upgrade, so we down TomcatB, upgrade it, start TomcatB, before doing the same to TomcatA. - Jim The information in this email is confidential and is intended solely for the addressee(s). Access to this email by anyone else is unauthorized. If you are not an intended recipient, please notify the sender of this email immediately. You should not copy, use or disseminate the information contained in the email. Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Capco. http://www.capco.com/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: tomcat load-balancing maintenance strategy?
Yeah, but you still need to uncomment the cluster element in the server.xml. Also if you have a multi-homed server you need to bind multicast to a specific ip address. Not to mention that you need to set up mod_jk and apache to load balance. It is not just adding a trivial /distributable xml element into the web.xml that makes load balancing with session replication work. Anyway, just my thoughts on the matter Randall -Original Message- From: Ramu, Vinod [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 08, 2005 8:03 AM To: Tomcat Users List Subject: RE: tomcat load-balancing maintenance strategy? I thought /distributable XML element in web.xml does that automatically. -Original Message- From: Randall Svancara [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 08, 2005 9:40 AM To: Tomcat Users List Subject: RE: tomcat load-balancing maintenance strategy? You need to implement either in memory session replication or persist the session in a database or a shared file system. I have finally got my tomcat cluster working and session replication is functional. Randall -Original Message- From: Sng Wee Jim [mailto:[EMAIL PROTECTED] Sent: Monday, March 07, 2005 10:50 PM To: tomcat-user@jakarta.apache.org Subject: tomcat load-balancing maintenance strategy? Hi, I am load-balancing tomcat 5.0.28 using JK1.2 / AJP1.3. For discussion, let's assume I have 2 tomcats (TomcatA and TomcatB) load-balanced. When I shutdown one of the tomcats (Tomcat B), future requests for TomcatB is correctly redirected and handled by the TomcatA. However, the original session on TomcatB is not passed over to TomcatA, and a re-login is required. My question: 1. Is it possible to pass the session information to TomcatA before shutting down TomcatB? For eg. we want to perform servers upgrade, so we down TomcatB, upgrade it, start TomcatB, before doing the same to TomcatA. - Jim The information in this email is confidential and is intended solely for the addressee(s). Access to this email by anyone else is unauthorized. If you are not an intended recipient, please notify the sender of this email immediately. You should not copy, use or disseminate the information contained in the email. Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Capco. http://www.capco.com/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: load-balancing
Sng Wee Jim wrote: I am load-balancing tomcat 5.0.28 using JK1.2/AJP1.3. Cool ;) I noticed the loadbalancer virtual JK worker redirect requests to the tomcat instances in a round-robin fashion, without taking into account which tomcat has a higher number of active sessions. You must note what jk version and web server you are using. If using 1.2.8 you will have up to 20% load-presumption error if using Apache prefork or worker mpm, because the load balancing data is maintained per child process. The 1.2.9 (not released yet, but will be this week I hope) has that resolved using shared memory. Regards, Mladen - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: tomcat load-balancing maintenance strategy?
Jim, Also check the archives for my post on restarting a downed Tomcat cluster member. This was not working well prior to Tomcat 5.5.8. When the instance was restarted it would throw exceptions trying to re-synchronize vi session replication. - Richard -Original Message- From: Randall Svancara [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 08, 2005 10:09 AM To: Tomcat Users List Subject: RE: tomcat load-balancing maintenance strategy? Yeah, but you still need to uncomment the cluster element in the server.xml. Also if you have a multi-homed server you need to bind multicast to a specific ip address. Not to mention that you need to set up mod_jk and apache to load balance. It is not just adding a trivial /distributable xml element into the web.xml that makes load balancing with session replication work. Anyway, just my thoughts on the matter Randall -Original Message- From: Ramu, Vinod [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 08, 2005 8:03 AM To: Tomcat Users List Subject: RE: tomcat load-balancing maintenance strategy? I thought /distributable XML element in web.xml does that automatically. -Original Message- From: Randall Svancara [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 08, 2005 9:40 AM To: Tomcat Users List Subject: RE: tomcat load-balancing maintenance strategy? You need to implement either in memory session replication or persist the session in a database or a shared file system. I have finally got my tomcat cluster working and session replication is functional. Randall -Original Message- From: Sng Wee Jim [mailto:[EMAIL PROTECTED] Sent: Monday, March 07, 2005 10:50 PM To: tomcat-user@jakarta.apache.org Subject: tomcat load-balancing maintenance strategy? Hi, I am load-balancing tomcat 5.0.28 using JK1.2 / AJP1.3. For discussion, let's assume I have 2 tomcats (TomcatA and TomcatB) load-balanced. When I shutdown one of the tomcats (Tomcat B), future requests for TomcatB is correctly redirected and handled by the TomcatA. However, the original session on TomcatB is not passed over to TomcatA, and a re-login is required. My question: 1. Is it possible to pass the session information to TomcatA before shutting down TomcatB? For eg. we want to perform servers upgrade, so we down TomcatB, upgrade it, start TomcatB, before doing the same to TomcatA. - Jim The information in this email is confidential and is intended solely for the addressee(s). Access to this email by anyone else is unauthorized. If you are not an intended recipient, please notify the sender of this email immediately. You should not copy, use or disseminate the information contained in the email. Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Capco. http://www.capco.com/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
tomcat load-balancing maintenance strategy?
Hi, I am load-balancing tomcat 5.0.28 using JK1.2 / AJP1.3. For discussion, let's assume I have 2 tomcats (TomcatA and TomcatB) load-balanced. When I shutdown one of the tomcats (Tomcat B), future requests for TomcatB is correctly redirected and handled by the TomcatA. However, the original session on TomcatB is not passed over to TomcatA, and a re-login is required. My question: 1. Is it possible to pass the session information to TomcatA before shutting down TomcatB? For eg. we want to perform servers upgrade, so we down TomcatB, upgrade it, start TomcatB, before doing the same to TomcatA. - Jim The information in this email is confidential and is intended solely for the addressee(s). Access to this email by anyone else is unauthorized. If you are not an intended recipient, please notify the sender of this email immediately. You should not copy, use or disseminate the information contained in the email. Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Capco. http://www.capco.com/
session load-balancing and clustering of tomcat
Hi, I am using tomcat 5.0.28. My question is how to setup sticky-session load-balancing and clustering of tomcat? Do I need to upgrade to tomcat 5.5.X? Note the requirement is on sticky-session. - Jim The information in this email is confidential and is intended solely for the addressee(s). Access to this email by anyone else is unauthorized. If you are not an intended recipient, please notify the sender of this email immediately. You should not copy, use or disseminate the information contained in the email. Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Capco. http://www.capco.com/
Re: session load-balancing and clustering of tomcat
1) In server.xml : - uncomment the AJP 1.3 Connector (on port 8009), - set the jvmRoute in each Engine example : Engine name=Standalone defaultHost=host1 debug=0 jvmRoute=t1_ajp13 2) then add the module mod_jk in apache with jk workers defined like this : worker.list=t1_ajp13,t2_ajp13,loadbalancer worker.t1_ajp13.type=ajp13 worker.t1_ajp13.host=host1 worker.t1_ajp13.port=8009 worker.t1_ajp13.lbfactor=1 worker.t1_ajp13.socket_timeout=5 worker.t1_ajp13.recycle_timeout=10 worker.t2_ajp13.type=ajp13 worker.t2_ajp13.host=host2 worker.t2_ajp13.port=8009 worker.t2_ajp13.lbfactor=1 worker.t2_ajp13.socket_timeout=5 worker.t2_ajp13.recycle_timeout=10 worker.loadbalancer.type=lb worker.loadbalancer.balanced_workers= t1_ajp13,t2_ajp13 then, you can load-balance your virtual host like this : JkMount /*.jsp loadbalancer 3) Conclusion : Thanks to mod_jk, you'll have load-balancing (with sticky sessions with JSESSION_ID like this : x.t1_ajp13 or y.t2_ajp13), and failover. This feature work with all tomcats (TC3.3-TC5) On Tue, 1 Mar 2005 18:08:59 +0800 Sng Wee Jim [EMAIL PROTECTED] wrote: Hi, I am using tomcat 5.0.28. My question is how to setup sticky-session load-balancing and clustering of tomcat? Do I need to upgrade to tomcat 5.5.X? Note the requirement is on sticky-session. - Jim The information in this email is confidential and is intended solely for the addressee(s). Access to this email by anyone else is unauthorized. If you are not an intended recipient, please notify the sender of this email immediately. You should not copy, use or disseminate the information contained in the email. Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Capco. http://www.capco.com/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: session load-balancing and clustering of tomcat
My gotcha was setting the jvmRoute in EACH/EVERY Engine! -Original Message- From: Lionel Farbos [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 01, 2005 8:20 AM To: Tomcat Users List Cc: [EMAIL PROTECTED] Subject: Re: session load-balancing and clustering of tomcat 1) In server.xml : - uncomment the AJP 1.3 Connector (on port 8009), - set the jvmRoute in each Engine example : Engine name=Standalone defaultHost=host1 debug=0 jvmRoute=t1_ajp13 2) then add the module mod_jk in apache with jk workers defined like this : worker.list=t1_ajp13,t2_ajp13,loadbalancer worker.t1_ajp13.type=ajp13 worker.t1_ajp13.host=host1 worker.t1_ajp13.port=8009 worker.t1_ajp13.lbfactor=1 worker.t1_ajp13.socket_timeout=5 worker.t1_ajp13.recycle_timeout=10 worker.t2_ajp13.type=ajp13 worker.t2_ajp13.host=host2 worker.t2_ajp13.port=8009 worker.t2_ajp13.lbfactor=1 worker.t2_ajp13.socket_timeout=5 worker.t2_ajp13.recycle_timeout=10 worker.loadbalancer.type=lb worker.loadbalancer.balanced_workers= t1_ajp13,t2_ajp13 then, you can load-balance your virtual host like this : JkMount /*.jsp loadbalancer 3) Conclusion : Thanks to mod_jk, you'll have load-balancing (with sticky sessions with JSESSION_ID like this : x.t1_ajp13 or y.t2_ajp13), and failover. This feature work with all tomcats (TC3.3-TC5) On Tue, 1 Mar 2005 18:08:59 +0800 Sng Wee Jim [EMAIL PROTECTED] wrote: Hi, I am using tomcat 5.0.28. My question is how to setup sticky-session load-balancing and clustering of tomcat? Do I need to upgrade to tomcat 5.5.X? Note the requirement is on sticky-session. - Jim - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: session load-balancing and clustering of tomcat
Lionel Farbos wrote: 1) In server.xml : - uncomment the AJP 1.3 Connector (on port 8009), - set the jvmRoute in each Engine example : Engine name=Standalone defaultHost=host1 debug=0 jvmRoute=t1_ajp13 Session route *must* consists only of alphanumeric characters. See the: http://jakarta.apache.org/tomcat/connectors-doc/config/workers.html Later mod_jk releases will have that as prerequisite so that we don't need to url encode session routes. 2) then add the module mod_jk in apache with jk workers defined like this : worker.list=t1_ajp13,t2_ajp13,loadbalancer This is not quite correct, although it will work. You should set worker.list only for workers that have JkMount directive registered. Also workers that are member of load balancer *should* not be listed within worker.list Regards, Mladen. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: session load-balancing and clustering of tomcat
On Tue, 01 Mar 2005 17:55:15 +0100 Mladen Turk [EMAIL PROTECTED] wrote: Lionel Farbos wrote: 2) then add the module mod_jk in apache with jk workers defined like this : worker.list=t1_ajp13,t2_ajp13,loadbalancer This is not quite correct, although it will work. You should set worker.list only for workers that have JkMount directive registered. Also workers that are member of load balancer *should* not be listed within worker.list I put this example because it can be useful for maintenance (the JkMount directive at the instant t is possibly not the same as at the instant t+x) Example : My webapp testAppli is now loadbalanced on hosts h1 and h2. If want to upgrade my webapp testAppli. So, 1) I mono-balance testAppli on h2 (with JkMount /*.jsp h2 + apache reload) 2) I restart testAppli on the Tomcat_h1 instance 3) I mono-balance testAppli on h1 4) I restart testAppli on the Tomcat_h2 instance 5) I re-loadbalance testAppli With this principle + mod_jk 1.2.9 (with dynamic change of properties) + a graceful restart of Context I hope upgrading my webapp transparently (without interruptions)... - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: session load-balancing and clustering of tomcat
Hi, I am actually trying to get sticky session load-balancing with IIS tomcat (not apache webserver, client's requirement). My worker.properties: == worker.list=tomcat1,tomcat2 worker.tomcat1.type=ajp13 worker.tomcat1.host=localhost worker.tomcat1.port=8009 worker.tomcat1.lbfactor=1 worker.tomcat1.socket_timeout=5 worker.tomcat1.recycle_timeout=10 worker.tomcat2.type=ajp13 worker.tomcat2.host=localhost worker.tomcat2.port=8209 worker.tomcat2.lbfactor=1 worker.tomcat2.socket_timeout=5 worker.tomcat2.recycle_timeout=10 worker.loadbalancer.type=lb worker.loadbalancer.balanced_workers=tomcat1 My uriworkermap.properties: === default.worker=tomcat1 /webapp/*.jsp=$(default.worker) /webapp/*.do=$(default.worker) tomcat1 seems to be hardcoded to be the default worker. So how should I configure, so that tomcat2 will be used for the load-balancing redirection too? Also tomcat1 is specified as a load-balancer worker, does that mean that if tomcat1 goes down, then load-balancing will cease too? - Jim -Original Message- From: Mladen Turk [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 02, 2005 12:55 AM To: Tomcat Users List Subject: Re: session load-balancing and clustering of tomcat Lionel Farbos wrote: 1) In server.xml : - uncomment the AJP 1.3 Connector (on port 8009), - set the jvmRoute in each Engine example : Engine name=Standalone defaultHost=host1 debug=0 jvmRoute=t1_ajp13 Session route *must* consists only of alphanumeric characters. See the: http://jakarta.apache.org/tomcat/connectors-doc/config/workers.html Later mod_jk releases will have that as prerequisite so that we don't need to url encode session routes. 2) then add the module mod_jk in apache with jk workers defined like this : worker.list=t1_ajp13,t2_ajp13,loadbalancer This is not quite correct, although it will work. You should set worker.list only for workers that have JkMount directive registered. Also workers that are member of load balancer *should* not be listed within worker.list Regards, Mladen. The information in this email is confidential and is intended solely for the addressee(s). Access to this email by anyone else is unauthorized. If you are not an intended recipient, please notify the sender of this email immediately. You should not copy, use or disseminate the information contained in the email. Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Capco. http://www.capco.com/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: session load-balancing and clustering of tomcat
Hi, Sorry for the noise. I have found the solution at http://marc.theaimsgroup.com/?l=tomcat-userm=104808785801048w=2 - Jim -Original Message- From: Sng Wee Jim Sent: Wednesday, March 02, 2005 2:14 PM To: 'Mladen Turk'; Tomcat Users List Subject: RE: session load-balancing and clustering of tomcat Hi, I am actually trying to get sticky session load-balancing with IIS tomcat (not apache webserver, client's requirement). My worker.properties: == worker.list=tomcat1,tomcat2 worker.tomcat1.type=ajp13 worker.tomcat1.host=localhost worker.tomcat1.port=8009 worker.tomcat1.lbfactor=1 worker.tomcat1.socket_timeout=5 worker.tomcat1.recycle_timeout=10 worker.tomcat2.type=ajp13 worker.tomcat2.host=localhost worker.tomcat2.port=8209 worker.tomcat2.lbfactor=1 worker.tomcat2.socket_timeout=5 worker.tomcat2.recycle_timeout=10 worker.loadbalancer.type=lb worker.loadbalancer.balanced_workers=tomcat1 My uriworkermap.properties: === default.worker=tomcat1 /webapp/*.jsp=$(default.worker) /webapp/*.do=$(default.worker) tomcat1 seems to be hardcoded to be the default worker. So how should I configure, so that tomcat2 will be used for the load-balancing redirection too? Also tomcat1 is specified as a load-balancer worker, does that mean that if tomcat1 goes down, then load-balancing will cease too? - Jim -Original Message- From: Mladen Turk [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 02, 2005 12:55 AM To: Tomcat Users List Subject: Re: session load-balancing and clustering of tomcat Lionel Farbos wrote: 1) In server.xml : - uncomment the AJP 1.3 Connector (on port 8009), - set the jvmRoute in each Engine example : Engine name=Standalone defaultHost=host1 debug=0 jvmRoute=t1_ajp13 Session route *must* consists only of alphanumeric characters. See the: http://jakarta.apache.org/tomcat/connectors-doc/config/workers.html Later mod_jk releases will have that as prerequisite so that we don't need to url encode session routes. 2) then add the module mod_jk in apache with jk workers defined like this : worker.list=t1_ajp13,t2_ajp13,loadbalancer This is not quite correct, although it will work. You should set worker.list only for workers that have JkMount directive registered. Also workers that are member of load balancer *should* not be listed within worker.list Regards, Mladen. The information in this email is confidential and is intended solely for the addressee(s). Access to this email by anyone else is unauthorized. If you are not an intended recipient, please notify the sender of this email immediately. You should not copy, use or disseminate the information contained in the email. Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Capco. http://www.capco.com/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Load balancing SSL sessions
I believe there is an issue with failover, however, with this route (thus, the second use case for load balancers - failover). If an IP address in the DNS list goes down, it can take up to 48 hours before the DNS maps are updated to reflect the loss of one of the IPs. In the meantime, clients may be getting directed to a server that is not available. Someone pls correct me if I'm wrong about that. From: Filip Hanik - Dev Lists [EMAIL PROTECTED] Reply-To: Tomcat Users List tomcat-user@jakarta.apache.org To: Tomcat Users List tomcat-user@jakarta.apache.org Subject: Re: Load balancing SSL sessions Date: Tue, 22 Feb 2005 16:01:10 -0600 you can also use DNS round robin, www.mysite.com resolves to two or more IP addresses. Filip Andrew Miehs wrote: We use F5 BigIPs, but they are probably overkill for your application - The cisco probably will be as well. A 'Cheap' software solution might be to work with redirects, and 2 separate IP addresses. ie: ssl1.mysite.com and ssl2.mysite.com - You will need 2 ssl keys though for this to work. Does all of your app require ssl? or just a certain part, ie: payment. Do you need the stickiness for the whole app? or just for the ssl (seeing you are using tomcat, you will probably need it for the whole app)... Andrew On Feb 22, 2005, at 10:24 PM, Kelly Vista wrote: Hi - We are looking to deploy our app, running on Tomcat 5, soon and are exploring load balancing options. We are looking at H/W and S/W solutions, and I was wondering if anyone had any past experience/advice they would like to share. Our deployment is as pretty run-of-the-mill as it gets: 2 machines, each running Tomcat. We would like to avoid replicating state (since we have a lot of state in these apps, for reasons beyond our current control). Even in-memory session replication would not be option here, so we're punting on the Tomcat cluster solution. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] _ Express yourself instantly with MSN Messenger! Download today - it's FREE! http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Load balancing SSL sessions
BTW, I believe there is another issue with DNS round robin -- no support for sticky sessions. There is no assurance that a series of requests (i.e., a session) for a particular client IP or client with a particular session ID will be routed to the same server. Also, SSL sticky sessions are definitely not supported. Again, pls correct me if I'm wrong. From: Filip Hanik - Dev Lists [EMAIL PROTECTED] Reply-To: Tomcat Users List tomcat-user@jakarta.apache.org To: Tomcat Users List tomcat-user@jakarta.apache.org Subject: Re: Load balancing SSL sessions Date: Tue, 22 Feb 2005 16:01:10 -0600 you can also use DNS round robin, www.mysite.com resolves to two or more IP addresses. Filip Andrew Miehs wrote: We use F5 BigIPs, but they are probably overkill for your application - The cisco probably will be as well. A 'Cheap' software solution might be to work with redirects, and 2 separate IP addresses. ie: ssl1.mysite.com and ssl2.mysite.com - You will need 2 ssl keys though for this to work. Does all of your app require ssl? or just a certain part, ie: payment. Do you need the stickiness for the whole app? or just for the ssl (seeing you are using tomcat, you will probably need it for the whole app)... Andrew On Feb 22, 2005, at 10:24 PM, Kelly Vista wrote: Hi - We are looking to deploy our app, running on Tomcat 5, soon and are exploring load balancing options. We are looking at H/W and S/W solutions, and I was wondering if anyone had any past experience/advice they would like to share. Our deployment is as pretty run-of-the-mill as it gets: 2 machines, each running Tomcat. We would like to avoid replicating state (since we have a lot of state in these apps, for reasons beyond our current control). Even in-memory session replication would not be option here, so we're punting on the Tomcat cluster solution. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] _ Express yourself instantly with MSN Messenger! Download today - it's FREE! http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Load balancing SSL sessions
Hi Kelly, To do a software solution you could use the following method. www.mysite.com - Both servers can answer this request, (for example round robin dns) or some form of hsrp (im sure there is a patch for linux to do this)... and based upon load and a simple script (perl, java, etc) they then redirect the traffic server1.mysite.com, or server2.mysite.com This way the session then stays on server1 or server2. As I said though, you will need 2 certificates if you do not want the clients complaining about broken ssl certificates. Anderw Kelly Vista wrote: Thanks Andrew. In answer to your question, some of our app requires SSL -- exactly like an order-style app (but it's not a product ordering app). So, a person's session might involve the following path: 1. non SSL req 2. non SSL req 3. SSL req 4. non SSL req and we'd like that entire session to be persistent (i.e., sticky with one particular app server). BTW, it is not an issue for us if that server fails during the session. It will happen rarely and it's an acceptable failure for us (i.e., not mission critical data). I should have mentioned that we expect 1000 req/hour with this app. However, our app is not necessarily quick (dependent on external resources) and does keep a lot of state. I'm personally someone in favor of a H/W LB solution, but looking to be convinced that a valid S/W solution exists which is better (or just as good) as a H/W solution. I know the S/W solution will be less reliable (not solid state), but I'm looking to hear from folks who have done SSL session affinity with a S/W only approach. Andrew On Feb 22, 2005, at 10:24 PM, Kelly Vista wrote: Hi - We are looking to deploy our app, running on Tomcat 5, soon and are exploring load balancing options. We are looking at H/W and S/W solutions, and I was wondering if anyone had any past experience/advice they would like to share. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Load balancing SSL sessions
On Feb 22, 2005, at 10:24 PM, Kelly Vista wrote: Hi - We are looking to deploy our app, running on Tomcat 5, soon and are exploring load balancing options. We are looking at H/W and S/W solutions, and I was wondering if anyone had any past experience/advice they would like to share. Our deployment is as pretty run-of-the-mill as it gets: 2 machines, each running Tomcat. We would like to avoid replicating state (since we have a lot of state in these apps, for reasons beyond our current control). Even in-memory session replication would not be option here, so we're punting on the Tomcat cluster solution. You could use Coherence*Web to cluster your session state, and a Foundry switch to do the load balancing. It can do sticky load balancing, and if a server fails then coherence will ensure that your other boxes still have the session state. http://www.foundrynet.com/products/webswitches/serveriron/ http://www.tangosol.com/coherence-uses-a.jsp Best Regards, James - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Load balancing SSL sessions
Hi - We are looking to deploy our app, running on Tomcat 5, soon and are exploring load balancing options. We are looking at H/W and S/W solutions, and I was wondering if anyone had any past experience/advice they would like to share. Our deployment is as pretty run-of-the-mill as it gets: 2 machines, each running Tomcat. We would like to avoid replicating state (since we have a lot of state in these apps, for reasons beyond our current control). Even in-memory session replication would not be option here, so we're punting on the Tomcat cluster solution. Our only other requirement is that the LB solution support sticky SSL sessions. I know that H/W LB (like Coyote Point Equalizer and Cisco LocalDirector) can do the LB + SSL acceleration, which I believe would do the job. However, I would be interested to know if there is a S/W LB solution that people would recommend as an alternative. It would need to support sticky SSL sessions -- the only solution I know that can do that is Windows Network Load Balancing. I'm assuming that Tomcat's basic balancer app *does not* support sticky SSL sessions, though I cannot confirm that based on available documentation. What do people do who want to balance SSL sessions across Tomcat servers? Thanks very much for your feedback, _ Dont just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Load balancing SSL sessions
We use F5 BigIPs, but they are probably overkill for your application - The cisco probably will be as well. A 'Cheap' software solution might be to work with redirects, and 2 separate IP addresses. ie: ssl1.mysite.com and ssl2.mysite.com - You will need 2 ssl keys though for this to work. Does all of your app require ssl? or just a certain part, ie: payment. Do you need the stickiness for the whole app? or just for the ssl (seeing you are using tomcat, you will probably need it for the whole app)... Andrew On Feb 22, 2005, at 10:24 PM, Kelly Vista wrote: Hi - We are looking to deploy our app, running on Tomcat 5, soon and are exploring load balancing options. We are looking at H/W and S/W solutions, and I was wondering if anyone had any past experience/advice they would like to share. Our deployment is as pretty run-of-the-mill as it gets: 2 machines, each running Tomcat. We would like to avoid replicating state (since we have a lot of state in these apps, for reasons beyond our current control). Even in-memory session replication would not be option here, so we're punting on the Tomcat cluster solution. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Load balancing SSL sessions
you can also use DNS round robin, www.mysite.com resolves to two or more IP addresses. Filip Andrew Miehs wrote: We use F5 BigIPs, but they are probably overkill for your application - The cisco probably will be as well. A 'Cheap' software solution might be to work with redirects, and 2 separate IP addresses. ie: ssl1.mysite.com and ssl2.mysite.com - You will need 2 ssl keys though for this to work. Does all of your app require ssl? or just a certain part, ie: payment. Do you need the stickiness for the whole app? or just for the ssl (seeing you are using tomcat, you will probably need it for the whole app)... Andrew On Feb 22, 2005, at 10:24 PM, Kelly Vista wrote: Hi - We are looking to deploy our app, running on Tomcat 5, soon and are exploring load balancing options. We are looking at H/W and S/W solutions, and I was wondering if anyone had any past experience/advice they would like to share. Our deployment is as pretty run-of-the-mill as it gets: 2 machines, each running Tomcat. We would like to avoid replicating state (since we have a lot of state in these apps, for reasons beyond our current control). Even in-memory session replication would not be option here, so we're punting on the Tomcat cluster solution. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Load balancing SSL sessions
Problem with round robin dns is that you can not guarantee that the web browser/ client will not make a second request to the dns server during the session - although very very unlikely. Andrew On Feb 22, 2005, at 11:01 PM, Filip Hanik - Dev Lists wrote: you can also use DNS round robin, www.mysite.com resolves to two or more IP addresses. Filip Andrew Miehs wrote: We use F5 BigIPs, but they are probably overkill for your application - The cisco probably will be as well. A 'Cheap' software solution might be to work with redirects, and 2 separate IP addresses. ie: ssl1.mysite.com and ssl2.mysite.com - You will need 2 ssl keys though for this to work. Does all of your app require ssl? or just a certain part, ie: payment. Do you need the stickiness for the whole app? or just for the ssl (seeing you are using tomcat, you will probably need it for the whole app)... Andrew On Feb 22, 2005, at 10:24 PM, Kelly Vista wrote: Hi - We are looking to deploy our app, running on Tomcat 5, soon and are exploring load balancing options. We are looking at H/W and S/W solutions, and I was wondering if anyone had any past experience/advice they would like to share. Our deployment is as pretty run-of-the-mill as it gets: 2 machines, each running Tomcat. We would like to avoid replicating state (since we have a lot of state in these apps, for reasons beyond our current control). Even in-memory session replication would not be option here, so we're punting on the Tomcat cluster solution. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Load balancing SSL sessions
Thanks Andrew. In answer to your question, some of our app requires SSL -- exactly like an order-style app (but it's not a product ordering app). So, a person's session might involve the following path: 1. non SSL req 2. non SSL req 3. SSL req 4. non SSL req and we'd like that entire session to be persistent (i.e., sticky with one particular app server). BTW, it is not an issue for us if that server fails during the session. It will happen rarely and it's an acceptable failure for us (i.e., not mission critical data). I should have mentioned that we expect 1000 req/hour with this app. However, our app is not necessarily quick (dependent on external resources) and does keep a lot of state. I'm personally someone in favor of a H/W LB solution, but looking to be convinced that a valid S/W solution exists which is better (or just as good) as a H/W solution. I know the S/W solution will be less reliable (not solid state), but I'm looking to hear from folks who have done SSL session affinity with a S/W only approach. Thanks again, From: Andrew Miehs [EMAIL PROTECTED] Reply-To: Tomcat Users List tomcat-user@jakarta.apache.org To: Tomcat Users List tomcat-user@jakarta.apache.org Subject: Re: Load balancing SSL sessions Date: Tue, 22 Feb 2005 22:40:14 +0100 We use F5 BigIPs, but they are probably overkill for your application - The cisco probably will be as well. A 'Cheap' software solution might be to work with redirects, and 2 separate IP addresses. ie: ssl1.mysite.com and ssl2.mysite.com - You will need 2 ssl keys though for this to work. Does all of your app require ssl? or just a certain part, ie: payment. Do you need the stickiness for the whole app? or just for the ssl (seeing you are using tomcat, you will probably need it for the whole app)... Andrew On Feb 22, 2005, at 10:24 PM, Kelly Vista wrote: Hi - We are looking to deploy our app, running on Tomcat 5, soon and are exploring load balancing options. We are looking at H/W and S/W solutions, and I was wondering if anyone had any past experience/advice they would like to share. Our deployment is as pretty run-of-the-mill as it gets: 2 machines, each running Tomcat. We would like to avoid replicating state (since we have a lot of state in these apps, for reasons beyond our current control). Even in-memory session replication would not be option here, so we're punting on the Tomcat cluster solution. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] _ Express yourself instantly with MSN Messenger! Download today - it's FREE! http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
not getting load-balancing behavior
We're using apache 1.3.33 with tomcat 5.0.16, connected via mod_jk, on Solaris. What I'm observing is that load-balancing isn't working. We have a couple of machines dedicated to our XML interface, and have apache configured to hand all such requests to loadbalancer3. In our mod_jk configuration file, we've got: JkMount /xml/* loadbalancer3 Loadbalancer3 is configured as follows, in the workers.properties file: worker.loadbalancer3.type=lb worker.loadbalancer3.balanced_workers=machine-a,machine-b worker.loadbalancer3.sticky_session=0 worker.loadbalancer3.sticky_sessions=0 I used both sticky_session and sticky_sessions because I've seen it both ways, in documentation. (Which is it really?) Anyway, I've got lbfactor set to 1 for both machine-a and machine-b. Now, in operation, machine-a is getting hammered, while machine-b gets almost no traffic at all. Machine-a typically has CPU loads in the 4.0 range, while machine-b sits idle at 0.04. My hunch is that the bulk of the traffic is coming from a single source, and so apache/mod_jk/something is deciding to give it over to the same tomcat instance each time, even though it shouldn't be. Ideally, work would be handed to machine-a and machine-b in round-robin fashion, regardless of past history. Any clues as to what I'm doing wrong? This is causing no shortage of consternation in our production environment. Thanks, John -- John Klassa / [EMAIL PROTECTED] Test Information Systems / Central Engineering Services Cisco Systems / RTP / NC/ USA - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: not getting load-balancing behavior
We're using apache 1.3.33 with tomcat 5.0.16, connected via mod_jk, on Solaris. This is very outdated. You shuld update to TC 5.0.30 and mod_jk 1.2.8. What I'm observing is that load-balancing isn't working. We have a couple of machines dedicated to our XML interface, and have apache Now, in operation, machine-a is getting hammered, while machine-b gets almost no traffic at all. Machine-a typically has CPU loads in the 4.0 range, while machine-b sits idle at 0.04. My hunch is that the bulk of the traffic is coming from a single source, and so apache/mod_jk/something is deciding to give it over to the same tomcat instance each time, even though it shouldn't be. Routing decisions are made by each Apache process independently. So directly after starting each apache process will forward it's first request to the same worker, it's second to the same other worker etc. After some time, because of differing answer times you will exhibit a balanced situation. Are you using Keep-Alive for HTTP? If your are having only few Clients and you are using very long Keep-Alive-Times maybe all clients will constantly use the same worker. But I#m not sure if it's true, although it would be an easy check to just disable Keep-Alive in Apache. Another possibility (after upgrading ;) ) is to use debug log level and study the output under low load. You didn't provide the full workers.properties file though. Are you having ONLY loadbalancer3 in the workers list? - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Load-balancing tomcats according to load?
Hi, I am using Apache to load balance a set of Tomcat servers. However, a round-robin or simple load-factor algorithm is not sufficient, as some of the requests we receive trigger very intensive operations on a tomcat server. I've been discussing this on the dev list, and there doesn't seem to be an easy way to modify things to do this. I wanted to ask, here, therefore, what other people do? Does anyone know of third-party tools that can do this etc.? Many thanks, David - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Jakarta Tomcat Connector - Load Balancing
Thanks. I don't recall reading this in any of the documentation. Can you explain what setting this actually does? Derek Mladen Turk wrote: Derek Greer wrote: I'm trying to use the Tomcat Connector to do load balancing through the IIS filter, however the sessions do not seem to be 'sticky. According to the documentation, the session is set to sticky by default. Even so, after seeing non-sticky behavior I set my lb worker explicitly (i.e. worker.lbworker.sticky_session=1). Why is this not working? Could be various reasons, but the first one is: Did you set the jvmRoute to match the worker names? Mladen. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Jakarta Tomcat Connector - Load Balancing
Derek Greer wrote: Thanks. I don't recall reading this in any of the documentation. Can you explain what setting this actually does? Derek Mladen Turk wrote: Derek Greer wrote: I'm trying to use the Tomcat Connector to do load balancing through the IIS filter, however the sessions do not seem to be 'sticky. According to the documentation, the session is set to sticky by default. Even so, after seeing non-sticky behavior I set my lb worker explicitly (i.e. worker.lbworker.sticky_session=1). Why is this not working? Could be various reasons, but the first one is: Did you set the jvmRoute to match the worker names? It is documented both in the server.xml, in the JK doc and in the Tomcat configuration documentation. e.g - http://jakarta.apache.org/tomcat/tomcat-5.5-doc/config/engine.html - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Jakarta Tomcat Connector - Load Balancing
I'm trying to use the Tomcat Connector to do load balancing through the IIS filter, however the sessions do not seem to be 'sticky. According to the documentation, the session is set to sticky by default. Even so, after seeing non-sticky behavior I set my lb worker explicitly (i.e. worker.lbworker.sticky_session=1). Why is this not working? Derek Greer - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Jakarta Tomcat Connector - Load Balancing
Derek Greer wrote: I'm trying to use the Tomcat Connector to do load balancing through the IIS filter, however the sessions do not seem to be 'sticky. According to the documentation, the session is set to sticky by default. Even so, after seeing non-sticky behavior I set my lb worker explicitly (i.e. worker.lbworker.sticky_session=1). Why is this not working? Could be various reasons, but the first one is: Did you set the jvmRoute to match the worker names? Mladen. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
hard load balancing problem
Hello , a specific jk2+lb question please. Says that I have apache HTTP + 2 Tomcats Workers. Each workers is defined in lb group and manage the same webapp. - It works fine in optimal context (2 Tomcat + Apache run). - It works fine in 1 tomcat crash. But the problem is when the webapp is stopped (by manager for ie.) on one worker. The query is send to both tomcat even to the one that have no webapp available and so, the answer to the client is a nice 404 HTTP Error code. IMHO, it's because that jk2 don't parses the http answer. Is there some issue please ? Regards, Arnaud
RE: Clustering and Load balancing
Hi, There is a load of information in the tomcat documentation. Your post is a bit vague about what you actually want to know. I'd suggest reading the documentation then coming back here if you have any more specific questions or problems. But a hint to get you on the road. There is a clustering section in your server.xml, uncomment this on a couple of machines and add the distributable/ tag to the web.xml in a webapp and you'll have a cluster. Ta Matt -Original Message- From: Vinayagam [mailto:[EMAIL PROTECTED] Sent: 10 November 2004 04:41 To: Tomcat Users List Cc: [EMAIL PROTECTED] Subject: Clustering and Load balancing Hi All! Can any one help me abt clustering and Loadbalancing using Tomcat 5.0/later. We have an application, Which is run on Tomcat 4.0. Now we are going to run this application in Tomcat 5.0. Also we are going to implements the clustering technology to our appl. So that i need som help, How to do this. Thanx Regards Vinayagam Any opinions expressed in this E-mail may be those of the individual and not necessarily the company. This E-mail and any files transmitted with it are confidential and solely for the use of the intended recipient. If you are not the intended recipient or the person responsible for delivering to the intended recipient, be advised that you have received this E-mail in error and that any use or copying is strictly prohibited. If you have received this E-mail in error please notify the beCogent postmaster at [EMAIL PROTECTED] Unless expressly stated, opinions in this email are those of the individual sender and not beCogent Ltd. You must take full responsibility for virus checking this email and any attachments. Please note that the content of this email or any of its attachments may contain data that falls within the scope of the Data Protection Acts and that you must ensure that any handling or processing of such data by you is fully compliant with the terms and provisions of the Data Protection Act 1984 and 1998. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE : Clustering and Load balancing
You have to follow the rules included in the document (http://jakarta.apache.org/tomcat/tomcat-5.0-doc/cluster-howto.html ) . All your session attributes must implement java.io.Serializable . Uncomment the Cluster element in server.xml Define multicast address and port for your cluster communication (for cluster heart beat). Define tcp parameter (tcpListenAddress/tcpListenport) for each host of your cluster (for session replication). . Uncomment the Valve(ReplicationValve) element in server.xml . If your Tomcat instances are running on the same machine, make sure the tcpListenPort attribute is unique for each instance. . Make sure your web.xml has the distributable/ element Use, for example, Apache and the native connector JK to implement the load balancing. -Message d'origine- De : Vinayagam [mailto:[EMAIL PROTECTED] Envoyé : mercredi 10 novembre 2004 05:41 À : Tomcat Users List Cc : [EMAIL PROTECTED] Objet : Clustering and Load balancing Hi All! Can any one help me abt clustering and Loadbalancing using Tomcat 5.0/later. We have an application, Which is run on Tomcat 4.0. Now we are going to run this application in Tomcat 5.0. Also we are going to implements the clustering technology to our appl. So that i need som help, How to do this. Thanx Regards Vinayagam - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Clustering and Load balancing
Hi All! Can any one help me abt clustering and Loadbalancing using Tomcat 5.0/later. We have an application, Which is run on Tomcat 4.0. Now we are going to run this application in Tomcat 5.0. Also we are going to implements the clustering technology to our appl. So that i need som help, How to do this. Thanx Regards Vinayagam
Error messages on Apache2 with load balancing jk2 and Tomcat
Hallo! My Enviroment: Suse Linux 9.1 Tomcat 5.0.28 JK2 Connector 2.0.4 Apache2 2.0.50 I've configured the jk2-connctor to load balance. Here my worker2.properties: # Set a Logger [logger.apache2] file=/usr/local/apache2/logs/error.log level=DEBUG #debug=1 # config settings [config] file=/usr/local/apache2/conf/workers2.properties debug=0 # Shared Memory file settings [shm] file=/usr/local/apache2/conf/jk2.shm size=10 # communication channel settings for our HDTTomcat1 [channel.socket:192.168.120.148:8009] port=8009 host=192.168.120.148 tomcatId=myTomcat group=balanced lb_factor=1 route=jvm1 # communication channel settings for our HDTTomcat2 [channel.socket:192.168.120.147:8009] port=8009 host=192.168.120.147 tomcatId=yourTomcat group=balanced lb_factor=1 route=jvm2 # Declare a Tomcat worker [ajp13:192.168.120.148:8009] channel=channel.socket:myTomcat [ajp13:192.168.120.147:8009] channel=channel.socket:yourTomcat #Load balanced worker [lb:balanced] worker=ajp13:192.168.120.148:8009 worker=ajp13:192.168.120.147:8009 timeout=30 attempts=2 recovery=90 StickySession=1 noWorkersMsg=Server Busy please retry after some time. noWorkerCodeMsg=503 [uri:/jsp-examples/*] info= Mapping for examples of tomcat context=/jsp-examples group=balanced [uri:/manager/*] #uri:/HDTHTTPService/*] #nfo=HDT MZS.net [status:] [uri:/jkstatus/*] group=status After start apache2 I'll get these error messages in th error_log of apache2: : : [Mon Oct 25 16:41:35 2004] [notice] config.update(): done ajp13:192.168.120.148:8009 [Mon Oct 25 16:41:35 2004] [notice] config.update(): done ajp13:192.168.120.147:8009 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced timeout 30 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced attempts 2 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced recovery 90 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced stickySession 1 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced noWorkersMsg Server Busy please retry after some time. [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced noWorkerCodeMsg 503 [Mon Oct 25 16:41:35 2004] [notice] config.update(): done lb:balanced : : Why cannot set apache2 these attributes? What is my mistake? Need I another module? Stephan Müller -- Geschenkt: 3 Monate GMX ProMail + 3 Ausgaben der TV Movie mit DVD Jetzt anmelden und testen http://www.gmx.net/de/go/mail - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Error messages on Apache2 with load balancing jk2 and Tomcat
Try It has been a while since I touched jk2 but try group=lb:balanced PJ Stephan Müller wrote: Hallo! My Enviroment: Suse Linux 9.1 Tomcat 5.0.28 JK2 Connector 2.0.4 Apache2 2.0.50 I've configured the jk2-connctor to load balance. Here my worker2.properties: # Set a Logger [logger.apache2] file=/usr/local/apache2/logs/error.log level=DEBUG #debug=1 # config settings [config] file=/usr/local/apache2/conf/workers2.properties debug=0 # Shared Memory file settings [shm] file=/usr/local/apache2/conf/jk2.shm size=10 # communication channel settings for our HDTTomcat1 [channel.socket:192.168.120.148:8009] port=8009 host=192.168.120.148 tomcatId=myTomcat group=balanced lb_factor=1 route=jvm1 # communication channel settings for our HDTTomcat2 [channel.socket:192.168.120.147:8009] port=8009 host=192.168.120.147 tomcatId=yourTomcat group=balanced lb_factor=1 route=jvm2 # Declare a Tomcat worker [ajp13:192.168.120.148:8009] channel=channel.socket:myTomcat [ajp13:192.168.120.147:8009] channel=channel.socket:yourTomcat #Load balanced worker [lb:balanced] worker=ajp13:192.168.120.148:8009 worker=ajp13:192.168.120.147:8009 timeout=30 attempts=2 recovery=90 StickySession=1 noWorkersMsg=Server Busy please retry after some time. noWorkerCodeMsg=503 [uri:/jsp-examples/*] info= Mapping for examples of tomcat context=/jsp-examples group=balanced [uri:/manager/*] #uri:/HDTHTTPService/*] #nfo=HDT MZS.net [status:] [uri:/jkstatus/*] group=status After start apache2 I'll get these error messages in th error_log of apache2: : : [Mon Oct 25 16:41:35 2004] [notice] config.update(): done ajp13:192.168.120.148:8009 [Mon Oct 25 16:41:35 2004] [notice] config.update(): done ajp13:192.168.120.147:8009 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced timeout 30 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced attempts 2 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced recovery 90 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced stickySession 1 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced noWorkersMsg Server Busy please retry after some time. [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced noWorkerCodeMsg 503 [Mon Oct 25 16:41:35 2004] [notice] config.update(): done lb:balanced : : Why cannot set apache2 these attributes? What is my mistake? Need I another module? Stephan Müller - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Error messages on Apache2 with load balancing jk2 and Tomcat
Sorry, but it has the same effect. Thanks Stephan Try It has been a while since I touched jk2 but try group=lb:balanced PJ Stephan Müller wrote: Hallo! My Enviroment: Suse Linux 9.1 Tomcat 5.0.28 JK2 Connector 2.0.4 Apache2 2.0.50 I've configured the jk2-connctor to load balance. Here my worker2.properties: # Set a Logger [logger.apache2] file=/usr/local/apache2/logs/error.log level=DEBUG #debug=1 # config settings [config] file=/usr/local/apache2/conf/workers2.properties debug=0 # Shared Memory file settings [shm] file=/usr/local/apache2/conf/jk2.shm size=10 # communication channel settings for our HDTTomcat1 [channel.socket:192.168.120.148:8009] port=8009 host=192.168.120.148 tomcatId=myTomcat group=balanced lb_factor=1 route=jvm1 # communication channel settings for our HDTTomcat2 [channel.socket:192.168.120.147:8009] port=8009 host=192.168.120.147 tomcatId=yourTomcat group=balanced lb_factor=1 route=jvm2 # Declare a Tomcat worker [ajp13:192.168.120.148:8009] channel=channel.socket:myTomcat [ajp13:192.168.120.147:8009] channel=channel.socket:yourTomcat #Load balanced worker [lb:balanced] worker=ajp13:192.168.120.148:8009 worker=ajp13:192.168.120.147:8009 timeout=30 attempts=2 recovery=90 StickySession=1 noWorkersMsg=Server Busy please retry after some time. noWorkerCodeMsg=503 [uri:/jsp-examples/*] info= Mapping for examples of tomcat context=/jsp-examples group=balanced [uri:/manager/*] #uri:/HDTHTTPService/*] #nfo=HDT MZS.net [status:] [uri:/jkstatus/*] group=status After start apache2 I'll get these error messages in th error_log of apache2: : : [Mon Oct 25 16:41:35 2004] [notice] config.update(): done ajp13:192.168.120.148:8009 [Mon Oct 25 16:41:35 2004] [notice] config.update(): done ajp13:192.168.120.147:8009 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced timeout 30 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced attempts 2 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced recovery 90 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced stickySession 1 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced noWorkersMsg Server Busy please retry after some time. [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced noWorkerCodeMsg 503 [Mon Oct 25 16:41:35 2004] [notice] config.update(): done lb:balanced : : Why cannot set apache2 these attributes? What is my mistake? Need I another module? Stephan Müller - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Geschenkt: 3 Monate GMX ProMail + 3 Ausgaben der TV Movie mit DVD Jetzt anmelden und testen http://www.gmx.net/de/go/mail - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Error messages on Apache2 with load balancing jk2 and Tomcat
Well here is what works for me (both Tomcat instances are running locally) [workerEnv] logger=logger.apache2 sslEnable=0 timing=1 #forwardURICompat forwardURICompatUnparsed #forwardURIEscaped noRecoveryIfRequestSent noRecoveryIfHeaderSent disabled=0 debug=5 version=1 # Comment out in production [logger.apache2] level=DEBUG [shm] file=/var/log/apache2/jk2.shm size=1048576 disabled=0 debug=5 version=1 [channel.socket:localhost:8009] #port=8009 #host=localhost #graceful=1 keepalive=0 timeout=0 ndelay=0 disabled=0 debug=5 version=1 #---LB--- lb_factor=1 [channel.socket:localhost:8019] #port=8019 #host=localhost #graceful=1 keepalive=0 timeout=0 ndelay=0 disabled=0 debug=5 version=1 #---LB--- lb_factor=1 # # Define the workers # [ajp13:localhost:8009] channel=channel.socket:localhost:8009 max_connections=0 connectTimeout=0 replyTimeout=0 prepostTimeout=0 disabled=0 debug=5 version=1 #---LB--- level=1 [ajp13:localhost:8019] channel=channel.socket:localhost:8019 max_connections=0 connectTimeout=0 replyTimeout=0 prepostTimeout=0 disabled=0 debug=5 version=1 #---LB--- level=1 # # Announce a status worker # [status:status] info=Status worker. Displays runtime information. # # Set URIs to forward # [uri:/jkstatus/*] group=status:status [uri:/path/*] group=lb:lb #---LB--- [lb:lb] stickySession=0 Stephan Müller wrote: Sorry, but it has the same effect. Thanks Stephan Try It has been a while since I touched jk2 but try group=lb:balanced PJ Stephan Müller wrote: Hallo! My Enviroment: Suse Linux 9.1 Tomcat 5.0.28 JK2 Connector 2.0.4 Apache2 2.0.50 I've configured the jk2-connctor to load balance. Here my worker2.properties: # Set a Logger [logger.apache2] file=/usr/local/apache2/logs/error.log level=DEBUG #debug=1 # config settings [config] file=/usr/local/apache2/conf/workers2.properties debug=0 # Shared Memory file settings [shm] file=/usr/local/apache2/conf/jk2.shm size=10 # communication channel settings for our HDTTomcat1 [channel.socket:192.168.120.148:8009] port=8009 host=192.168.120.148 tomcatId=myTomcat group=balanced lb_factor=1 route=jvm1 # communication channel settings for our HDTTomcat2 [channel.socket:192.168.120.147:8009] port=8009 host=192.168.120.147 tomcatId=yourTomcat group=balanced lb_factor=1 route=jvm2 # Declare a Tomcat worker [ajp13:192.168.120.148:8009] channel=channel.socket:myTomcat [ajp13:192.168.120.147:8009] channel=channel.socket:yourTomcat #Load balanced worker [lb:balanced] worker=ajp13:192.168.120.148:8009 worker=ajp13:192.168.120.147:8009 timeout=30 attempts=2 recovery=90 StickySession=1 noWorkersMsg=Server Busy please retry after some time. noWorkerCodeMsg=503 [uri:/jsp-examples/*] info= Mapping for examples of tomcat context=/jsp-examples group=balanced [uri:/manager/*] #uri:/HDTHTTPService/*] #nfo=HDT MZS.net [status:] [uri:/jkstatus/*] group=status After start apache2 I'll get these error messages in th error_log of apache2: : : [Mon Oct 25 16:41:35 2004] [notice] config.update(): done ajp13:192.168.120.148:8009 [Mon Oct 25 16:41:35 2004] [notice] config.update(): done ajp13:192.168.120.147:8009 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced timeout 30 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced attempts 2 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced recovery 90 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced stickySession 1 [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced noWorkersMsg Server Busy please retry after some time. [Mon Oct 25 16:41:35 2004] [notice] config.setAttribute() Error setting lb:balanced noWorkerCodeMsg 503 [Mon Oct 25 16:41:35 2004] [notice] config.update(): done lb:balanced : : Why cannot set apache2 these attributes? What is my mistake? Need I another module? Stephan Müller - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Solved]: Load Balancing Configuration
beautiful! glad i could help save you some time and suffering :) On Thu, 23 Sep 2004, Fournier, Pete wrote: Date: Thu, 23 Sep 2004 13:15:20 -0400 From: Fournier, Pete [EMAIL PROTECTED] Reply-To: Tomcat Users List [EMAIL PROTECTED] To: Tomcat Users List [EMAIL PROTECTED] Subject: [Solved]: Load Balancing Configuration I finally have IIS on two machines serving up load balanced requests to two Tomcat machines and maintiaining Sticky Sessions. Below I am including the workers2.properties file that did the trick in case anyone else is having touble doing this. The only other change I had to make was to the Server.xml file, there you just alter the Engine node to include a jvmRoute setting, make the setting unique per Tomcat installation and use that in the workers2.properties file as the tomcatID and route settings for the channel.socket definition. Thanks for the help Alex, your clustering example got me changing some stuff around that did the trick. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[Solved]: Load Balancing Configuration
I finally have IIS on two machines serving up load balanced requests to two Tomcat machines and maintiaining Sticky Sessions. Below I am including the workers2.properties file that did the trick in case anyone else is having touble doing this. The only other change I had to make was to the Server.xml file, there you just alter the Engine node to include a jvmRoute setting, make the setting unique per Tomcat installation and use that in the workers2.properties file as the tomcatID and route settings for the channel.socket definition. Thanks for the help Alex, your clustering example got me changing some stuff around that did the trick. BEGIN workers2.properties [logger] info=Native logger level=ERROR [config:] file=${serverRoot}/conf/workers2.properties debug=1 debugEnv=1 [uriMap:] info=Maps the requests. debug=1 [shm] info=Scoreboard. Required for reconfiguration and status with multiprocess servers file=c:/Tomcat5/work/jk2.shm debug=0 [workerEnv:] info=Global server options timing=0 debug=1 [lb:lb] Info=default load balancer debug=1 [channel.socket:pfournier:8019] host=pfournier port=8019 tomcatId=pfournierTomcat lb_factor=100 route=pfournierTomcat [ajp13:pfournier:8019] channel=channel.socket:pfournier:8019 [channel.socket:kfansler1:8009] host=kfansler1 port=8009 tomcatId=kfanslerTomcat lb_factor=100 route=kfanslerTomcat [ajp13:kfansler1:8009] channel=channel.socket:kfansler1:8009 [lb:PetesLB] worker=ajp13:pfournier:8019 worker=ajp13:kfansler1:8009 timeout=30 attempts=2 recovery=90 StickySession=1 noWorkersMsg=Server busy please try back later. noWorkerCodeMsg=503 [uri:/admin] info=Tomcat HTML based administration web application. debug=0 [uri:/manager] info=A scriptable management web application for the Tomcat Web Server. debug=0 [uri:/*.jsp] info=JSP Extension mapping. debug=0 [uri:/ZipCode/ZipCodeLookup] info=ZipCodeApplication debug=0 group=lb:PetesLB [uri:/SessionTester/*] info=Session Test Application debug=0 group=lb:PetesLB [status:] [uri:/jkstatus/*] group=status END workers2.properties Peter Fournier
Re: Load Balancing Configuration
Hi Pete. If you do a search on this list, i posted last week an email with the configurations that work ... check it out. On Tue, 21 Sep 2004, Fournier, Pete wrote: Date: Tue, 21 Sep 2004 16:38:14 -0400 From: Fournier, Pete [EMAIL PROTECTED] Reply-To: Tomcat Users List [EMAIL PROTECTED] To: [EMAIL PROTECTED] Subject: Load Balancing Configuration - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Load Balancing Configuration
Found the message. Unless I am reading it wrong that is for Clustering. I am looking at configuring Load Balancing with sticky sessions. I have managed to get the adaptor to route requests to each of the Tomcat instances since I originally posted yesterday, the only remaining problem is the session is not sticking. I can see it bouncing between the two of them. My current round-robin-non-session-sticking workers2.properties file is below. Thanks, Peter Fournier / BEGIN workers2.properties [logger] info=Native logger level=ERROR [config:] file=${serverRoot}/conf/workers2.properties debug=1 debugEnv=1 [uriMap:] info=Maps the requests. debug=1 [shm] info=Scoreboard. Required for reconfiguration and status with multiprocess servers file=c:/Tomcat5/work/jk2.shm debug=0 [workerEnv:] info=Global server options timing=0 debug=1 [lb:lb] Info=default load balancer debug=1 [channel.socket:pfournier:8019] host=pfournier port=8019 tomcatId=pfournierTomcat group=PetesLB lb_factor=100 route=pfournierTomcat [ajp13:pfournier:8019] channel=channel.socket:pfournier:8019 [channel.socket:kfansler1:8009] host=kfansler1 port=8009 tomcatId=kfanslerTomcat group=PetesLB lb_factor=100 route=kfanslerTomcat [ajp13:kfansler1:8009] channel=channel.socket:kfansler1:8009 [lb:PetesLB] worker=ajp13:pfournier:8019 worker=ajp13:kfansler1:8009 timeout=30 attempts=2 recovery=90 StickySession=1 noWorkersMsg=Server busy please try back later. noWorkerCodeMsg=503 [uri:/admin] info=Tomcat HTML based administration web application. debug=0 [uri:/manager] info=A scriptable management web application for the Tomcat Web Server. debug=0 [uri:/*.jsp] info=JSP Extension mapping. debug=0 [uri:/ZipCode/ZipCodeLookup] info=ZipCodeApplication debug=0 group=lb:PetesLB [status:] [uri:/jkstatus/*] group=status / END workers2.properties -Original Message- From: Alex [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 22, 2004 11:02 AM To: Tomcat Users List Subject: Re: Load Balancing Configuration Hi Pete. If you do a search on this list, i posted last week an email with the configurations that work ... check it out. On Tue, 21 Sep 2004, Fournier, Pete wrote: Date: Tue, 21 Sep 2004 16:38:14 -0400 From: Fournier, Pete [EMAIL PROTECTED] Reply-To: Tomcat Users List [EMAIL PROTECTED] To: [EMAIL PROTECTED] Subject: Load Balancing Configuration - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Load Balancing Configuration
when i was playing with sticky sessions (ultimately didn't get it working -- which is why i went with the tomcat cluster and session replciation .. which has it's benefits) try putting StickySession=1 against the channel and/or the lb group. does this affect things? i remember having it in for each channel and at the time i thought it was right ... only the jk2 adapter didn't support it. On Wed, 22 Sep 2004, Fournier, Pete wrote: Date: Wed, 22 Sep 2004 11:58:28 -0400 From: Fournier, Pete [EMAIL PROTECTED] Reply-To: Tomcat Users List [EMAIL PROTECTED] To: Tomcat Users List [EMAIL PROTECTED] Subject: RE: Load Balancing Configuration Found the message. Unless I am reading it wrong that is for Clustering. I am looking at configuring Load Balancing with sticky sessions. I have managed to get the adaptor to route requests to each of the Tomcat instances since I originally posted yesterday, the only remaining problem is the session is not sticking. I can see it bouncing between the two of them. My current round-robin-non-session-sticking workers2.properties file is below. Thanks, - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Load Balancing Configuration
Hi, I have an application running on my machine in Tomcat 5 via IIS using the ISAPI adaptor. I also have this application running on a different machine setup through IIS on that machine. I now want to test balancing the application on both machines via one of the IIS servers. I have followed the instructions in the book I got on Apache by wrox, but each time I call into the application the request hangs forever. Forever defined as 5 minutes. It appears that tomcat is being contacted, the CPU jumps for a sec on the tomcat process, but nothing happens after that. To simplify I am now trying to setup load balancing with just my one instance on my machine figuring that after I get that working it will be easier to translate it to both instances. This is failing, also. I believe I simply have something misconfigured, but my settings match what the book is showing and I have tried several variations. My workers2.properties files are below, both non-balanced (working) and balanced (hanging). The jk2.properties file remains unchanged for each setup. My machine is Win2K Pro, IIS5, Tomcat 5.0.27 running with JDK 1.4.2_01. I am confident that my installation is good with the non-balanced file in place. I have put a fair amount of load through the application using an http testing utility, it served 140 requests/second on my desktop machine. Any help appreciated. Thanks, Peter Fournier BEGIN Server.xml change (only showing changed Engine section) ... !-- You should set jvmRoute to support load-balancing via JK/JK2 ie : -- Engine name=Standalone defaultHost=localhost debug=0 jvmRoute=pfournierTomcat !-- Define the top level container in our container hierarchy -- !-- Engine name=Catalina defaultHost=localhost debug=0 -- ... END Server.xml change BEGIN WORKING workers2.properties FILE (entire file) [logger] info=Native logger level=ERROR [config:] file=${serverRoot}/conf/workers2.properties debug=1 debugEnv=1 [uriMap:] info=Maps the requests. debug=1 [shm] info=Scoreboard. Required for reconfiguration and status with multiprocess servers file=c:/Tomcat5/work/jk2.shm debug=0 [workerEnv:] info=Global server options timing=0 debug=1 [lb:lb] Info=default load balancer debug=1 [channel.socket:localhost:8019] host=pfournier port=8019 [ajp13:pfournier:8019] channel=channel.socket:pfournier:8019 [uri:/admin] info=Tomcat HTML based administration web application. debug=0 [uri:/manager] info=A scriptable management web application for the Tomcat Web Server. debug=0 [uri:/*.jsp] info=JSP Extension mapping. debug=0 [uri:/ZipCode/ZipCodeLookup] info=ZipCodeApplication debug=0 [status:] [uri:/jkstatus/*] group=status END WORKING workers2.properties FILE BEGIN Load Balanced workers2.properties FILE (entire file) [logger] info=Native logger level=ERROR [config:] file=${serverRoot}/conf/workers2.properties debug=1 debugEnv=1 [uriMap:] info=Maps the requests. debug=1 [shm] info=Scoreboard. Required for reconfiguration and status with multiprocess servers file=c:/Tomcat5/work/jk2.shm debug=0 [workerEnv:] info=Global server options timing=0 debug=1 [lb:lb] Info=default load balancer debug=1 [lb:PetesLB] worker=ajp13:localhost:8019 timeout=30 attempts=2 recovery=90 stickySession=1 noWorkersMsg=Server busy please try back later. noWorkerCodeMsg=503 [channel.socket:localhost:8019] host=localhost port=8019 tomcatId=pfournierTomcat group=PetesLB lb_factor=1 route=pfournierTomcat [ajp13:localhost:8019] channel=channel.socket:localhost:8019 [uri:/admin] info=Tomcat HTML based administration web application. debug=0 [uri:/manager] info=A scriptable management web application for the Tomcat Web Server. debug=0 [uri:/*.jsp] info=JSP Extension mapping. debug=0 [uri:/ZipCode/ZipCodeLookup] info=ZipCodeApplication debug=0 context=/ZipCode group=PetesLB [status:] [uri:/jkstatus/*] group=status END Load Balanced workers2.properties FILE
load balancing in workers2.properties
Hi, does anyone have a sample workers2.properties that can enable the load balancing between two tomat instances? Thanks! nyhgan - Do you Yahoo!? New and Improved Yahoo! Mail - 100MB free storage!
Re: load balancing in workers2.properties
Hi, I got this workers2.properties from wrox.com. It claims to support load balancing by using more than one tomcat jvms. In their setting, they have several startup scripts for each tomcat instance. Does it mean that I need to have a unique tomcat installation folder, and a unique server.xml for each instance? --- machine 1: startup.bat -- set CATALINA_BASE=c:\cluster\machine1 call startup --- machine 2: startup.bat -- set CATALINA_BASE=c:\cluster\machine2 call startup -- workers2.properties - # settings for logger of type Apache2 [logger.apache2] file=c:\cluster\apache\error.log level=INFO debug=1 # Provide the basic config needed [config] file=conf/workers2.properties debug=0 [channel.socket:localhost:8009] host=localhost port=8009 tomcatId=machine1 group=balanced lb_factor=1 # route=tc1 [ajp13:localhost:8009] channel=channel.socket:machine1 [channel.socket:localhost:8109] host=localhost port=8109 tomcatId=machine2 group=balanced lb_factor=1 # route=tc2 [ajp13:localhost:8109] channel=channel.socket:machine2 [channel.socket:localhost:8209] host=localhost port=8209 tomcatId=machine3 group=balanced lb_factor=1 # route=tc3 [ajp13:localhost:8209] channel=channel.socket:machine3 [lb:balanced] worker=ajp13:localhost:8009 worker=ajp13:localhost:8109 worker=ajp13:localhost:8209 timeout=90 attempts=3 recovery=30 StickySession=0 noWorkersMsg=Server Busy please retry later noWorkerCodeMsg=503 # Shared Memory file settings [shm] file=c:\cluster\apache\jk2.shm size=100 # Map the Tomcat jsp-examples webapp to the Web server uri space [uri:/jsp-examples/*] info=mapping the jsp-examples context of Tomcat context=/jsp-examples group=balanced [status:] # Status URI mapping [uri:/jkstatus/*] group=status - nyhgan [EMAIL PROTECTED] wrote: Hi, does anyone have a sample workers2.properties that can enable the load balancing between two tomat instances? Thanks! nyhgan - Do you Yahoo!? New and Improved Yahoo! Mail - 100MB free storage! - Do you Yahoo!? New and Improved Yahoo! Mail - Send 10MB messages!
Weight based load balancing
I want to implement weight based load balancing in my application. Usually what parameters are taken into consideration in weight based LB. I have cluster node's processor(s), RAM in my mind. And, network spped of the cluster node also. If you have any other in mind please share them with me. That would be a great help to me. Thanks in advance. Regards, Srinivas - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Weight based load balancing
AFAIK - There isn't anythng like this yet. But there is work on mod_proxy in httpd-dev which looks promising for this functionality. (But that functionality won't be here in the near future) A quick alternative is to use to look at the balancer webapp in tomcat 5 and play with its algorithm for choosing an node. -Tim Srinivas Rao Ch wrote: I want to implement weight based load balancing in my application. Usually what parameters are taken into consideration in weight based LB. I have cluster node's processor(s), RAM in my mind. And, network spped of the cluster node also. If you have any other in mind please share them with me. That would be a great help to me. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Weight based load balancing
AFAIK - There isn't anythng like this yet. But there is work on mod_proxy in httpd-dev which looks promising for this functionality. (But that functionality won't be here in the near future) I am not using apache web server, using Tomcat alone. A quick alternative is to use to look at the balancer webapp in tomcat 5 and play with its algorithm for choosing an node. I have seen the balancer app algorithm implementations. That can be done. But before doing that I want to do some analysis on what parameters has to be taken into consideration to assign weights to individual nodes of the cluster, in the production environment. Regards, Srinivas -Original Message- From: Tim Funk [mailto:[EMAIL PROTECTED] Sent: Wednesday, August 18, 2004 6:24 PM To: Tomcat Users List Subject: Re: Weight based load balancing AFAIK - There isn't anythng like this yet. But there is work on mod_proxy in httpd-dev which looks promising for this functionality. (But that functionality won't be here in the near future) A quick alternative is to use to look at the balancer webapp in tomcat 5 and play with its algorithm for choosing an node. -Tim Srinivas Rao Ch wrote: I want to implement weight based load balancing in my application. Usually what parameters are taken into consideration in weight based LB. I have cluster node's processor(s), RAM in my mind. And, network spped of the cluster node also. If you have any other in mind please share them with me. That would be a great help to me. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Weight based load balancing
What kind of weight based load balancing are you thinking of? the type of load balancing I've used is based on one of several. 1. ping time 2. preset load factor - usually based on hardware 3. system load - the weight is calculated using a hash of memory and cpu usage in situations where all the servers use the same hardware, ping time actually ends up working quite well. In the case where the hardware is mixed and some servers are much bigger, system load is commonly used. I know Resonate supports all three approaches. currently a couple guys are working on better apache-tomcat load balancing, so I would suggest searching the tomcat-dev archives. peter On Wed, 18 Aug 2004 18:14:24 +0530, Srinivas Rao Ch [EMAIL PROTECTED] wrote: I want to implement weight based load balancing in my application. Usually what parameters are taken into consideration in weight based LB. I have cluster node's processor(s), RAM in my mind. And, network spped of the cluster node also. If you have any other in mind please share them with me. That would be a great help to me. Thanks in advance. Regards, Srinivas - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Weight based load balancing
sounds like you already have an idea of how to implement it and just want feedback on what parameters it should consider. from past experience, many people use a simple Hash when all the system have the same hardware. When it is not, I would think memory and network IO would be the biggest factors. CPU shouldn't really be a factor unless you're using a ton of XML. this topic is pretty rich, so you should be able to find sample algorithms for calculating the weight. peter On Wed, 18 Aug 2004 18:27:18 +0530, Srinivas Rao Ch [EMAIL PROTECTED] wrote: AFAIK - There isn't anythng like this yet. But there is work on mod_proxy in httpd-dev which looks promising for this functionality. (But that functionality won't be here in the near future) I am not using apache web server, using Tomcat alone. A quick alternative is to use to look at the balancer webapp in tomcat 5 and play with its algorithm for choosing an node. I have seen the balancer app algorithm implementations. That can be done. But before doing that I want to do some analysis on what parameters has to be taken into consideration to assign weights to individual nodes of the cluster, in the production environment. Regards, Srinivas -Original Message- From: Tim Funk [mailto:[EMAIL PROTECTED] Sent: Wednesday, August 18, 2004 6:24 PM To: Tomcat Users List Subject: Re: Weight based load balancing AFAIK - There isn't anythng like this yet. But there is work on mod_proxy in httpd-dev which looks promising for this functionality. (But that functionality won't be here in the near future) A quick alternative is to use to look at the balancer webapp in tomcat 5 and play with its algorithm for choosing an node. -Tim Srinivas Rao Ch wrote: I want to implement weight based load balancing in my application. Usually what parameters are taken into consideration in weight based LB. I have cluster node's processor(s), RAM in my mind. And, network spped of the cluster node also. If you have any other in mind please share them with me. That would be a great help to me. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Tomcat non-sticky load balancing
Hai, We have an use case where each web request will be served by any one server from a cluster of tomcat servers (non-sticky load balancing). Session replication is not done as we maintain nothing in the session. The following are the steps involved in form-based-login in Tomcat 5.16 Client Server Request for an un autheticated resource a.jsp Req 1 Redirect to login -page --- Request for j_security_check -- Req 2 Authentication passed --- Redirect to a.jsp (Getting reauthenticated register the session if Single Sign on enabled ) -- Req 3 I think there is some state maintained by tomcat across these three requests. Therefore these three request needs to be processed by the same server for authentication to be successful. Please let us know the following things 1. Why is state maintained across the 3 requests. Can it be avoided. 2. How can we achieve non sticky load balancing with tomcat without doing session replication. Regards Senthil - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat non-sticky load balancing
yes, the request is maintained, and sorry to say, session replication will not help you, cause right now we are not transferring notes (the state of login) across. My suggestion would be to use basic authentication instead if your requests jump from server to server. Filip - Original Message - From: senthilnathan thiagarajan [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Friday, July 16, 2004 8:25 AM Subject: Tomcat non-sticky load balancing Hai, We have an use case where each web request will be served by any one server from a cluster of tomcat servers (non-sticky load balancing). Session replication is not done as we maintain nothing in the session. The following are the steps involved in form-based-login in Tomcat 5.16 Client Server Request for an un autheticated resource a.jsp Req 1 Redirect to login -page --- Request for j_security_check -- Req 2 Authentication passed --- Redirect to a.jsp (Getting reauthenticated register the session if Single Sign on enabled ) -- Req 3 I think there is some state maintained by tomcat across these three requests. Therefore these three request needs to be processed by the same server for authentication to be successful. Please let us know the following things 1. Why is state maintained across the 3 requests. Can it be avoided. 2. How can we achieve non sticky load balancing with tomcat without doing session replication. Regards Senthil - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Newbie Load balancing Question
Hello All, I am really sorry for asking this question. I looked in the archives but I couldn't get any answer. I will appreciate if someone can help me. I have Apache 2 and tomcat 4.1 running on a machine (Server 1). I could successfully connect them using jk2. Now I am trying to load balance them with another tomcat 4.1 (Server 2) running on a different machine (in future I would like to add more machines). The servers are running on Win 2000 servers. My jk2.properties files on Server 1 is # Just to check if the the config is working shm.file=c:/Apache2/logs/jk2.shm What should be the format for the server2's jk2.properties file? I have the IP address of server 2 with me. Thanks in advance, Balaji - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Load balancing question
Hi Balaji, Are you trying with or looking for any loadbalancing? If you are trying, what you are trying with? If you are looking for here is some link that should work greate for you. But obviously, you find .. no good documentation. mod_jk2 documentation http://jakarta.apache.org/tomcat/tomcat-3.3-doc/mod_jk-howto.html http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jk2/index.html Many of us in the mailing list, got this worked and you can check in the archive always if you have any problems. Good luck BK -Original Message- From: Balaji Varanasi [mailto:[EMAIL PROTECTED] Sent: Thursday, June 24, 2004 11:25 PM To: 'Tomcat Users List' Subject: Load balancing question Hello All, First of all, thanks Oliver and Mark for your assistance. I will follow your suggestion and see if it works. I have a question about Load balancing and I am writing this after a lot of frustration. I am trying to load balance Apache2 and 2 tomcat 4.1 servers. But I couldn't find any proper online resource that clearly explains the process. All the resources I looked were either out dated or didn't work properly. I will appreciate if somebody can give me pointers on this topic. Thanks, Balaji Varanasi __ For information about the Standard Bank group visit our web site www.standardbank.co.za __ Disclaimer and confidentiality note Everything in this e-mail and any attachments relating to the official business of Standard Bank Group Limited is proprietary to the group. It is confidential, legally privileged and protected by law. Standard Bank does not own and endorse any other content. Views and opinions are those of the sender unless clearly stated as being that of the group. The person addressed in the e-mail is the sole authorised recipient. Please notify the sender immediately if it has unintentionally reached you and do not read, disclose or use the content in any way. Standard Bank can not assure that the integrity of this communication has been maintained nor that it is free of errors, virus, interception or interference. ___
Load balancing question
Hello All, First of all, thanks Oliver and Mark for your assistance. I will follow your suggestion and see if it works. I have a question about Load balancing and I am writing this after a lot of frustration. I am trying to load balance Apache2 and 2 tomcat 4.1 servers. But I couldn't find any proper online resource that clearly explains the process. All the resources I looked were either out dated or didn't work properly. I will appreciate if somebody can give me pointers on this topic. Thanks, Balaji Varanasi