Hi Orion team (and fellow enthusiasts):

I have asked this before and didn't get a chance to follow up on it. I have
successfully clustered Orion. But I have a few questions that I really need
answered before I can deploy our site on Orion.

First, while clustering it is unbelievably easy, I would love to have a
little more detail as to the use of the id in server.xml <cluster id="xxx"
/>..what exactly does this do? Is it really just any random number I enter
for each server? Or is there some special way I should derive this value?

Second, the orion-web.xml <cluster-config> tag. I see three options.
host="<some ip address", id="xxx" and port="xxx". I have a general id. But I
would like a little more detail as to how each is used. I understand that
the host and port are the cluster communication route, but can I change
these values to anything? I know the port needs to be a port that ALL orion
servers in the cluster choose (which means, if I have 10 servers, all 10
have this host value set to the same value). But, is this value internal to
the LAN that all servers are on? So, can I set it to say 1, 10, 1000, etc,
and it works? Or is there a specific range that needs to be considered? I
realize port 80 is for http, 21 is ftp, etc. The host ip address..is that a
random ip as well? Our lan range is from 206.xxx.xxx.yyy where yyy is 0 to
255 and we own that entire range (lease it I should say). IS the default ok
to use at all times? Or should I change it for any reason (if so..why?)?
Lastly, the id. Is this the same id that the server.xml <config id="xxx" />
is set to? Or is there another use for this?

Third, I want to work with two tiers. One for servlets, one for EJB. Each is
a clustered tier. If I want to cluster EJB separate from Servlets (which I
assume is the way to do it), can I just change the port setting on one tier
(so ejb tier has each server pointing to say 9128, where as the servlet tier
is 9127), and the host and id is default value..and it works? Or is their
special considerations to getting two separate tiers clustered, but still
able for the servlet tier to get ejb homes and stuff?

Fourth, I have not tested the cluster with a load-balance, but I have two
servers running, clustered. Each has their own ip address. I hit one ip
address and see the site show up. In the console app of BOTH servers in the
cluster, I see the same session id show up under the app (if anyone reading
this doesn't know what I mean by console app..run orion with java -jar
orion.jar console2. You'll see a swing app show up, and you can expand the
http tree to see web-apps that are deployed. You can then expand each
web-app and a sessions tree shows up. Click on that and you'll see the
sessions that exist under that app, and their data for each session (when
you click on a session on the right pane)). The problem is, if I click on
the "other" machines session, it has the same session key name, but the
session data is something lke @bab20 instead of the actual session data
names. What exactly does this mean? I thought that when two or more servers
were clustered, the same session keys AND data were duplicated on all
machines. That way, if the server that created the session data, and it
died, the other server would retain it so that when the next request came
in...the user would still be "active" on the site. Is this not the case?

Fifth, tied to the above, if two or more servers are clustered and I have a
session alive (shows up on both), then I shut down one servers Orion, the
other one should remain active..right? I still see the session data on the
other one. What I am confused about, and maybe this is because I am not
using a load-balancer yet, is if I hit ip xxx.xxx.xxx.1, and the session
data is created there and replicated to xxx.xxx.xxx.2 server. Then I shut
down the .1 server, and I go hit the .2 server (www access), the session
does not exist for me..it creates a new session over there. So what I am
wondering is, if I shut down one server, when the client hits the ip
(load-balancer) does that client still have an active session? Is the data
saved on both servers? Also, when the server that is down starts up again
(or you add a new server to the cluster), does the data on the existing
server get replicated to the other server that just got added? Or does this
not happen automatically? I thought that if for example one server went
down, the client doesn't lose their session information, and that you can
bring up the server that went down (or add one or more boxes to the cluster)
and they all get automatically replicated to. So if someone can explain
exactly how this works that would be great. Do I need a load-balancer in
order to test this? Is there any way, say using DNS round-robbing or
something, that I can test this? Is there a way to set up one server that
will "ping" two or more clustered servers, and alternate between them
sending them requests, and if one is down it sends all requests to the one
server that is up..so that I can test the fail-over of Orion?

Thanks.


Reply via email to