Table of Contents |
---|
Introduction
FIXEdge can be installed using RPM packages on Red Hat Enterprise Linux 7 and newer and binary compatible distributions. RPM package features support for controlling FIXEdge via systemd and running under a constrained user account.
Installing FIXEdge
- Add the repository file
Code Block | ||
---|---|---|
| ||
sudo tee -a /etc/yum.repos.d/fixedge.repo << EOF [fixedge] name=fixedge baseurl=https://USERNAME:PASSWORD@packages.b2bits.com/fixedge skip_if_unavailable=true deltarpm=0 sslverify=false gpgcheck=0 EOF |
...
Installation is completed.
Running FIXEdge Service
The package provides the systemd
units to control the FIXEdge and FIXICC Agent services.
...
Code Block |
---|
[max@localhost ~]$ systemctl status fixedge ● fixedge.service - FIXEdge - smart FIX message router Loaded: loaded (/usr/lib/systemd/system/fixedge.service; disabled; vendor preset: disabled) Drop-In: /etc/systemd/system/fixedge.service.d └─override.conf Active: inactive (dead) Dec 13 07:54:19 localhost.localdomain bash[588972]: SLF4J: Class path contains multiple SLF4J bindings. Dec 13 07:54:19 localhost.localdomain bash[588972]: SLF4J: Found binding in [jar:file:/usr/lib64/fixedge/6.11.6/jms-ta/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] Dec 13 07:54:19 localhost.localdomain bash[588972]: SLF4J: Found binding in [jar:file:/opt/apache-activemq/activemq-all-5.16.3.jar!/org/slf4j/impl/StaticLoggerBinder.class] Dec 13 07:54:19 localhost.localdomain bash[588972]: SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. Dec 13 07:54:19 localhost.localdomain bash[588972]: SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] Dec 13 08:43:14 localhost.localdomain systemd[1]: Stopping FIXEdge - smart FIX message router... Dec 13 08:43:15 localhost.localdomain bash[588972]: The signal waiter has been started. Dec 13 08:43:15 localhost.localdomain bash[588972]: The signal 15 was detected. Dec 13 08:43:15 localhost.localdomain systemd[1]: fixedge.service: Succeeded. Dec 13 08:43:15 localhost.localdomain systemd[1]: Stopped FIXEdge - smart FIX message router. [max@localhost ~]$ systemctl start fixedge [max@localhost ~]$ systemctl status fixedge ● fixedge.service - FIXEdge - smart FIX message router Loaded: loaded (/usr/lib/systemd/system/fixedge.service; disabled; vendor preset: disabled) Drop-In: /etc/systemd/system/fixedge.service.d └─override.conf Active: active (running) since Wed 2021-12-15 04:30:02 EST; 1s ago Main PID: 916904 (FIXEdge) Tasks: 23 (limit: 48835) Memory: 62.5M CGroup: /system.slice/fixedge.service └─916904 /usr/lib64/fixedge/6.11.6/FIXEdge /etc/fixedge/FIXEdge.properties Dec 15 04:30:02 localhost.localdomain systemd[1]: Started FIXEdge - smart FIX message router. Dec 15 04:30:02 localhost.localdomain bash[916904]: FIXEdge 6.11.6.r463 (engine 2.28.0.r463) [max@localhost ~]$ systemctl stop fixedge [max@localhost ~]$ systemctl status fixedge ● fixedge.service - FIXEdge - smart FIX message router Loaded: loaded (/usr/lib/systemd/system/fixedge.service; disabled; vendor preset: disabled) Drop-In: /etc/systemd/system/fixedge.service.d └─override.conf Active: inactive (dead) Dec 15 04:30:05 localhost.localdomain bash[916904]: SLF4J: Class path contains multiple SLF4J bindings. Dec 15 04:30:05 localhost.localdomain bash[916904]: SLF4J: Found binding in [jar:file:/usr/lib64/fixedge/6.11.6/jms-ta/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] Dec 15 04:30:05 localhost.localdomain bash[916904]: SLF4J: Found binding in [jar:file:/opt/apache-activemq/activemq-all-5.16.3.jar!/org/slf4j/impl/StaticLoggerBinder.class] Dec 15 04:30:05 localhost.localdomain bash[916904]: SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. Dec 15 04:30:05 localhost.localdomain bash[916904]: SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] Dec 15 04:30:14 localhost.localdomain systemd[1]: Stopping FIXEdge - smart FIX message router... Dec 15 04:30:16 localhost.localdomain bash[916904]: The signal waiter has been started. Dec 15 04:30:16 localhost.localdomain bash[916904]: The signal 15 was detected. Dec 15 04:30:16 localhost.localdomain systemd[1]: fixedge.service: Succeeded. Dec 15 04:30:16 localhost.localdomain systemd[1]: Stopped FIXEdge - smart FIX message router. |
Upgrading FIXedge
If there is a newer version of the package in the repository, you can update using the following command:
...
Code Block | ||
---|---|---|
| ||
$ rpm -qi fixedge | egrep '(Version|Release)' Version : 6.11.3 Release : 441.el7 $ yum provides fixedge | grep 450 fixedge-6.11.4-450.el7.x86_64 : FIXEdge - smart FIX message router $ sudo yum update fixedge-6.11.4-450.el7.x86_64 |
Downgrading FIXedge
You can also downgrade the package as needed by using the following command:
...
To find out which version you can downgrade a package to, use the yum provides command as described in the "Installing FIXEdge C++ section".
Removing FIXedge
To remove a package, you need the following:
Code Block | ||
---|---|---|
| ||
sudo yum -y remove fixedge fixicc-agent |
Migration from a tar.gz package to RPM
To migrate an existing installation from a tar.gz package to RPM need to:
- Copy FIXEdge configuration to
/etc/fixedge
Copy FIXEdge data to
/var/lib/fixedge
- Change storage directories in
engine.properties
andFIXEdge.properties
to/var/lib/fixedge
- Change references to TA shared libraries in
FIXEdge.properties
...