Hello!

I saw a different behavior when I was testing a "DMQ hub". The idea is to
have 3 Kamailio pods in Kubernetes with the sole purpose of receiving data
by DMQ for providing further access to it. They are configured with
Kubernetes service discovery that points to all 3 pods:

modparam("dmq", "notification_address",
"sip:kamailio-dmq-hub-headless:5060")
modparam("dmq", "multi_notify", 1)

Then I have a set of different Kamailio pods that can scale up and down
that are supposed to send data using DMQ to "DMQ hub". They have similar
configuration using the same service discovery local record
sip:kamailio-dmq-hub-headless:5060.

As soon as I scale up, new pods communicate with "DMQ hub" and "DMQ hub"
nodes not only provide a list of themselves to the new pod. List also
includes other pods as well. So in this setup it works as a mesh (*which I
assume is what you need*) instead of a star.


чт, 4 груд. 2025 р., 11:14 користувач Henning Westerholt via sr-users <
[email protected]> пише:

> Hello,
>
>
>
> I am not the initial developer of this DNS based multi_notify
> functionality, but it seems to be only initialized as startup.
>
>
>
> Then probably the module needs some extension, either an RPC reload method
> or some way of periodically checking the DNS record and updating the server
> list, for example.
>
>
>
> Cheers,
>
>
>
> Henning
>
>
>
> --
>
> Henning Westerholt – https://skalatan.de/blog/
>
> Kamailio services – https://gilawa.com
>
>
>
> *From:* Rajneesh Soni via sr-users <[email protected]>
> *Sent:* Mittwoch, 3. Dezember 2025 16:52
> *To:* Kamailio (SER) - Users Mailing List <[email protected]>
> *Cc:* Rajneesh Soni <[email protected]>
> *Subject:* [SR-Users] Ability to dynamically add node to DMQ
>
>
>
> Hi,
>
> I have a Kamailio cluster with multiple nodes sharing information over
> DMQ. My DMQ configuration:
> - `notification_address` points to a DNS name that resolves to all cluster
> nodes
> - `multi_notify` is set to 1
>
> **Problem:**
> When I add a new node to the cluster, I update the DNS record to include
> the new node's IP. However, DMQ only resolves the `notification_address` at
> startup, so existing nodes don't discover the new peer.
>
> **What I've tried:**
> 1. Looking for a DMQ reload command (like `dmq.reload`) - doesn't exist
> 2. `kamcmd cfg.reload` - doesn't re-resolve DMQ notification_address
>
> **Question:**
> How can I force DMQ to re-fetch/re-resolve the peer list without
> restarting Kamailio?
>
> Restarting is not an option as it would disrupt active TCP/WebSocket
> connections and ongoing calls.
>
> **Environment:**
> - Kamailio version: 6.0.1
> - DMQ configuration:
>
> ```
>
> modparam("dmq", "server_address",MY_DMQ_SERVER_ADDR)
> modparam("dmq", "notification_address", MY_DMQ_NOTIFICATION_ADDR)
> modparam("dmq", "multi_notify", 1)
> modparam("dmq", "num_workers", 4)
> modparam("dmq_usrloc", "enable", 1)
> modparam("dmq", "ping_interval", DMQ_PING_INTERVAL)
>
> ```
>
> Any suggestions for dynamic peer discovery without restarts?
>
>
>
> Regards
>
> Rajneesh
> __________________________________________________________
> Kamailio - Users Mailing List - Non Commercial Discussions --
> [email protected]
> To unsubscribe send an email to [email protected]
> Important: keep the mailing list in the recipients, do not reply only to
> the sender!
>
__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions -- 
[email protected]
To unsubscribe send an email to [email protected]
Important: keep the mailing list in the recipients, do not reply only to the 
sender!

Reply via email to