[OpenSIPS-Users] rtpengine + cluster
volga629 at networklab.ca
volga629 at networklab.ca
Thu Jun 28 21:22:30 EDT 2018
Hello Razvan,
Thank you for info
I conigured multiply rtpengines cluster right now 3 opensips nodes.
And rtpengine having trouble detect available rtpengines.
Start up log
Jun 28 13:42:58 aitossbc03 /usr/sbin/opensips[1572]:
INFO:rtpengine:rtpe_test: rtp proxy <udp:10.100.104.4:2223> found,
support for it enabled
Jun 28 13:42:58 aitossbc03 /usr/sbin/opensips[1572]:
INFO:rtpengine:rtpe_test: rtp proxy <udp:10.100.104.5:2223> found,
support for it enabled
Jun 28 13:42:58 aitossbc03 /usr/sbin/opensips[1572]:
INFO:rtpengine:rtpe_test: rtp proxy <udp:10.100.104.6:2223> found,
support for it enabled
Jun 28 13:42:58 aitossbc03 opensips[1546]: INFO:core:daemonize:
pre-daemon process exiting with 0
Jun 28 13:42:59 aitossbc03 /usr/sbin/opensips[1561]:
INFO:core:probe_max_sock_buff: using snd buffer of 512 kb
Jun 28 13:42:59 aitossbc03 /usr/sbin/opensips[1561]:
INFO:core:init_sock_keepalive: TCP keepalive enabled on socket 6
Jun 28 13:42:59 aitossbc03 /usr/sbin/opensips[1561]:
INFO:core:probe_max_sock_buff: using snd buffer of 512 kb
Jun 28 13:42:59 aitossbc03 /usr/sbin/opensips[1561]:
INFO:core:init_sock_keepalive: TCP keepalive enabled on socket 6
Jun 28 13:42:59 aitossbc03 /usr/sbin/opensips[1574]:
INFO:core:probe_max_sock_buff: using snd buffer of 512 kb
Jun 28 13:42:59 aitossbc03 /usr/sbin/opensips[1574]:
INFO:core:init_sock_keepalive: TCP keepalive enabled on socket 103
Jun 28 13:42:59 aitossbc03 /usr/sbin/opensips[1565]:
INFO:clusterer:handle_internal_msg: Node [2] is UP
Jun 28 13:42:59 aitossbc03 /usr/sbin/opensips[1574]:
INFO:core:probe_max_sock_buff: using snd buffer of 512 kb
Jun 28 13:42:59 aitossbc03 /usr/sbin/opensips[1574]:
INFO:core:init_sock_keepalive: TCP keepalive enabled on socket 104
Jun 28 13:42:59 aitossbc03 /usr/sbin/opensips[1566]:
INFO:clusterer:handle_internal_msg: Node [1] is UP
But when INVITE arrives opensips answer
Jun 28 13:49:36 aitossbc03 /usr/sbin/opensips[1562]:
ERROR:rtpengine:select_rtpe_node: script error -no valid set selected
Jun 28 13:49:36 aitossbc03 /usr/sbin/opensips[1562]:
ERROR:rtpengine:rtpe_function_call: no available proxies
Configuration
if(is_method("INVITE|UPDATE") && has_body("application/sdp")) {
if(!isflagset(NATED_CALLER)) {
xlog("L_INFO", "[$rm] Call going from LAN
SourceIP <$si> to WAN.\n");
rtpengine_use_set("3");
rtpengine_offer("replace-origin
replace-session-connection in-iface=internal out-iface=external RTP/AVP
ICE=remove");
# Reset session timer for voicemail redirect
$T_fr_inv_timeout = 55;
t_on_reply("2");
} else {
xlog("L_INFO", "[$rm] Call going from WAN
SouceIP <$si> to LAN.\n");
rtpengine_use_set("3");
rtpengine_offer("replace-origin
replace-session-connection in-iface=external out-iface=internal RTP/AVP
ICE=remove");
# Reset session timer for voicemail redirect
$T_fr_inv_timeout = 55;
t_on_reply("3");
}
}
The question is in rtpengine_use_set("3"); 3 set_id column in database ?
Also is possible achivie rtp stream pickup of one of the rtpengines is
in fail state ?
volga629
On Tue, Jun 26, 2018 at 11:39 AM, Răzvan Crainea <razvan at opensips.org>
wrote:
> No, you don't need to add it if you don't need it.
>
> Răzvan Crainea
> OpenSIPS Core Developer
> http://www.opensips-solutions.com
>
> On 06/26/2018 04:35 PM, volga629 at networklab.ca wrote:
>> Hello Razvan,
>> Thank you, do I need add SEQUENCE too ?
>>
>>
>> CREATE SEQUENCE public.rtpengine_id_seq
>> START WITH 1
>> INCREMENT BY 1
>> NO MINVALUE
>> MAXVALUE 2147483647
>> CACHE 1
>> CYCLE;
>>
>> volga629
>>
>> On Tue, Jun 26, 2018 at 3:01 AM, Răzvan Crainea
>> <razvan at opensips.org> wrote:
>>> Hi, Volga!
>>>
>>> You can find the raw structure of the rtpengine table in
>>> scripts/postgres/rtpengine-create.sql[1].
>>>
>>> [1]
>>> https://github.com/OpenSIPS/opensips/blob/master/scripts/postgres/rtpengine-create.sql
>>>
>>>
>>> Best regards,
>>>
>>> Răzvan Crainea
>>> OpenSIPS Core Developer
>>> http://www.opensips-solutions.com
>>>
>>> On 06/26/2018 04:33 AM, volga629 at networklab.ca wrote:
>>>> Hello Everyone,
>>>> I tried create new database with
>>>>
>>>> [root at canldev01-fedora27 opensips]# opensipsdbctl create opensips01
>>>> PGSQL password for postgres:
>>>> INFO: creating database opensips01 ...
>>>> ERROR: role "opensips_prod" already exists
>>>> WARNING: Create user in database failed, perhaps they already
>>>> exist? Try to continue..
>>>> INFO: Core OpenSIPS tables successfully created.
>>>> Install presence related tables? (Y/n): y
>>>> INFO: creating presence tables into opensips01 ...
>>>> INFO: Presence tables successfully created.
>>>> Install tables for
>>>> b2b
>>>> cachedb_sql
>>>> call_center
>>>> carrierroute
>>>> cpl
>>>> domainpolicy
>>>> emergency
>>>> fraud_detection
>>>> freeswitch_scripting
>>>> imc
>>>> registrant
>>>> siptrace
>>>> userblacklist
>>>> ? (Y/n): y
>>>> INFO: creating extra tables into opensips01 ...
>>>> INFO: Extra tables successfully created.
>>>>
>>>>
>>>> but rtpengine_new table is not created. I am not sure what is
>>>> missing.
>>>>
>>>> postgres=# \c opensips01
>>>> You are now connected to database "opensips01" as user "postgres".
>>>> opensips01=# \d
>>>> List of relations
>>>> Schema | Name | Type | Owner
>>>> --------+-----------------------------------+----------+----------
>>>> public | acc | table | postgres
>>>> public | acc_id_seq | sequence | postgres
>>>> public | active_watchers | table | postgres
>>>> public | active_watchers_id_seq | sequence | postgres
>>>> public | address | table | postgres
>>>> public | address_id_seq | sequence | postgres
>>>> public | b2b_entities | table | postgres
>>>> public | b2b_entities_id_seq | sequence | postgres
>>>> public | b2b_logic | table | postgres
>>>> public | b2b_logic_id_seq | sequence | postgres
>>>> public | cachedb | table | postgres
>>>> public | carrierfailureroute | table | postgres
>>>> public | carrierfailureroute_id_seq | sequence | postgres
>>>> public | carrierroute | table | postgres
>>>> public | carrierroute_id_seq | sequence | postgres
>>>> public | cc_agents | table | postgres
>>>> public | cc_agents_id_seq | sequence | postgres
>>>> public | cc_calls | table | postgres
>>>> public | cc_calls_id_seq | sequence | postgres
>>>> public | cc_cdrs | table | postgres
>>>> public | cc_cdrs_id_seq | sequence | postgres
>>>> public | cc_flows | table | postgres
>>>> public | cc_flows_id_seq | sequence | postgres
>>>> public | clusterer | table | postgres
>>>> public | clusterer_id_seq | sequence | postgres
>>>> public | cpl | table | postgres
>>>> public | cpl_id_seq | sequence | postgres
>>>> public | dbaliases | table | postgres
>>>> public | dbaliases_id_seq | sequence | postgres
>>>> public | dialog | table | postgres
>>>> public | dialplan | table | postgres
>>>> public | dialplan_id_seq | sequence | postgres
>>>> public | dispatcher | table | postgres
>>>> public | dispatcher_id_seq | sequence | postgres
>>>> public | domain | table | postgres
>>>> public | domain_id_seq | sequence | postgres
>>>> public | domainpolicy | table | postgres
>>>> public | domainpolicy_id_seq | sequence | postgres
>>>> public | dr_carriers | table | postgres
>>>> public | dr_carriers_id_seq | sequence | postgres
>>>> public | dr_gateways | table | postgres
>>>> public | dr_gateways_id_seq | sequence | postgres
>>>> public | dr_groups | table | postgres
>>>> public | dr_groups_id_seq | sequence | postgres
>>>> public | dr_partitions | table | postgres
>>>> public | dr_partitions_id_seq | sequence | postgres
>>>> public | dr_rules | table | postgres
>>>> public | dr_rules_ruleid_seq | sequence | postgres
>>>> public | emergency_report | table | postgres
>>>> public | emergency_report_id_seq | sequence | postgres
>>>> public | emergency_routing | table | postgres
>>>> public | emergency_routing_id_seq | sequence | postgres
>>>> public | emergency_service_provider | table | postgres
>>>> public | emergency_service_provider_id_seq | sequence | postgres
>>>> public | fraud_detection | table | postgres
>>>> public | fraud_detection_ruleid_seq | sequence | postgres
>>>> public | freeswitch | table | postgres
>>>> public | freeswitch_id_seq | sequence | postgres
>>>> public | globalblacklist | table | postgres
>>>> public | globalblacklist_id_seq | sequence | postgres
>>>> public | grp | table | postgres
>>>> public | grp_id_seq | sequence | postgres
>>>> public | imc_members | table | postgres
>>>> public | imc_members_id_seq | sequence | postgres
>>>> public | imc_rooms | table | postgres
>>>> public | imc_rooms_id_seq | sequence | postgres
>>>> public | load_balancer | table | postgres
>>>> public | load_balancer_id_seq | sequence | postgres
>>>> public | location | table | postgres
>>>> public | location_contact_id_seq | sequence | postgres
>>>> public | missed_calls | table | postgres
>>>> public | missed_calls_id_seq | sequence | postgres
>>>> public | presentity | table | postgres
>>>> public | presentity_id_seq | sequence | postgres
>>>> public | pua | table | postgres
>>>> public | pua_id_seq | sequence | postgres
>>>> public | re_grp | table | postgres
>>>> public | re_grp_id_seq | sequence | postgres
>>>> public | registrant | table | postgres
>>>> public | registrant_id_seq | sequence | postgres
>>>> public | rls_presentity | table | postgres
>>>> public | rls_presentity_id_seq | sequence | postgres
>>>> public | rls_watchers | table | postgres
>>>> public | rls_watchers_id_seq | sequence | postgres
>>>> public | route_tree | table | postgres
>>>> public | route_tree_id_seq | sequence | postgres
>>>> public | rtpproxy_sockets | table | postgres
>>>> public | rtpproxy_sockets_id_seq | sequence | postgres
>>>> public | silo | table | postgres
>>>> public | silo_id_seq | sequence | postgres
>>>> public | sip_trace | table | postgres
>>>> public | sip_trace_id_seq | sequence | postgres
>>>> public | speed_dial | table | postgres
>>>> public | speed_dial_id_seq | sequence | postgres
>>>> public | subscriber | table | postgres
>>>> public | subscriber_id_seq | sequence | postgres
>>>> public | tls_mgm | table | postgres
>>>> public | tls_mgm_id_seq | sequence | postgres
>>>> public | uri | table | postgres
>>>> public | uri_id_seq | sequence | postgres
>>>> public | userblacklist | table | postgres
>>>> public | userblacklist_id_seq | sequence | postgres
>>>> public | usr_preferences | table | postgres
>>>> public | usr_preferences_id_seq | sequence | postgres
>>>> public | version | table | postgres
>>>> public | watchers | table | postgres
>>>> public | watchers_id_seq | sequence | postgres
>>>> public | xcap | table | postgres
>>>> public | xcap_id_seq | sequence | postgres
>>>> (109 rows)
>>>>
>>>>
>>>> volga629
>>>>
>>>> On Sun, Jun 10, 2018 at 1:23 PM, volga629 at networklab.ca wrote:
>>>>> Hello Everyone,
>>>>> Where possible find raw structure for PgSQL rtpengine table.
>>>>> I was wonder how should work session relocation when one node
>>>>> fail ? Is require some script logic and rewrite host
>>>>> function to send call next available node ?
>>>>>
>>>>>
>>>>> volga629
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Users mailing list
>>>>> Users at lists.opensips.org
>>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>>
>>>>
>>>> _______________________________________________
>>>> Users mailing list
>>>> Users at lists.opensips.org
>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.opensips.org
>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
More information about the Users
mailing list