美文网首页freeswitch opensips
Freeswitch+Postgresql+Opensips部署

Freeswitch+Postgresql+Opensips部署

作者: 安安爸Chris | 来源:发表于2019-05-06 14:06 被阅读0次

本文的前提是您已经安装好Freeswitch,Postgresql和Opensips。这三个的安装步骤不在本文中讨论

架构

架构图

这是最简单的架构,由Opensips/Kamailio负责Sip路由和负载,每个Freeswitch的注册信息在数据库Postgresql/Mysql中共享。

OK, let's do it!


Step 1. 配置Opensips

这里以Opensips为例,Kamailio可以参考,行为类似
opensips版本:2.4.5
安装过程不在赘述,可以参考我的另外一篇文档《CentOS下安装Opensips》或者网上其他帖子参考。

主要用到的是Opensips的dispatcher能力。

通过命令,如下

opensipsctl dispatcher addgw 1 sip:192.168.2.90:5060 '' 0 50 'fs1' 'Outbound Gateway1'
opensipsctl dispatcher addgw 1 sip:192.168.2.91:5060 '' 0 50 'fs2' 'Outbound Gateway2'

将两个Freeswitch配置到opensips的dispatcher中。这个命令说白了就是往数据库中差两条数据


数据库中数据

所插入的表名字为dispatcher

如果执行过程中遇到500 command 'ds_reload' not available没有关系。实际上是没有配置DISPATCHER module中db的访问。不过实际上数据库里是已经写入了

可以使用命令

opensipsctl dispatcher show

来查看结果。说白了就是查询数据库表dispatcher。当然你也可以直接上数据库上查看。

opensipsctl dispatcher show

Step 2. 安装带ODBC或者带连接Postgresql能力的freeswitch

安装freeswitch的帖子倒是很多,本来也不想赘述。但是如果对freeswitch的db有特殊要求的话,默认的安装方式是不行的。(默认的安装方式是试用本地的sqlite db的)

笔者是使用centos7系统的,之前是通过rpm包直接装的。现在需要通过源码安装。
我这里采用Postgresql数据库,具体的安装可以参考官网指导
这篇帖子中安装libpq的命令可能提示找不到,可以使用下面这个

yum install /usr/include/libpq-fe.h

安装完成后要确保系统的pkg-config可以找到它。执行如下命令试一下

pkg-config --list-all | grep libpq

笔者的系统上确实真没有。不过通过find找一下libpg,还是可以找到的。


libs heads

都是在系统默认路径下,那就没有问题了。


编译Freeswitch

./configure --enable-core-pgsql-support

主要是加上pgsql特性的支持。默认的rpm包是没有的。

Step 3. 将freeswitch的数据库改配置为Postgresql

默认安装的Postgresql是只有本地监听的,所以要先改一下配置

  1. 修改postgresql.conf
    将listen_addresses从localhost改为*

    postgresql.conf
  2. 修改pg_hba.conf
    将如下一行加入(IPv4)

    pg_hba.conf

重启一下pgsql,再看一下端口情况


端口

管理工具使用pgAdmin登录


pgAdmin

如果忘记数据库登录密码,可以把密码重置一下。教程网上有。


默认Freeswitch数据库是存在sqlite里的。默认的位置在 /usr/local/freeswitch/db

改用database的话需要修改如下配置:
conf/autoload_configs/switch.conf.xml


switch.conf.xml

如果需要创建表则需要把auto-create-schemas设置为true(仅需要一次)


auto-create-schemas

重启freeswitch,然后就可以发现freeswitch的db转移到Postgresql里了。


image.png

然后把第二个freeswitch按照此步骤再配置一下就大功告成了。

相关文章

网友评论

    本文标题:Freeswitch+Postgresql+Opensips部署

    本文链接:https://www.haomeiwen.com/subject/zrhhoqtx.html