KB ID : 115064
Products :
Published : April 5, 2018
Created : April 5, 2018
Last Modified : April 5, 2018

Overview

Vembu BDR supports installing multiple Vembu BDR Server instances (Nodes) in a cluster to provide load balancing of the clients. Backup and Restore requests from the client machines are directed to one of the Nodes as per the load balancing algorithm. The backup server instances(Nodes) can be scaled up or down based on the capacity at runtime. The Nodes share a common RDBMS database and a common backup storage as well. This document explains about the cluster and how to setup for V3.9.

How does the VembuBDR Clustering Work?

Each Vembu BDR Backup Server instance consists of Vembu BDR Web Server and the Vembu BDR Application. The Vembu BDR Web Server by default listens on port 6060 (and 6061 if HTTPS is enabled) and addresses the Web Service requests from the clients. The Vembu BDR Application listens on port 32004 (and 32007 if SSL is enabled) and accepts the backup and restore requests from the clients. The Vembu BDR Application of each Backup Server instance access a common RDBMS database and a common backup storage. This enables the Vembu BDR Backup Server instances running from different systems to share the backend database and serve the backup/restore requests of the Vembu BDR clients independently.

Recommendations

  • Install PostgreSQL with VembuBDR installer in a physical machine and dedicate it to PostgreSQL database alone in order to handle huge requests from clients separately rather than setting up a database in the same machine where the application is running. This would be helpful in extreme conditions when the main server goes down so database files would be safe.
  • Also, keep the storage files of PostgreSQL in common location which helps to rebuild the PostgreSQL server if it goes down.
  • Allocate static IP/DNS to all server nodes.

Configuring Master Node:

  1. Install BDR server and after the installation has completed, make sure that you uncheck Start BDR Server and Open Web Console in the installation wizard. This will never start 'VembuBDR' service.
  2. Navigate to <vembubdr installation="" location="">\Vembu\VembuBDR\conf\. Open SGConfiguration.conf file in any text editor.
  3. Search for Cluster Enabled="0" and replace it with attribute Cluster Enabled="1"
  4. Search for "ClusterName" and name your Cluster setup, say: ClusterName="BDRCluster"
  5. Search for "NodeLookupNameIP" and "InternalIPAddress" and configure master node IP address to it.
  6. Leave other cluster attribute like "AlgorithmType", "NodeAllocation" and "NodeHealthStatusTimeout" to its default value.
    For example:
    <cluster enabled="1" clustername="BDRCluster" nodelookupnameip="10.5.50.78" internalipaddress="10.5.50.78" algorithmtype="2" nodeallocation="0" nodehealthstatustimeout="600"/>
    Say, IP of the master node is 10.5.50.78.
  7. Search for the attribute “Database UseODBC” and replace all the attributes as shown below. Here, in the attribute “HostName” enter the IP of the dedicated PostgreSQL server.
    For example:
    <database useodbc="2" dsname="PostGreDBConnection" databasename="SGDatabase" hostname="10.5.50.75" username="postgres" password="admin" connectionpooling="1" splitdatabase="1" splitlevel="2"/>
    Say, IP of the PostgreSQL server is 10.5.50.75.
  8. Now edit config.php file in location: <vembubdr installation="" location="">\Vembu\VembuBDR\htmlgui\consumerweb\secure. Note: This file is edited to sync database string values that are mentioned in SGConfiguration.conf file.
  9. Values that needed to be changed are given below:

    define("ser_main_server_dns" , ‘10.5.50.78’); //IP Address of master node
    define("DB_SERVER" , ‘10.5.50.75’); // IP Address of PostgreSQL server
    define("DB_NAME" , "SGDatabase");
    define("DB_USER" , "postgres");
    define("DB_PASS" , "admin");
    define("DSN_NAME" , "PostGreDBConnection");

    Note: These settings should remain same across all cluster nodes.
  10. Save and exit the file.
  11. Open apiutility.php file from location: <vembubdr installation="" location="">\Vembu\VembuBDR\htmlgui\common\server
  12. Look for “if(S3_Enabled==1)” and replace it with “if(S3_Enabled==0)”. Save and close the file.

Configuring failover node:

