In my LB based on Apache I'm using configuration below:

<Proxy balancer://cas>
                BalancerMember https://IP:8443 route=cas1
                BalancerMember https://IP:8443 route=cas2 status=+H
                ProxySet nofailover=On
        </Proxy>


Requests will be send to cas2 only when cas1 is unavailable. For this setup I 
dont need Tomcat session replication. But of course it's only HA.

Leszek Miś 
Owner & System Architect
Red Hat Certified Architect & Security Specialist
tel: 791-611-309 

Emerge Systems 
http://www.emerge.pl 




----- Oryginalna wiadomość -----
Od: "Scott Battaglia" <[email protected]>
Do: [email protected]
Wysłane: wtorek, 12 czerwiec 2012 13:51:21
Temat: Re: [cas-user] Cas 3.4.12 HA implementation using Amazon elastic load 
balancer

Spring Web Flow doesn't allow you to round robin your CAS requests unless 
you're using Tomcat session replication. Spring Web Flow holds its internal 
state in session (though you could write something that replaces that). 


Cheers, 
Scott 



On Tue, Jun 12, 2012 at 6:30 AM, Ronen Itkin < [email protected] > wrote: 



Hi All, 

I have implemented two cas 3.4.12 servers with jdbc support and JPA ticket 
registration. 
It worked great until I added a load balancer that redirects traffic to one of 
the available cas servers (based on port availability - round robin session 
redirection), 
Actually it is Amazon's web services load balancer, AKA Elastic Load Balancer. 
It listens to port 8443 and forwards it to the same port (8443) towards one on 
the available cas servers. 
Cas login page appears and when I am trying to log in it just reloads the cas 
login screen again - without mentioning any problems, it repeats itself for a 
few login tries and after few attempts I get the following notification from my 
browser: 

--- 
Authorization Required 


This server could not verify that you are authorized to access the document 
requested. Either you supplied the wrong credentials (e.g., bad password), or 
your browser doesn't understand how to supply the credentials required. 
Apache/2.2.16 (Ubuntu) Server at x.x.x.x.. x.x.compute-1.amazonaws.com Port 80 

--- 


Cas.log shows: 


2012-06-12 10:11:22,848 INFO [org.jasig.cas.CentralAuthenticationServiceImpl] - 
ServiceTicket [ 
ST-1-SCiu0IAOcYwAcMd3ElRi-ec2-xx-xx-xxx-xxx.compute-1.amazonaws.com ] has 
expired. 
2012-06-12 10:11:22,851 INFO 
[com.github.inspektr.audit.support.Slf4jLoggingAuditTrailManager] - Audit trail 
record BEGIN 
============================================================= 
WHO: audit:unknown 
WHAT: ST-1-SCiu0IAOcYwAcMd3ElRi-ec2-xx-xx-xxx-xxx.compute-1.amazonaws.com 
ACTION: SERVICE_TICKET_VALIDATE_FAILED 
APPLICATION: CAS 
WHEN: Tue Jun 12 10:11:22 UTC 2012 
CLIENT IP ADDRESS: 10.210.218.98 
SERVER IP ADDRESS: 10.211.173.168 
============================================================= 

So I guess it acts that way because it cant recognize the user that is 
attempting to login because normally is should write: 

WHO: [username: ronen] 

Does someone has an Idea of why it can happen while accessing Cas trough a load 
balancer? 
If I am accessing both cas servers directly and try to simply authenticate it 
works great!! only when accessing cas trough the load balancer it happens 
occasionally. 
(It does work sometimes - means that the ssl certificate of Cas's tomcat 
machine was successfully imported to the load balancer and basic configurations 
are fine) 


Thanks!! 



-- 



Ronen Itkin 
Taykey | www.taykey.com 
-- 
You are currently subscribed to [email protected] as: 
[email protected] 
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user 
-- 
You are currently subscribed to [email protected] as: [email protected] 
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user 

-- 
You are currently subscribed to [email protected] as: 
[email protected]
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user

Reply via email to