1 As of version 1.1.0, FreeRADIUS supports load balancing in module
2 sections. Please see the "configurable_failover" file in this
3 directory for a more complete description of module sections.
5 The short summary is that you can use a "load-balance" section in
6 any place where a module name may be used. The semantics of the
7 "load-balance" section are that one of the modules in the section will
8 be chosen at random, evenly spread over the modules in the list.
20 In this case, 1/3 of the RADIUS requests will be processed by
21 "sql1", one third by "sql2", and 1/3 by "sql3".
23 The "load-balance" section can be nested in a "redundant" section,
27 load-balance { # between two redundant sections below
39 This says "load balance between sql1 and sql2, but if sql1 is down,
40 use sql2, and if sql2 is down, use sql1". That way, you can guarantee
41 both that load balancing occurs, and that the requests are *always*
42 logged to one of the databases.
54 This says "load balance between sql1 and sql2, but if the one being
55 used is down, then log to detail".
60 redundant { # between load-balance & detail
61 load-balance { # between two redundant sections
75 This says "try to load balance between sql1 and sql2; if sql1 is down,
76 use sql2; if sql2 is down use sql1; if both sql1 and sql2 are down,
77 then log to the detail file"
80 More complicated scenarios
81 ==========================
83 If you want to do redundancy and load-balancing among three
84 modules, the configuration is complex:
130 For four or more modules, it quickly becomes unmanageable.
132 The solution is to use the "redundant-load-balance" section, which
133 combines the features of "load-balance", with "redundant" fail-over
134 between members. The above complex configuration for three modules
138 redundant-load-balance {
145 Which means "load-balance evenly among all three servers. If the
146 one picked for load-balancing is down, load-balance among the
147 remaining two. If that one is down, pick the one remaining 'live'
150 ----------------------------------------------------------------------