-
Notifications
You must be signed in to change notification settings - Fork 15
All in one Images
While Clearwater is designed to be massively horizontally scalable, it is also possible to install all Clearwater components on a single node. This makes installation much simpler, and is useful for familiarizing yourself with Clearwater before moving up to a larger-scale deployment using one of the [other installation methods](Installation Instructions).
This page describes the all-in-one images, their capabilities and restrictions and the installation options available.
All-in-one images consist of
- Ubuntu 12.04, configured to use DHCP
- bono, sprout, homestead, homer and ellis
- Clearwater auto-configuration scripts.
On boot, the image retrieves its IP configuration over DHCP and the auto-configuration scripts then configure the bono, sprout, homestead, homer and ellis software to match.
The image is designed to run on a virtual machine with a single core, 1.7GB RAM and 8GB of disk space. On EC2, this is an m1.small.
Since the all-in-one images include all of bono, sprout, homestead, homer and ellis, they are capable of almost anything a full deployment is capable of.
The key restrictions of all-in-one images are
- hard-coded realm - the all-in-one image uses a hard-coded realm of
example.com
so your SIP URI might besip:[email protected]
- by default, SIP uses this realm for routing butexample.com
won't resolve to your host so you need to configure an outbound proxy on all your SIP clients (more details later) - performance - since all software runs on a single virtual machine, performance is significantly lower than even the smallest scale deployment
- scalability - there is no option to scale up and add more virtual machines to boost capacity - for this, you must create a normal deployment
- fault-tolerance - since everything runs on a single virtual machine, if that virtual machine fails, the service as a whole fails.
All-in-one images can be installed on EC2 or on your own virtualization platform, as long as it supports OVF (Open Virtualization Format).
- To install on EC2, follow the [all-in-one EC2 AMI installation instructions](All-in-one EC2 AMI Installation).
- To install on your own virtualization platform, follow the [all-in-one OVF installation instructions](All-in-one OVF Installation).
If your virtualization platform is not EC2 and doesn't support OVF, you may still be able to manually build an all-in-one node. To do so,
-
find the
preseed/late_command
entry in the all-in-one image's install script - as of writing this is as follows, but please check the linked file for the latest versiond-i preseed/late_command string in-target bash -c '{ echo "#!/bin/bash" ;
echo "set -e" ;
echo "repo=... # filled in by make_ovf.sh" ;
echo "echo deb $repo binary/ > /etc/apt/sources.list.d/clearwater.list" ;
echo "curl -L http://repo.cw-ngv.com/repo_key | sudo apt-key add -" ;
echo "apt-get update" ;
echo "export DEBIAN_FRONTEND=noninteractive" ;
echo "apt-get install -y --force-yes clearwater-cassandra clearwater-auto-config-generic" ;
echo "apt-get install -y --force-yes ellis bono restund sprout homer homestead homestead-prov" ;
echo "export PATH=/usr/share/clearwater/ellis/env/bin:$PATH" ;
echo "cd /usr/share/clearwater/ellis/src/metaswitch/ellis/tools/" ;
echo "python create_numbers.py --start 6505550000 --count 1000" ;
echo "rm /etc/rc2.d/S99zclearwater-aio-first-boot" ;
echo "poweroff" ; } > /etc/rc2.d/S99zclearwater-aio-first-boot ;
chmod a+x /etc/rc2.d/S99zclearwater-aio-first-boot' -
run the command (stripping the
d-i preseed/late_command string in-target
prefix and filling in the repo variable - the default ishttp://repo.cw-ngv.com/stable
) - this will create an/etc/rc2.d/S99zclearwater-aio-first-boot
script -
run the
/etc/rc2.d/S99zclearwater-aio-first-boot
script - this will install the all-in-one software and then shutdown (ready for an image to be taken) -
restart the node.