This document describes two-instance FIXEdge installation on one host using two independent sets of binaries and configs. These installations can be updated, managed, or uninstalled independently.
The general single-instance FIXEdge installation procedure is described in FIXEdge Installation Guide and it is recommended to read it before following this procedure. Keep in mind that our example may differ from that in the one-instance installation procedure (e.g. directories names).
It is assumed that the user has no installed instances of FIXEdge. The step-by-step procedure is provided for installation from a non-customized distributive package.
where a user is the name of the user performing the installation
Remember that Linux OS is case-sensitive. That means that e.g. FIXEdge1.sh and FixEdge1.sh are different files. Pay attention to port values – using one port value in several instances may lead to conflicts and failures. |
Edit service names in a wrapper.conf file for 2nd instance for they must be different from 1st instance names.
# Name of the service wrapper.ntservice.name=FIXICC - Agent FIXEdge2 # Display name of the service wrapper.ntservice.displayname=FIXICC - Agent FIXEdge2 |
Change port values in configuration files (see example in ExampleConfigurationusedfortesting)
parameter | configuration file |
---|---|
ListenPort | engine.properties |
Monitoring.ListenPort | engine.properties |
ControlCentre.XMLSockMonitor.Port | FIXEdge.properties |
AgentServerPort | agent.properties |
Open cmd.exe as Administrator and run the following scripts
C:>\B2BITS\FIXEdge_one\FIXEdge\fixicc-agent\bat>installService.FIXEdge1.bat C:>\B2BITS\FIXEdge_one\FIXEdge\fixicc-agent\bat>startService.FIXEdge1.bat C:>\B2BITS\FIXEdge_one\FIXEdge\bin\FIXEdge1.install.cmd |
Open cmd.exe as Administrator and run the following scripts
C:>\B2BITS\FIXEdge_two\FIXEdge\fixicc-agent\bat>installService.FIXEdge1.bat C:>\B2BITS\FIXEdge_two\FIXEdge\fixicc-agent\bat>startService.FIXEdge1.bat c:>\B2BITS\FIXEdge_two\FIXEdge\bin\FIXEdge1.install.cmd |
If everything is OK you can see services for both instances running
In FIXICC GUI you can see both servers started
Edit B2BITS/FIXEdge_two/FIXEdge/fixicc-agent/conf/wrapper.conf (change service names)
#******************************************************************** # Wrapper Windows Service and Posix Daemon Properties #******************************************************************** # Name of the service wrapper.ntservice.name=FIXICC_Agent_Server2 # Display name of the service wrapper.ntservice.displayname=FIXICC - AgentServer2 |
Change port values in configuration files (see example in Example Configuration used for testing)
parameter | configuration file |
---|---|
ListenPort | engine.properties |
Monitoring.ListenPort | engine.properties |
ControlCentre.XMLSockMonitor.Port | Fixedge.properties |
AgentServerPort | agent.properties |
run installation and start service scripts
$>/home/user/B2BITS/FIXEdge_one/FIXEdge/fixicc-agent/bin/installDaemon.sh $>/home/user/B2BITS/FIXEdge_one/FIXEdge/fixicc-agent/bin/startDaemonNoPriv.sh $>/home/user/B2BITS/FIXEdge_two/FIXEdge/fixicc-agent/bin/installDaemon.sh $>/home/user/B2BITS/FIXEdge_two/FIXEdge/fixicc-agent/bin/startDaemonNoPriv.sh |
Check processes via ps
command
ps -eF | grep java ps -eF | grep FIXEdge |
For Windows installations, FIXICC GUI application is running on the same windows machine
Port configuration
parameter | configuration file | FIXEdge1 windows | FIXEdge2 | FIXEdge1 | FIXEdge2 |
---|---|---|---|---|---|
ListenPort | engine.properties | 8901 | 8911 | 8901 | 8911 |
Monitoring.ListenPort | engine.properties | 8803 | 8813 | 8803 | 8813 |
ControlCentre.XMLSockMonitor.Port | FIXEdge.properties | 8902 | 8912 | 8902 | 8912 |
AgentServerPort | agent.properties | 8903 | 8913 | 8005 | 8006 |
If you wish to uninstall both instances of FIXEdge you should do the following steps depending on what operating system you are running
1. Open cmd.exe as Administrator and run scripts
C:\B2BITS\FIXEdge_one\FIXEdge\fixicc-agent\bat\stopService.FIXEdge1.bat C:\B2BITS\FIXEdge_one\FIXEdge\fixicc-agent\bat\uninstallService.FIXEdge1.bat C:\B2BITS\FIXEdge_two\FIXEdge\fixicc-agent\bat\stopService.FIXEdge1.bat C:\B2BITS\FIXEdge_two\FIXEdge\fixicc-agent\bat\uninstallService.FIXEdge1.bat C:\B2BITS\FIXEdge_one\FIXEdge\bin\FIXEdge1.uninstall.cmd C:\B2BITS\FIXEdge_two\FIXEdge\bin\FIXEdge1.uninstall.cmd |
2. Remove B2BITS\FIXEdge_one and B2BITS\FIXEdge_two folders recursively
1. run scripts
$>/home/user/B2BITS/FIXEdge_one/FIXEdge/fixicc-agent/bin/stopDaemonNoPriv.sh $>/home/user/B2BITS/FIXEdge_one/FIXEdge/fixicc-agent/bin/uninstallDaemon.sh $>/home/user/B2BITS/FIXEdge_two/FIXEdge/fixicc-agent/bin/stopDaemonNoPriv.sh $>/home/user/B2BITS/FIXEdge_two/FIXEdge/fixicc-agent/bin/uninstallDaemon.sh $>/home/user/B2BITS/FIXEdge_one/FIXEdge/bin/FIXEdge1.stop.sh $>/home/user/B2BITS/FIXEdge_two/FIXEdge/bin/FIXEdge1.stop.sh |
2. Remove B2BITS/FIXEdge_one and B2BITS/FIXEdge_two folders recursively
Related articles:
Check the ServiceName parameter in FIXEdge.properties file.
Check wrapper.conf file – service names must be changed.
Check server name parameter in FIXEdge1.service.run.cmd.
Try to run FIXEdge as console application to get full error using FIXEdge1.run.cmd or FIXEdge1.run.sh