Ubu: 3. Install Graphlytic

Deploy plugin into Neo4j

Graphlytic requires some advanced features which are not delivered with Neo4j but are deployed as a plugin for Neo4j delivered with Graphlytic installation package. To know more about the functionality of the plugin please see Architecture.

The Graphlytic Neo4j plugin has to be copied into Neo4j:

  • Stop Neo4j if it is running

  • Copy the file "neo4j-gl-plugin-<version>.jar" into the directory <NEO4J_HOME>/plugins/ (this directory can be changed in the Neo4j configuration file)

    • Alternativelly use the "legacy-neo4j-gl-plugin-<version>.jar" when you want to use Neo4j version 3.3 or 3.4

Example:

$ sudo su neo4j
neo4j:$ cp neo4j-gl-plugin.jar /usr/share/neo4j/neo4j-community-3.0.0/plugins/

To see what is the functionlity of plugin see Architecture.

Install Graphlytic

Install Graphlytic as a console application

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

Graphlytic's configuration is stored in the "conf/graphlytic.conf" file.

To configure Graphlytic run this command:

vi /usr/share/graphlytic/conf/graphlytic.conf

Default configuration is as follows:

# where Graphlytic stores its data
main.dataDir=../data/
# where Graphlytic stores log files
main.logDir=/var/log/graphlytic/
# where Graphlytic stores external widgets
main.widgetsDir=../widgets/
# where Graphlytic stores external icons
main.iconsDir=../icons/
 
# login page logo title
site.logo.title=Graphlytic
 
# 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/graphlyticc
graphlytic:$ vi /usr/share/graphlytic/bin/graphlyticc

Edit this configuration file to use HTTP or HTTPS or both:

#!/bin/sh
 
# use this script to start GL from console
 
# disable or enable HTTP/HTTPS. To disable comment od remove line
#HTTP_PORT=8080
HTTPS_PORT=8443