[Users] Re: [Serusers] High Availability Setup

samuel samu60 at gmail.com
Wed Dec 21 09:42:25 CET 2005


Inline.

2005/12/21, Greger V. Teigre <greger at teigre.com>:
> Inline.
>
> > Hi verybody,
> >
> > WARNING: Long e-mail.....
> >
> > I just started learning how to set up a "classical" configuration with
> > load balancer, DB backend and so on....I was reading several threads
> > of the mailing lists but since I am a begginer I would need some help
> > and clarifications. Apologies if my questions have been solved before.
> > [I read Greger and Granig (and more people, I guess) are working (?)
> > on a document describing what I try to explain in the follofwing
> > lines. I would like to know if you are on it or commercial strategies
> > forced you to leave it...as it seems that HA setups are high
> > confidential ;)]
>
> Andreas is working on the setup and I have promised to replicate his setup
> and document it as an appendix/separate document from ONsip.org. The two
> main pieces of code (usrloc-cl and Path patch) are sort of stuck in between
> stable and head (usrloc-cl is for 0.9.x and must be ported to head, while
> the Path patch was made for head, but several changes to head requires a
> review/new patch).

GREAT NEWS!!!!! I am not at all an expert but if you need help, just
ask and I'll contribute!

> > I'll try to draw what I have guessed from the threads and other
> > literature...
> >
> >                                          [SER1]
> > [LB1] [SER2]
> >      . [DB (mysql cluster)]
> > [LB2]      .
> > [SERn]
> >
> > LBi are the front-end load balancers.
> > SER: do I have to say what are these?? (either openSER/SER. I will use
> > the name SER for simplicity but I refer to both)
> > DB: I placed mysql cluster because it seems to be the most common
> > backend...
> >
> > Let me make an overview...
> >
> > Load Balancer
> > For LB, it seems that dispacther module can be used. (I don´t remember
> > who proposed to dispatch REGISTER with To: and INIVTE with Req-URI,
> > why not using Call-ID?? For distributing the registration of a given
> > user between several registrars?).
>
> This way you will always send all registrations for a given user to the same
> server and INVITEs to that user to the same server. Using Call-Id, you would
> spread the requests across servers randomly.
>
> > Dispatcher module does not have
> > failover in case SERi fails so somebody propose to use lcr. Using lcr
> > module provides failover but does not guarantee to balance to the
> > right instance of SER so I think the only option is to use dispatcher.

I just read today  that openser has failover support for the dispather module...

> > Alternatives:
> > Please correct me if I am wrong but there isn´t yet an LVR
> > implementation being Call-ID aware....
>
> That's correct, except commercial ones.
>
> > DNS SRV records...lack of implementation in end-points and not
> > NAT-friendly..
>
> You will probably want to use DNS SRV as well. However, implementation can
> differe between UAs.
>
> > In order to provide high availability, I tried linux-ha between the 2
> > LBi for simplicity although it has some wasted resources. Is it worth
> > to give a try to other IP failover aplications (anycast, quagga/bgp,
> > vrrpd)?
>
> Well, the same issues are there. Also, there are some issues related to
> failover time. Linux HA is probably as good as any.  What you could do is to
> run two instances of SER on each server and let both load balance each other
> (using xen or vmware). The problem is that you still cannot put more load on
> both servers than what one server can take, in case one physical server goes
> down.
>
> > Anyone with more experience can comment their use??
> >
> >
> > SIP proxy
> > SER....just a matter of taste what you want to use, SER or openSER....
> > I read about the cacheless usrloc patch but I could not find it on
> > CVS...has it been integrated into the head branch??? has it been
> > deprecated because of ...(please fill in the reason)?
>
> Can be found in experimental module of rel_0_9_0 branch.
> g-)
> >
> >
> > DB Backend
> > For the DB backend...I am going to comment mysql clustering...I am
> > using now 4.1.11 because it was already installed. Is it recommended
> > to upgrade?? I tried setting the management node, a couple of data
> > nodes, and I was trying to set a linux-ha configuration with ip take
> > over for the mysql api node (is it possible??) but unsuccessfully:
> > When the preferred mysql api node falls down, SER detects the
> > connection is closed and all further requests are replied with
> > "Internal Server Error" although the secondary mysql api has overtaken
> > the service IP and ser database is properly populated.
> > Is it possible to make SER reconnecting on mysql failure??  It
> > reconnects to the preferred server once it comes back to live but it
> > is impossible to connect to the secondary....
> > As you might have guessed I am a total begginer with mySQL...
> >
> > Thank for reading until this line, all kinds of comments are wellcome,
> >
> > Samuel.
> >
> > _______________________________________________
> > Serusers mailing list
> > Serusers at iptel.org
> > http://mail.iptel.org/mailman/listinfo/serusers
> >
> >
>
>

Thanks,

Samuel.




More information about the sr-users mailing list