RHEL: 3. Install Graphlytic
1. Deploy plugin into Neo4j
Graphlytic requires some advanced features which are not delivered with Neo4j. There is plugin for Neo4j delivered with Graphlytic installation package. This plugin has to be copied into Neo4j.
Stop Neo4j if it is running. Copy file neo4j-gl-plugin.jar and into directory: <NEO4J_HOME>/plugins/.
Example:
$
sudo
cp
/tmp/neo4j-gl-plugin-
<version>.jar
/usr/share/neo4j/plugins/
To see what is the functionlity of plugin see Architecture.
2. Install Graphlytic
2.1. Install Graphlytic as service
After this installation Graphlytic will start automatically after operating system is started. Neo4j is required by Graphlytic so there is also need to install Neo4j as a service (see RHEL: 2. Install Neo4j)
Graphlytic application will be started by user 'graphlytic'. Create this user with home directory (home directory is used by neo4j drivers to store known hosts <home>/.neo4j/known_hosts):
$
sudo
useradd
-m graphlytic
$
sudo
usermod
-L graphlytic
Copy Graphlytic installation file "graphlytic-<version>.tar.gz" into /tmp/.
Create directory structure:
$
sudo
mkdir
-p
/usr/share/graphlytic
/var/log/graphlytic
$
sudo
chown
-R graphlytic:graphlytic
/usr/share/graphlytic
/var/log/graphlytic
Copy installation file and unpack it:
$
sudo
su
graphlytic
graphlytic:$
cp
/tmp/graphlytic-
<version>.
tar
.gz
/usr/share/graphlytic
graphlytic:$
cd
/usr/share/graphlytic
graphlytic:$
tar
zxvf graphlytic-<version>.
tar
.gz
Configure Graphlytic:
graphlytic:$
vi
/usr/share/graphlytic/conf/graphlytic
.conf
Edit this configuration file to contains these lines:
# where Graphlytic stores its data
main.dataDir=..
/data/
# where Graphlytic stores external widgets
main.widgetsDir=..
/widgets/
# url for HTTP or HTTPS connection to Neo4j REST
# do not comment this line. HTTP/HTTPS connection is mandatory for communication with Graphlytic Neo4j plugin
# you can use HTTPS url to use SSL but you need import Neo4j certificate into Java default truststore
neo4j.connector.http=http:
//localhost
:7474
# url for Bolt connection to Neo4j
# comment this line to disable Bolt protocol communication and HTTP/HTTPS will be used for all communication with Neo4j
neo4j.connector.bolt=bolt:
//localhost
:7687
# username for Neo4j connection
neo4j.connector.username=neo4j
# password for Neo4j connection
neo4j.connector.password=enter_real_password_for_neo4j_here
Configure starting script:
graphlytic:$
chmod
a+x
/usr/share/graphlytic/bin/graphlyticd
graphlytic:$
vi
/usr/share/graphlytic/bin/graphlyticd
Edit this configuration file to use HTTP or HTTPS or both:
#!/bin/sh
# use this script with created service
# disable or enable HTTP/HTTPS. To disable comment od remove line
#HTTP_PORT=8080
HTTPS_PORT=8443
Copy init script and enable service:
$
sudo
cp
/usr/share/graphlytic/bin/graphlytic-init-rhel
/etc/init
.d
/graphlytic
$
sudo
chmod
a+x
/etc/init
.d
/graphlytic
$
sudo
systemctl
enable
graphlytic.service
Check if service was enabled:
$
sudo
find
/etc/rc
?.d/ -name
"*graphlytic*"
expected result:
/etc/rc2
.d
/S99graphlytic
/etc/rc3
.d
/S99graphlytic
/etc/rc4
.d
/S99graphlytic
/etc/rc5
.d
/S99graphlytic