×

☰ Table of Contents

TigerGraph Docs : TigerGraph Platform Installation Guide v1.1

Version 1.1
Document Updated:


Platform Installation - Single Node Configuration

Contents of this Section:

Preparation

This guide assumes the following:

  1. You have a Linux server that meets the TigerGraph Hardware and Software Requirements .
  2. You have sudo or root privilege.
  3. You have a license key provided by TigerGraph.

Also, to use the TigerGraph platform effectively, you should have sufficient memory and disk space to store your graph data.

If you are updating from a previous version of the TigerGraph™ Platform, first read the section below on Update/Upgrade FAQs .


New Installation

Besides the basic requirements mentioned above (HW & SW requirements, sudo/root privilege, license key), there are two more requirements for installation:

  • As mentioned in the Hardware and Software Requirements , you need to pre-install a few basic Linux utilities:
    1. tar/gzip
    2. crontab
    3. ip
    4. ssh/sshd
    5. more
    6. netstat
  • Obtain the TigerGraph package from the TigerGraph presales/support team or download it from our download site :
    http://service.tigergraph.com/download/release/tigergraph-<version>-offline.tar.gz

    For example, if <version> is 1.2.1 , the file name is tigergraph-1.2.1-offline.tar.gz.

    The version number always has 3 fields: majorVer.minorVer.patchVer.  For example, use 1.1.0, not 1.1.


Now you are ready to begin installation.

  1. Extract files from the package:

    tar xzf tigergraph-<version>-offline.tar.gz
  2. A folder named offline-package will be created. Change into this folder. To install with default settings, just run the install.sh script.

    cd offline-package ./install.sh

The installer will ask you a few questions.

  • Do you agree to the License Terms and Conditions?
  • What is your license key?
  • Do you want to use the default Linux user name or select your own?
  • Do you want to use the default installation folder or select your own?

That's it! see Next Steps below.

If you want to customize the installation and understand better what will happen during installation, read the Installation Details section below.


Installation Details

The install.sh command will do the following:

    1. Install the system prerequisites.
    2. Ask you to accept the end user license agreement. Please read it carefully, and accept accordingly. If you do not accept, the install process will be terminated.
      This step cannot be bypassed.
    3. Prompt you to enter your license key (unless you provided it already on the command line). You cannot proceed to the next step until you enter a license key.
    4. Ask you if you want to change the default settings for user name and installation directory. The user account corresponds to a Linux account. This can either be an existing account, or the installer will create a new account. The default settings are user = tigergraph, password = tigergraph, and TigerGraph.root.dir = ${GSQL_USER_HOME}/tigergraph. Optionally, you can provide values in the command line, or you can instruct the installer to automatically accept the default settings.

    5. Configure the TigerGraph Platform.
    6. Install and deploy the TigerGraph Platform.

Configuration Options

The following default settings will be applied if no parameters are specified:

  • The installer will create a user called tigergraph , with password tigergraph .
  • The root directory for the installation (referred to as <TigerGraph.root.dir>) is a folder called tigergraph located in the tigergraph user's home directory, that is,
    /home/tigergraph/tigergraph/.

The installation can be customized by running command line options with the install.sh script :

Syntax: install.sh [-h][-u <user>] [-p <password>] [-r <tigergraph_root_dir>] [-l <license_key>] [-f] $ install.sh -h The default configuration is TigerGraph user: tigergraph, TigerGraph password: tigergraph, TigerGraph root dir: /home/tigergraph/tigergraph. -h -- show this message -l -- TigerGraph license key (If not specified, it will prompt the user for the license key.) -p -- TigerGraph password (If not specified, the default password is tigergraph.) -r -- TigerGraph root directory (If specified: <tigergraph_root_dir>/tigergraph. If not specified: ${GSQL_USER_HOME}/tigergraph) -u -- TigerGraph user (If not specified, the default user name is tigergraph.) -f -- suppress prompts, and continue installation despite warnings.


