Tutorial: Configuring multiple data centers for Decision Management
The Decision Management capability of Pega Platform™ comes with the Decision Data Store (DDS). By using DDS, you can store customer records in an internal Cassandra data center that is running as part of the Pega Platform node cluster. To provide continued services in case the primary data center fails, you can add a secondary Cassandra data center.
This tutorial covers the following topics:
- Use case
- Configuring the primary data center nodes
- Configuring the secondary data center nodes
- Next steps
Use case
uPlusTelco wants to ensure continuous decisioning services by adding a secondary data center in the active-active configuration. In such configuration, both data centers actively run the same services simultaneously to effectively manage the workload across all nodes and minimize application downtime.
This tutorial assumes that the primary data center (DC1) and the secondary data center (DC2) do not have any DSM services enabled. In addition, DC1 and DC2 communicate directly through ports 7000 and 9042.
Configuring the primary data center nodes
Add nodes to the primary data center by updating the prconfig.xml file. Deploy the Cassandra database on the primary data center by starting the Decision Data Store service.
- Update the prconfig.xml file with the following configuration:
<!-- list all available Cassandra data centers --> <env name="dnode/cassandra_datacenters" value="DC1,DC2"/> <!-- specify current data center --> <env name="dnode/cassandra_datacenter" value="DC1"/>
where:- cassandra_datacenters – Enumerates the data center names to use by Pega Platform when the internal Cassandra cluster is deployed.
- cassandra_datacenter – Specifies to which data center this node belongs.
- Start the application server.
- Enable the Decision Data Store service by adding primary data center nodes as part of that service. For more information, see Configuring the Decision Data Store service.
If you correctly enabled the Decision Data Store service, the Decision Data store nodes section on the Services landing page lists at least one node whose status is NORMAL, as shown in the following example:
Correctly configured Decision Data Store service
Configuring the secondary data center nodes
Enable communication and data replication between the primary and secondary data centers by updating the prconfig.xml file for each node in the secondary data center and starting the Decision Data Store service.
- Update the prconfig.xml file with the following configuration:
<!-- list all available Cassandra data centers --> <env name="dnode/cassandra_datacenters" value="DC1,DC2"/> <!-- specify current data center --> <env name="dnode/cassandra_datacenter" value="DC2"/> <!-- list one or more IP addresses from DC1 --> <env name="dnode/extra_seeds" value="IP_FROM_DC1.."/>
where:- extra_seeds – Connects other data centers with this one. This setting ensures clustering and replication across all data centers when Pega Platform creates the internal Cassandra cluster.
- Start the application server.
- In Pega Platform, enable the Decision Data Store service by adding the nodes from the secondary data center as part of that service. For more information, see Configuring the Decision Data Store service.
When you enable the secondary data center, the Services landing page displays both the primary and secondary data center nodes, as shown in the example below. The nodes from the current data center have their proper names. Each node from the other data center is recognized as an EXTERNAL NODE.
A multi-data center setup of the Decision Data Store service
Next steps
After enabling the Decision Data Store service on all data centers, you can configure additional services, such as the Adaptive Decision Manager, Data Flow, Real-time Data Grid, and Stream, as required by your business use case. For more information, see Services landing page.
Previous topic Tutorial: Configuring a topic detection model for discovering keywords Next topic Tutorial: Creating decision strategies for a headless decisioning scenario