Follow the first step in master node configuration and after that:

  1. Open SGConfiguration.conf file and make all the changes as mentioned above but in "NodeLookupNameIP" and "InternalIPAddress", enter the IP of the failover node i.e., enter the IP of the local machine.
  2. Make sure that the cluster name is same on all the nodes that are configured.
  3. After edit and save, SGConfiguration.conf file must be like: <cluster enabled="1" clustername="BDRCluster" nodelookupnameip="10.5.50.79" internalipaddress="10.5.50.79" algorithmtype="2" nodeallocation="0" nodehealthstatustimeout="600"/> Say, IP of the failover node is 10.5.50.79
  4. Search for the attribute “Database UseODBC” and replace all the attributes as shown below. Here, in the tag “HostName” enter the IP of the dedicated PostgreSQL server. For example: <database useodbc="2" dsname="PostGreDBConnection" databasename="SGDatabase" hostname="10.5.50.75" username="postgres" password="admin" connectionpooling="1" splitdatabase="1" splitlevel="2"/> Say, IP of the PostgreSQL server is 10.5.50.75
  5. After the above configuration, follow all the steps as mentioned in Master node configuration.

Configuring Database connection strings:

These configurations must be done in the machine that is dedicated for PostgreSQL database storage alone.

  1. Open Pg_hba.conf file using any text editor from location: <postgres installation="" location="">\Postgresql\Data\ Add the following lines under IPV4 local connections.
    • With IP Address of both master node and failover node
      host    all    all    10.5.50.78/0    md5
      host    all    all    10.5.50.79/0    md5
    • If there are any number of failover nodes, add the IP of all the nodes. After editing the file, save it and restart the PostgreSQL from services.msc.

Configuring Database Connector (ODBC):

  1. Search for ODBC Connection from Start and select ODBC Data Source (64 bit) or in the terminal, type “C:\Windows\System32\odbcad32.exe”
  2. Select SystemDSN tab.

  3. SystemDSN tab Under ODBC Data Source Administrator

  4. Choose 64-bit “PostGreDBConnection” and add the server as your PostgreSQL server’s IP address.
  5. Say if 10.5.50.75(PostgreSQL server) is your PostgreSQL IP address, then setting should look something like this.

  6. psqlODBC Setup

  7. Do a test connectivity, on success - save the configuration.
  8. Now do the same operation for the 32-bit connector. Open the command terminal and type C:\Windows\Syswow64\odbcad32.exe or search ODBC Data Source (32-bit)
  9. Choose 32-bit “PostGreDBConnection” and add the server as your PostgreSQL server’s IP address.

Note: The above settings should be followed in all the cluster nodes.

VembuBDR cluster configuration is done. Now start the master node following all the failover nodes.

Configuring Client:

These steps should be followed for any client (Vembu Network backup, Image backup or VMbackup clients) to be connected with VembuBDR Cluster. Consider network backup client here.

  1. In any Client, open SGConfiguration.conf file in any text editor from the location, <vembubdr installation="" location="">\Vembu\VembuNetworkBackup\conf\
  2. Search for the attribute “ServerLookup Enabled” and change the value as given below: <serverlookup enabled="1" sslenabled="1" httpport="6060" httpsport="6061"/>

Note: This has to be done in all the clients that connect with VembuBDR cluster.

VembuOffsiteDR Cluster:

  1. For VembuOffsiteDR cluster, follow the exact same steps as in BDR.
  2. Before starting exe of VembuOffsiteDR, in SGConfiguration.conf file in location : <vembuoffsitedr installation="" location="">\Vembu\VembuOffsiteR\conf\, after changing the values for Cluster enabling, add an additional tag NodeProcessType = “1” Therefore, SGConfiguration.conf file must be like, <cluster enabled="1" clustername="ODRCluster" nodelookupnameip="10.5.50.80" internalipaddress="10.5.50.80" algorithmtype="2" nodeallocation="0" nodehealthstatustimeout="600" nodeprocesstype="”1”/"> Say, IP of the master node is 10.5.50.80 This must be done in all cluster nodes.Then start the master node followed by all failover nodes.
  3. For a BDR to replicate to OffsiteDR cluster, open SGConfiguration.conf file in VembuBDR and search for the attribute “ServerLookup Enabled”. Change the values as mentioned below: <serverlookup enabled="1" sslenabled="1" httpport="6060" httpsport="6061"/>

OffsiteDR cluster has been configured. Now backups from the BDR are replicated to OffsiteDR cluster.
Similarly, VembuBDR Cluster and VembuOffsiteDR Cluster setups can also be configured by following the procedures mentioned above.

edit retag flag offensive close merge delete