clearwater bono #5

Supports: trusty

Add to new model

Description

Bono charm for Project Clearwater


Overview

This is a Juju charm, which allows deployment and scaling of the Bono component of a Project Clearwater IMS core.

Bono should only be deployed alongside the other Project Clearwater charms and a DNS server - see our main Juju README for instructions on this, including a bundle that makes this deployment simple.

Deployment

Initial deployment

The Bono service should be initially deployed as part of a Clearwater bundle, following the instructions in our main README.

Note that the clearwater-bono charm can only be deployed on the amd64 architecture (although the provided bundle already enforces this constraint).

Scale out Usage

clearwater-bono can be scaled up through the normal Juju mechanism of juju add-unit clearwater-bono.

This will create a new Bono instance, and trigger the DNS server charm to add a DNS record for this Bono. (Unlike Sprout, Homestead, Homer and Ralf nodes, Bono nodes don't have a shared datastore, so don't need any cluster configuration.)

Using Bono

Once installed, Bono will listen for SIP traffic on port 5060 (both TCP and UDP). Once you have created a SIP subscriber through the Ellis UI, you can use a standard SIP client (e.g. Blink, Boghe or X-Lite) to register against Bono's public IP (which you can find with juju status clearwater-bono) and make calls.

Our "Making your first call" documentation has more information on this process.

Configuration

  • zone: The home domain of this IMS deployment - this could be a real domain that you own, or an internal-only name like "clearwater.local".
  • repo: The URL of the Clearwater package repository server. Our latest relese, updated roughly every two weeks, is at http://repo.cw-ngv.com/juju-clearwater-2.
  • sas: (optional) The location of a Metaswitch SAS server for diagnostics and call flows.
  • trusted_peers: (optional) Comma-separated list of IP addresses of trusted peers, for when Bono is used as an IBCF rather than a P-CSCF.

The zone, sas and repo configuration options should be consistent across all Clearwater nodes in the deployment.

Files downloaded

When the charm is being installed, several files are downloaded:

  • Our standard Chef setup scripts, checked out from https://github.com/Metaswitch/chef.
  • The Bono Debian packages, from our package repository server at repo.cw-ngv.com.
  • Any dependencies of those Debian packages, from the standard Ubuntu repository servers.

Contact and Upstream Project Information

Project Clearwater is an open-source IMS core, developed by Metaswitch Networks and released under the GNU GPLv3. You can find more information about it on our website or our documentation site.

Clearwater source code and issue list can be found at https://github.com/Metaswitch/. Bono's source code can be found at https://github.com/Metaswitch/sprout/.

If you have problems when using Project Clearwater, read our troubleshooting documentation for help, or see our support page to find out how to ask mailing list questions or raise issues.


Configuration

cdf
(string) The location of the CDF to bill to
repo
(string) The location of the repo server
http://repo.cw-ngv.com/archive/repo110/
sas
(string) The location of the SAS server
target_latency_us
(int) Target request latency for overload control (microseconds)
100000
trusted_peers
(string) Comma-separated list of IP addresses of trusted peers
turn_workaround
(string) TURN workaround password, used by faulty WebRTC clients
zone
(string) The DNS root zone for this service
clearwater.local