If the installation ran successfully, see Next Steps below.



Next Steps

After the installation finishes, the installer will automatically change users to the new TigerGraph user you just created .

If you installed with the default password, we recommend that you change it now.


To confirm correct operation:

  • T ry the command gadmin status

    If the system installed correctly, the command should report that zk , kafka , dict, nginx, gsql, and Visualization are up a nd ready.
    However, since there is no graph data loaded yet, gse , gpe , and restpp are not initialized.

  • Try the command gsql --version


You are now finished!  If you are a first-time user:

  • Try some demonstrations: Go to the <TigerGraph_Root_Dir> / document/DEMO folder and run ./RUN_DEMO.sh
  • Start learning, with one of our tutorials, such as GSQL Tutorial and Demo Examples


If you wish to perform additional configuration, see the appropriate sections of the TigerGraph System Administrators Guide v1.1 .


Updating a System

Update/Upgrade FAQs


Q: Is the new version backward-compatible with previous versions?

A: If you are updating from v0.8.x, please contact support@tigergraph.com for the Migration Guide for TigerGraph Platform v1.1 for a detailed review of changes between v1.1 and previous releases. If you are currently running v0.8 or v0.8.1, the majority of language and API features are backward-compatible. A few features have changed, so consult the Release Notes to see if these affect you.

After 1.0, TigerGraph plans to use the following version numbering scheme:
Major.Minor.Patch (Patch number may be omitted if its value is 0.)

  • Major is incremented when there are significant changes which are not backward compatible.
  • Minor is incremented when there are new features but they are backward compatible.
  • Patch is incremented when there are only bug fixes which are backward compatible.

If you are updating from a version older than 0.8, please contact TigerGraph Support to review your individual situation.


Q: Can I use my previous license key?

A: TigerGraph v1.1 is introducing a new license key system.  Previous keys will contine to work until they expire; all new keys will use the new format.

Q: Do you support live updates?

A. The current version does not support live update. The TigerGraph services needs to be turned off during an update.

Q: Will my graph data store be saved?

A: Yes, it is possible to keep the graph data store from v0.8 or later and use it in a v1.x system. For minor updates, no special steps are required. For major updates (e.g., from v0.8 to v1.1), a migration tool should be used.

Q: Will my catalog (definitions of graph schema, loading jobs and queries) be saved?

A: For minor or patch updates, the catalog will be preserved, but the queries will need to be reinstalled. See details in Update Procedure below.

Q: I have other files, not part of the original TigerGraph installation (e.g., command scripts, input data files, log files) stored in the file structure. Will they be saved?

A: Your files will be saved, but they might be moved. The installation program will create a backup folder to save the old versions of files before installing the new versions. In particular, the entire folder <TigerGraph.Root.Dir>/dev will be copied to a new folder called <TigerGraph.Root.Dir>/dev_<datetime>, before creating a new /dev folder. The files include but are not limited to:

Update Procedure for Minor Updates

These instructions are only for updates that maintain 100% backward compatibilty. Please refer to the Release Notes for your intended new version to see whether your proposed update is eligible to follow this procedure or not.

  1. Back up your files. (Optional but recommended if this is your first time performing an update.)  Any files you wish to save (command files, input data files, personal files, log files, etc.) should be stored outside of the TigerGraph root folder.
  2. Allow any graph operations to finish. Then follow the procedure at the beginning of this document for installing a new system.  The installer will automatically shut down your system and start it again.

    Be sure to specify the same username as your current installation. Otherwise, if you use a different user name, it will be treated as a new installation, with an empty graph.

  3. Verify: Run the command gsql to start the GSQL shell. The first time after an update, gsql performs two important operations:

    1. Copies your catalog from your old installation to the new installation .

    2. Compares the files in the backup /dev_<datetime>/gdk/gsql/src folder to the new /dev/gdk/gsql/src folder. Pay attention to any files residing in the old folder but not in the new folder.  Review them and copy them to the new folder if appropriate.  See the example below.

  4. List the jobs in the catalog using the ls command. Check to see if all your queries reinstalled successfully. Even in a minor update, there may be new features or bug fixes that provide a better format for your queries. If you decide to make changes to your queries, reinstall them.

    Export a copy of a query
    $ gsql 'SHOW QUERY qname > q1.gsql' # save a copy of your query # Modify your query if needed or wanted

    If you decide to change the query:

    Install a new version of a query
    $ gsql 'DROP QUERY q1' $ gsql q1.gsql $ gsql install query q1

