ENOVIA Live Collaboration Server Windows Service Configuration

This topic describes options for configuring the ENOVIA Live Collaboration Server Windows Service.

Related Topics
Implementing the Security Wrapper on RMI Gateway
ENOVIA Live Collaboration Server Port Number Configuration
ENOVIA Live Collaboration Server Configuration on UNIX/Linux

By default, the ENOVIA Live Collaboration Server is configured in RIP mode, and therefore does not need to be configured as a service (it is available to the Application Server whenever it needs to be). On Windows, when the standalone or RMI gateway ENOVIA Live Collaboration Server is installed, it is installed as a Service, called RMIService.exe, which is configured during installation with the following command-line arguments.

Argument

Description

-inidir INIDIR INIDIR is the directory that holds the enovia.ini (previously ematrix.ini) file for the ENOVIA Live Collaboration Server. For example:
RMIService.exe -config "ENOVIA Live Collaboration
Server" -inidir C:\enoviaV6R2012\server\intel_a\code\bin
-javahome JDKDIR JDKDIR is the directory that holds the installed Java Development Kit.
-matrixhome BOOTFILEPATH BOOTFILEPATH represents the location of the connection (bootstrap) file for this server or gateway. The entry in the enovia.ini file takes precedence over this setting, so you should remove it from there if you will use a different location.
-matrixinstall INSTALLDIR INSTALLDIR represents the location where the ENOVIA Live Collaboration Server software is installed.
-bootfile BOOTFILENAME The name of the connection file. Defaults to MATRIX-R.
-bosroot The root location for the ENOVIA Live Collaboration kernel.
-logdir The location of the Matrix log files.
-port PORT PORT is the RMI port number for this instance. This could be an RMI Single server or Gateway port. Default is 1099.
-minheap The minimum heap size (in megabytes) passed to the Java Virtual Machine.
-maxheap The maximum heap size (in megabytes) passed to the Java Virtual Machine.
-javaoptions Used to specify any of the standard Java options settings that will be sent to the Java virtual machine, such as minheap, maxheap, Java stack size, etc. For example, the following sets the stack size to 256k:
rmiservice -config "eMatrix RMI Server" -javaoptions "-C-Xss256k"
-servers SERVERS Used only if the RMI Gateway is configured. SERVERS is a list of secondary server hosts, including port numbers, separated by commas but no spaces. For example:
-servers //HOST:1100,//HOST:1101,//HOST:1102

By default, HOST is always localhost. HOST can be the same or different machine names for each server process.

-flashdir

Used to specify the location for flash cache files or, more specifically, to set the MX_FLASH_CACHE variable for the server. For gateway configurations (where -servers has been specified), -flashdir may be configured with comma separated directories to be used as flash cache directory for each respective server. The number of flash directories specified should match the number of servers, but if fewer flash directories are specified than servers, the last flash directory specified is used for all remaining servers.

-setenv

Used to set or delete environment variables in the format: -setenv VARIABLE=STRING. In cases where there are multiple RMI services with different environment variable settings, you should delete the environment variable setting from enovia.ini, which takes precedence, and create the environment variable settings on the RMI service level. There can be several -setenv parameters on a command line that modify several environment variables, for example:

rmiservice -config "eMatrix RMI Server" -setenv MX_MQL_TRACE=TRUE -setenv MX_SQL_TRACE=

The above command updates MX_MQL_TRACE in the registry with a value of TRUE and deletes MX_SQL_TRACE.

Note: If you need to configure an environment variable with spaces in its value, enclose the value in double quotes.

Once the server is installed, these parameters are stored in the Windows Registry for future reference by the service when it actually runs.

When modifications are required, you may run RMIService.exe from the command line, setting or resetting arguments. When running from the command line you must set the “mode” for the command using one of the following flags:

Argument

Description

-install NAME Used to install a new RMI service with the specified NAME. When run by the setup program, NAME is ENOVIA RMI Server.
-config NAME Used to modify the existing named RMI service.
-remove NAME Used to remove the existing named RMI service. Before executing in this mode, you must stop the service.
-query NAME Used to query the current service settings.
-help NAME Used to print help on the service.

Note: When NAME includes spaces, as is the case with the default, you must enclose it in double quotes.

When installing a new service with the -install flag, you must include ALL required arguments (i.e., those in the first table, above).

Configuring the Gateway for Quiesce on Windows

The arguments listed below are for use with the RMI Gateway, and are unset upon installation. These arguments ar mutually exclusive—exactly one or none of them may be set at a time. Setting any of them makes use of the Quiesce function.

Argument

Description

-ops OPS OPS is the number of operations to perform before switching to another server when the RMI Gateway is in use.
-hours HOURS HOURS is the number of hours to wait before switching to another server when the RMI Gateway is in use.
-days DAYS DAYS is the number of days to wait before switching to another server when the RMI Gateway is in use.
-minutes MINUTES MINUTES is the number of minutes to wait before switching to another server when the RMI Gateway is in use.

Modifying the RMI Service on Windows

To modify the RMI Service on Windows:

  1. From the Start menu, choose Run.
  2. Enter the following command with the required changes in the Open: text box. For example:
    RMIService.exe -config "eMatrix RMI Server" -port 7200 -servers localhost:7201,localhost:7202,localhost:7203 -days 1

Assigning a Port Number for the RMID RMI Server

The ENOVIA Live Collaboration Server associated with the RMID (in a standalone or gateway configuration; that is, non-RIP) is typically "exported" on an anonymous (random) port. This is the port on which the The ENOVIA Live Collaboration Server is listening for connections. With a firewall in place, you need to be able to specify a port number for the ENOVIA Live Collaboration Server (as opposed to the RMID) that is open on the firewall. You can assign the listening port for the ENOVIA Live Collaboration Server to allow the ENOVIA Live Collaboration Server connections to traverse a firewall by adding the following argument to the ENOVIA Live Collaboration Server command line in the rmireg.sh or rmireg.bat file:

-port <port#> 

The port number specified must be a valid port that is not used by another process. Below are example entries in rmireg.sh that specify the port numbers for two ENOVIA Live Collaboration Server (using the RMI Gateway configuration):

${JAVA_PATH}/java $JAVA_SECURITY 
-Djava.rmi.server.codebase=file:$CODEBASE 
-Djava.rmi.activation.port=1100 com.matrixone.jdl.eMatrix //
localhost:1100 -port 2000 & 
${JAVA_PATH}/java $JAVA_SECURITY 
-Djava.rmi.server.codebase=file:$CODEBASE 
-Djava.rmi.activation.port=1101 com.matrixone.jdl.eMatrix //
localhost:1101 -port 3001 &