Minimum Redundant Cluster Configuration

The minimum redundant Blueworx Platform cluster consists of 3 VMs, each installed with a subset of the Blueworx Platform packages. A cluster installed in this configuration is designed so that any one of the VMs can have a failure and the cluster will still be able to handle calls.

It is important to note that in this minimum configuration, only one VM can be down at any one time. Should a second VM fail concurrently, calls into the platform will fail.

The diagram below shows an example of the cluster. Detailed installation and configuration instructions are also included for the example cluster and can be used as a guide when configuring a new environment.

Overview


Example Minimum Redundant Cluster

The minimum redundant cluster consists of 3 VMs on a shared reliable network. Using the example in the image above, each VM is installed as follows:

VM 1, hostname sys1.test.com, IP address 1.2.3.4, has the following Blueworx packages installed:

VM 2, hostname sys2.test.com, IP address 1.2.3.5, has the following Blueworx packages installed:

VM 3, hostname sys3.test.com, IP address 1.2.3.6, has the following Blueworx packages installed:

Installation

Install the Blueworx Yum repository on each system as described here Installing the Blueworx Yum repository on Centos or Redhat

VM 1

Install the PostgreSQL Database as described here Installing PostgreSQL 10 Database for Blueworx CPD and follow the instructions for "Local database".

Then install the required Blueworx packages using the following commands in the order shown:

			yum install blueworx-common*
			yum install blueworx-rm*
			yum install blueworx-db*
			yum install blueworx-am*        
    

Logout and back in to establish the Blueworx environment.

Run bdb install to install the Blueworx database into Postgres.

Validate the Blueworx Resource Manager and Blueworx Admin Manager package installation as described here Installation Validation

VM 2

Install the required Blueworx packages using the following commands in the order shown:

			yum install blueworx-common*
			yum install blueworx-rm*
			yum install blueworx-vr*
			yum install blueworx-am*   (optional)     
        

Validate the Blueworx Resource Manager, Blueworx Voice Response and, if installed, Blueworx Admin Manager package installation as described here Installation Validation

VM 3

Install the required Blueworx packages using the following commands in the order shown:

			yum install blueworx-common*
			yum install blueworx-rm*
			yum install blueworx-vr*
			yum install blueworx-am*   (optional)     
        

Configuration

VM 1 Configuration:
$BRM_CONF/brm.config
Update the database.main section with: url = "jdbc:postgresql://1.2.3.4/bw_db"
$BRM_CONF/zoo.cfg
Set the contents using either IP address or hostname as shown below:
server.1=1.2.3.4:2888:3888
server.2=1.2.3.5:2888:3888
server.3=1.2.3.6:2888:3888
or
server.1=sys1.test.com:2888:3888
server.2=sys2.test.com:2888:3888
server.3=sys3.test.com:2888:3888
$BRM_HOME/zookeeper/data_dir/myid
Set the contents to 1
$BRM_HOME/license/bvr.key
The licence obtained from Blueworx
$BAM_CONF/bam.config
Set the address in the [BRM} section of the config to one of the following:
address = "localhost,1.2.3.5,1.2.3.6"
address = "localhost,sys2.test.com,sys3.test.com"
/var/lib/pgsql/10/data/pg_hba.conf
Add the following lines:
host all all 1.2.3.4/24 md5
host all all 1.2.3.5/24 md5
host all all 1.2.3.6/24 md5
/var/lib/pgsql/10/data/postgresql.conf
Ensure the following entries are set:
listen_addresses = '*'
port = 5432
Restart PostgreSQL
sudo systemctl stop postgresql-10
sudo systemctl start postgresql-10
Linux Configuration
If required update the open file limits as described here Linux Configuration

VM 2 Configuration:
$BRM_CONF/brm.config
Update the database.main section with: url = "jdbc:postgresql://1.2.3.4/bw_db"
$BRM_CONF/zoo.cfg
Set the contents using either IP address or hostname as shown below:
server.1=1.2.3.4:2888:3888
server.2=1.2.3.5:2888:3888
server.3=1.2.3.6:2888:3888
or
server.1=sys1.test.com:2888:3888
server.2=sys2.test.com:2888:3888
server.3=sys3.test.com:2888:3888
$BRM_HOME/zookeeper/data_dir/myid
Set the contents to 2
$BVR_CONF/bvr.config
Set the address in the [BRM} section of the config to one of the following::
address = "localhost,1.2.3.4,1.2.3.6"
address = "localhost,sys1.test.com,sys3.test.com"
If the Blueworx Admin Manager is installed on VM 2 then update $BAM_CONF/bam.config as follows:
[database.main]
url = "jdbc:postgresql://1.2.3.4/bw_db"
[brm]
Set the address in the [BRM} section of the config to one of the following:
address = "localhost,1.2.3.4,1.2.3.6"
address = "localhost,sys1.test.com,sys3.test.com"
Linux Configuration
If required update the open file limits as described here Linux Configuration

VM 3 Configuration:
$BRM_CONF/brm.config
Update the database.main section with: url = "jdbc:postgresql://1.2.3.4/bw_db"
$BRM_CONF/zoo.cfg
Set the contents using either IP address or hostname as shown below:
server.1=1.2.3.4:2888:3888
server.2=1.2.3.5:2888:3888
server.3=1.2.3.6:2888:3888
or
server.1=sys1.test.com:2888:3888
server.2=sys2.test.com:2888:3888
server.3=sys3.test.com:2888:3888
$BRM_HOME/zookeeper/data_dir/myid
Set the contents to 3
$BVR_CONF/bvr.config
Set the address in the [BRM} section of the config to one of the following:
address = "localhost,1.2.3.4,1.2.3.5"
address = "localhost,sys1.test.com,sys2.test.com"
If the Blueworx Admin Manager is installed on VM 3 then update $BAM_CONF/bam.config as follows:
[database.main]
url = "jdbc:postgresql://1.2.3.4/bw_db"
[brm]
Set the address in the [BRM} section of the config to one of the following:
address = "localhost,1.2.3.4,1.2.3.5"
address = "localhost,sys1.test.com,sys2.test.com"
Linux Configuration
If required update the open file limits as described here Linux Configuration

More information on these settings can be found here Redundancy Configuration