bjoern.bec...@easycash.de wrote:
-----Ursprüngliche Nachricht-----
Von: Christopher Schultz [mailto:ch...@christopherschultz.net]
Gesendet: Mittwoch, 2. April 2014 22:33
An: Tomcat Users List
Betreff: Re: AW: grab hostname from tomcat manager

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Bjorn,

On 4/2/14, 10:54 AM, bjoern.bec...@easycash.de wrote:
-----Ursprüngliche Nachricht----- Von: André Warnier
[mailto:a...@ice-sa.com] Gesendet: Mittwoch, 2. April 2014 16:35
An: Tomcat Users List Betreff: Re: grab hostname from tomcat manager

bjoern.bec...@easycash.de wrote:
Hello,

I need to grab the hostname from the tomcat manager somehow.
Unfortunately this URL "manager/text/serverinfo" doesn't contain
the
hostname.
Is there any other smart way to receive the hostname via tomcat
manager app?
For give me for asking, but how do you access the tomcat manager if
you do not know the hostname ?
Good question :). But I got a good reason for it.

I got two servers with several tomcat instances. In front of them is
a
loadbalancer with is configured to do a failover.

-LB- /               \ Server1:8081         Server2:8081

I need to write a shell script to sync a specific directory and for
each tomcat instance I need to know on which one the loadbalancer is
targeting at the moment.
How will you check to see which one the lb is targeting?

That's the question.
If tomcat 8081 on server 1 is down, the loadbalancer will point to
server 2 tomcat 8081. I can find it out through the loadbalancer
address only.
You should probably set a jvmRoute in your <Engine> in server.xml.
That way, you can detect which back-end server you are getting just by
looking at the JSESSIONID cookie.

That's the answer. When jvmroute is define I easily can receive the jsession id 
with wget:

wget -q -O - --no-cache --keep-session-cookies --no-check-certificate 
--save-cookies cookies.txt https://loadbalanceraddress:8081/manager  
--user=user--password=secure 1>/dev/null

perfect!

Alternatively, I suppose that you could just create a small JSP (or even HTML, but then host-specific) page in each host, which returns the real hostname.

You should probably be careful however : in your rsync scenario above, is there any guarantee that between the time you ask for the hostname (in whatever way), and the time at which you do your rsync, the "targeted host" will still be the same ?
Remember that if things /can/ happen, they /do/ happen.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to