Enabling Clustering
By default, Clustering is disabled in Adeptia Suite. To enable clustering note the prerequisites, and follow the instructions given in this page.
Prerequisites
Ensure that:
- Adeptia Suite is installed on each node of the cluster. For information on how to install, refer to Installation Guide.
- You have any one of the following Adeptia Suite editions, as clustering can be enabled only on these editions.- Professional, Premier, and Enterprise
- Adeptia Suite build is installed on IP address instead of local host.
- All the nodes have same version of the suite.
- All the nodes of the cluster are using same Backend and Log database as defined in server-configure.properties file in the ../AdeptiaServer-<adeptia-version>/ServerKernel/etc folder.
- Date and Time of all the nodes are same.
You have defined a shared location that has both read and write permissions. All the data and intermediate files should be stored at this shared location so that the files are accessible to all the nodes of the cluster.
To do so, update the system properties and define shared path in the abpm.shared.path property.
For Secure Engine and Secure Bridge users, the following property of runtime.properties file must also be configured. Its folder must be shared among all the nodes of the cluster.
Folder Containing Property Name intermediate files of shared connection
intermediate.shared.location Location of runtime.properties file: <Adeptia Installation Folder/AdeptiaServer/ServerKernel/etc/connect>
- Nodes of the cluster have started in sequence. It means Kernel and WebRunner of one node must be started completely before starting them on another node.
- You give the same alias name for a particular server in both server-configure.properties and clustering-service.xml files.
Once you have set up and started your clustering environment, we do not recommend you to change the alias name.
Enabling Clustering service
On the Administer tab, click Setup drop-down, and then click Application Settings.
Click Update System Properties.
Expand Load Management.
In the abpm.cluster.enable property name, set the value to Yes.
In Value column of the abpm.node.alias property, type a unique name for every node in your cluster. These unique alias names should also be provided in the clustering-service.xml file.
Now, expand Shared Path.
In the abpm.shared.path property name, type the path that you want to share with all the nodes of the cluster. For example, //192.168.1.44/Shared.
The path referred in the abpm.shared.path property will work as the default path for all the other property names. Leave the value of all other properties blank. In case, you want to use the exsiting data stored at other locations, copy all the folders and files from the locations (mentioned in all the property names) to the abpm.shared.path property location. Create the folders, with the same naming convention, in the same hierarchy, as there in the existing locations. The location of the properties are listed below:
Property Name Existing Location Description abpm.webservice.wsdlDeployPath <.../AdeptiaInstallFolder>/ServerKernel/wsdl Copy the existing wsdl folder and paste it at the shared path location. abpm.webservice.metro.soapattachment.location Folder is created automatically (at run time) at the shared path location. abpm.webservice.rest.pftrigger.attachment.location Folder is created automatically (at run time) at the shared path location. abpm.filereferences.basefolder.location <.../AdeptiaInstallFolder>/ServerKernel/web/FileReferences Create the web folder at the shared path location. Copy and paste the FileReferences folder from the existing location to the Shared path location (.../web/FileReferences). abpm.solution.edi.dataFile.location <.../AdeptiaInstallFolder>/ServerKernel/web/edi Copy and paste the edi folder from the existing location to the Shared path location (.../web/edi). abpm.solution.nonedi.dataFile.location <.../AdeptiaInstallFolder>/ServerKernel/web/routing Copy and paste the routing folder from the existing location to the Shared path location (.../web/routing). abpm.solution.edi.repository.archive.path <.../AdeptiaInstallFolder>/ServerKernel/web/Archive Folder is created automatically (at run time) at the shared path location. In case, to store existing archive logs, copy and paste B2B folder from the existing location to the shared path location (.../web/Archive). abpm.security.repository <.../AdeptiaInstallFolder>/ServerKernel/etc/security Create the etc/security folder in the same hierarchy at the shared path location. Copy and paste the WSkeystore and KeyManager folders from the existing location to the shared path location (.../etc/security). abpm.recovery.repository.root Folder is created automatically at the shared path location. abpm.reprocessing.repository.root Folder is created automatically (at run time) at the shared path location. abpm.transaction.repository.archive.path <.../AdeptiaInstallFolder>/ServerKernel/web/Archive Folder is created automatically (at run time) at the shared path location. In case, to store existing logs, copy and paste Process Flow folder from the existing location to the shared path location (.../web/Archive). abpm.repository.root <.../AdeptiaInstallFolder>/ServerKernel/web/Repository Create repository folder in the web folder at the shared path location. Copy and paste Process Flow folder from the existing location to the shared path location (.../web/Repository). abpm.ftpDebugOut.file.location Folder is created automatically (at run time) at the shared path location. abpm.reporting.repository <.../AdeptiaInstallFolder>/ServerKernel/web/Jasper Report Copy and paste the Jasper Report folder from the existing location to the shared path location (.../web/Jasper Report). abpm.webservice.rest.apidoc.imagepath <.../AdeptiaInstallFolder>/ServerKernel/web/images Copy and paste the images folder from the existing location to the shared path location (.../web/images). While using Data Mapper, folders (Value Maps, Custom Auto Maps, MappingPDF, Global Templates) are created automatically. To use existing data of these folders to the shared path location, create the folders in the hierarchy - .../web/applet/Mapping. Copy and paste these folders (Value Maps, Custom Auto Maps, MappingPDF, Global Templates) from the existing location to the shared path location.If required, you may also define a different shared location for any specific data file. For this, define a path for the respective data file property. The data file(s) will then stored and accessed from the path specified in that particular property. For more information, refer to Shared Location.Whenever you update your environment, the system retains all the specified paths or locations. The clustering service works as it used to work in the previous environment. The data is stored and accessed from the same locations unless you modify the abpm.shared.path property. In case, the abpm.shared.path property is modified, you will have to manually move the data files and make it accessible to all other nodes of the cluster.Click Save.
Changes made in the System properties do not come into effect until you restart the Kernel and WebRunner. So stop the Kernel and WebRunner and make the changes.
- Go to the folder .../AdeptiaInstallFolder/ServerKernel/etc/Cluster on the server where Adeptia Suite is installed.
- Open the clustering-service.xml file and do the following:
- Set the value of the node to the IP address of the server where Adeptia Suite is installed and is a part of the cluster. When Adeptia Suite starts in the cluster environment, it looks for the IP address of the server where it has been installed in the clustering-service.xml file.
- Set the value of the alias to a unique name for every node in your clustering environment.
- In the sequenceNumber, define a number for every node. This number must be unique for each node of the cluster and should be maximum of two digits starting from 1.
- The value of node and alias should be the same in all clustering-service.xml files across all nodes.
- The value of alias field should be the same (as given in clustering-service.xml file) in server-configure.properties file for every corresponding node.
Refer to the following image, for more details.
To add more nodes in the cluster, for each node, add the following line in the clustering-service.xml file and set the value of the node with the IP address of the server.For example, if there are three servers (192.168.1.1, 192.168.1.2, and 192.168.1.3) in the cluster, the clustering-service.xml file will look like.
Perform following steps only if you are wish to enable clustering for Adeptia Connect. Else, jump to Step 16 (restart Services). Go to .../AdeptiaInstallFolder/ServerKernel/etc.
Open server-configure.properties in the Text Editor.
- Set the value of the abpm.config.sequence.id to 2. Ensure that this value is unique for each node.
Save the file.
Perform all the above steps on all the servers that will be a part of your clustering environment. Instead of making same changes in clustering-service.xml file for all the servers, you can make changes in only one server and then copy the file on other servers.
Start the Kernel and WebRunner.