Best practices for redundant servers

Aaron Paetznick aaronp at critd.com
Fri Nov 3 21:30:27 CET 2006


I've been struggling with this problem for a couple of weeks, and I 
thought I'd pass it along to the mailing list.  Basically I'm trying to 
answer the following question.  Given multiple identical dedicated 
servers each running Linux and MySQL, how can I configure FreeRADIUS for 
maximum stability, reliability, and performance?  The question, it 
seems, is not as easy as is sounds.

I have experience with running a single FreeRADIUS/MySQL server, and the 
configuration works well.  So to move to multiple servers, I started by 
reading docs/configurable_failover and docs/load-balance.txt.  As I was 
looking for both load-balancing and redundancy, I thought 
redundant-load-balance seemed like a slam-dunk.  The idea was to have 
each instance of FreeRADIUS be redundant for each other, and for each 
instance of the MySQL back end to do the same.  Therefore, I simply 
defined a redundant-load-balance block in each place in radiusd.conf 
where I had previously defined the sql module on each server.

This worked for the most part, but now I'm starting to discover 
accounting issues.  Some sessions will be recorded in both databases 
with the same AcctSessionId and AcctUniqueId, but with different 
AcctStopTimes.  This seemed confusing to me, but given my 
shoot-from-the-hip first try at a redundant load-balancing 
configuration, I wasn't surprised to find problems.

I looked around and couldn't find any "best practice" example config 
files or HOWTOs for this situation.  That's when I decided to email the 
mailing list.  So my question again, in short, is what would be the 
preferred method to configure FreeRADIUS/MySQL on multiple redundant 
servers?

Any advise would be very helpful.  Thanks.


--Aaron





More information about the Freeradius-Users mailing list