FIXEdge Java 1.10.4 and Older: Installation on Linux using packages
Prerequisites
The minimum recommended version of RHEL is 7 or higher
Installation
- First of all, download the FEJ distribution. The recent version of the packages is available at https://clientspace.b2bits.com/
The packages names look like:- RHEL package:
fixedge-java-1.8.0.268-1.el7.x86_64.rpm
- Debian package:
fixedge-java_1.8.0.268_amd64.deb
.
- RHEL package:
To install the package on RHEL, run the following command as a root or using
sudo
(installation requires superuser permissions):yum install ./fixedge-java-1.8.0.268-1.el7.x86_64.rpm
To install the package on Ubuntu, run the following command (installation requires superuser permissions):
sudo apt install ./fixedge-java_1.8.0.268_amd64.deb
The FIXEdge Java package has the following structure:
Directory Purpose /etc/fixedge-java
Configuration files /etc/fixedge-java/spring
Custom Spring configuration, initially it is empty /usr/lib/fixedge-java/<VERSION>
FIXEdge Java binaries /usr/lib/fixedge-java/<VERSION>/sysconf
Default Spring configuration /usr/share/doc/fixedge-java
Documentation and examples /var/log/fixedge-java
Application logs /var/lib/fixedge-java
Application state: FIX sessions logs - Copy the license file (
fixaj2-license.bin
) to the configuration directory (/etc/fixedge-java
). The installation creates the
fixedge-java
group. So if it's required to get access to the logs or configuration from another user, the user should be added to thefixedge-java
group.
On RHEL it can be done with the command:sudo usermod <user> –a –G fixedge-java
Make sure that the license file is also accessible by the
fixedge-java
group.
Running FIXEdge Service
The package provides the systemd
unit to control the FEJ service.
The service runs as a dedicated fixedge-java
user. The following commands can be used to control the service:
Action | Command |
---|---|
Start | systemctl start fixedge-java |
Stop | systemctl stop fixedge-java |
Restart | systemctl restart fixedge-java |
View status | systemctl status fixedge-java |
Enable start at system boot | systemctl enable fixedge-java |
Disable start at system boot | systemctl disable fixedge-java |
On RHEL systems, a member of the fixedge-java
group can control the service on Ubuntu using sudo
to gain root access as required. For example:
$ sudo systemctl start fixedge-java $ sudo systemctl status fixedge-java ● fixedge-java.service - FIXEdge Java Loaded: loaded (/lib/systemd/system/fixedge-java.service; disabled; vendor preset: enabled) Active: active (running) since Fri 2021-02-26 06:43:49 UTC; 4s ago Main PID: 31979 (java) Tasks: 11 (limit: 1018) CGroup: /system.slice/fixedge-java.service └─31979 /usr/bin/java -cp /etc/fixedge-java:/usr/lib/fixedge-java/1.8.0.268/* -Dspring.profiles.active=fej-standalone com.epam.fej.Application Feb 26 06:43:51 ubuntu-18 java[31979]: file.separator = / Feb 26 06:43:51 ubuntu-18 java[31979]: java.vendor.url.bug = http://bugreport.sun.com/bugreport/ Feb 26 06:43:51 ubuntu-18 java[31979]: sun.io.unicode.encoding = UnicodeLittle Feb 26 06:43:51 ubuntu-18 java[31979]: sun.cpu.endian = little Feb 26 06:43:51 ubuntu-18 java[31979]: sun.cpu.isalist = Feb 26 06:43:51 ubuntu-18 java[31979]: 2021-02-26 06:43:51.892 [INFO ] [main] c.e.f.license - B2Bits FIX Antenna Java 2.23.1. Please call +44 20 369-58-166 to report illegal B2Bits FIX Antenna Java copy or to obtain/renew your license. Feb 26 06:43:52 ubuntu-18 java[31979]: 2021-02-26 06:43:52.642 [INFO ] [main] c.e.c.r.ClassPathResourceLoader - Load resource:/etc/fixedge-java/replication.properties Feb 26 06:43:52 ubuntu-18 java[31979]: 2021-02-26 06:43:52.644 [INFO ] [main] c.e.c.r.ClassPathResourceLoader - Load resource:/etc/fixedge-java/replication.properties Feb 26 06:43:52 ubuntu-18 java[31979]: 2021-02-26 06:43:52.692 [INFO ] [main] o.s.s.c.ThreadPoolTaskScheduler - Initializing ExecutorService 'taskScheduler' Feb 26 06:43:52 ubuntu-18 java[31979]: 2021-02-26 06:43:52.982 [INFO ] [main] c.e.f.c.StorageManager - Storage manager has been initialized $ sudo systemctl stop fixedge-java $ sudo systemctl status fixedge-java ● fixedge-java.service - FIXEdge Java Loaded: loaded (/lib/systemd/system/fixedge-java.service; disabled; vendor preset: enabled) Active: failed (Result: exit-code) since Fri 2021-02-26 06:44:03 UTC; 1s ago Process: 31979 ExecStart=/usr/bin/java -cp /etc/fixedge-java:/usr/lib/fixedge-java/1.8.0.268/* -Dspring.profiles.active=fej-standalone com.epam.fej.Application (code=exited, status=143) Main PID: 31979 (code=exited, status=143) Feb 26 06:43:55 ubuntu-18 java[31979]: 2021-02-26 06:43:55.366 [INFO ] [main] c.e.f.s.ScheduleManagerImpl - Schedule task Task{name='start', timeZone='null', onLoad=true, events=null, properties=Schedules{properties=[Property{key='id', value='session2'}]}} from schedule with id: 'session2' Feb 26 06:43:55 ubuntu-18 java[31979]: 2021-02-26 06:43:55.366 [INFO ] [main] c.e.f.s.ScheduleManagerImpl - Task 'start' in schedule 'session2' is about to run on start Feb 26 06:43:55 ubuntu-18 java[31979]: 2021-02-26 06:43:55.366 [INFO ] [main] c.e.f.s.f.StartTaskFactory - Endpoint 'session2' is about to be started. Feb 26 06:43:55 ubuntu-18 java[31979]: 2021-02-26 06:43:55.368 [INFO ] [main] c.e.f.s.f.StartTaskFactory - Endpoint 'session2' has been started. Feb 26 06:43:55 ubuntu-18 java[31979]: 2021-02-26 06:43:55.369 [INFO ] [main] c.e.f.c.LeaderJob - All leader services started Feb 26 06:44:03 ubuntu-18 systemd[1]: Stopping FIXEdge Java... Feb 26 06:44:03 ubuntu-18 java[31979]: 2021-02-26 06:44:03,377 SpringContextShutdownHook WARN Unable to register Log4j shutdown hook because JVM is shutting down. Using SimpleLogger Feb 26 06:44:03 ubuntu-18 systemd[1]: fixedge-java.service: Main process exited, code=exited, status=143/n/a Feb 26 06:44:03 ubuntu-18 systemd[1]: fixedge-java.service: Failed with result 'exit-code'. Feb 26 06:44:03 ubuntu-18 systemd[1]: Stopped FIXEdge Java.
Uninstall package
To uninstall the package on RHEL, run the following command as a root or using sudo
(installation requires superuser permissions):
yum remove fixedge-java
To uninstall the package on Ubuntu, run the following command (installation requires superuser permissions):
sudo apt remove fixedge-java