Example: Comparing Old and New Installations

Diagnostic output of 'gsql' after a software update.

[RUN ] cp -r /home/tigergraph/tigergraph/dev_2016.08.25-10.27.48/gdk/gsql/.catalog /home/tigergraph/tigergraph/dev/gdk/gsql/

[*.?pp] oldest: /home/tigergraph/tigergraph/dev_2016.08.25-10.27.48/gdk/gsql/src/ReducerLib/ReducerLib.cpp 2016-04-27 13:51:10
[*.?pp] newest: /home/tigergraph/tigergraph/dev_2016.08.25-10.27.48/gdk/gsql/src/TokenBank/JOB_load_videoE.cpp 2016-08-25 10:00:25.221119

!!! Found /home/ tigergraph / tigergraph /dev_2016.08.25-10.27.48/gdk/gsql/src/ has user defined token functions
Please merge to /home/tigergraph/tigergraph/dev/gdk/gsql/src/

[RUN ] touch /home/tigergraph/tigergraph/dev/gdk/gsql/.hasDDL
Welcome to GSQL Shell version: master

Type 'help' for help.

GSQL >

The first [ RUN ] line tells us that the catalog is being copied to the new installation.

Next, the gsql version checker compares *.pp (.cpp and .hpp) files in the new and backup dev/gdk/gsql/src folders.  While the majority of code for the GSQL platform is precompiled object code, a small portion is in source code format. This source code relates to (1) queries and loader jobs that the user wrote, (2) User-Defined Functions (UDFs) that the user wrote, or (3) a few standard functions that TigerGraph implemented in the same style as UDFs.

The red warning indicates that the gsql version checker found a discrepancy. It advises the user to merge /home/tigergraph/tigergraph/dev_2016.08.25-10.27.48/gdk/gsql/src/ to /home/tigergraph/tigergraph/dev/gdk/gsql/src/.

To investigate, perform a recursive diff between these two folders:

Diff between backup and new folders
$ diff -r dev_2016.08.25-10.27.48/gdk/gsql/src dev/gdk/gsql/src diff -r dev_2016.08.25-10.27.48/gdk/gsql/src/QueryUdf/ExprFunctions.hpp dev/gdk/gsql/src/QueryUdf/ExprFunctions.hpp 29a30 > #include <gle/engine/cpplib/headers.hpp> Only in dev/gdk/gsql/src: src Only in dev_2016.08.25-10.27.48/gdk/gsql/src/TokenBank: JOB_load_videoE.cpp Only in dev_2016.08.25-10.27.48/gdk/gsql/src/TokenBank: JOB_load_videoV.cpp

This example tells us the following:

  • There is some content that is only in the new folder. This clearly represents intentional updates by TigerGraph. No action is needed.
    • The new version of ExprFunctions.hpp contains an additional #include line.
    • The new folder dev/gdk/gsql/src contains a file or folder called src.
  • The backup folder dev_2016.08.25-10.27.48/gdk/gsql/src/TokenBank contains two files not found in the corresponding new folder: JOB_Load_videoE.cpp and JOB_Load_videoV.cpp.  load_videoE and load_videoV are two loading jobs from one of our training examples, which were in the catalog when the update installation was performed.  If the user wants to retain these loading jobs, the files should be copied from the backup folder to the corresponding new folder.