Re: Clustering and load balancing Howto
Hi, Its already out heh..I gotta go get it. > Where ideally should loadbalancer.jar be executed? Obviously if it is running on > one of the machines in the cluster it isn't so good.. sort of defeats the > fail-safe purposes... So should it have it's own machine? Or am I just missing > something. >From what Magnus told me ( I think it was he), it is ok to run it on the same server, but as you said, it defeats the purpose. Ideally, you would run it on its own box, and have it communicate on the same port/ip multi-cast as the two or more orion servers for load-balancing. I have a question on this matter. What if I want one load-balancer feeding multiple islands? Can this program load-balance properly between multiple Orion islands? I recall Karl teaching me (and others on the list) about how Orion can work as mutliple islands. The reason this is helpful is that if you have 10 servers on one island, each HttpSession of each server is replicated to all 10 servers. First, this can take a little more time to send all the objects of each servers HttpSession to the other 9 servers for replication. Second, the memory of each server would need to be able to handle the number of objects for all 10 HttpSessions. As Karl pointed out, using an island with say, 2 or 3 servers, but having multiple islands, will reduce the memory footprint needed, as well as increase performance since each island only replicates the HttpSession data within the servers of its island. So, being that this load-balancer program is Orion aware, is it possible to set up multiple islands and does it distribute the load evenly through each island, and each server in each island? > Excellent! BUT. when I start up the dead server again... it gets detected by > the loadbalancer... starts receiving updates from the other server... so I kill > of Server #2 it dies... and the counter returns to 1 even though the > counter value DID get passed (listed in the debug messages)... for some reason > it creates a new session. Any ideas here? That worries me. I hope this is just a bug or something. > In fact after the first successful fail-over ... I can't get it to do it again > without stopping the loadbalancer... and then both servers... then starting the > load balancer... then both the servers again. It seems to only work once... then > not anymore... even though it LOOKS like it should work. > > Any help is greatly appreciated! > > I am using Orion 1.3.3 since that's what the autoupdate gave me... the HOWTO > DOES say to use 1.3.5+ but I don't know where that is. Really? I thought in 1.2.9 the load-balancer was functional. I haven't tried it yet, but I was told 1.2.9 is a stable release, and that is what I intend on doing production with. OrionTeam...is 1.3.5+ a stable release?
Re: Clustering and load balancing Howto
Second Question! Woo! Hoo! =) Hello, karl, Excellent! Awesome! Great! I burned through your document and have a functional setup. A few questions : Where ideally should loadbalancer.jar be executed? Obviously if it is running on one of the machines in the cluster it isn't so good.. sort of defeats the fail-safe purposes... So should it have it's own machine? Or am I just missing something. The current setup I tried is this : 2 machines in the cluster. A third machine has a mapped drive to one of the machines and is the loadbalancer. I start the loadbalancer in debug mode. It says it is initialized. I start the two backend servers in debug mode (as outlined in the HOWTO)... they start yakking away apparently over multicast... things like : = HTTP-clustering service started... Created cluster-listener for 230.0.0.1/230.0.0.1:9128 as 1249865300... Adding clustering service 'defaultWebApp'... HTTP-Clustering service initializing... Received cluster-message: defaultWebApp... HTTP-Clustering sent "I want sessions" request... Received cluster-message: defaultWebApp... Receiving HTTP-cluster send-sessions goahead from 597745668... Received cluster-message: defaultWebApp... Receiving HTTP-cluster sessions... Received cluster-message: defaultWebApp... Receiving HTTP-cluster send-sessions request... Received cluster-message: defaultWebApp... Receiving HTTP-cluster session value update... Created cluster-listener for 230.0.0.2/230.0.0.2:27512 as 1... Adding clustering service 'islands'... Orion/1.3.3 initialized = The second "cluster-listener" is created when the LoadBalancer 'discovers' that machine. Is it alright that two listeners are created? ALright... then both machines are up... I go to the servlet/SessionServlet and LoadBalancer binds the session and chooses a server for me.. so far so good... I get the counter up a bit (and watch the machine send the other counter updates)... then I kill that server (kill the process through Task Manager).. I click refresh in the browser and lo and behold... the LoadBalancer re-routes the connection and I'm now on the other machine with the correct data. Excellent! BUT. when I start up the dead server again... it gets detected by the loadbalancer... starts receiving updates from the other server... so I kill of Server #2 it dies... and the counter returns to 1 even though the counter value DID get passed (listed in the debug messages)... for some reason it creates a new session. Any ideas here? In fact after the first successful fail-over ... I can't get it to do it again without stopping the loadbalancer... and then both servers... then starting the load balancer... then both the servers again. It seems to only work once... then not anymore... even though it LOOKS like it should work. Any help is greatly appreciated! I am using Orion 1.3.3 since that's what the autoupdate gave me... the HOWTO DOES say to use 1.3.5+ but I don't know where that is. Thanks, Dylan > Hello, > Finally, the first version of the "Orion Clustering and Load > Distribution" document is up. You can read it at > http://www.orionserver.com/howtos/orion-clustering.html > We will not link it from the site until tomorrow since we want to do > some more testing on it before we have everyone waste their time trying > it, just to run into a simple stumbling block. However, you are free to > read it and try it now, but no guarantees on it being 100 % correct > until tomorrow (ok, 100% can be hard to guarantee at any time...). > Suggestions for improvements are happily accepted to > [EMAIL PROTECTED] > Regards, > Karl Avedal
Re: Clustering and load balancing Howto
First question! Oo! Oo! Anyways, you say: -- If you want to add clustering for the whole website (for all web-applications), edit the orion-web.xml of the default web-application (NOTE: it will not be applied to all web-applications previous to Orion 1.3.6). This file is normally located in orion/application-deployments/default/defaultWebApp/orion-web.xml. -- Do you perhaps mean global-web-application.xml in orion/config? My set up doesn't even reference defaultWebApp because I have no use for it. Or am I missing something here? Thanks! P.S. Great doc by the way. Figured most of this out today while interrogating Magnus, but it's good to have it all in one place! - Original Message - From: "Karl Avedal" <[EMAIL PROTECTED]> To: "Orion-Interest" <[EMAIL PROTECTED]> Sent: Friday, September 08, 2000 3:57 PM Subject: Clustering and load balancing Howto > Hello, > > Finally, the first version of the "Orion Clustering and Load > Distribution" document is up. You can read it at > http://www.orionserver.com/howtos/orion-clustering.html > > We will not link it from the site until tomorrow since we want to do > some more testing on it before we have everyone waste their time trying > it, just to run into a simple stumbling block. However, you are free to > read it and try it now, but no guarantees on it being 100 % correct > until tomorrow (ok, 100% can be hard to guarantee at any time...). > > Suggestions for improvements are happily accepted to > [EMAIL PROTECTED] > > Regards, > Karl Avedal > >
Clustering and load balancing Howto
Hello, Finally, the first version of the "Orion Clustering and Load Distribution" document is up. You can read it at http://www.orionserver.com/howtos/orion-clustering.html We will not link it from the site until tomorrow since we want to do some more testing on it before we have everyone waste their time trying it, just to run into a simple stumbling block. However, you are free to read it and try it now, but no guarantees on it being 100 % correct until tomorrow (ok, 100% can be hard to guarantee at any time...). Suggestions for improvements are happily accepted to [EMAIL PROTECTED] Regards, Karl Avedal