Installing a new DSS instance

Note

This is the documentation to install a new DSS instance on a Linux server.

Other installation options are available (macOS, AWS, Azure and Virtual Machine). Please see https://www.dataiku.com/dss/trynow and Other installation options.

Pre-requisites

To install Data Science Studio, you need:

  • the installation tar.gz file
  • to make sure that you meet the installation Requirements.
  • Root access is not strictly required, but you might need it to install dependencies. If you want to start Data Science Studio at machine boot time, root access is required.

It is highly recommended to create an UNIX user dedicated to running the Data Science Studio software.

Warning

Running DSS software as root is not supported.

Data Science Studio may use up to 10 consecutive TCP ports. Only the first of these ports needs to be opened out of the machine. It is highly recommended to firewall the other ports.

Installation folders

A Data Science Studio installation spans over two folders:

  • The installation directory, which contains the code of Data Science Studio. This is the directory where the Data Science Studio tarball is unzipped (denoted as “INSTALL_DIR”)
  • The data directory (which will later be named “DATA_DIR”).

The data directory contains :

  • The configuration of Data Science Studio, including all user-generated configuration (datasets, recipes, insights, models, ...)
  • Log files for the server components
  • Log files of job executions
  • Various caches and temporary files
  • A Python virtual environment dedicated to running the Python components of Data Science Studio, including any user-installed supplementary packages
  • Data Science Studio startup and shutdown scripts and command-line tools

Depending on your configuration, the data directory can also contain some managed datasets. Managed datasets can also be created outside of the data directory with some additional configuration.

It is highly recommended that you reserve at least 100 GB of space for the data directory.

Installation

Unpack

Unpack the tar.gz in the location you have chosen for the installation directory.

cd SOMEDIR
tar xzf /PATH/TO/dataiku-dss-VERSION.tar.gz
# This creates a directory named dataiku-dss-VERSION in the current directory
# which contains DSS code for this version (no user file is written to it by DSS).
# This directory is referred to as INSTALL_DIR in this document.

Install Data Science Studio

From the user account which will be used to run Data Science Studio, enter the following command:

dataiku-dss-VERSION/installer.sh -d /path/to/DATA_DIR -p PORT [-l LICENSE_FILE]

Where:

  • DATA_DIR is the location of the data directory that you want to use. If the directory already exists, it must be empty.
  • PORT is the base TCP port. Data Science Studio will use several ports between PORT and PORT+10
  • LICENSE_FILE is your Data Science Studio license file.

Warning

DATA_DIR must be outside of the install dir (i.e. DATA_DIR must not be within dataiku-dss-VERSION)

Note

If you don’t enter a license file at this point, DSS will start as a Free Edition. You can enter a license file at any time.

The installer automatically checks for any missing system dependencies. If any is missing, it will give you the command to run to install them with superuser privileges. After installation of dependencies is complete, you can start the Data Science Studio installer again, using the same command as above.

(Optional) Enable startup at boot time

At the end of installation, Data Science Studio will give you the optional command to run with superuser privileges to configure automatic boot-time startup:

sudo -i INSTALL_DIR/scripts/install/install-boot.sh DATA_DIR USER_ACCOUNT

Start Data Science Studio

To start Data Science Studio, run the following command:

DATA_DIR/bin/dss start

Complete installation example

The following shows a transcript from a complete installation sequence:

# Start from the home directory of user account "dataiku"
# which will be used to run the Data Science Studio
# We will install DSS using data directory: /home/dataiku/dss_data
$ pwd
/home/dataiku
$ ls -l
-rw-rw-r-- 1 dataiku dataiku 159284660 Feb  4 15:20 dataiku-dss-VERSION.tar.gz
-r-------- 1 dataiku dataiku       786 Jan 31 07:42 license.json

# Unpack distribution kit
$ tar xzf dataiku-dss-VERSION.tar.gz

# Run installer, with data directory $HOME/dss_data and base port 10000
# This fails because of missing system dependencies
$ dataiku-dss-VERSION/installer.sh -d /home/dataiku/dss_data -l /home/dataiku/license.json -p 10000

# Install dependencies with elevated privileges, using the command shown by the previous step
$ sudo -i "/home/dataiku/dataiku-dss-VERSION/scripts/install/install-deps.sh"

# Rerun installer script, which will succeed this time
$ dataiku-dss-VERSION/installer.sh -d /home/dataiku/dss_data -l /home/dataiku/license.json -p 10000

