HiPBX
The Highly Available PBX
Cluster

From HiPBX Wiki

Jump to: navigation, search

Contents

Clustering

HiPBX uses the Linux-HA recommended and supplied Clustering services. This is built from two major components:

  • Corosync - The cluster communications engine
  • Pacemaker - The cluster resource manager.

The major sub-item is DRBD, which acts as a RAID-1 disk mirror, but between different machines.

List of Clustered Services

DHCP Service

No documentation for this service at the moment.

MySQL Database

There are no changes to MySQL in HiPBX. As part of the installer, the first machine you install HiPBX on becomes authoritative for any existing database on the machine. The data, if any, is moved to the new filesystem, at a temporary mount point of /drbd/mysql. After the data move is complete, it is then remounted under /var/lib/mysql, which is the default location in CentOS for MySQL databases. This filesystem is then replicated with DRBD between both machines.

Asterisk VoIP Server

All of the Asterisk data is stored under /drbd/asterisk , and is symlinked from its origin. These specific symlinks are:

Original Destination Description
/etc/amportal.conf /drbd/asterisk/amportal.conf FreePBX Configuration file (sh/bash)
/etc/freepbx.conf /drbd/asterisk/freepbx.conf FreePBX Configuration file (php)
/etc/asterisk/ /drbd/asterisk/etc Main Asterisk directory
/etc/dahdi/ /drbd/asterisk/dahdi Main DAHDI Directory
/var/lib/asterisk/ /drbd/asterisk/lib Various Asterisk and FreePBX binaries
/var/log/asterisk/ /drbd/asterisk/log All Asterisk Logfiles
/usr/lib64/asterisk/modules/ /drbd/asterisk/modules Asterisk loadable modules
/usr/share/asterisk/ /drbd/asterisk/share Sound files, provisioning, etc
/var/spool/asterisk/ /drbd/asterisk/spool Voicemail, Recordings, astdb

Apache/FreePBX

All of the Apache configuration and data is stored under /drbd/httpd, and is symlinked from its origin. These specific symlinks are:

Original Destination Description
/var/www/ /drbd/httpd/www All web pages and FreePBX pages
/var/log/httpd/ /drbd/http/logs Apache logs
/etc/php.d/ /drbd/http/php PHP modules and configuration
/etc/php.ini /drbd/http/php.ini PHP Configuration file

Spare service

This service is specifically left unconfigured, but disk space and an IP Address is allocated, and a cluster group is created. If you need an extra high-av service, this resource can be added to and configured using CRM.

unaware