New functionality in 4.0

Alan DeKok aland at deployingradius.com
Sat Jul 9 17:11:57 CEST 2016


  As part of cleaning up 4.0, I've just committed a cool new feature: keyed "load-balance" sections.  They also work for "redundant-load-balance"

	load-balance &User-Name {
		ldap1
		ldap2
		ldap3
	}

  The key will be expanded at run time, and the contents hashed.  The resulting hash will be used to pick one of the children of the "load-balance" section.

  If there's no key, a child will be picked at random, as before.

  This can be used to shard accounting packets across multiple databases, for example.

  The longer-term use of this will be to move proxying to a module, and allow complete control over home server load-balancing via "unlang" statements.  Right now, that functionality is all special-purpose code in "realms.c".  It works, but it's not easily extensible.  Now it's easily extensible.

  We're also looking into making the new configuration simple to use, so that it's not too much of a change from existing practice.

  Alan DeKok.




More information about the Freeradius-Devel mailing list