[OpenSIPS-Users] basic load balancer setup
Bogdan-Andrei Iancu
bogdan at opensips.org
Wed Mar 14 13:25:32 CET 2012
Hi Joshua,
Have you checked (at network level) if the actual call (the inbound one,
from a client) gets to opensips LB ? and if so, if the call gets
forwarded to Asterisk ?
Regards,
Bogdan
On 03/13/2012 10:00 PM, Joshua Nankin wrote:
> Hello,
>
> Trying to use OpenSIPS as both a load balancer for incoming calls and
> as an outbound proxy to my carrier. I have been unsuccessful to place
> outgoing or incoming calls, and I think I just need some help with the
> configuration. Just for testing, I have one Asterisk box behind
> OpenSIPS and the load balancer table on OpenSIPS looks like this:
>
> +----+----------+-------------------+-----------+------------+-------------+
> | id | group_id | dst_uri | resources | probe_mode | description |
> +----+----------+-------------------+-----------+------------+-------------+
> | 1 | 1 | sip:10.36.115.119 | fax=300 | 0 | tester |
> +----+----------+-------------------+-----------+------------+-------------+
>
>
> The dst_ur is the internal IP of my asterisk box. I'm using this for
> fax, so I have set the resources field to 300 channels of "fax". On
> my asterisk box, I've added "outboundproxy=23.21.170.154", as the 23.*
> IP is the external IP of the opensips box. Below is my simple
> opensips.cfg that I've adapted from the load balancing tutorial. Any
> help would be much appreciated. Additionally, for debugging purposes,
> I've opened all UDP and TCP ports. Still not able to connect.
>
>
> debug=6
> memlog=1
>
> fork=yes
> children=2
> log_stderror=yes
> log_facility=LOG_LOCAL0
>
> disable_tcp=yes
> disable_dns_blacklist = yes
>
> auto_aliases=no
>
> check_via=no
> dns=off
> rev_dns=off
> port=5060
>
> mpath="/usr/lib/opensips/modules/"
> loadmodule "maxfwd.so"
> loadmodule "sl.so"
> loadmodule "db_mysql.so"
> loadmodule "tm.so"
> loadmodule "uri.so"
> loadmodule "rr.so"
> loadmodule "dialog.so"
> loadmodule "mi_fifo.so"
> loadmodule "signaling.so"
> loadmodule "textops.so"
> loadmodule "load_balancer.so"
>
> modparam("mi_fifo", "fifo_name", "/tmp/opensips_fifo")
> modparam("mi_fifo", "fifo_mode",0666)
>
> modparam("dialog", "db_mode", 1)
> modparam("dialog", "db_url", "mysql://root:opensips@localhost/opensips")
>
> modparam("rr","enable_double_rr",1)
> modparam("rr","append_fromtag",1)
>
> modparam("load_balancer", "db_url","mysql://root:opensips@localhost/opensips")
>
>
> route{
> if (!mf_process_maxfwd_header("3")) {
> sl_send_reply("483","looping");
> exit;
> }
>
>
> if (!has_totag()) {
> # initial request
> record_route();
> } else {
> # sequential request -> obey Route indication
> loose_route();
> t_relay();
> exit;
> }
>
> # handle cancel and re-transmissions
> if ( is_method("CANCEL") ) {
> if ( t_check_trans() )
> t_relay();
> exit;
> }
>
>
> # from now on we have only the initial requests
> if (!is_method("INVITE")) {
> send_reply("405","Method Not Allowed");
> exit;
> }
>
> # detect resources and do balancing
> load_balance("1","fax");
>
> # LB function returns negative if no suitable destination (for
> requested resources) is found,
> # or if all destinations are full
> if ($retcode<0) {
> sl_send_reply("500","Service full");
> exit;
> }
>
> xlog("Selected destination is: $du\n");
>
> # send it out
> if (!t_relay()) {
> sl_reply_error();
> }
> }
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
--
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com
More information about the Users
mailing list