[SR-Users] Quick way to enable/disable all uac outbound registrations

Joel Serrano joel at textplus.com
Mon Aug 13 21:23:04 CEST 2018


Hi Henning,

Yes, it would be for the HA setup.

So for example, say we have (I'm making it up):

modparam("uac", "reg_start_disabled", 1)   ## This tells uac module to
start with all records in `uacreg` table disabled.

1- Start kamailio on both nodes (no registrations are sent by any node).

2- Start keepalived on both nodes, some tests are done, the VIP is enabled
on one of the nodes (MASTER). Keepalived would then run a script that would
effectively enable all registrations (looping through all the records in
the uacreg table doing a `kamctl rpc uac.reg_enable ...` or a future
possible `kamctl rpc uac.reg_enable_all` :P).

That way, only the active node would be proactively sending the outbound
registrations.

I don't see any of this a problem, as right now both are sending
registrations using the same "Contact:", so any incoming requests will be
directed to the active kamailio. This is just to keep things tidy and not
have 2 servers sending outbound registrations when it isn't strictly
necessary.

What do you think?

Thanks,
Joel.









On Mon, Aug 13, 2018 at 11:50 AM, Henning Westerholt <hw at kamailio.org>
wrote:

> Am Montag, 13. August 2018, 07:23:10 CEST schrieb Joel Serrano:
> > Thanks for your suggestions. For now I'll give a try your approach #1.
> >
> > Couple extra doubts:
> >
> > 1- do you think an expiry of say 60s is too low? or is it reasonable? (I
> > know it will depend a lot on the number of records in database, but in
> this
> > case it's very little, like ~50 or so).
> > 2- can I set uac module to initialize without sending any REGISTER
> requests
> > ("start with all records in database disabled")? If answer is no, then my
> > idea would be to set uacreg colum reg_delay to say 10s or so to give time
> > to kamailio to startup, and than have an external script manually disable
> > them before the delay expires. What do you think?
> > [..]
>
> Hello Joel,
>
> 60s is indeed low. I saw some reports of people use something like this in
> NAT
> settings, but I'd suggest for something between 2-3 minutes. This gives
> you a
> bit more room for eventual errors during a restart or something like this.
>
> About the second question - I just did a quick check in the code. It seems
> that the uac module is reading during child_init the DB records, and there
> is
> currently no setting to disable this.
> But I did not fully understand the rationale behind this question, is this
> for
> your high-availability setup or something like this?
>
> Best regards,
>
> Henning
>
> --
> Henning Westerholt
> https://skalatan.de/blog/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20180813/1faacff6/attachment.html>


More information about the sr-users mailing list