[Asterisk-Users] Clustering

JR Richardson jr.richardson at cox.net
Sat Mar 11 09:20:21 MST 2006


Doug, All,

There is no hidden documentation that I know of, I just kept reading over
and over the existing posts and wiki docs.  I'm a little embarrassed but
truthfully, I hacked on this for 10 plus hours trying to understand the
context inclusions between dundi.conf mappings and extension.conf contexts.
I created several loops to begin with and crashed the server many times.
Ultimately I used dundi and iax2 debug to see what was actually going on and
slowly I began to understand the protocol better.  Finally I had to break
things down to a single mapping in dundi.conf with a single [peer], a single
context in iax.conf and a single [dundi-context] in extensions.conf pointed
to a single [sip-test] context.  And that didn't work until I started
debugging, then realized my dundi cache was holding usernames for too long.
When you make a change, it seems you have to clear all dundi cache on both
peers, even if you restart asterisk, old names are still in the astdb or
something.

IMHO I'm pretty Asterisk savvy but it took me a long trial and error session
to get my head around dundi, probably due to sparse documentation but
all-in-all, to see this protocol in action is quite phenomenal, I really
enjoy seeing it work as it says it does and trust me, it does.

JR

-----Original Message-----
From: Douglas Garstang [mailto:dgarstang at oneeighty.com] 
Sent: Saturday, March 11, 2006 12:54 AM
To: Asterisk Users Mailing List - Non-Commercial Discussion;
ronmccar at gmail.com; asterisk-users at lists.digium.com
Cc: jr.richardson at cox.net
Subject: RE: [Asterisk-Users] Clustering

Hi JR. I'm dying to know... where'd you find your DUNDi documentation? Has
something new appeared since I looked at it 2-3 months ago? The O'Reilly
book's DUNDi section was impossible to follow, and the examples in the
Asterisk DUNDi config files are no better. You do a search online and get
almost no results (still wondering when Digium is going to realease some
docs for what they call their protocol). I spent a few weeks working on it,
tearing my hair out, and gave up. So did my boss.
 
Doug.

	-----Original Message----- 
	From: JR Richardson [mailto:jr.richardson at cox.net] 
	Sent: Fri 3/10/2006 8:55 PM 
	To: ronmccar at gmail.com; asterisk-users at lists.digium.com 
	Cc: jr.richardson at cox.net 
	Subject: re: [Asterisk-Users] Clustering
	
	

	------------------------------
	
	Message: 6
	Date: Fri, 10 Mar 2006 12:22:12 -0700
	From: "Ron McCarthy" <ronmccar at gmail.com>
	Subject: [Asterisk-Users] Clustering
	To: "Asterisk Users Mailing List - Non-Commercial Discussion"
	        <asterisk-users at lists.digium.com>
	Message-ID:
	
<3885f4fe0603101122m6742410ep25276b736072618c at mail.gmail.com>
	Content-Type: text/plain; charset="iso-8859-1"
	
	Hello All,
	
	Ive been doing more and more research on trying to setup a
cluster/load
	balancer for Asterisk. All the Asterisk boxes would be using a
config that
	is the same between them all (via a DB), but we want one location to
point
	the phones to, and from there that machine/device will send it to a
Asterisk
	server so the call can be processed. I know you cant balance the
whole call,
	ie: once the call is started the RTP stream has to go to the same
server,
	but a new call could go to a different server if perhaps the 1st
server was
	unreachable.
	
	Has anyone tried this, or got this to work? Ive been looking at
using a
	Juniper Session Border Controller, but not sure if thats gonna do
the trick,
	and then we also have SER..
	
	Any comments would be great!
	
	Thanks
	Ron
	-------------- next part --------------
	
	
	Ron,
	
	I'm doing something similar with clustering.  I haven't gotten the
total design down yet but so far I have 1 * server holding all the routes to
several child/registration * servers where my iax and sip clients actually
register to.  I'm using the 1 * server running dundi to peer with all the
registration servers and all the registration servers only peer with the 1 *
server, I call this the Registration Presence Server or RPS.  When a
child/registration server does a lookup request to the RPS, the RPS does a
lookup on all the other registration servers and knows who is registered
where and relays that info back to the original requesting registration
server.  Use a dundi ttl=1 in the RPS and ttl=2 in each registration server
to avoid routing loops.  I'm still in the testing phase but it's going well,
but I'm running into some cache timeout issues when a client drops off and
re-registers to a different registration server, have to flush dundi to
pickup the new location.  There is a cache timeout parameter I have yet to
play with.
	
	I don't have the load balancing session border controller function
down yet, but that is on the list of things to do.
	
	Hope this helps.
	
	JR
	
	JR Richardson
	Engineering for the Masses
	
	_______________________________________________
	--Bandwidth and Colocation provided by Easynews.com --
	
	Asterisk-Users mailing list
	To UNSUBSCRIBE or update options visit:
	   http://lists.digium.com/mailman/listinfo/asterisk-users
	






More information about the asterisk-users mailing list