CD Installation of sipXecs

From SIPfoundry sipx, The Open Source SIP PBX for Linux - Calivia

Jump to: navigation, search

Contents

Using the sipXecs Single CD Installer

Introduction

The sipXecs Single CD Installation medium was created to fully automate the installation process of both the Linux operating system as well as the sipXecs application.

As an optional configuration option the Installation CD offers to run additional system services on the same host. Such services include DHCP, DNS, as well as NTP servers. The configuration of these system services is automated using a configuration wizard that starts automatically as you login as root after installation. These services are optimized to run a sipXecs system. In particular the DHCP server is meant to configure phones and the DNS server is setup to offer SIP DNS SRV resource records.

Note: If there already is another DHCP server running on the subnet, operation of your network can go down if a second DHCP server comes online. Before you enable this option make sure no other DHCP server is on the subnet.

Once sipXecs is installed login to the Web UI, go to Diagnostics / Configuration Tests and run all the tests. Once the tests pass your network services are setup correctly to run sipXecs.

Hardware Requirements

The Installation CD is made for standard Intel / AMD based systems (P4, Core Duo or equivalent) with a minimum of 512MB of RAM. It is not made for VIA CPUs (C3 or C7).

Choice of Operating System

The single install CD currently is based on FC6. With Fedora 8 Red Hat is introducing a new tool chain to create appliance CDs as well as Live CDs. We are planning to migrate to this new tool chain and will therefore not provide a CD installer for F7 (the tools are still broken on F7).

Obtaining and Burning the Installation CD Image

Stable Release: Download the CD from the new sipXecs repository

Development CD builds:

Booting the Installation CD

The downloaded ISO image needs to be burnt to a CD. Insert the CD into your server and power it up. At the splash screen hit Enter to start the installation. Note that the installation will erase all data on your system. Once the installation finishes the system will reboot automatically.

Important: Run yum update after the installation finishes. The ruby rpms need to be updated to release 1.8.5 for CallResolver to work properly.

Running the sipXecs Configuration Wizard

At the login prompt login as user root. The password is setup.

The installation Wizard offers to configure either a single server (non-HA) system or a redundant system that consists of a master and slave. The following describes these two installation options:

1. Configuring a non-redundant single server sipXecs system

The configuration wizard starts automatically after login. On the second screen it asks whether you want an HA system or non-HA system. Choose the non-HA option.

On the third screen it asks whether to install DHCP / DNS / NTP servers on the host. Make sure you pick the right option.

Image:install-4.png Image:install-5.png

Entering network and administrative settings (If you did not select DNS / DHCP services to be installed on this host, this screen will also ask you to provide an IP address for one or two DNS servers to be used):

Image:install-6.png Image:install-7.png

Selecting a time zone (Note: Once you selected a continent you cannot get back to that screen unless you restart the CD):

Image:install-8.png Image:install-9.png

Configuring the DNS Domain for sipXecs. The settings shown here corresponds to using SIP DNS SRV resource records configured for this machine. This is the case if using the on-board DNS server. If an external DNS server is used make sure SIP DNS SRV records are configured. If you do not want to use SRV records configure the fully qualified host name of your system here.

The next screen shows entries required to generate a self-signed certificate required by sipXconfig:

Image:install-10.png Image:install-11.png

Set the correct time. This is required so that the self-signed certificate can be generated with a valid time stamp. If this system is connected to the Internet, NTP will adjust to the accurate time once started. If not connected to the Internet this will be the system time:

Image:install-12.png

The Wizard has now collected all the necessary data and will perform system configuration. You can monitor progress on the screen. If the system is not connected to a network it might take a while until the attempted synchronization with an external time server times out. Once completed the Wizard offers to restart the system - do so.

Logging into the sipXecs Configuration Server

Using a computer with network connectivity to the newly installed server, launch a Web browser and go to the URL below. The first screen asks for a new admin password to be defined.

http://<hostname.domain>

Image:Login.png

2. Configuring a redundant dual server sipXecs system (Master and Slave)

