Setting up BMC Remedy Smart Reporting as a cluster and onboard users
Consider the following points for installing Remedy Smart Reporting in a clustered environment:This topic describes the procedure to set up Remedy Smart Reporting as a cluster.
- Install primary Remedy Smart Reporting server with a new or existing database.
- Install Secondary server with the database used by the primary node.
- Two types of clusters are available,
Dynamic
andRepository
. TheDynamic
cluster stores the node information in the memory, and theRepository
cluster stores the node information in the centralized database. From version 18.08, theClusterType
parameter is set toRepository
.
If you have already performed the Onboarding process before the installation of the secondary server, then do not install the secondary node with the same database. Instead, create a blank or dummy database for the secondary server installation. After the successful installation, change the secondary node database details. For more information, see How To Change Smart Reporting Repository Database HostName On Existing Deployment.
The installation may overwrite the existing tables. Hence, BMC recommends installing the secondary node with a dummy database. If it is not possible to create a dummy database, then you can clone the primary server.
Click to view a quick video for an example on setting up Remedy Smart Reporting as a cluster.
To set up Remedy Smart Reporting as a cluster (Tomcat only), perform the following steps:
Note
Before you configure the cluster, ensure that all the severs in cluster are in same time zone and are in sync. Also, ensure that Remedy Smart Reporting is installed on all the nodes pointing to primary node repository.
Install the Remedy Smart Reporting on each node.
On each node, update the web.xml file.
The web.xml file is located in the <SmartReportingInstallDir>/appserver/webapps/ROOT/WEB-INF directory and for external Tomcat, the web.xml file is located in the <Tomcat_Folder>/webapps/SmartReporting/WEB-INF directory.Update and add the following:
<!-- Cluster Management --> <servlet> <servlet-name>ClusterManagement</servlet-name> <servlet-class>com.hof.mi.servlet.ClusterManagement</servlet-class> <init-param> <param-name>ClusterType</param-name> <param-value>REPOSITORY</param-value> </init-param> <init-param> <param-name>SerialiseWebserviceSessions</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>CheckSumRows</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>EncryptSessionId</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>EncryptSessionData</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>AutoTaskDelegation</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>TaskTypes</param-name> <param-value> REPORT_BROADCAST_BROADCASTTASK, FILTER_CACHE, REPORT_BROADCAST_MIREPORTTASK, SOURCE_FILTER_REFRESH, SOURCE_FILTER_UPDATE_REMINDER, ORGREF_CODE_REFRESH, THIRD_PARTY_AUTORUN </param-value> </init-param> <init-param> <param-name>MaxParallelTaskCounts</param-name> <param-value> 5, 5, 5, 5, 5, 5, 5 </param-value> </init-param> <load-on-startup>11</load-on-startup> </servlet>
Note
If the
AutoTaskDelegation
parameter is set to true, the background tasks are automatically delegated to the next available node if the server goes down.Comment the following:
<servlet> <servlet-name>SystemTaskManager</servlet-name> <servlet-class>com.hof.servlet.SystemTaskManager</servlet-class> <load-on-startup>8</load-on-startup> </servlet>
Add <distributable/> tag
The following is a sample snippet:<web-app> <distributable/> <!-- System Event and Debug classes --> <listener> <listener-class>com.hof.servlet.SysSessionListener</listener-class> </listener>
Perform this step if HTTPS traffic is offloaded at Load Balancer and Smart Reporting is configured to run on HTTP:
In the
server.xml
file (Tomcat configuration file), set the HTTP Connector proxyPort and scheme to the values displayed in the following code snippet. The path ofserver.xml
file is<AR Installation Path>\SmartReporting\appserver\conf\server.xml
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" proxyPort="443" scheme="https" disableUploadTimeout="true"/>
Note
proxyPort is the port of the LB (F5)
(Only for
Dynamic
cluster type) Add the following lines of code:Operating System File name Code Linux catalina.sh JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true" JAVA_OPTS="$JAVA_OPTS -Djgroups.udp.mcast_addr=<multi-cast IP Address>" JAVA_OPTS="$JAVA_OPTS -Djgroups.udp.mcast_port=<multi-cast Port>" Example: JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true" JAVA_OPTS="$JAVA_OPTS -Djgroups.udp.mcast_addr=228.0.0.5" JAVA_OPTS="$JAVA_OPTS -Djgroups.udp.mcast_port=5555"
Windows catalina.bat set JAVA_OPTS=%JAVA_OPTS% -Djava.net.preferIPv4Stack=true set JAVA_OPTS=%JAVA_OPTS% -Djgroups.udp.mcast_addr=228.0.0.5 set JAVA_OPTS=%JAVA_OPTS% -Djgroups.udp.mcast_port=5555
Note
• Ensure that the multi-cast IP Address that you specify is available and the multi-cast Port is listening.
• When you configure tomcat to run as a windows service, update theJAVA_OPTS
based on the local tomcat configurations.
After the cluster is set up, on board the tenant.
For more information, see Onboarding .
Comments
This doc needs to make note for those using external tomcat i think. If the installer installs tomcat, Root is the tomcat default as referenced by "On each node update the web.xml file located at /appserver/webapps/ROOT/WEB-INF"
But if there is an external tomcat the path that will have the MIStartup in it will be more like ":\Apache_Software_Foundation\Tomcat90_Tomcat\webapps\SmartReporting\WEB-INF\web.xml"
Hello Ryan,
Thank you for your comment. I will discuss this with the concerned SME and update the topic accordingly.
Thanks and regards,
Surabhee
Hello Ryan,
Thank you for your comment. We have updated the topic based on your feedback.
Thanks and regards,
Surabhee
For mcast section,
There is a different syntax to set JAVA_OPTS for windows environment. With below configuration clustering doesn't work in windows
JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true" JAVA_OPTS="$JAVA_OPTS -Djgroups.udp.mcast_addr=228.0.0.5" JAVA_OPTS="$JAVA_OPTS -Djgroups.udp.mcast_port=5555"
There is one more thing which needs to be mentioned here when we configure tomcat to run as windows service so it may not utilize JAVA_OPTS from Catalina.bat but directly from JAVA options you set in JAVA Tab on UI when you execute Tomcat9w.exe file from tomcat location. so in that case these details needs to added in JAVA tab
Hello Sharvan Singh,
Thank you for your feedback. We shall update the documentation at the earliest.
Regards,
Vrishali
Hello Sharvan Singh,
We have updated the documentation based on your feedback.
Thanks & Regards,
Vrishali
Log in or register to comment.