Page tree
Skip to end of metadata
Go to start of metadata

FreePBX has an automated installer that correctly installs the required packages and sets up the machine in a standard way. However, there may be occasional edge cases where using the automatic installer may not be possible (such as non-standard RAID controllers).

This document will provide a walkthrough of installing FreePBX HA with the 'Advanced' option of the FreePBX Distro Installer

Start by selecting 'Advanced' when booting from the DVD.

When you're prompted for an IP Address, do not select DHCP..

Ensure that you enter an IP address. Note that this is not the floating IP address. This address is fixed to this machine, and will not move. The Floating IP address (that clients connect to) is assigned as part of HA Setup.

When setting the Timezone, ensure that 'System Clock uses UTC' is enabled.

You can now proceed to setting up disks.  This is system dependant, but there are two important things to ensure are correct

  • You must have LVM configured, with at least 100GB of free space available after everything else is completed
  • The LVM Volume Group name must be 'vg_ha'.

An example setup inside VMware with a 150GB drive is below.

You start by selecting Custom Layout on the partitioning view

Create the '/boot' partition, which contains the kernel and is the first partition on the disk.

Ensure you pick 'Force to be a Primary Partition' to avoid potential issues with MBRs on older BIOS'ed machines.

Now you can create your LVM volume. You do not need to use all of the disk, you just need to ensure that there will be at least 100GB left over after you've created the root (/) filesystem, and swap space. However, in this example I have selected 'Fill to maximum allowable size'.

After you have created the Physical Volume, you then create the Volume Group that uses this Physical Volume.

When creating the Volume Group, set the name to be 'vg_ha'

Now create the / (root) filesystem, setting it to (at least) 40GB.

You also need to create a Swap volume. Set this to be 2 x the amount of RAM in your machine. 


This is what your LVM configuration should look like. Note that 'Free Space' is greater than 100,000MB. If you have it less than that, HA will refuse to install.


When you've completed this, you should have a disk layout similar to this

You can now proceed through the rest of the installer. Note that selecting the defaults is usually correct

Note that the install will pause at this point, and is to be expected

When the install is completed, the machine will reboot, and perform the firstboot configuration,which ensures everything is up to date.The machine may reboot depending on the age of the image you're using (if a new kernel has been released since the ISO was created, the machine will reboot into that kernel)

You can now perform the application settings to finalize the required packages. After logging into the machine, you need to enable the 'ha' repository. Copy and paste the following line into a root login on the machine

sed -i 's/enabled=0/enabled=1/' /etc/yum.repos.d/FreePBX.repo

That enables the High Availability repository, and allows the packages to be installed.

yum install drbd kmod-drbd pacemaker cman pcs ccs resource-agents resource-agent-freepbx rseries

That command will then install all the additional packages required for HA. 

[root@localhost ~]# yum install drbd kmod-drbd pacemaker cman pcs ccs resource-agents resource-agent-freepbx rseries
Loaded plugins: fastestmirror, kmod
Loading mirror speeds from cached hostfile
base                                                                                  | 2.0 kB     00:00
extras                                                                                | 1.3 kB     00:00
high-availability                                                                     | 1.3 kB     00:00
pbx                                                                                   | 1.3 kB     00:00
schmooze-commercial                                                                   | 1.3 kB     00:00
updates                                                                               | 1.3 kB     00:00
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package ccs.x86_64 0:0.16.2-69.el6_5.1 will be installed
---> Package cman.x86_64 0: will be installed
--> Processing Dependency: clusterlib = for package: cman-
--> Processing Dependency: ricci >= 0.15.0-4 for package: cman-
--> Processing Dependency: openais >= 1.1.1-1 for package: cman-
--> Processing Dependency: modcluster >= 0.15.0-3 for package: cman-

 .... several pages of output skipped ....
 sg3_utils                    x86_64       1.28-5.el6                        base                      471 k
 sg3_utils-libs               x86_64       1.28-5.el6                        base                       51 k
 yajl                         x86_64       1.0.7-3.el6                       base                       27 k
Transaction Summary
Install      63 Package(s)
Total download size: 30 M
Installed size: 104 M
Is this ok [y/N]:

Select 'y' and let the extra packages install. 

When it's complete, you'll have something similar to this:

  perl-TimeDate.noarch 1:1.16-11.1.el6                  pexpect.noarch 0:2.3-6.el6
  pyOpenSSL.x86_64 0:0.10-2.el6                         python-suds.noarch 0:0.4.1-3.el6
  ricci.x86_64 0:0.16.2-69.el6_5.1                      rpcbind.x86_64 0:0.2.0-11.el6
  samba-common.x86_64 0:3.6.9-169.el6_5                 samba-winbind.x86_64 0:3.6.9-169.el6_5
  samba-winbind-clients.x86_64 0:3.6.9-169.el6_5        sg3_utils.x86_64 0:1.28-5.el6
  sg3_utils-libs.x86_64 0:1.28-5.el6                    yajl.x86_64 0:1.0.7-3.el6
[root@localhost ~]#

You must reboot at this point to ensure the correct kernel modules are loaded.

After rebooting, you need to Activate the machine to receive the licence, and then proceed with HA Setup.

If you have followed these instructions, all the prerequisite checks will pass validation!.

  • No labels

1 Comment

  1. We've done this like 5 times now.  We have latest HP Proliant and the distro HA install failed to deal with HP RAID.

    Here’s the line from the Wiki:

                    yum install drbd kmod-drbd pacemaker cman pcs ccs resource-agents resource-agent-freepbx rseries

    Here’s what works for us:

                   yum install drbd kmod-drbd.x86_64 res* pacemaker cman pcs ccs resource-agents resource-agent-freepbx rseries

    It seems res* and “resource-agents resource-agent-freepbx” are redundant, but yum figures it out.  I'm pretty sure I could just do

                    yum install drbd kmod-drbd.x86_64 res* pacemaker cman pcs ccs  rseries

    but I haven't tried.