Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Copy the PhixFlow release package with a name matching phixflow-x.y.z-yyyymmdd_PROD_nnnnn.zip to the release area $RELEASE on the server. By default $RELEASE is at [c:]/opt/phixflow/release.

...

Code Block
languagebash
chown tomcat:phixflow phixflow-x.y.z-yyymmdd_PROD_nnnnn.zip tomcat:phixflow

Switch to the tomcat user (makes sure that login scripts are run. The syntax for this may vary between operating systems:

...

Code Block
languagebash
unzip phixflow-x.y.z-yyyymmdd_PROD_nnnnn.zip

Windows

Unzip the release package using WINZIP or similar.

...

On both linux and windows this will create a release with the following contents:

Code Block
phixflow-x.y.z-yyyymmdd_PROD_nnnnn
phixflow-x.y.z-yyyymmdd_PROD_nnnnn/install
phixflow-x.y.z-yyyymmdd_PROD_nnnnn/webapps
phixflow-x.y.z-yyyymmdd/README.txt

The database installation is now complete. For further information on the installer:

...

Code Block
java -jar bin/installer.jar -help

See also Database URLs for how to specify connection string URLs for the various database platforms supported by PhixFlow.

The platform-specific [CONNECTION STRING]s are:

Oracle:

Code Block
jdbc:oracle:thin:@hostname:1521:phixflow

Oracle (for containerised instances):

Code Block
jdbc:oracle:thin:@hostname:1521/phixflow

SQL Server:

Code Block
jdbc:sqlserver://hostname\myservice;databaseName=phixflow

MySQL:

Code Block
jdbc:mysql://hostname/phixflow

Configure phixflow-instance.xml

The PhixFlow webapp instance must be configured to identify the instance and set whether the instance is active on startup.

For a single instance, non-resilient configuration, simply copy the example file phixflow-instance.xml.example to phixflow-instance.xml.

Resilient Configuration

A resilient PhixFlow configuration consists of 2 or more web applications all connected to a common database and configured such that at any one time, only one is active; the other instances will monitor the first and one will take over if they detect that the first has failed.

In such a configuration, set the instance name and id for each PhixFlow webapp instance to unique values and set leaderOnStartup to “true” for an instance if it should become active immediately on startup.

 e.g.:

Code Block
<!-- The instance name must be different for each member of the cluster -->
<bean id="clusterInstance"
	class="com.accipia.phixflow.service.cluster.main.ClusterInstance"
	p:name="MAIN"
	p:id=”1”
	p:leaderOnStartup="true"
/>

See Configuring for Resilience for more information.

...

Configure phixflow-domains.xml

The PhixFlow webapp can be configured to authenticate users’ usernames and passwords against an external Domain / Active Directory server.

If you don’t want want to enable domain logins, simply copy the example file provided.

For more information on how to configure for domain logins, see the PhixFlow Active Directory Guide.

Configure log4j.properties

The log4j.properties file controls detailed event/error logging on the server.

To configure for default logging:

...

It is not necessary to make any changes to this file unless so instructed by PhixFlow Support.

Info
If it is ever necessary to change this file, those changes will take effect within a few seconds, without having to restart the Tomcat server.

Multiple PhixFlow instances

To install multiple instances of PhixFlow on a single server, complete the installation steps above to create a first PhixFlow instance. Then install a further instance:

  • Create a second database user to hold the data for the new instance.
  • Copy the PhixFlow web application into the Tomcat again:
Code Block
cp $RELEASE/webapps/phixflow to $TOMCAT/webapps/alternative_name

where “alternative_name” is the name of your test system.

  • Be sure to set up a separate user and schema in the database for the new PhixFlow instance and to set phixflow-datasource.xml as needed
  • To ensure log messages are sent to a separate file, change the following line in log4j.properties
Code Block
log4j.appender.myAppender.file=logs/ alternative_name.log_PROD_nnnnn/README.txt