sipXecs offers full redundancy of the call control system. The installation Wizard is able to automatically install and configure a redundant system that consists of 2 servers. A redundant system is centrally managed by one instance of the sipXecs configuration server running on the Master. If the DNS server runs on the Master server, then on the Slave server a redundant slave DNS server has to be running for redundancy to work. The installation wizard offers to automatically configure DNS services both on the Master and Slave.

Configuring the Master Server

Installing and configuring a redundant systems starts with setting up the Master. This is very similar to the steps taken to install and configure a non-redundant system (see above). The following steps are added: Select the HA-System option and choose to install a Master server. It is recommended to run DNS and NTP services both on the Master and Slave unless you have a different setup that provides these services in a reliable way to both systems.

Image:install-master-4.png Image:install-master-5.png

The installaiton Wizard requires you to enter networking parameters for both the Master and Slave servers. This information is required to properly configure the HA setup.

Image:install-master-7.png Image:install-master-8.png

Configuring the Slave Server

The Slave server offers redundant call control while it is centrally managed by the sipXecs configuration server that runs on the Master. Choose setting up an HA-System, then select Slave Server setup.

Image:install-slave-5.png Image:install-slave-7.png

The Wizard requires that you also enter the networking information for the Master server.

The installation Wizard then pauses to give you a chance to install the necessary certificate. Certificates are required to secure the communication between the Master and the Slave. During the setup process of the Master server, certificates for the Slave host were already created. All you have to do is send these certificates from the Master to the Slave.

Image:install-slave-8.png Image:install-slave-14.png

While the Slave installation Wizard pauses with an option to test that the certificate has been properly installed, go to the Master server and start a terminal session or use the console. In the terminal window type the following:

cd ~/sipx-certdb
/usr/bin/ssl-cert/install-cert.sh --remote slave.example.com

Enter "yes" to accept the master certificate, then enter the root password for the Slave host. Once the automated remote installation completes successfully, go back to the Slave. Clicking on "Test Certificate" should now succeed and the Wizard will finish. The wizard now offers to restart the Slave and you should do that. Once back up all the sipXecs services are also started automatically on the Slave.

Logging into configuration server for the first time can display an error. This is caused by the fact that when the Master started, the Slave was still unreachable. Go to the "Job Status" page and clear all the events. You can now go to the "Services" page and check whether all the services on both the Master and Slave hosts are running properly.

Managing Processes on the Master and Distributed Server

After installing a high-availability system all sipXecs processes can be managed from the Web UI for both the master and slave server. Login to the Web UI as admin and navigate to Diagnostics / Services.

Image:MasterServices.png

Processes on the distributed system (slave) can be monitored, stopped, started or restarted.

Image:DistribServices.png

Monitoring Phone Registrations in an HA-System

In an HA system phones use either the Master or Slave system as the primary registrar. Which one is chosen depends on which server address is returned by the DNS server as the phones queries for the DNS SRV record. The load sharing distribution by default is 50:50, but can be changed by configuring the DNS server. As soon as a phone registered with the primary server (the one it is given by DNS first), sipXecs replicates this registration to the other server. Using the management Web UI you can see what phones used which server as there primary. The example below shows three phones, a Polycom, Snom and Grandstream, where two use the Master as their primary registrar and one used the Slave.

Image:RegistrationsHA.png

Updating

You should use yum to keep your system updated. To configure the sipXecs yum repository execute the following command:

 wget -P /etc/yum.repos.d http://www.sipfoundry.org/pub/sipXecs/sipxecs-stable-fc.repo

If you installed a non-stable release (any release with an odd minor release number - for example 3.11) make sure that you update it regularly and report problems on sipx-devel list.

In order to update the system to the latest nightly build execute the following command:

 yum update --enablerepo=sipx-development

Troubleshooting

Refer to: SipX ConfigServer Troubleshooting

Log Files

The configuration wizard creates a detailed log of all the configuration options chosen during that step. It also logs all the settings of all the different files it writes to configure the system. The log file is at:

/var/log/sipxpbx/setup.log

In addition, during the installation Anaconda created an installation log that can be found in root's home directory. It shows all the packages installed on the system.

/root/install.log

Syslog protocols all the system messages during startup:

/var/log/messages
Personal tools