# Configure boot-time startup, using the command shown by the previous step
$ sudo -i "/home/dataiku/dataiku-dss-VERSION/scripts/install/install-boot.sh" "/home/dataiku/dss_data" dataiku

# Manually start DSS, using the command shown by the installer step
$ /home/dataiku/dss_data/bin/dss start

# Connect to Data Science Studio by opening the following URL in a web browser:
#    http://HOSTNAME:10000
# Initial credentials : username = "admin" / password = "admin"

Manual dependency installation

The Data Science Studio installer includes a dependency management script, to be run with superuser privileges, which automatically installs the additional Linux packages required for your particular configuration.

In some cases however, it might be necessary to manually install these dependencies, for instance when the person installing DSS does not have access to administrative privileges, or when the server does not have access to the required package repositories.

If you manually pre-installed all the dependencies that would have been selected by the automated script, you can continue installing Data Science Studio using standard procedures. If that is not the case (because you explicitely chose to leave a component missing, or you installed some component from an alternate source) you must then run the DSS installer with the “-n” flag, to disable the default dependency checks.

Red Hat / CentOS / Oracle Linux distributions

You may need to configure the following additional repositories:

Name Address Notes
EPEL https://fedoraproject.org/wiki/EPEL

[RedHat/CentOS v6.x] for R

[RedHat/CentOS v7.x] for nginx and R

nginx http://nginx.org/en/linux_packages.html [RedHat/CentOS v6.x] for nginx v1.6+
IUS https://iuscommunity.org/pages/Repos.html [RedHat/CentOS v6.x] for Python 2.7

On RedHat and Oracle Linux, you may also need to enable the vendor’s “optional” repository, for indirect dependencies required by R.

Data Science Studio depends on the following packages:

Name Notes
acl For multi-user security support
expat git zip unzip Mandatory
nginx Version 1.4 or later
java-1.7.0-openjdk See “Java” note below
python27 freetype libgfortran libgomp [RedHat/CentOS v6.x] for Python 2.7 and built-in Python packages. See “Python” note below
python27-devel [RedHat/CentOS v6.x] See “Additional Python packages” note below
freetype libgfortran libgomp [RedHat/CentOS v7.x] for built-in Python packages. See “Python” note below
python-devel [RedHat/CentOS v7.x] See “Additional Python packages” note below
mesa-libGL libSM libXrender libgomp For Anaconda-Python-based installations, see note below
R-core-devel libicu-devel libcurl-devel openssl-devel libxml2-devel See “R” note below.
zeromq-devel (or zeromq3-devel) See “R” note below.
libssh2-devel openldap-devel [RedHat/CentOS v6.x] See “R” note below.

Debian / Ubuntu Linux distributions

You may need to configure the following additional repository:

Name Address Notes
wheezy-backports http://ftp.debian.org/debian/ [Debian 7.x] for nginx v1.6 or later
CRAN https://cran.r-project.org/ [Debian, Ubuntu 14.04] For R version 3.2 or later

Data Science Studio depends on the following packages:

Name Notes
acl For multi-user security support
curl git libexpat1 zip unzip Mandatory
nginx Version 1.4 or later
openjdk-7-jre See “Java” note below
python2.7 libpython2.7 libfreetype6 libgfortran3 libgomp1 For built-in Python packages. See “Python” note below
python2.7-dev See “Additional Python packages” note below
libgl1-mesa-glx libsm6 libxrender1 libgomp1 For Anaconda-Python-based installations, see note below
r-base-dev libicu-dev libcurl4-openssl-dev libssl-dev libxml2-dev libzmq3-dev pkg-config See “R” note below

Additional notes

Java
The suggested dependency package is the platform default, but DSS can use other Java runtime environments. See Java runtime environment for details.
Python
The dependencies listed above are required to use the precompiled set of Python packages provided with DSS. This does not apply when using custom-built Python libraries. See The Python environment for details.
Additional python packages
Installing additional Python packages which include native code require the dependencies listed above and the system development tools to be installed (typically C/C++ compilers and headers), in addition to any package-specific dependency.
Anaconda Python
The dependencies listed above for Anaconda-Python-based installations replace those listed for system-Python-based installations.
R
The dependencies listed above are only necessary to enable R integration in DSS. Note that the system development tools and additional dependencies are usually needed in order to build the required R packages. DSS requires R version 3.2 or later.