Hi Arsenijs,

the HA-Road to rtpengine is a bit tricky. One Setup could be:

rtpengine-node-1 with redis-server1/redis-db1 (active)
rtpengine-node-2 with redis-server1/redis-db1 (passive, rtpengine disabled).
Some magic (corosync/pacemaker whatever).

On failure of rtpengine-node-1, rtpengine is stopped. 
Then *some magic happens* and starts your rtpengine-node-2 rtpengine process.
On startup rtpengine will use the redis saved calls as its own.
That's the "simplest" way of HA i could found.

There is also a more complex way in rtpengine with keyspace notifications.
https://github.com/sipwise/rtpengine/wiki/Redis-keyspace-notifications.
I didnt finished that one for me.

Am Mo., 12. Juni 2023 um 10:15 Uhr schrieb Arsenijs Kabihno <a.kabihno@dynatech.lv>:
Hello,

We are trying to achieve rtpengine HA solely with kamailio and rtpengine module.

In the following example call goes to rtpengine node 10.5.0.183:22222 and then we stop rtpengine service on this node to simulate failure.
Client is triggering re-INVITE, but, apparently, kamailio sticks to initially selected rtpengine, producing the following errors:

Jun 12 06:59:48 ap07stvp.xxxxxxx.xxx docker[9373]: 27(33) INFO: {2 2 INVITE jdl9kq6fv51jcv1agk2e} <script>: RTPENGINE branch_id:0 ruri: <null>, method:INVITE, status:200, extra_id: z9hG4bK55018600, rtpengine_answer: replace-origin replace-session-connection SIP-source-address direction=priv1 direction=pub1 SIP-source-address via-branch=extra rtcp-mux-offer generate-mid DTLS=passive SDES-off ICE=force RTP/SAVPF
Jun 12 06:59:49 ap07stvp.xxxxxxx.xxx docker[9373]: 27(33) NOTICE: {2 2 INVITE jdl9kq6fv51jcv1agk2e} acc [acc.c:287]: acc_log_request(): ACC: transaction answered: timestamp=1686553189;method=INVITE;from_tag=fcn109nfe9;to_tag=01284cc8-bc58-4104-9629-8e6bb827d97f;call_id=jdl9kq6fv51jcv1agk2e;code=200;reason=OK;src_user=90362;src_domain=10.181.0.1;src_ip=10.5.0.145;dst_ouser=123;dst_user=123;dst_domain=10.181.0.1
Jun 12 06:59:49 ap07stvp.xxxxxxx.xxx docker[9373]: 31(37) INFO: {2 2 INVITE jdl9kq6fv51jcv1agk2e} <script>: RTPENGINE branch_id:0 ruri: <null>, method:INVITE, status:200, extra_id: z9hG4bK55018600, rtpengine_answer: replace-origin replace-session-connection SIP-source-address direction=priv1 direction=pub1 SIP-source-address via-branch=extra rtcp-mux-offer generate-mid DTLS=passive SDES-off ICE=force RTP/SAVPF
Jun 12 06:59:49 ap07stvp.xxxxxxx.xxx docker[9373]: 51(57) INFO: {1 2 ACK jdl9kq6fv51jcv1agk2e} <script>: RTPENGINE branch_id:0 ruri: sip:10.5.2.192:5060, method:ACK, status:<null>, extra_id: <null>, rtpengine_offer: replace-origin replace-session-connection SIP-source-address direction=pub1 direction=priv1 SIP-source-address rtcp-mux-demux DTLS=off SDES-off ICE=remove RTP/AVP
Jun 12 06:59:49 ap07stvp.xxxxxxx.xxx docker[9373]: 51(57) INFO: {1 2 ACK jdl9kq6fv51jcv1agk2e} <script>: RTPENGINE branch_id:0 ruri: sip:10.5.2.192:5060, method:ACK, status:<null>, extra_id: <null>, rtpengine_offer: replace-origin replace-session-connection SIP-source-address direction=pub1 direction=priv1 SIP-source-address rtcp-mux-demux DTLS=off SDES-off ICE=remove RTP/AVP
Jun 12 07:01:26 ap07stvp.xxxxxxx.xxx docker[9373]: 27(33) INFO: {2 3 INVITE jdl9kq6fv51jcv1agk2e} <script>: RTPENGINE branch_id:0 ruri: <null>, method:INVITE, status:200, extra_id: z9hG4bK20888040, rtpengine_answer: replace-origin replace-session-connection SIP-source-address direction=priv1 direction=pub1 SIP-source-address via-branch=extra rtcp-mux-offer generate-mid DTLS=passive SDES-off ICE=force RTP/SAVPF
Jun 12 07:01:26 ap07stvp.xxxxxxx.xxx docker[9373]: 27(33) ERROR: {2 3 INVITE jdl9kq6fv51jcv1agk2e} rtpengine [rtpengine.c:3070]: send_rtpp_command(): can't send command "offer" to RTPEngine <udp:10.5.0.183:22222>
Jun 12 07:01:26 ap07stvp.xxxxxxx.xxx docker[9373]: 54(60) INFO: {1 3 ACK jdl9kq6fv51jcv1agk2e} <script>: RTPENGINE branch_id:0 ruri: sip:10.5.2.192:5060, method:ACK, status:<null>, extra_id: <null>, rtpengine_offer: replace-origin replace-session-connection SIP-source-address direction=pub1 direction=priv1 SIP-source-address rtcp-mux-demux DTLS=off SDES-off ICE=remove RTP/AVP
Jun 12 07:01:26 ap07stvp.xxxxxxx.xxx docker[9373]: 54(60) ERROR: {1 3 ACK jdl9kq6fv51jcv1agk2e} rtpengine [rtpengine.c:2706]: rtpp_function_call(): no available proxies

We also found Daniel answer on similar issue here:

Please advise how it can be solved.

Kind regards,
Arsenijs

__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions
To unsubscribe send an email to sr-users-leave@lists.kamailio.org
Important: keep the mailing list in the recipients, do not reply only to the sender!
Edit mailing list options or unsubscribe:


--
Mit freundlichen Grüßen
*Karsten Horsmann*