Best practices to configure full-text search
This configuration is specific to small, medium and large environments defined as follows:
Environment | BMC Remedy ITSM (concurrent users) | BMC Remedy Smart Reporting (concurrent users) | Number of managed devices |
---|---|---|---|
Small | 800 | 50 | 2,000 or fewer |
Medium | 2,000 | 100 | 10,000 or fewer |
Large | 5,000 | 250 | 30,000 or fewer |
General recommendations
- We recommend putting FTS Indexer on a Backend Server.
- SmartIT uses FTS and MFS more than standard ITSM, so we recommend adding FTS resources for support.
- For environments that heavily use FTS and MFS, set up multiple indexers.
- If there are multiple Indexers, none must be on the user-facing servers.
- At present, the Load Balancer testing is from the Searcher Plug-in Servers, which has been implemented and tested, but is not a best practice as yet.
- Make sure to have enough capacity on the secondary FTS server in case the primary FTS server fails.
AR System Server and plug-in server settings
The following table provides recommendations for the AR System server and plug-in server settings:
Configuration name | Small environment | Medium environment | Large environment |
---|---|---|---|
Number of Users | 800 | 2,000 | 5,000 |
Physical RAM | 24 GB | 32 GB | 64 GB* |
ARServer Heap Size | 10 GB | 14 GB | 32 GB* |
Plug-in Server Heap Size | 4 GB | 6 GB | 10 GB |
numCoreThreads** | 10 | 12 | 16 |
390602 Threads | 3 3 | 5 5 | 7 7 |
*Recommend HA setup.
** The value of this parameter will change based on usage and environment.
We recommend the FTS Search Threshold to be 2000.
Make sure to test whether this value is acceptable to be able to find the records.
Garbage Collector settings
We recommend using these Garbage Collector (GC) parameters (same as AR System server) with the plug-in Server for FTS.
.................................................
-XX:+UseParNewGC
-XX:+UseConcMarkSweepGC
-XX:+DisableExplicitGC
-XX:NewRatio=2
-XX:+UseCompressedOops
.................................................
The following example uses the Small Model (armonitor.cfg):
........................................
"C:\Program Files\Java\jdk1.8.0_73\jre\bin\java" -Xmx4096m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+DisableExplicitGC -XX:NewRatio=2 -XX:+UseCompressedOops
-Dcom.sun.management.jmxremote.port=8004 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false
-classpath "C:\Program Files\BMC Software\ARSystem\pluginsvr\fts\secondary;C:\Program Files\BMC Software\ARSystem\pluginsvr\fts\core;C:\Program Files\BMC Software\ARSystem\pluginsvr;
C:\Program Files\BMC Software\ARSystem\pluginsvr\arpluginsvr91_build002.jar" com.bmc.arsys.pluginsvr.ARPluginServerMain -x {AR_Server_Name} -i "C:\Program Files\BMC Software\ARSystem" -m
........................................