Skip to content

Latest commit

 

History

History

ansible

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

SIPMediaDeploy - Ansible

An Ansible project to provision virtual machine images of the SIP Media Gateway stack.

Installation

Python virtualenv is used to run all Ansible commands in an isolated Python environment. To install it, launch the following command:

python3 -m pip install virtualenv

To setup the virtualenv, install Ansible pip packages and get the Ansible-Galaxy dependencies, launch the following commands:

virtualenv env/
env/bin/pip3 install -r requirements.txt
env/bin/ansible-galaxy install -r requirements.yml

Configuration

In order to customize the provisioning of the infrastructure, you may overwrite default values directly in the inventory. Each role includes a README that precisely describes all variables.

The TLS configuration for SIP signalling is a special case as it is a general feature that affects several parts of the infrastructure. It is configurable by passing the following environment variables when launching the playbooks:

  • ENABLE_TLS: boolean that indicates if TLS should be enabled for SIP signalling.
  • KAMAILIO_FULLCHAIN_CERTIFICATE: the fullchain of the TLS certificate.
  • KAMAILIO_PRIVKEY_CERTIFICATE: the private key of the TLS certificate.

Besides, the global Ansible configuration is detailed in the ansible.cfg file. All configuration keys are available in the Ansible documentation.

Launch a playbook

To run an Ansible playbook on a set of hosts, complete the inventory file and launch the following command:

env/bin/ansible-playbook playbooks/<your playbook>.yml [-l <list of hosts>] [--ask-pass]