Mount the Share
The system must have access to the share on acd-store.
Checkout JREST Repository
On acd-store execute the following commands to checkout the repository:
| Code Block |
|---|
su jtel
cd /srv/jtel/shared
git clone https://bitbucket.org/jtelgmbh/jtel-system-java-services.git |
Installation - on Linux Server
To install the REST role on a Linux server, proceed as follows on the acd-rest server.
Java 12
Install java 12 as follows:
| Code Block |
|---|
cd /home/jtel
wget https://cdn.jtel.de/downloads/java/openjdk-12.0.2_linux-x64_bin.tar.gz
tar xvfz openjdk-12.0.2_linux-x64_bin.tar.gz
rm -f openjdk-12.0.2_linux-x64_bin.tar.gz
chown -R jtel:jtel jdk-12.0.2 |
jrest
Install jrest as follows:
| Code Block |
|---|
cd /home/jtel
cp -r /home/jtel/shared/jtel-system-java-services/deploy/jrest jrest
mkdir /home/jtel/jrest/log
chown -R jtel:jtel jrest
cp jrest/systemd/jrest.service /etc/systemd/system
chmod +x /home/jtel/jrest/systemd/jrest
systemctl daemon-reload
systemctl enable jrest.service |
Configuration
Edit the configuration file /home/jtel/jrest/config/jtel-jrest.xml and check database access passwords and hosts etc. are correct.
Note: the serverID must be unique for each server.
| Warning |
|---|
<serverID>2001</serverID> |
Edit the startup file /home/jtel/jrest/systemd/jrest and check the java directory is correct (the correct java version).
Edit the logging configuration file /home/jtel/jrest/config/log4j2.xml and make sure it points to the required logging directory.
Firewall
Open the firewall port 8091 as follows:
| Code Block |
|---|
firewall-cmd --zone=public --add-port=8091/tcp --permanent
firewall-cmd --reload |
Start Service
Start the service.
| Code Block |
|---|
systemctl start jrest.service |
Installation - on Windows Server
To install the REST role on the windows server, proceed as follows.
Java 12
Download java 12 from here:
...
| Warning |
|---|
Note, if you do not use the paths specified above, you may have to change the configuration considerably. |
Checkout JREST Repository
On acd-store execute the following commands to checkout the repository:
su jtel
cd /srv/jtel/shared
git clone https://bitbucket.org/jtelgmbh/jtel-system-java-services.git |
Copy Files and Install
On the windows server, execute the following commands in a non-elevated command prompt:
| Code Block |
|---|
c: md \JRest xcopy /E \\acd-store\shared\jtel-system-java-services\deploy\jrest C:\JRest |
Configuration
Edit the configuration file, and make sure the database access (username and password) is correct:
| Code Block |
|---|
C:\JRest\config\jtel-jrest.xml |
Shortcut
Create a shortcut for start-jrest.cmd and put this into shell:startup
Configure Load-Balancer
It is best to send the requests for the REST API to the load balancer. To make this possible, the following needs to be added to the load balancer configuration.
Frontend http / https
Depending on the protocol used, either http or https may be configured. In the relevant front-end the following should be added:
| Code Block |
|---|
# ADD THIS WHERE THE acls are:
acl rest_req url_reg ^\/rest\/v1.0
# ADD THIS WHERE THE use_backend directives are:
use_backend jtel_rest if rest_req
# ADD THIS AT THE BOTTOM:
#---------------------------------------------------------------------
# this backend provides access to the REST API
#---------------------------------------------------------------------
backend jtel_rest
mode http
compression algo gzip
compression type text/xml text/html text/plain text/css text/javascript
balance leastconn # roundrobin
stick-table type ip size 20k
stick on src
server acd-tel1 acd-tel1:8091 weight 1 cookie jboss1 check inter 1m |
Reload Load-Balancer
Reload the load balancer:
| Code Block |
|---|
systemctl reload haproxy |
Configure Windows Firewall
In an elevated command prompt on the windows server:
| Code Block |
|---|
netsh advfirewall firewall add rule name="JREST" dir=in action=allow protocol=TCP localport=8091 edge=no |
Start REST Server
Start the rest server on the windows machine with the shortcut.