Download
The System Administrator should have set up a linked directory structure like [c:]/opt/tomcat. The details of this may differ between installations so from this point on, the “root” Tomcat directory will be referred to as $TOMCAT.
Download the appropriate Tomcat 8.0 from tomcat.apache.org and unpack (unzip/uncompress) into the $TOMCAT.
Installing on Unix / Linux
Tomcat login scripts
Install the login scripts in Appendix A into the tomcat user home directory. These scripts are correct as of Tomcat 8.0 but the PhixFlow consultant should confirm that no changes are needed because of environment differences or because of different version of Tomcat.
Installing on Windows
Run the tomcat installation program.
server.xml: Port Specification
Modify $TOMCAT/conf/server.xml to specify the port that PhixFlow will use (usually 8081). Find the following lines and change as needed:
<!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
<Connector
port="8081"
maxHttpHeaderSize="8192" …
Remember to enable this port in the server’s firewall (if enabled).
web.xml: Session timeout
Modify $TOMCAT/conf/web.xml to change the Tomcat session timeout period from its default value (30 mins). Find the following lines and change as needed:
<session-config>
<session-timeout>1440</session-timeout>
</session-config>
Update <session-timeout> to the value you need, e.g. to 1440 (minutes i.e. 1 day).
Java and JVM Options
Download and install Java from java.com. Java JDK 1.8 is required (and version 1.8.0_74 or greater is recommended). The following JVM (Java Virtual Machine) options should be set to control (amongst other things) the amount of memory reserved for Tomcat and therefore made available for PhixFlow. The options are:
Option | Recommended Setting | Syntax |
Initial Memory Pool | 1024Mb on 32bit architecture. 40% of physical memory on x64 architecture. Consult your sys admin for recommended settings on virtual servers. | -Xms1024m |
Max Memory Pool | As much as possible. 1024Mb on 32bit architecture. 75% of physical memory on x64 architecture. Consult your sys admin for recommended settings on virtual servers. | -Xmx1024m |
Max PermGen Memory Pool | 150Mb on 32bit. 1024Mb on x64. | -XX:MaxPermSize=150m |
Garbage Collector Diagnostics | Enabled | -verbose:gc |
To set JVM options:
Windows | Run the Tomcat Monitor Open the Tomcat Monitor system tray Configure … menu Select the Java tab Set the Initial memory Pool (see table above) Set the Max Memory Pool (see table above) Add the following lines to the Java Options scrollable field: -XX:MaxPermSize=150m -verbose:gc -Djava.awt.headless=true |
Unix/Linux | If you have installed the scripts in Appendix A, these option will already be set however for clarity, these options are defined in the JAVA_OPTS environment variable set in the tomcat user’s shell startup file (e.g. .profile / .bash_profile / .cshrc in the user’s home directory – the actual startup file is determined by the user’s default shell settings). JAVA_OPTS=’-Xms1024m -Xmx1024m -XX:MaxPermSize=150m -verbose:gc -Djava.awt.headless=true’ |
Database JDBC Drivers
The drivers needed to connect to PhixFlow’s own database are now included in the release and do not have to be downloaded separately.
Drivers used to connect to external databases may still have to be downloaded.
For information on using SQLServer with Integrated Authentication, see Appendix B
Start Tomcat
To start Tomcat:
Windows | Run the Tomcat Monitor. Click on Right mouse menu -> Start Service |
Unix | Login to the unix server as user tomcat. unix> cd $TOMCAT |
To make Tomcat start automatically when the server boots:
Windows | Run the Tomcat Monitor. Right click on the Apache Tomcat icon in the system tray and select Configure … On the ‘General’ tab: Set Startup Type to Automatic. |
Unix | As the root user, install the “tomcat” script listed in in Appendix A and create a softlink to it from the appropriate run-level directory. The actual run-level directories are specific to the particular unix variant. |
Configure tomcat for SSL access
You may wish to install tomcat to support secure connections over SSL.
This is described in the standard tomcat documentation - for example https://tomcat.apache.org/tomcat-8.0-doc/ssl-howto.html - but some notes are given here to get you started.
Obtain a certificate
If access to PhixFlow is only intended for people in your organisation, you may wish to create a self-signed certificate. This still provides a secure connection, but this will generate security warnings when users first connect, and they will not see a padlock in the address bar of their browser. If this is not acceptable to your users or by your company policy, or if you are going to provide access to people outside your organisation, you should obtain your certificate from a certificate authority.
Both approaches are well documented on the web. For example:
Generate a self-signed certificate on ubuntu: https://help.ubuntu.com/14.04/serverguide/certificates-and-security.html.
From the website of a certificate authority: a list of these is given on https://en.wikipedia.org/wiki/Certificate_authority.
Install certificate
The rest of these instructions assume that:
- you have a certificate file and private key - either a self-signed certificate you have generated, or obtained from a certificate authority
- the private key password, if you specified one
- if you obtained your certificate from a certificate authority, any intermediate certificates representing the chain of authenticating certificates up to a root certificate; your certificate authority should provide instructions for obtaining these
Linux
- Copy the private key to /etc/ssl/private, e.g.
sudo cp server.crt /etc/ssl/certs
- Copy the certificate to /etc/ssl/certs
sudo cp server.key /etc/ssl/private
Windows