Installing a Snaplex on Linux
In this article
Install a Snaplex on Linux
This article describes the procedures for installing an on-premise Snaplex in a Linux environment. An on-premise Snaplex is also known as a Groundplex. This document uses the term Groundplex to distinguish this type of Snaplex (on-premise) from other types, such as a Cloudplex or an eXtremeplex. However, in command syntax and references to the UI, the generic term Snaplex is used.
Groundplex installation covers the following tasks:
For prerequisites, see Requirements for On-premises Snaplex.
Setting up a Groundplex
- Log into SnapLogic Manager as an Org admin.
- Navigate to the project where you want to create your Groundplex, then do one of the following:
- Click the Snaplex tab, then click
OR to display the Snaplex dialog.
- Click
- Click the Snaplex tab, then click
- Enter the required information on the Create Snaplex form. Once completed, the Downloads tab on the Snaplex popup appears. The Downloads tab has links to the installer and configuration files.
- Download the RPM/DEB and the configuration file onto a Linux machine:
For CentOS (or Redhat) 6.3 or newer, run the following command:
$ sudo rpm -i <filename>.rpm
For Ubuntu 14.04 or newer, run the following command:
$ sudo dpkg -i <filename>.deb
Where <filename> is the name of the current installer file.
After the software is installed, place the downloaded configuration file in the
/opt/snaplogic/etc
directory and make sure the file name ends with.slpropz
. Change the .slpropz
file so that snapuser owns it by running the following commands:- To start the Snaplex service, run:
$ sudo /opt/snaplogic/bin/jcc.sh start
- To verify the Snaplex has started, visit https://elastic.snaplogic.com/sl/dashboard.html#Health. The newly installed Snaplex node should appear in the list of nodes for the Snaplex.
Importing a Certificate to SnapLogic JCC nodes
To generate and import a self-signed certificate on all the JCC nodes in the Snaplex:
- Obtain the certificate (.pem) file by using SSH.
Import the file by using the following command in the JCC node:
- Restart the JCC node process to confirm the import.
Run the following command to list certificates from the CAcerts file:
Automatically Start and Stop a Groundplex on Linux
You can use either the systemd
or init.d
utility to start and stop the Snaplex. Procedures for both are included below. The procedures vary depending on which Linux distribution is installed on the Snaplex host.
Starting and Stopping the Groundplex by Using the Linux Systems Call
Use this procedure for Red Hat-like Linux distributions such as Red Hat, Fedora CoreOS, CentOS, and SuSE.
To add the Snaplex as a Service:
- Login to the host as a root or sudo user.
Create the startup service file:
Change the permissions on the file:
This change provides read and write permissions for the owner and group, and read permission for others.
Open the file with a text editor. For example, the using a vim editor:
Add the following text to the file:
- Save and exit the file.
Enable the service by running the following command:
The service will start automatically when the host reboots.
Start the service:
To stop the Snaplex as a service, run the following command:
Starting and Stopping the Groundplex by Using the init.d Utility
Use this procedure for Red Hat-like Linux distributions such as Red Hat, Fedora CoreOS, CentOS, and SuSE.
To add the Snaplex as a service:
- Login to the Linux machine as root.
Change directories:
Create a softlink to the
jcc.sh
file:Add the softlink to
chkconfig
management:
To delete the Snaplex as a service, remove the service from the chkconfig
management:
Debian-like Distribution (Debian and Ubuntu)
To add the Snaplex as a Service:
- Log in to the Linux machine as root.
Change directories:
Create a soft-link to the
jcc.sh
file:Install the service using
update-rc.d
. For example:To stop the Snaplex as a Service, remove the service from
update-rc.d
management:
Configure Java 11 on Linux
To update your JCC nodes to OpenJDK Java 11:
- Stop the existing JCC node by running the following command:
$ sudo /opt/snaplogic/bin/jcc.sh stop
- Download the new Snaplex installer and install the Groundplex, running the RPM, DEB, or Docker installers as appropriate.
- For RPM systems, run the following command:
$
rpm -U snaplogic-snaplex.rpm
- For DEB systems, run the following command:
$
dpkg -i snaplogic-snaplex.deb
- For Docker, stop the existing container and start a new container using the latest image.
- For RPM systems, run the following command:
- Add the following entry to the
/etc/sysconfig/jcc
directory. You must create this directory and file if neither are present.export SL_JAVA_HOME=/opt/snaplogic/pkgs/openjdk-11.0.5+10-jre/
- Start the JCC node by running the following command:
$ sudo /opt/snaplogic/bin/jcc.sh start
.
Changing the Installation Folder
If you want to use the/myopt/myroot
instead of the /opt/snaplogic
as the installation folder and myuser instead of snapuser, do the following steps:
- Run the following commands after installing the RPM/DEB package:
$ sudo mv /opt/snaplogic /myopt/myroot
$ sudo chown -R myuser /myopt/myroot
- Add the following properties in the
/etc/sysconfig/jcc
file. If this file does not exist, create it.export SL_USER=myuser
export SL_ROOT=/myopt/myroot
- Restart the service with the following command:
$ sudo /myopt/myroot/bin/jcc.sh restart
- To make a service using init.d, make the
/etc/init.d/snaplex
file a symlink to the/myopt/myroot/bin/jcc.sh
file.
Uninstalling the SnapLogic RPM from your environment
To uninstall the SnapLogic Linux-based package from your environment:
- Remove all content from the /etc/snaplogic and /opt/snaplogic folders by running the following commands:
$ rpm -qa | grep snaplogic
$ sudo rpm -e snaplogic-sidekick-4.main_9292-1.x86_64
$ sudo rm -rf /opt/snaplogic
$ sudo rm -rf /etc/snaplogic
- Verify that the packages were deleted from the /etc/snaplogic and /opt/snaplogic folders.
System Limits
Some Linux installations have system ulimit settings that are set to lower values. This low setting can cause errors when running higher Pipeline loads on the Groundplex JCC node, such as, java.lang.OutOfMemoryError: unable to create new native thread
.
To fix this issue, you need to increase the system limits for the Snapuser user. You can add the following in the /etc/security/limits.conf
folder to increase the file and process limits.
See Also
Video: Installing a Groundplex through a Debian-based Linux Distribution