Change the ports for Smarts EDAA when the ports are already being used by the Smarts Web Console which is installed on the same server. You also have to change the port setting for the SM_TOMCAT_SERVER environment variable.
The default ports when configuring Tomcat are 8080, 8005 and 8009.
If the Web Console is running Tomcat on these ports as described for a default installation, setting up a service like EDAA on same server causes a port conflict because the default ports for this Tomcat version are also 8080, 8005 and 8009.
When the Web Console and EDAA are running on same server, they require two versions of Tomcat to run: One is installed with the Console for the Dashboard service and the other for the SAM server services that require it such as EDAA.
To change the ports for Smarts EDAA, follow this procedure.
Procedure
- Determine which ports are not being used on the server. For a list, run the command:
- For Linux: netstat -anpt
- For Windows: netstat -anb -p TCP
- On the server where EDAA is installed, go to the Tomcat directory of the SAM installation (for example: ./SAM/smarts/tomcat/conf).
- Save a copy of the server.xml file as server.xml.orig.
- Edit the server.xml file. Change the ports 8080, 8005 and 8009 to ports that are not being used (in this example, 8015, 8181 and 8019):
<Server port="8015" shutdown="SHUTDOWN">
<!-- Security listener. Documentation at /docs/config/listeners.html
<Listener className="org.apache.catalina.security.SecurityListener" />
-->
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
.
.
.
<Service name="Catalina">
<!--The connectors can use a shared executor, you can define one or more named thread pools-->
<!--
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"/>
-->
<Connector port="8181" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8019" protocol="AJP/1.3" redirectPort="8443" />
- Set the SM_TOMCAT_SERVER environment variable to the replacement port for 8080 (line with:
protocol="HTTP/1.1"
) in the runcmd_env.sh file:
- Use sm_edit from the <BASEDIR>/smarts/bin directory to open the file. For example: sm_edit conf/runcmd_env.sh
- Change the SM_TOMCAT_SERVER environment variable from
SM_TOMCAT_SERVER=http://<public_hostname>:<public_port>
to 8181 for this example:
SM_TOMCAT_SERVER=http://<public_hostname>:8181
- Save the file.
- Restart the Tomcat service.
For Linux: Type these commands from the
<BASEDIR>/smarts/bin directory:
sm_service stop smarts-tomcat
sm_service show
sm_service start smarts-tomcat
For Windows:
- Use the Service control panel to stop the service named "Smarts Data Web Applications (Tomcat)".
- Use the Service control panel to start the service named "Smarts Data Web Applications (Tomcat)" .