Multiple Rice Instances on the Same Server
Given:
- You have multiple Tomcat instances, each with different shutdown and AJP ports
- You have an Apache server
- You want to host multiple Rice Standalone Servers on the same server like so:
Rice Standalone Server
CATALINA_HOME
Rice Configuration
application.url
Shutdown port
AJP port
A
/usr/share/tomcatA
/usr/local/rice/instanceA/rice-config.xml
https://rice-sandbox.sampleu.edu/instanceA 8500
8010
B
/usr/share/tomcatB
/usr/local/rice/instanceB/rice-config.xml
https://rice-sandbox.sampleu.edu/instanceB 8501
8011
Apache Mod Proxy AJP Configuration
...
MOD AJP
Code Block | ||||
---|---|---|---|---|
| ||||
...
ProxyPass /instanceA ajp://localhost:8010/instanceA
ProxyPass /instanceB ajp://localhost:8011/instanceB
...
|
Rice Standalone Server Instance A Configuration
...
Rice Configuration Home
Code Block | ||
---|---|---|
| ||
/usr/local/rice/instanceA
|
Rice Configuration
Code Block | ||||
---|---|---|---|---|
| ||||
<param name="server.url">rice-sandbox.sampleu.edu</param>
<param name="machine.url">rice-sandbox.sampleu.edu</param>
<param name="application.url">http://${server.url}/${nonroot.context}</param>
<!-- change these two lines -->
<param name="nonroot.context">instanceA</param>
<param name="rice.config.path">/usr/local/rice/instanceA</param>
|
CATALINA_HOME
Code Block | ||
---|---|---|
| ||
/usr/share/tomcatA
|
Catalina Properties
Code Block | ||||
---|---|---|---|---|
| ||||
# Kuali RICE configuration path for Instance A
# Necessary to allow multiple rice installations on a single server
additional.config.locations=/usr/local/rice/instanceA/rice-config.xml
|
Tomcat Configuration
Code Block | ||||
---|---|---|---|---|
| ||||
CATALINA_OPTS="-Xms128m -Xmx256m -XX:PermSize=64m -XX:MaxPermSize=128m
export CATALINA_OPTS
|
*(optional) Tomcat Configuration in DEBUG mode *
Code Block | ||||
---|---|---|---|---|
| ||||
CATALINA_OPTS="-Xms128m -Xmx256m -XX:PermSize=512m -XX:MaxPermSize=128m -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"
export CATALINA_OPTS
|
Tomcat Connectors
Code Block | ||||
---|---|---|---|---|
| ||||
<!-- A "Server" is a singleton element that represents the entire JVM,
which may contain one or more "Service" instances. The Server
listens for a shutdown command on the indicated port.
...
<Server port="8500" shutdown="SHUTDOWN">
...
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8010" enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
...
|