Forge Home

opensips

Puppet manifest for provisioning an Opensips server

9,439 downloads

4,078 latest version

4.5 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 0.6.3 (latest)
  • 0.6.2
  • 0.6.1
  • 0.6.0
  • 0.5.0
  • 0.4.4
  • 0.4.2
  • 0.4.1
  • 0.4.0
  • 0.3.4
  • 0.3.3
  • 0.3.2
  • 0.3.1
  • 0.3.0
  • 0.2.0
  • 0.1.0
released Jul 20th 2019
This version is compatible with:
  • Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2016.4.x
  • Puppet >= 4.10.0 < 7.0.0
  • ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'alisio-opensips', '0.2.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add alisio-opensips
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install alisio-opensips --version 0.2.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

alisio/opensips — version 0.2.0 Jul 20th 2019

opensips

Table of Contents

  1. Overview
  2. Module Description - What the module does and why it is useful
  3. Setup - The basics of getting started with opensips
  4. Usage - Configuration options and additional functionality
  5. Reference - An under-the-hood peek at what the module is doing and how
  6. Limitations - OS compatibility, etc.
  7. Development - Guide for contributing to the module

Overview

This module purpose is to provision a SIP server running on Centos 7. This module was tested with puppet 5.

Module Description

This modules install an configure a SIP server based on the Opensips proxy, asterisk media server and mysql databse server.

Setup

What opensips affects

Packages installed:

  • augeas
  • bash-completion
  • fail2ban
  • opensips
  • opensips-db_mysql
  • opensips-httpd
  • opensips-json
  • opensips-proto_tls
  • opensips-tls_mgm
  • opensips-pua
  • opensips-pua_usrloc
  • rtpproxy
  • sngrep
  • tcpdump

Configured services:

  • Opensips
  • Mysql
  • rtpproxy
  • syslog
  • logrotate

Setup Requirements

The following modules must be installed before:

Beginning with opensips

The very basic steps needed for a user to get the module up and running.

If your most recent release breaks compatibility or requires particular steps for upgrading, you may wish to include an additional section here: Upgrading (For an example, see http://forge.puppetlabs.com/puppetlabs/firewall).

Usage

Put the classes, types, and resources for customizing, configuring, and doing the fancy stuff with your module here.

class {'opensips':}

Parameters

These parameters are set for testing purposes. You should, nay, you must, change it for production.

The variables are located in the 'opensips::params'.

 db_mode
   Specify opensips operation mode. DB or static files.

 db_server_ip
   IP address or hostname of the mysql database server.

 db_server_port
   Mysql server port.

 db_root_pw
   Password for the root password.

 db_opensips_db
   The opensips mysql database name.

 db_opensips_user
   The opensips mysql user.

 db_opensips_pw
   The password for the opensips mysql user.

 opensips_advertised_address = ''
   The external IP address or hostname of a server behind NAT.

 opensips_advertised_port=5060
   The external SIP port of a server behind NAT.

 opensips_cfg
   The path for the opensips config file

 opensips_ctlrc
   The path for the opensips control file

 opensips_script_mode
   The opensips operation mode, acording to the osipconfig utility. Accepted
   values: default, trunking, residential.

 opensips_yum_repo_baseurl
   Opensips yum repo 'http://yum.opensips.org/2.4/releases/el/7/$basearch'

 opensips_gwpadrao_hostport
   External gateway address:port (e.g. '127.0.0.1:5070')

 opensips_mediaserver_hostport
   External mediaserver address:port (e.g '127.0.0.1:5070')

 proxy_transport
   Opensips default signal transport. Accepted calues: udp, tcp, tls

 proxy_ip
   Address of the interface where opensips will listen to.

 proxy_port
   Port where opensips will listen to (e.g. 5060)

 proxy_eth_interface
   Array of ethernet interfaces where opensips will listen to. E.g ['eth0','eth2']

 rtpproxy_ctrl_socket
   Control socket composed by protocol:address:port for controlling rtpproxy.
   E.g 'udp:127.0.0.1:22222'

 rtpproxy_listen_ip
   Address where rtpproxy will listen to. E.g '0.0.0.0'

 rtpproxy_min_port
   Integer representing the lowest rtp port rtpproxy will listen to (e.g 10000)

 rtpproxy_max_port
   Integer representing the highest port rtpproxy will listen to (e.g 2000)

 rtpproxy_file_limit
   Integer representing file descriptors limit (e.g. 16000)

 syslog_local
   Syslog level (e.g. 5) for opensips and rtpproxy log

 syslog_file
   Syslog file for opensips and rtpproxy (e.g. /var/log/opensips.log)

Reference

Here, list the classes, types, providers, facts, etc contained in your module. This section should include all of the under-the-hood workings of your module so people know what the module is touching on their system but don't need to mess with things. (We are working on automating this section!)

Limitations

This module purpose is to provision an SIP server running on the Centos7 OS. This module was tested with puppet 5.

Development

Please follow the licence guidelines