Manually installing FM

Requirements

EC2 instance

FM must be installed on a Linux EC2 instance.

A minimum of 4 GB of RAM is required. No CPU minimum is required.

The following Linux distributions are supported:

  • Red Hat Enterprise Linux, version 7.3 and later 7.x

  • Red Hat Enterprise Linux, versions 8.x

  • CentOS, version 7.3 and later 7.x

  • CentOS, versions 8.x

These distributions should be up-to-date with respect to Linux patches and updates.

Note

Running on a system with Security-Enhanced Linux (SELinux) in enforcing mode is not supported.

Other system requirements

The en_US.utf8 locale must be installed.

The filesystem on which FM is installed must be POSIX compliant, case-sensitive, support POSIX file locks and symbolic links.

Unix user

FM runs as a single Unix user. FM does not run as root. We recommend dedicating a UNIX user for FM. In the rest of this documentation, this will be refered to as the fmuser.

Root access is not strictly required, but you might need it to install dependencies. If you want to start FM at machine boot time, root access is required.

Network requirements

The EC2 instance on which FM is installed must be running in EC2-VPC. FM must be able to reach EC2, KMS, STS and SecretsManager endpoints. This can be achieved either by allowing traffic to public endpoints (through Internet Gateway, Egress Gateway or NAT Gateway), or with private endpoints deployed in your VPC.

Security groups

FM 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.

You must be able to connect to the base port with your browser. You can allow direct connection or use a reverse-proxy.

KMS CMK

You must create a KMS CMK. The IAM role of FM must have the ability to use this CMK.

IAM permissions

The EC2 instance on which FM is installed must have IAM credentials available to the fmuser.

This can be achieved either:

  • Through an IAM instance profile associated to the instance (recommended)

  • Through a keypair available in the ~/.aws/credentials of the fmuser

The required IAM permissions are:

  • Full control on EC2

  • Manage secrets using the previously created CMK

Additional recommended permissions:

  • Full control of a Route53 zone to host records for private IPs

  • Full control of a Route53 zone to host records for public IPs

Browser

The following browsers are supported:

  • Chrome (latest version)

  • Firefox (latest ESR version)

Database

FM requires a PostgreSQL 10 (or higher) database for storing data. This can be either a “normally installed” PostgreSQL or RDS.

Aurora in PostgreSQL mode is supported.

Installation folders

A FM installation spans over two folders:

  • The installation directory, which contains the code of FM. This is the directory where the FM tarball is unzipped (denoted as “INSTALL_DIR”)

  • The data directory (denoted as “DATA_DIR”).

The data directory contains :

  • The configuration of FM

  • Log files for the server components

  • Startup and shutdown scripts and command-line tools

Preparing install

To install FM, you need the installation tarball and a license file obtained from Dataiku.

Installation

Unpack

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

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

Install

From the fmuser account, run

dataiku-fm-VERSION/installer.sh -c AWS -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.

  • LICENSE_FILE is your FM license file.

Warning

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

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 FM installer again, using the same command as above.

(Optional) Enable startup at boot time

At the end of installation, FM 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

Note

This configures a boot-time system service with a default name of “dataiku”. You can add a suffix to this service name by using the -n PREFIX option to install-boot.sh

Setup database connection

Edit the value databaseSettings.dbURL in file DATA_DIR/config/settings.json file to setup the connection to the database.

Bootstrap the database

Now that FM can connect to the database, run the following command to initialize the data in the database:

DATA_DIR/bin/fmadmin initial-setup USER PASSWORD

where:

  • USER is the new login of the admin user for FM

  • PASSWORD is the new password of the admin user for FM

Start

To start FM, run the following command:

DATA_DIR/bin/fm start

Configure the CMK into FM

Connect to FM with your initial user. In the Cloud setup section, click on Edit, fill the CMK Id field and click on Save.

FM is ready, you can proceed to the setup of Virtual networks.